summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2021-10-20 23:22:45 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2021-10-20 23:22:45 +0000
commit332fa27640b1901ac632e6d37a4aa9643d0f8594 (patch)
treebfb5303e24d1cd4ddd22df12f45a013fefb9ca23
parentff448436b2b70771d09b8d5ff34a509dcf02f81b (diff)
downloadncurses-master.tar.gz
-rw-r--r--ANNOUNCE773
-rw-r--r--AUTHORS6
-rw-r--r--Ada95/Makefile.in31
-rw-r--r--Ada95/README4
-rw-r--r--Ada95/TODO8
-rw-r--r--Ada95/aclocal.m41195
-rwxr-xr-xAda95/configure8061
-rw-r--r--Ada95/configure.in26
-rw-r--r--Ada95/doc/Makefile.in25
-rw-r--r--Ada95/gen/Makefile.in30
-rw-r--r--Ada95/gen/gen.c210
-rw-r--r--Ada95/include/Makefile.in18
-rw-r--r--Ada95/include/ncurses_defs10
-rwxr-xr-xAda95/make-tar.sh63
-rw-r--r--Ada95/package/debian/compat2
-rw-r--r--Ada95/package/debian/copyright7
-rwxr-xr-xAda95/package/debian/rules2
-rw-r--r--Ada95/samples/Makefile.in32
-rw-r--r--Ada95/samples/explain.txt54
-rw-r--r--Ada95/samples/ncurses2-demo_forms.adb8
-rw-r--r--Ada95/samples/ncurses2-overlap_test.adb10
-rw-r--r--Ada95/src/Makefile.in103
-rw-r--r--Ada95/src/library.gpr.in16
-rw-r--r--Ada95/src/terminal_interface-curses-mouse.adb5
-rw-r--r--COPYING4
-rw-r--r--INSTALL247
-rw-r--r--MANIFEST14
-rw-r--r--Makefile.in19
-rw-r--r--Makefile.os26
-rw-r--r--NEWS772
-rw-r--r--README10
-rw-r--r--README.MinGW139
-rw-r--r--README.emx8
-rw-r--r--VERSION2
-rw-r--r--aclocal.m42051
-rw-r--r--announce.html.in1548
-rw-r--r--c++/Makefile.in103
-rw-r--r--c++/NEWS16
-rw-r--r--c++/README-first6
-rw-r--r--c++/cursesapp.cc11
-rw-r--r--c++/cursesapp.h25
-rw-r--r--c++/cursesf.cc21
-rw-r--r--c++/cursesf.h48
-rw-r--r--c++/cursesm.cc10
-rw-r--r--c++/cursesm.h12
-rw-r--r--c++/cursesmain.cc4
-rw-r--r--c++/cursesp.h9
-rw-r--r--c++/cursesw.h27
-rw-r--r--c++/cursslk.cc6
-rw-r--r--c++/cursslk.h25
-rw-r--r--c++/demo.cc26
-rw-r--r--c++/etip.h.in32
-rw-r--r--c++/internal.h8
-rwxr-xr-xconfig.guess1177
-rwxr-xr-xconfig.sub647
-rwxr-xr-xconfigure13444
-rw-r--r--configure.in304
-rw-r--r--convert_configure.pl120
-rw-r--r--dist.mk12
-rw-r--r--doc/html/Ada95.html10
-rw-r--r--doc/html/NCURSES-Programming-HOWTO.html42
-rw-r--r--doc/html/ada/funcs/M.htm2
-rw-r--r--doc/html/ada/funcs/U.htm2
-rw-r--r--doc/html/ada/funcs/W.htm2
-rw-r--r--doc/html/ada/terminal_interface-curses-mouse__adb.htm43
-rw-r--r--doc/html/ada/terminal_interface-curses-mouse__ads.htm18
-rw-r--r--doc/html/ada/terminal_interface-curses_constants__ads.htm4
-rw-r--r--doc/html/announce.html1720
-rw-r--r--doc/html/man/adacurses6-config.1.html8
-rw-r--r--doc/html/man/captoinfo.1m.html16
-rw-r--r--doc/html/man/clear.1.html43
-rw-r--r--doc/html/man/curs_add_wch.3x.html134
-rw-r--r--doc/html/man/curs_add_wchstr.3x.html7
-rw-r--r--doc/html/man/curs_addch.3x.html105
-rw-r--r--doc/html/man/curs_addchstr.3x.html23
-rw-r--r--doc/html/man/curs_addstr.3x.html25
-rw-r--r--doc/html/man/curs_addwstr.3x.html5
-rw-r--r--doc/html/man/curs_attr.3x.html6
-rw-r--r--doc/html/man/curs_beep.3x.html16
-rw-r--r--doc/html/man/curs_bkgd.3x.html36
-rw-r--r--doc/html/man/curs_bkgrnd.3x.html14
-rw-r--r--doc/html/man/curs_border.3x.html36
-rw-r--r--doc/html/man/curs_border_set.3x.html2
-rw-r--r--doc/html/man/curs_clear.3x.html42
-rw-r--r--doc/html/man/curs_color.3x.html73
-rw-r--r--doc/html/man/curs_delch.3x.html22
-rw-r--r--doc/html/man/curs_deleteln.3x.html28
-rw-r--r--doc/html/man/curs_extend.3x.html22
-rw-r--r--doc/html/man/curs_get_wch.3x.html35
-rw-r--r--doc/html/man/curs_get_wstr.3x.html5
-rw-r--r--doc/html/man/curs_getcchar.3x.html22
-rw-r--r--doc/html/man/curs_getch.3x.html14
-rw-r--r--doc/html/man/curs_getstr.3x.html149
-rw-r--r--doc/html/man/curs_getyx.3x.html35
-rw-r--r--doc/html/man/curs_in_wch.3x.html11
-rw-r--r--doc/html/man/curs_in_wchstr.3x.html5
-rw-r--r--doc/html/man/curs_inch.3x.html25
-rw-r--r--doc/html/man/curs_inchstr.3x.html21
-rw-r--r--doc/html/man/curs_initscr.3x.html6
-rw-r--r--doc/html/man/curs_inopts.3x.html139
-rw-r--r--doc/html/man/curs_ins_wch.3x.html11
-rw-r--r--doc/html/man/curs_ins_wstr.3x.html5
-rw-r--r--doc/html/man/curs_insch.3x.html21
-rw-r--r--doc/html/man/curs_insstr.3x.html35
-rw-r--r--doc/html/man/curs_instr.3x.html29
-rw-r--r--doc/html/man/curs_inwstr.3x.html21
-rw-r--r--doc/html/man/curs_kernel.3x.html8
-rw-r--r--doc/html/man/curs_legacy.3x.html45
-rw-r--r--doc/html/man/curs_memleaks.3x.html52
-rw-r--r--doc/html/man/curs_mouse.3x.html15
-rw-r--r--doc/html/man/curs_move.3x.html8
-rw-r--r--doc/html/man/curs_opaque.3x.html34
-rw-r--r--doc/html/man/curs_outopts.3x.html84
-rw-r--r--doc/html/man/curs_overlay.3x.html2
-rw-r--r--doc/html/man/curs_pad.3x.html2
-rw-r--r--doc/html/man/curs_print.3x.html16
-rw-r--r--doc/html/man/curs_printw.3x.html62
-rw-r--r--doc/html/man/curs_refresh.3x.html13
-rw-r--r--doc/html/man/curs_scanw.3x.html79
-rw-r--r--doc/html/man/curs_scr_dump.3x.html31
-rw-r--r--doc/html/man/curs_scroll.3x.html11
-rw-r--r--doc/html/man/curs_slk.3x.html7
-rw-r--r--doc/html/man/curs_sp_funcs.3x.html279
-rw-r--r--doc/html/man/curs_termattrs.3x.html27
-rw-r--r--doc/html/man/curs_termcap.3x.html143
-rw-r--r--doc/html/man/curs_terminfo.3x.html188
-rw-r--r--doc/html/man/curs_threads.3x.html28
-rw-r--r--doc/html/man/curs_touch.3x.html22
-rw-r--r--doc/html/man/curs_trace.3x.html2
-rw-r--r--doc/html/man/curs_util.3x.html54
-rw-r--r--doc/html/man/curs_variables.3x.html4
-rw-r--r--doc/html/man/curs_window.3x.html14
-rw-r--r--doc/html/man/default_colors.3x.html52
-rw-r--r--doc/html/man/define_key.3x.html14
-rw-r--r--doc/html/man/form.3x.html45
-rw-r--r--doc/html/man/form_cursor.3x.html11
-rw-r--r--doc/html/man/form_data.3x.html13
-rw-r--r--doc/html/man/form_driver.3x.html33
-rw-r--r--doc/html/man/form_field.3x.html27
-rw-r--r--doc/html/man/form_field_attributes.3x.html27
-rw-r--r--doc/html/man/form_field_buffer.3x.html34
-rw-r--r--doc/html/man/form_field_info.3x.html36
-rw-r--r--doc/html/man/form_field_just.3x.html17
-rw-r--r--doc/html/man/form_field_new.3x.html25
-rw-r--r--doc/html/man/form_field_opts.3x.html30
-rw-r--r--doc/html/man/form_field_userptr.3x.html19
-rw-r--r--doc/html/man/form_field_validation.3x.html161
-rw-r--r--doc/html/man/form_fieldtype.3x.html142
-rw-r--r--doc/html/man/form_hook.3x.html28
-rw-r--r--doc/html/man/form_new.3x.html15
-rw-r--r--doc/html/man/form_new_page.3x.html13
-rw-r--r--doc/html/man/form_opts.3x.html18
-rw-r--r--doc/html/man/form_page.3x.html24
-rw-r--r--doc/html/man/form_post.3x.html17
-rw-r--r--doc/html/man/form_requestname.3x.html28
-rw-r--r--doc/html/man/form_userptr.3x.html15
-rw-r--r--doc/html/man/form_variables.3x.html11
-rw-r--r--doc/html/man/form_win.3x.html37
-rw-r--r--doc/html/man/infocmp.1m.html229
-rw-r--r--doc/html/man/infotocap.1m.html8
-rw-r--r--doc/html/man/key_defined.3x.html6
-rw-r--r--doc/html/man/keybound.3x.html10
-rw-r--r--doc/html/man/keyok.3x.html6
-rw-r--r--doc/html/man/legacy_coding.3x.html14
-rw-r--r--doc/html/man/menu.3x.html43
-rw-r--r--doc/html/man/menu_attributes.3x.html32
-rw-r--r--doc/html/man/menu_cursor.3x.html19
-rw-r--r--doc/html/man/menu_driver.3x.html27
-rw-r--r--doc/html/man/menu_format.3x.html19
-rw-r--r--doc/html/man/menu_hook.3x.html28
-rw-r--r--doc/html/man/menu_items.3x.html17
-rw-r--r--doc/html/man/menu_mark.3x.html15
-rw-r--r--doc/html/man/menu_new.3x.html15
-rw-r--r--doc/html/man/menu_opts.3x.html25
-rw-r--r--doc/html/man/menu_pattern.3x.html15
-rw-r--r--doc/html/man/menu_post.3x.html17
-rw-r--r--doc/html/man/menu_requestname.3x.html15
-rw-r--r--doc/html/man/menu_spacing.3x.html25
-rw-r--r--doc/html/man/menu_userptr.3x.html15
-rw-r--r--doc/html/man/menu_win.3x.html37
-rw-r--r--doc/html/man/mitem_current.3x.html23
-rw-r--r--doc/html/man/mitem_name.3x.html15
-rw-r--r--doc/html/man/mitem_new.3x.html15
-rw-r--r--doc/html/man/mitem_opts.3x.html18
-rw-r--r--doc/html/man/mitem_userptr.3x.html19
-rw-r--r--doc/html/man/mitem_value.3x.html13
-rw-r--r--doc/html/man/mitem_visible.3x.html11
-rw-r--r--doc/html/man/ncurses.3x.html896
-rw-r--r--doc/html/man/ncurses6-config.1.html14
-rw-r--r--doc/html/man/new_pair.3x.html64
-rw-r--r--doc/html/man/panel.3x.html312
-rw-r--r--doc/html/man/resizeterm.3x.html34
-rw-r--r--doc/html/man/scr_dump.5.html91
-rw-r--r--doc/html/man/tabs.1.html157
-rw-r--r--doc/html/man/term.5.html294
-rw-r--r--doc/html/man/term.7.html64
-rw-r--r--doc/html/man/term_variables.3x.html2
-rw-r--r--doc/html/man/terminfo.5.html1652
-rw-r--r--doc/html/man/tic.1m.html282
-rw-r--r--doc/html/man/toe.1m.html52
-rw-r--r--doc/html/man/tput.1.html260
-rw-r--r--doc/html/man/tset.1.html219
-rw-r--r--doc/html/man/user_caps.5.html140
-rw-r--r--doc/html/man/wresize.3x.html6
-rw-r--r--form/Makefile.in52
-rw-r--r--form/READ.ME8
-rw-r--r--form/f_trace.c12
-rw-r--r--form/fld_arg.c8
-rw-r--r--form/fld_attr.c16
-rw-r--r--form/fld_current.c10
-rw-r--r--form/fld_def.c26
-rw-r--r--form/fld_dup.c15
-rw-r--r--form/fld_ftchoice.c8
-rw-r--r--form/fld_ftlink.c12
-rw-r--r--form/fld_info.c20
-rw-r--r--form/fld_just.c22
-rw-r--r--form/fld_link.c18
-rw-r--r--form/fld_max.c10
-rw-r--r--form/fld_move.c16
-rw-r--r--form/fld_newftyp.c8
-rw-r--r--form/fld_opts.c34
-rw-r--r--form/fld_pad.c18
-rw-r--r--form/fld_page.c22
-rw-r--r--form/fld_stat.c20
-rw-r--r--form/fld_type.c18
-rw-r--r--form/fld_user.c20
-rw-r--r--form/form.h207
-rw-r--r--form/form.priv.h88
-rw-r--r--form/frm_cursor.c10
-rw-r--r--form/frm_data.c29
-rw-r--r--form/frm_def.c88
-rw-r--r--form/frm_driver.c125
-rw-r--r--form/frm_hook.c6
-rw-r--r--form/frm_opts.c44
-rw-r--r--form/frm_page.c16
-rw-r--r--form/frm_post.c6
-rw-r--r--form/frm_req_name.c19
-rw-r--r--form/frm_scale.c10
-rw-r--r--form/frm_sub.c18
-rw-r--r--form/frm_user.c20
-rw-r--r--form/frm_win.c18
-rw-r--r--form/fty_alnum.c12
-rw-r--r--form/fty_alpha.c12
-rw-r--r--form/fty_enum.c55
-rw-r--r--form/fty_generic.c23
-rw-r--r--form/fty_int.c57
-rw-r--r--form/fty_ipv4.c22
-rw-r--r--form/fty_num.c33
-rw-r--r--form/fty_regex.c45
-rw-r--r--form/llib-lform192
-rw-r--r--form/llib-lformt192
-rw-r--r--form/llib-lformtw198
-rw-r--r--form/llib-lformw198
-rw-r--r--include/Caps24
-rw-r--r--include/Caps-ncurses12
-rw-r--r--include/Caps.aix424
-rw-r--r--include/Caps.hpux1124
-rw-r--r--include/Caps.keys24
-rw-r--r--include/Caps.osf1r524
-rw-r--r--include/Caps.uwin24
-rwxr-xr-xinclude/MKkey_defs.sh14
-rw-r--r--include/MKterm.h.awk.in63
-rw-r--r--include/Makefile.in37
-rw-r--r--include/capdefaults.c6
-rw-r--r--include/curses.events55
-rw-r--r--include/curses.h.in125
-rw-r--r--include/curses.tail4
-rw-r--r--include/curses.wide6
-rw-r--r--include/headers4
-rw-r--r--include/nc_access.h80
-rw-r--r--include/nc_alloc.h18
-rw-r--r--include/nc_mingw.h23
-rw-r--r--include/nc_string.h8
-rw-r--r--include/nc_termios.h8
-rw-r--r--include/nc_tparm.h14
-rw-r--r--include/nc_win32.h183
-rw-r--r--include/ncurses_cfg.hin4
-rw-r--r--include/ncurses_defs15
-rw-r--r--include/ncurses_dll.h.in70
-rw-r--r--include/ncurses_mingw.h14
-rw-r--r--include/term_entry.h10
-rw-r--r--include/termcap.h.in10
-rw-r--r--include/tic.h11
-rw-r--r--include/win32_curses.h75
-rw-r--r--man/MKada_config.in6
-rw-r--r--man/MKncu_config.in6
-rw-r--r--man/Makefile.in19
-rw-r--r--man/curs_add_wch.3x23
-rw-r--r--man/curs_add_wchstr.3x8
-rw-r--r--man/curs_addch.3x42
-rw-r--r--man/curs_addchstr.3x24
-rw-r--r--man/curs_addstr.3x20
-rw-r--r--man/curs_addwstr.3x4
-rw-r--r--man/curs_bkgd.3x10
-rw-r--r--man/curs_bkgrnd.3x6
-rw-r--r--man/curs_border.3x38
-rw-r--r--man/curs_clear.3x36
-rw-r--r--man/curs_color.3x72
-rw-r--r--man/curs_delch.3x8
-rw-r--r--man/curs_deleteln.3x14
-rw-r--r--man/curs_extend.3x18
-rw-r--r--man/curs_get_wch.3x17
-rw-r--r--man/curs_get_wstr.3x4
-rw-r--r--man/curs_getcchar.3x6
-rw-r--r--man/curs_getch.3x10
-rw-r--r--man/curs_getstr.3x89
-rw-r--r--man/curs_getyx.3x10
-rw-r--r--man/curs_in_wch.3x6
-rw-r--r--man/curs_in_wchstr.3x4
-rw-r--r--man/curs_inch.3x14
-rw-r--r--man/curs_inchstr.3x20
-rw-r--r--man/curs_initscr.3x6
-rw-r--r--man/curs_inopts.3x79
-rw-r--r--man/curs_ins_wch.3x10
-rw-r--r--man/curs_ins_wstr.3x4
-rw-r--r--man/curs_insch.3x12
-rw-r--r--man/curs_insstr.3x24
-rw-r--r--man/curs_instr.3x20
-rw-r--r--man/curs_inwstr.3x4
-rw-r--r--man/curs_kernel.3x10
-rw-r--r--man/curs_legacy.3x28
-rw-r--r--man/curs_memleaks.3x23
-rw-r--r--man/curs_mouse.3x17
-rw-r--r--man/curs_move.3x6
-rw-r--r--man/curs_opaque.3x32
-rw-r--r--man/curs_outopts.3x101
-rw-r--r--man/curs_print.3x6
-rw-r--r--man/curs_printw.3x52
-rw-r--r--man/curs_refresh.3x12
-rw-r--r--man/curs_scanw.3x54
-rw-r--r--man/curs_scr_dump.3x17
-rw-r--r--man/curs_scroll.3x10
-rw-r--r--man/curs_slk.3x10
-rw-r--r--man/curs_sp_funcs.3x289
-rw-r--r--man/curs_termcap.3x102
-rw-r--r--man/curs_terminfo.3x93
-rw-r--r--man/curs_threads.3x14
-rw-r--r--man/curs_touch.3x28
-rw-r--r--man/curs_util.3x37
-rw-r--r--man/curs_variables.3x4
-rw-r--r--man/curs_window.3x31
-rw-r--r--man/default_colors.3x8
-rw-r--r--man/define_key.3x4
-rw-r--r--man/form.3x12
-rw-r--r--man/form_cursor.3x6
-rw-r--r--man/form_data.3x8
-rw-r--r--man/form_driver.3x6
-rw-r--r--man/form_field.3x14
-rw-r--r--man/form_field_attributes.3x20
-rw-r--r--man/form_field_buffer.3x18
-rw-r--r--man/form_field_info.3x18
-rw-r--r--man/form_field_just.3x8
-rw-r--r--man/form_field_new.3x20
-rw-r--r--man/form_field_opts.3x14
-rw-r--r--man/form_field_userptr.3x11
-rw-r--r--man/form_field_validation.3x104
-rw-r--r--man/form_fieldtype.3x119
-rw-r--r--man/form_hook.3x26
-rw-r--r--man/form_new.3x10
-rw-r--r--man/form_new_page.3x8
-rw-r--r--man/form_opts.3x14
-rw-r--r--man/form_page.3x22
-rw-r--r--man/form_post.3x8
-rw-r--r--man/form_requestname.3x17
-rw-r--r--man/form_userptr.3x10
-rw-r--r--man/form_variables.3x5
-rw-r--r--man/form_win.3x18
-rw-r--r--man/infocmp.1m12
-rw-r--r--man/infotocap.1m6
-rw-r--r--man/key_defined.3x4
-rw-r--r--man/keybound.3x4
-rw-r--r--man/keyok.3x4
-rw-r--r--man/legacy_coding.3x8
-rwxr-xr-xman/make_sed.sh6
-rw-r--r--man/manhtml.aliases14
-rw-r--r--man/manhtml.externs4
-rw-r--r--man/manlinks.sed8
-rw-r--r--man/menu_attributes.3x26
-rw-r--r--man/menu_cursor.3x6
-rw-r--r--man/menu_driver.3x10
-rw-r--r--man/menu_format.3x8
-rw-r--r--man/menu_hook.3x26
-rw-r--r--man/menu_items.3x12
-rw-r--r--man/menu_mark.3x10
-rw-r--r--man/menu_new.3x10
-rw-r--r--man/menu_opts.3x14
-rw-r--r--man/menu_pattern.3x10
-rw-r--r--man/menu_post.3x8
-rw-r--r--man/menu_requestname.3x12
-rw-r--r--man/menu_spacing.3x20
-rw-r--r--man/menu_userptr.3x10
-rw-r--r--man/menu_win.3x18
-rw-r--r--man/mitem_current.3x20
-rw-r--r--man/mitem_name.3x10
-rw-r--r--man/mitem_new.3x10
-rw-r--r--man/mitem_opts.3x14
-rw-r--r--man/mitem_userptr.3x10
-rw-r--r--man/mitem_value.3x8
-rw-r--r--man/mitem_visible.3x6
-rw-r--r--man/ncurses.3x187
-rw-r--r--man/new_pair.3x16
-rw-r--r--man/panel.3x237
-rw-r--r--man/resizeterm.3x8
-rw-r--r--man/scr_dump.526
-rw-r--r--man/tabs.169
-rw-r--r--man/term.5130
-rw-r--r--man/term.78
-rw-r--r--man/terminfo.head10
-rw-r--r--man/terminfo.tail184
-rw-r--r--man/tic.1m12
-rw-r--r--man/toe.1m14
-rw-r--r--man/tput.141
-rw-r--r--man/tset.141
-rw-r--r--man/user_caps.523
-rw-r--r--man/wresize.3x4
-rw-r--r--menu/Makefile.in46
-rw-r--r--menu/READ.ME6
-rw-r--r--menu/llib-lmenu98
-rw-r--r--menu/llib-lmenut98
-rw-r--r--menu/llib-lmenutw98
-rw-r--r--menu/llib-lmenuw98
-rw-r--r--menu/m_attribs.c42
-rw-r--r--menu/m_cursor.c24
-rw-r--r--menu/m_driver.c26
-rw-r--r--menu/m_format.c15
-rw-r--r--menu/m_global.c104
-rw-r--r--menu/m_hook.c48
-rw-r--r--menu/m_item_cur.c30
-rw-r--r--menu/m_item_nam.c20
-rw-r--r--menu/m_item_new.c54
-rw-r--r--menu/m_item_opt.c44
-rw-r--r--menu/m_item_top.c26
-rw-r--r--menu/m_item_use.c10
-rw-r--r--menu/m_item_val.c26
-rw-r--r--menu/m_item_vis.c12
-rw-r--r--menu/m_items.c32
-rw-r--r--menu/m_new.c35
-rw-r--r--menu/m_opts.c20
-rw-r--r--menu/m_pad.c24
-rw-r--r--menu/m_pattern.c20
-rw-r--r--menu/m_post.c81
-rw-r--r--menu/m_req_name.c19
-rw-r--r--menu/m_scale.c14
-rw-r--r--menu/m_spacing.c10
-rw-r--r--menu/m_sub.c20
-rw-r--r--menu/m_trace.c20
-rw-r--r--menu/m_userptr.c10
-rw-r--r--menu/m_win.c20
-rw-r--r--menu/menu.h330
-rw-r--r--menu/menu.priv.h40
-rw-r--r--misc/Makefile.in36
-rwxr-xr-xmisc/csort6
-rw-r--r--misc/gen-pkgconfig.in61
-rwxr-xr-xmisc/gen_edit.sh12
-rw-r--r--misc/makedef.cmd8
-rwxr-xr-xmisc/makellib40
-rwxr-xr-xmisc/ncu2openbsd1286
-rw-r--r--misc/ncurses-config.in50
-rw-r--r--misc/run_tic.in4
-rwxr-xr-xmisc/shlib8
-rwxr-xr-xmisc/tdlint24
-rw-r--r--misc/terminfo.src4212
-rw-r--r--mk-0th.awk12
-rw-r--r--mk-1st.awk131
-rw-r--r--mk-2nd.awk15
-rw-r--r--mk-hdr.awk17
-rw-r--r--ncurses/Makefile.in82
-rw-r--r--ncurses/README.IZ6
-rwxr-xr-xncurses/base/MKlib_gen.sh35
-rw-r--r--ncurses/base/keyok.c6
-rw-r--r--ncurses/base/lib_addch.c20
-rw-r--r--ncurses/base/lib_addstr.c10
-rw-r--r--ncurses/base/lib_bkgd.c76
-rw-r--r--ncurses/base/lib_color.c115
-rw-r--r--ncurses/base/lib_dft_fgbg.c8
-rw-r--r--ncurses/base/lib_driver.c4
-rw-r--r--ncurses/base/lib_freeall.c6
-rw-r--r--ncurses/base/lib_getch.c78
-rw-r--r--ncurses/base/lib_getstr.c10
-rw-r--r--ncurses/base/lib_initscr.c9
-rw-r--r--ncurses/base/lib_instr.c6
-rw-r--r--ncurses/base/lib_mouse.c75
-rw-r--r--ncurses/base/lib_newterm.c13
-rw-r--r--ncurses/base/lib_pad.c6
-rw-r--r--ncurses/base/lib_screen.c57
-rw-r--r--ncurses/base/lib_set_term.c50
-rw-r--r--ncurses/base/lib_slkrefr.c6
-rw-r--r--ncurses/base/new_pair.c31
-rw-r--r--ncurses/base/resizeterm.c6
-rw-r--r--ncurses/base/safe_sprintf.c29
-rw-r--r--ncurses/base/wresize.c12
-rw-r--r--ncurses/curses.priv.h339
-rw-r--r--ncurses/llib-lncurses1622
-rw-r--r--ncurses/llib-lncursest1624
-rw-r--r--ncurses/llib-lncursestw2226
-rw-r--r--ncurses/llib-lncursesw2224
-rw-r--r--ncurses/llib-ltic52
-rw-r--r--ncurses/llib-ltict52
-rw-r--r--ncurses/llib-ltictw50
-rw-r--r--ncurses/llib-lticw50
-rw-r--r--ncurses/llib-ltinfo322
-rw-r--r--ncurses/llib-ltinfot324
-rw-r--r--ncurses/llib-ltinfotw320
-rw-r--r--ncurses/llib-ltinfow318
-rw-r--r--ncurses/modules8
-rw-r--r--ncurses/new_pair.h16
-rw-r--r--ncurses/report_offsets.c25
-rw-r--r--ncurses/term.priv.h332
-rw-r--r--[-rwxr-xr-x]ncurses/tinfo/MKcaptab.sh0
-rw-r--r--[-rwxr-xr-x]ncurses/tinfo/MKfallback.sh16
-rw-r--r--[-rwxr-xr-x]ncurses/tinfo/MKkeys_list.sh0
-rw-r--r--[-rwxr-xr-x]ncurses/tinfo/MKuserdefs.sh0
-rw-r--r--ncurses/tinfo/access.c101
-rw-r--r--ncurses/tinfo/alloc_entry.c10
-rw-r--r--ncurses/tinfo/alloc_ttype.c8
-rw-r--r--ncurses/tinfo/captoinfo.c27
-rw-r--r--ncurses/tinfo/comp_expand.c15
-rw-r--r--ncurses/tinfo/comp_parse.c28
-rw-r--r--ncurses/tinfo/comp_scan.c13
-rw-r--r--ncurses/tinfo/doalloc.c13
-rw-r--r--ncurses/tinfo/lib_baudrate.c20
-rw-r--r--ncurses/tinfo/lib_cur_term.c7
-rw-r--r--ncurses/tinfo/lib_data.c10
-rw-r--r--ncurses/tinfo/lib_kernel.c12
-rw-r--r--ncurses/tinfo/lib_longname.c7
-rw-r--r--ncurses/tinfo/lib_napms.c4
-rw-r--r--ncurses/tinfo/lib_options.c6
-rw-r--r--ncurses/tinfo/lib_print.c11
-rw-r--r--ncurses/tinfo/lib_raw.c11
-rw-r--r--ncurses/tinfo/lib_setup.c34
-rw-r--r--ncurses/tinfo/lib_tgoto.c4
-rw-r--r--ncurses/tinfo/lib_tparm.c829
-rw-r--r--ncurses/tinfo/lib_tputs.c56
-rw-r--r--ncurses/tinfo/lib_ttyflags.c6
-rw-r--r--ncurses/tinfo/lib_win32con.c1256
-rw-r--r--ncurses/tinfo/lib_win32util.c134
-rw-r--r--ncurses/tinfo/make_keys.c12
-rw-r--r--ncurses/tinfo/parse_entry.c16
-rw-r--r--ncurses/tinfo/read_entry.c22
-rw-r--r--ncurses/tinfo/read_termcap.c20
-rw-r--r--ncurses/tinfo/tinfo_driver.c139
-rw-r--r--ncurses/tinfo/trim_sgr0.c8
-rw-r--r--ncurses/tinfo/write_entry.c12
-rw-r--r--ncurses/trace/lib_trace.c15
-rw-r--r--ncurses/trace/lib_tracebits.c42
-rw-r--r--ncurses/trace/visbuf.c8
-rwxr-xr-xncurses/tty/MKexpanded.sh6
-rw-r--r--ncurses/tty/hashmap.c4
-rw-r--r--ncurses/tty/lib_mvcur.c115
-rw-r--r--ncurses/tty/lib_tstp.c6
-rw-r--r--ncurses/tty/lib_twait.c4
-rw-r--r--ncurses/tty/lib_vidattr.c22
-rw-r--r--ncurses/tty/tty_update.c72
-rw-r--r--ncurses/wcwidth.h26
-rw-r--r--ncurses/widechar/lib_add_wch.c6
-rw-r--r--ncurses/widechar/lib_cchar.c21
-rw-r--r--ncurses/widechar/lib_erasewchar.c34
-rw-r--r--ncurses/widechar/lib_get_wch.c6
-rw-r--r--ncurses/widechar/lib_get_wstr.c27
-rw-r--r--ncurses/widechar/lib_ins_wch.c6
-rw-r--r--ncurses/widechar/lib_vid_attr.c23
-rw-r--r--ncurses/widechar/widechars.c6
-rw-r--r--ncurses/win32con/gettimeofday.c4
-rw-r--r--ncurses/win32con/wcwidth.c10
-rw-r--r--ncurses/win32con/win32_driver.c1221
-rw-r--r--ncurses/win32con/win_driver.c30
-rw-r--r--package/debian-mingw/changelog4
-rw-r--r--package/debian-mingw/compat2
-rw-r--r--package/debian-mingw/copyright5
-rw-r--r--package/debian-mingw64/changelog4
-rw-r--r--package/debian-mingw64/compat2
-rw-r--r--package/debian-mingw64/copyright5
-rw-r--r--package/debian/changelog4
-rw-r--r--package/debian/compat2
-rw-r--r--package/debian/copyright5
-rwxr-xr-xpackage/debian/rules27
-rw-r--r--package/mingw-ncurses.nsi10
-rw-r--r--package/mingw-ncurses.spec4
-rw-r--r--package/ncurses.map12
-rw-r--r--package/ncurses.spec10
-rw-r--r--package/ncurses.sym6
-rw-r--r--package/ncursest.map12
-rw-r--r--package/ncursest.spec4
-rw-r--r--package/ncursest.sym6
-rw-r--r--package/ncursestw.map14
-rw-r--r--package/ncursestw.sym8
-rw-r--r--package/ncursesw.map14
-rw-r--r--package/ncursesw.sym10
-rw-r--r--panel/Makefile.in43
-rw-r--r--panel/llib-lpanel23
-rw-r--r--panel/llib-lpanelt23
-rw-r--r--panel/llib-lpaneltw23
-rw-r--r--panel/llib-lpanelw23
-rw-r--r--panel/p_above.c6
-rw-r--r--panel/p_below.c6
-rw-r--r--panel/p_bottom.c10
-rw-r--r--panel/p_delete.c17
-rw-r--r--panel/p_hidden.c4
-rw-r--r--panel/p_hide.c6
-rw-r--r--panel/p_move.c4
-rw-r--r--panel/p_new.c58
-rw-r--r--panel/p_replace.c4
-rw-r--r--panel/p_show.c10
-rw-r--r--panel/p_top.c4
-rw-r--r--panel/p_update.c6
-rw-r--r--panel/p_user.c10
-rw-r--r--panel/p_win.c4
-rw-r--r--panel/panel.c34
-rw-r--r--panel/panel.h49
-rw-r--r--panel/panel.priv.h22
-rw-r--r--[-rwxr-xr-x]progs/MKtermsort.sh35
-rw-r--r--progs/Makefile.in60
-rwxr-xr-xprogs/capconvert8
-rw-r--r--progs/clear.c6
-rw-r--r--[-rwxr-xr-x]progs/clear.sh0
-rw-r--r--progs/dump_entry.c82
-rw-r--r--progs/dump_entry.h9
-rw-r--r--progs/infocmp.c36
-rw-r--r--progs/modules10
-rw-r--r--progs/progs.priv.h23
-rw-r--r--progs/reset_cmd.c57
-rw-r--r--progs/reset_cmd.h6
-rw-r--r--progs/tabs.c213
-rw-r--r--progs/tic.c408
-rw-r--r--progs/toe.c81
-rw-r--r--progs/tparm_type.c30
-rw-r--r--progs/tparm_type.h6
-rw-r--r--progs/tput.c150
-rw-r--r--progs/tset.c34
-rw-r--r--progs/tty_settings.c12
-rw-r--r--test/Makefile.in52
-rw-r--r--test/README162
-rw-r--r--test/aclocal.m4953
-rw-r--r--test/back_ground.c300
-rw-r--r--test/background.c5
-rw-r--r--test/blue.c6
-rw-r--r--test/bs.66
-rw-r--r--test/bs.c8
-rw-r--r--test/cardfile.c6
-rw-r--r--test/clip_printw.c7
-rw-r--r--test/color_name.h8
-rwxr-xr-xtest/configure10492
-rw-r--r--test/configure.in23
-rw-r--r--test/demo_defkey.c6
-rw-r--r--test/demo_forms.c32
-rw-r--r--test/demo_menus.c8
-rw-r--r--test/demo_new_pair.c44
-rw-r--r--test/demo_termcap.c6
-rw-r--r--test/demo_terminfo.c10
-rw-r--r--test/ditto.c13
-rw-r--r--test/dots.c23
-rw-r--r--test/dots_curses.c26
-rw-r--r--test/dots_mvcur.c23
-rw-r--r--test/dots_termcap.c29
-rw-r--r--test/dots_xcurses.c25
-rw-r--r--test/dup_field.c392
-rw-r--r--test/filter.c3
-rw-r--r--test/foldkeys.c8
-rw-r--r--test/hanoi.c6
-rw-r--r--test/knight.c10
-rw-r--r--test/list_keys.c8
-rwxr-xr-xtest/listused.sh6
-rwxr-xr-xtest/make-tar.sh61
-rw-r--r--test/mk-test.awk8
-rw-r--r--test/modules16
-rw-r--r--test/move_field.c522
-rw-r--r--test/ncurses.c35
-rw-r--r--test/package/debian-mingw/compat2
-rw-r--r--test/package/debian-mingw/copyright5
-rw-r--r--test/package/debian-mingw64/compat2
-rw-r--r--test/package/debian-mingw64/copyright5
-rw-r--r--test/package/debian/compat2
-rw-r--r--test/package/debian/copyright3
-rw-r--r--test/package/mingw-ncurses-examples.spec10
-rw-r--r--test/padview.c30
-rw-r--r--test/picsmap.c31
-rw-r--r--test/picsmap.h8
-rw-r--r--test/programs12
-rw-r--r--test/railroad.c6
-rw-r--r--test/rain.c4
-rw-r--r--test/redraw.c12
-rw-r--r--test/savescreen.c34
-rw-r--r--[-rwxr-xr-x]test/savescreen.sh0
-rw-r--r--test/tclock.c4
-rw-r--r--test/test.priv.h65
-rw-r--r--test/test_add_wchstr.c13
-rw-r--r--test/test_opaque.c30
-rw-r--r--test/test_sgr.c8
-rw-r--r--test/test_tparm.c489
-rw-r--r--test/test_vid_puts.c6
-rw-r--r--test/test_vidputs.c6
-rw-r--r--test/testcurs.c17
-rw-r--r--[-rwxr-xr-x]test/tput-colorcube0
-rw-r--r--[-rwxr-xr-x]test/tput-initc0
-rwxr-xr-xtest/tracemunch976
-rw-r--r--test/view.c46
-rw-r--r--test/widechars.h4
-rw-r--r--test/xmas.c7
-rw-r--r--test/xterm-16color.dat6
699 files changed, 54759 insertions, 33863 deletions
diff --git a/ANNOUNCE b/ANNOUNCE
index e0603d6..0684b3d 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,4 +1,4 @@
- Announcing ncurses 6.2
+ Announcing ncurses 6.3
Overview
@@ -49,10 +49,10 @@ Overview
Release Notes
- These notes are for ncurses 6.2, released February 12, 2020.
+ These notes are for ncurses 6.3, released October 21, 2021.
This release is designed to be source-compatible with ncurses 5.0
- through 6.1; providing extensions to the application binary interface
+ through 6.2; providing extensions to the application binary interface
(ABI). Although the source can still be configured to support the
ncurses 5 ABI, the reason for the release is to reflect improvements
to the ncurses 6 ABI and the supporting utility programs.
@@ -60,183 +60,116 @@ Release Notes
There are, of course, numerous other improvements, listed in this
announcement.
- The most important bug-fixes/improvements dealt with user-defined
- capabilities in terminal descriptions. The release notes also mention
- some other bug-fixes, but are focused on new features and improvements
- to existing features since ncurses 6.1 release.
+ The most important bug-fixes/improvements dealt with portability
+ issues. The release notes also mention some other bug-fixes, but are
+ focused on new features and improvements to existing features since
+ ncurses 6.2 release.
Library improvements
New features
- There are several new features:
- * O_EDGE_INSERT_STAY tells the form library to optionally delay
- cursor movement on a field edge/boundary
- * O_INPUT_FIELD extension to form library allows a dynamic field to
- shrink if the new limit is smaller than the current field size.
- * added exit_curses and exit_terminfo to replace internal symbols
- for leak-checking.
- * added curses_trace, to replace trace().
+ There are a few new features:
+ * A new (experimental) driver, for the Windows Terminal
+ configuration is provided.
+ * A script is provided which enables OpenBSD users to upgrade their
+ system to use ncurses 6.3 (OpenBSD developers are also invited to
+ do this).
Additionally, to improve performance other changes (and extensions)
are provided in this release:
- * mouse decoding now handles shift/control/alt logic when decoding
- xterm's 1006 mode
- * ncurses now defines a limit for wgetnstr, wgetn_wstr when length
- is negative or "too large".
- * reordered loop-limit checks in winsnstr in case the string has no
- terminating null and only the number of characters is used.
- * there is now no buffer-size limit when reading the $TERMCAP
- variable.
- * the $TERMCAP variable may be interpreted as a fallback to a
- terminfo entry
- * mvcur now decides whether to use hard-tabs, using xt, tbc and hts
- as clues.
- * extended colors are improved by modifying an internal call to
- vid_puts to pass extended color pairs e.g., from tty_update.c and
- lib_mvcur.c
- * the initialization functions now avoid relying upon persistent
- data for the result from getenv
- * scrolling is improved:
- + a limit check in newline_forces_scroll handles the case where
- the row is inside scroll-margins, but not at the end.
- + improved loop limits in _nc_scroll_window handle a case where
- the scrolled data is a pad which is taller than the window.
+ * modify lib_mouse.c to check for out-of-range button numbers,
+ convert those to position reports.
+ * add sp-funcs for erasewchar, killwchar.
Other improvements
These are revised features:
- * used "const" in some prototypes rather than NCURSES_CONST where
- X/Open Curses was updated to do this, e.g., wscanw, newterm, the
- terminfo interface. Also use "const" for consistency in the
- termcap interface, which was withdrawn by X/Open Curses in Issue 5
- (2007). As of Issue 7, X/Open Curses still lacks "const" for
- certain return values, e.g., keyname.
- * modified wbkgd and wbkgrnd to improve compatibility with SVr4
- curses, changing the way the window rendition is updated when the
- background character is modified
- * improved terminfo write/read by modifying the fourth item of the
- extended header to denote the number of valid strings in the
- extended string table (see term(5)).
- * modified the initialization checks for mouse so that the
- xterm+sm+1006 block will work with terminal descriptions not
- mentioning xterm.
+ * modify wgetnstr, wgetn_wstr to improve compatibility with SVr4
+ curses in its treatment of interrupt and quit characters
These were done to limit or ultimately deprecate features:
- * deprecated safe-sprintf, since the vsnprintf function, which does
- what was needed, was standardized long ago.
- * marked vwprintw and vwscanw as deprecated; recommend using
- vw_printw and vw_scanw, respectively.
- * added deprecation warnings for internal functions called by older
- versions of tack.
- * removed unused _nc_import_termtype2 function.
+ * mark wgetch-events feature as deprecated.
+ + prevent KEY_EVENT from appearing in curses.h unless the
+ configure option --enable-wgetch-events is used.
+ + modify MKkey_defs.sh to hide ncurses' definition of
+ KEY_EVENTS to reduce Visual Studio C++ redefinition warnings.
+ * reduce build-warnings by excluding ncurses-internals from
+ deprecation warnings.
These are improvements to existing features:
- * check parameter of set_escdelay, return ERR if negative.
- * check parameter of set_tabsize, return ERR if not greater than
- zero
- * correct a status-check in _nc_read_tic_entry() so that if reading
- a hex/b64 $TERMINFO, and the $TERM does not match, fall-through to
- the compiled-in search list.
- * amend check for repeat_char to handle a case where setlocale() was
- called after initscr
- * move macro for is_linetouched inside NCURSES_NOMACROS ifndef.
- * use _nc_copy_termtype2 rather than direct assignment in setupterm,
- in case it is called repeatedly using fallback terminfo
- descriptions
- * improve workaround for Solaris wcwidth versus line-drawing
- characters
- * add checks in repair_subwindows to keep the current position and
- scroll-margins inside the resized subwindow.
- * correct a buffer-limit in write_entry.c for systems that use
- caseless filenames.
- * improved build-time utility report_offsets:
- + add categories, e.g., "w" for wide-character, "t" for threads
- to make the report more readable. Reorganized the structures
- reported to make the categories more apparent.
- + add NCURSES_GLOBALS and NCURSES_PRESCREEN to report to show
- how similar the different libtinfo configurations are.
- * modified some header files to ensure that those include necessary
- files except for the previously-documented cases
- * added some traces in initialization to show whether a fallback
- entry is used.
- * made minor optimization to reduce calls to _nc_reserve_pairs
+ * drop symbols GCC_PRINTF and GCC_SCANF from <curses.h>, to simplify
+ use.
+ * apply gcc format attribute to prototypes which use a va_list
+ parameter rather than a "..." variable-length parameter list.
+ * modify <term.h> so that it is not necessary to include <curses.h>
+ before <term.h>.
+ * provide for wide-characters as background character in wbkgrnd
+ * improve parameter-checking for tparm, adding function _nc_tiparm()
+ to handle the most-used case, which accepts only numeric
+ parameters.
+ * use return-value from vsnprintf to reallocate as needed to allow
+ for buffers larger than the screen size.
+ * add another fflush(stdout) in _nc_flush to handle time-delays in
+ the middle of strings such as flash when the application uses
+ low-level calls rather than curses.
These are corrections to existing features:
- * fix a special case in PutAttrChar where a cell is marked as
- alternate-character set, but the terminal does not actually
- support the given graphic character. This would happen in an older
- terminal such as vt52, which lacks most line-drawing capability.
- * corrected flag for "seq" method of db 1.8.5 interface, needed by
- toe on some of the BSDs.
- * modify comparison in make_hash.c to correct a special case in
- collision handling for Caps-hpux11
- * add extended_slk_color{,_sp} symbols to the appropriate
- package/*.{map,sym} files
- * modify lib_setup to avoid calling pthread_self() without first
- verifying that the address is valid, i.e., for weak symbols
- * add a couple of broken-linker symbols to the list of versioned
- symbols to help with link-time optimization versus weak symbols.
+ * add a check to guard against repeat_char emitting digits which
+ could be interpreted as BSD-style padding when --enable-bsdpad is
+ configured.
+ * check for screen size-change in scr_init and scr_restore, in case
+ a screen dump does not match the current screen dimensions
Program improvements
Several improvements were made to the utility programs:
- clear
+ tabs
- + improved logic for clearing with the E3 extension, in case
- the terminal scrolls content onto its saved-lines before
- actually clearing the display, by clearing the saved-lines
- after clearing the display
-
- infocmp
-
- + omit filtering of "OTxx" names which are used for obsolete
- capabilities, when the output is sorted by long-names. This
- change helps when making a table of the short/long capability
- names.
+ + implement "+m" option
tic
- + added check for consistent alternate character set
- capabilities.
- + added check for paired indn/rin.
- + added check for terminals with parm_dch vs parm_ich.
- + added check for the case where setf/setb are given using
- different strings, but provide identical results to
- setaf/setab.
- + corrected check for ich1.
- + changed a too-large terminal entry from a fatal error to a
- warning.
+ + add check for duplicate "use=" clauses.
+ + add check to report instances where tparm would detect an
+ error in an expression.
+ + add user-defined capabilities from mintty to Caps-ncurses,
+ for checking consistency.
+ + improve warning when oc/op do not mention SGR 39/49 for xterm
+ compatible XT flag.
+ + improve checks for number of parameters of smglp, smgrp,
+ smgtp, and smgbp.
+ + improve "-c" option to validate the number and type of
+ parameters and compare against expected number/type before
+ deciding which set of parameter-lists to use in tparm calls.
+ + improve check for errors detected in tparm.
+ + improve format of output, to ensure that the messages contain
+ only printable text.
+ + modify to eliminate unnecessary "\" to escape ":" in terminfo
+ format.
+ + remove check that assumes that none or both parameterized and
+ non-parameterized margin-setting capabilities are present.
toe
- + ignores any hex/b64 $TERMINFO value in the list of terminfo
- databases.
-
- tset
-
- + replace check in reset command for obsolete "pt" capability
- using tbc and hts capabilities as clues
- + modify reset to allow for tabstops at intervals other than 8.
- + change reset's behavior for margins to simply clear
- soft-margins if possible, rather than clearing and then
- setting them according to the terminal's width.
+ + modify output of "toe -as" to show first description found
+ rather than the last.
+ + add a check to ensure that a "termcap file" is text rather
+ than binary.
tput
- + add "x" to getopt string so that "tput -x clear" works.
-
- Several changes were made to the generated ncurses*config scripts and
- the analogous ".pc" files to reduce differences between the
- configurations they report:
- * modified the ncurse*-config and pc-files to more closely match for
- the -I and -l options.
- * filtered out linker-specs from the --libs report.
- * amended the ncurses*-config and pc-files to take into account the
- rpath hack which differed between those files.
- * modified generated ncurses*config and ncurses.pc, ncursesw.pc,
- etc., to list helper libraries such as gpm for static linking.
+ + modify to allow multiple commands per line.
+ + improve parameter-checking by analyzing all extended string
+ capabilities, e.g., as used in the Cs and Ms capabilities of
+ the tmux description.
+ + make warning messages consistently using alias names when
+ those are used, rather than the underlying program's name.
+ + improve usage message for aliases such as clear, by
+ eliminating tput-specific portions.
+ + modify initialization to avoid opening /dev/tty for cases
+ other than reset/init, e.g., for clear.
Examples
@@ -245,155 +178,122 @@ Release Notes
test-packages. A few changes are more generally useful, e.g., for the
main ncurses test-program, and for analyzing traces using the
tracemunch script:
- * improve recovery from error when reading command-character in
- test/ncurses.c, showing the relevant error message and not exiting
- on EINTR.
- * improve tracemunch, by keeping track of TERMINAL* values, and if
- tracing was first turned on after initialization, attempt to show
- distinct screen, window and terminal names anyway.
- * modify tracemunch to accept filename parameters in addition to use
- as a pipe/filter.
- * update tracemunch to work with perl 5.26.2, which changed the
- rules for escaping regular expressions.
- * add some checks in tracemunch for undefined variables.
- * modify TurnOn/TurnOff macros (in lib_vidattr.c and lib_vid_attr.c)
- to avoid expansion of "CUR" in trace.
+ * add "-r" option to the dots test-programs, to help with scripting
+ a performance comparison.
+ * build-fix for test_opaque, for configurations without opaque
+ curses structs, e.g., ncurses 5.7.
+ * improve tracemunch logic for "RUN" compaction.
+ * improve tracemunch's coverage of form/menu/panel libraries.
+ * improve tracemunch's checking/reporting the type for the first
+ parameter, e.g., "WINDOW*" rather than "#1".
+ * modify tracemunch and the panel library to show readable traces
+ for panel- and user-pointers.
There are other new demo/test programs and reusable examples:
- color_content
- Demonstrate the color_content and extended_color_content
- functions.
-
- demo_tabs
- A simple demo of tabs in curses.
-
- dump_window
- A portable curses screen-dump, used to compare ncurses screen
- contents with Solaris.
-
- pair_content
- Demonstrate the pair_content and extended_pair_content
- functions.
-
- report_hashing
- Check hash-tables used for terminfo and termcap names.
-
- parse_rgb
- Sample implementation of the ncurses RGB extension from
- user_caps.5, used in picsmap and savescreen programs.
-
- A variety of improvements were made to existing programs, both new
- features as well as options added to make the set of programs more
- consistent.
- * add "-l" option to test/background, to dump screen contents in a
- form that lets different curses implementations be compared.
- * add "@" command to test/ncurses F-test, to allow rapid jump to
- different character pages.
- * added enum, regex examples to test/demo_forms
- * amend Scaled256() macro in test/picsmap.c to cover the full range
- 0..1000
- * corrected pathname used in Ada95 sample programs for explain.txt,
- to work with test-packages, and used an awk script to split the
- resulting pathname when it would be too long for a single line.
- * ignore interrupted system-call in test/ncurses's command-line,
- e.g., if the terminal were resized.
- * improved ifdef's for TABSIZE variable, to help with AIX/HPUX
- ports.
+ back_ground
+ to exercise the wide-character background functions.
+
+ move_field
+ to demonstrate move_field, and a stub for a corresponding demo
+ of dup_field.
+
+ test_tparm
+ for checking tparm changes.
Terminal database
There are several new terminal descriptions:
- alacritty, domterm, kitty, mintty, mintty-direct, ms-terminal,
- n7900, nsterm-build309, nsterm-direct, screen5, ti703, ti707,
- ti703-w, ti707-w vscode, vscode-direct, xterm-mono, xterm.js
+ absolute, att610+cvis, foot, foot-direct, hp98550-color,
+ hpterm-color2, hterm, hterm-256color, linux-s, putty+keypad,
+ putty+screen, putty-screen, screen.linux-s, scrt/securecrt,
+ tmux-direct, vt220+cvis, vt220+cvis8, vt220+pcedit, vt220+vtedit,
+ vt220-base, vt52+keypad, xterm+256color2, xterm+88color2,
+ xterm-direct16, xterm-direct256, xterm+nofkeys, and
+ xterm+nopcfkeys.
There are many changes to existing terminal descriptions. Some were
updates to several descriptions:
- * use ansi+rep in a dozen places
- * add rs1 to konsole, mlterm
- * improve several flash capabilities with trailing mandatory delays
- * drop ich1 from rxvt-basic, Eterm and mlterm to improve
- compatibility with old non-curses programs
- * add/use xterm+keypad in xterm-new
- * use xterm+sl-twm for consistency, nine places
- * improve xm example in xterm+x11mouse and xterm+sm_1006.
+ * correct use-ordering in some xterm-direct flavors
+ * fix some sgr inconsistencies in d230c, ibm6153, ibm6154,
+ ncrvt100an
+ * improve vt50h and vt52 based on DECScope manual
+ * use hp+arrows in a few places
+ * use hp+pfk-cr in a few places
+ * use vt220+cvis in st, terminology, termite since they ignore
+ blinking-cursor detail in att610+cvis
while others affected specific descriptions. These were retested, to
take into account changes by their developers:
- terminator, st
+ kitty+common, mlterm3, ms-terminal
while these are specific fixes based on reviewing documentation, user
reports, or warnings from tic:
- adds200:
-
- + fix typo
-
- gnome-256color
-
- + base entry on "gnome", not "vte", for consistency
+ aaa+dec, aaa+rv
+ correct rmacs/smacs
- interix
+ aaa+rv
+ correct sgr
- + trim unnecessary setf/setb
+ icl6404
+ correct csr
- linux-16color
+ kitty
+ use att610+cvis, xterm+tmux and ansi+enq
- + accommodate Linux console driver incompatibility introduced
- in early 2018
+ konsole-base
+ re-enable "bel"
- nsterm-256color:
+ linux2.6
+ fix pound-sign mapping in acsc
- + add nsterm-build309 to replace nsterm-256color, assigning the
- latter as an alias of nsterm, to make mouse work with
- nsterm-256color
+ linux3.0
+ modify to reflect default mapping of shift-tab by kbd 1.14
- regent40:
+ pccons
+ fill in some missing pieces, to make it comparable to the vt220
+ entry
- + renumber function-keys to match manual
+ putty
+ use vt100+fnkeys, add rep
- regent60:
-
- + add cd (clr_eos)
- + corrected acsc
- + add shifted function-keys
-
- tvi950:
-
- + added function-key definitions to agree with Televideo 950
- manual
- + corrected acsc
- + remove bogus kf0
- + add bel
-
- tvi955:
-
- + fix typo
+ screen
+ use vt100+enq
- vi200:
+ terminator
+ corrected tsl capability
- + add acsc string, including right/down-arrow
+ ti916
+ correct cup
- wy50:
+ tmux
+ change kbs to ^?
- + corrected acsc
+ vt220
+ use vt220+cvis
- wy50 and wy60:
+ vt420+lrmm
+ add smglp and smgrp
- + add shifted function-keys as kF1 to kF16
+ vt420
+ use vt420+lrmm
- xterm+x11hilite:
+ xterm-new
+ add nel
- + eliminate unused p5 parameter.
+ xterm-vt52
+ use vt52+keypad
A few entries use extensions (user-defined terminal capabilities):
- * use xterm+sm+1006 (aka "SGR 1006 mouse") for konsole-base and
- putty
- * add Smol/Rmol user-defined capability to tmux and vte-2018
- * add Smulx user-defined capability to tmux, vte-2018
+ * add shifted Linux console keys in linux+sfkeys entry for
+ screen.linux
+ * add Smulx to alacritty
+ * add kbeg to xterm+keypad to accommodate termcap applications
+ * add extensions in xterm+tmux and ecma+strikeout to ms-terminal,
+ but cancel the non-working Cr and Ms capabilities
Documentation
@@ -408,173 +308,73 @@ Release Notes
features and show how they evolved, there are corrections,
clarifications, etc.:
* Corrections:
- + correct error-returns listed in manual pages for a few form
- functions
- + corrected prototypes in several manpages using script to
- extract those in compilable form.
- + fix typo in term.5, improve explanation of format
- * Clarify in manual pages that vwprintw and vwscanw are obsolete.
- They have not been part of X/Open Curses since 2007.
+ + make opts extension for getcchar work as documented for
+ ncurses 6.1, adding "-g" flag to demo_new_pair to illustrate.
+ + modify tset "-q" option to refrain from modifying terminal
+ modes, to match the documentation.
* New/improved history and portability sections:
- + curs_addch.3x gives some background for ACS symbols.
- + curs_getcchar.3x explains a difference between ncurses and
- X/Open Curses.
- + curs_getstr.3x gives historical/portability background for
- the length parameter of wgetnstr.
- + curs_slk.3x lists a few differences between SVr4 curses and
- X/Open Curses for soft-keys.
- + curs_terminfo.3x explains that the initial implementation of
- terminfo in SVr2 was mostly replaced by other developers in
- SVr3.
- + infocmp.1 explains that the initial version of terminfo had
- no tool for decompiling descriptions. That came later, with
- SVr3, with a different developer.
- + tabs.1 tells more than you wanted to know about the tool.
- + tic.1 explains that the initial version of terminfo had a
- rudimentary tool (based on termcap) for compiling entries.
- The tool used with Unix was developed by others for SVr3.
- + toe.1 explains the origin of this tool.
- * Improvements for user_caps.5:
- + mention meml, memu and box1
- + expanded description of XM
- + add a clarification regarding the RGB capability.
- + mention user_caps.5 in the tic and infocmp manual pages.
+ + improve documentation for tparm and static/dynamic variables.
+ + add history note to curs_scanw.3x for <stdarg.h> and
+ <varargs.h>
+ + add history note to curs_printw.3x for <stdarg.h> and
+ <varargs.h>
+ + add portability note to ncurses.3x regarding <stdarg.h>
+ + add historical notes to tput, curses-terminfo and
+ curses-color manpages based on source-code for SVr2, SVr3 and
+ SVr4.
+ + improve history section for tset manpage based on the 1BSD
+ tarball, which preceded BSD's SCCS checkins by more than
+ three years.
* Other improvements:
- + curs_add_wch.3x adds note about Unicode terminology for the
- line-drawing characters.
- + curs_color.3x improves discussion of error returns and
- extensions.
- + curs_mouse.3x explains how the kmous and XM capabilities are
- used for xterm-mouse input.
- + curs_refresh.3x improves documentation regarding the virtual
- and physical screens.
- + curs_util.3x mentions a difference between SVr4 and X/Open
- Curses for unctrl.h
- + curs_variables.3x improves description of the init_tabs
- capability and TABSIZE variable.
- + ncurses.3x improves documentation regarding feature-test
- macros in curses.h
- + resizeterm.3x about top-level windows which touch the
- screen's borders.
- + tput.1 clarifies how tput determines the terminal size.
+ + explain in ncurses.3x that functions in the tinfo library do
+ not rely upon wide-characters.
+ + improve manual page for panel library, extending the
+ portability section as well as documenting error-returns.
+ + add section on margins to terminfo.5, adapted from X/Open
+ Curses.
+ + improve man/term.5 section on legacy storage format.
+ + add a note in terminfo.5 explaining that no-parameter strings
+ such as sgr0 or cnorm should not be used with tparm.
+ + improve description of BSD-style padding in curs_termcap.3x
+ + improve discussion of padding versus tparm and tputs in
+ man/curs_terminfo.3x
+ + add a note in manual page to explain ungetch vs unget_wch.
+ + improve description of error-returns in waddch and waddnstr
+ manual pages.
There are no new manual pages (all of the manual page updates are to
existing pages).
Some of the improvements are more subtle, relating to the way the
- information is presented. For instance, the generated terminfo.5 file
- uses a different table layout, allowing it to use space on wide
- terminals more effectively.
+ information is presented. For instance, hyphenation is suppressed in
+ the HTML files generated from manual pages because an upgrade to groff
+ gave noticeably poorer results, interfering with the process of
+ creating links between the resulting webpages.
Interesting bug-fixes
- While there were many bugs fixed during development of ncurses 6.2,
+ While there were many bugs fixed during development of ncurses 6.3,
only a few (the reason for this release) were both important and
interesting. Most of the bug-fixes were for local issues which did not
affect compatibility across releases. Since those are detailed in the
NEWS file no elaboration is needed here.
- The interesting bugs were in tic/infocmp's handling of user-defined
- capabilities. These were not recent bugs. Initially it was a simple
- problem:
- * The user-defined capabilities can be any type (boolean, number or
- string), but once given a type all uses of the name must conform
- to that type--unless some special support for a particular
- multi-typed name is built into ncurses.
- * One of simpleterm's contributors copied some definitions for using
- tmux's user-defined capabilities in late in 2016.
-
-diff --git a/st.info b/st.info
-@@ -185,7 +185,10 @@ st| simpleterm,
- tsl=\E]0;,
- xenl,
- vpa=\E[%i%p1%dd,
--
-+# Tmux unofficial extensions, see TERMINFO EXTENSIONS in tmux(1)
-+ Se,
-+ Ss,
-+ Tc,
-
- st-256color| simpleterm with 256 colors,
- use=st,
-
- * Later, in (referring to a version from mid-2017), a user asked to
- have it updated in ncurses.
- * However, it had an error from the change in late 2016. The
- terminal description made what tmux expected to be string actually
- a boolean.
- Over the years, there were problems with each of simpleterm's
- terminal descriptions. I repaired those, and usually dealt with
- the problem.
- * The difference in this case was that when compiling the terminal
- database, tic may have in memory the definitions for more than one
- terminal description (so that it can resolve "use=" clauses).
- Seeing two different types for the same name, in certain
- situations it would incorrectly merge the symbol tables for the
- two terminal descriptions.
- * On simpleterm's side, their bug was finally fixed in late 2019,
- three years after the bug was created.
-
- For ncurses, the elapsed time to fix this bug was less than three
- years. Someone reported a problem with the terminal description a few
- weeks after releasing ncurses 6.1 (in tmux #1264), and the terminal
- description was updated that week (ncurses patch 20180224):
-
-20180224
- + modify _nc_resolve_uses2() to detect incompatible types when merging
- a "use=" clause of extended capabilities. The problem was seen in a
- defective terminfo integrated from simpleterm sources in 20171111,
- compounded by repair in 20180121.
- + correct Ss/Ms interchange in st-0.7 entry (tmux #1264) -TD
-
- The larger part of that change added a check to prevent a simple merge
- of terminal descriptions where the same user-defined name was used
- with different types. But it raised some questions:
- * Was there a reliable way to manage terminal descriptions which
- used the same extended name in different ways?
- * Should ncurses provide a registry of well-known extended names,
- with their types?
-
- Since the correction to terminfo.src could have been readily adopted
- by packagers, there was nothing more to be done from ncurses'
- standpoint on that part. But improving ncurses to prevent issues like
- that is the reason for making a release.
-
- Nothing more (constructive) was mentioned with regard to simpleterm.
- But a few problems were found in the handling of user-defined
- capabilities:
- * Forward-references to user-defined capabilities in a "use=" clause
- did not allocate new data for each use. In tic, successive
- compilation of terminal entries could add user-defined
- capabilities to the wrong terminal entry.
- This was not noticed before, since xterm's terminal descriptions
- were the main users of the feature, and almost all of the uses of
- the building-blocks which contained user-defined capabilities were
- backward-references.
- * There is one (documented) case where ncurses 6.1 supports a
- user-defined capability that could be any type (i.e., "RGB"). The
- check added in February 2018 to guard against mismatches did not
- handle all of the combinations needed.
-
- Both of these issues dated from the original implementation of
- user-defined capabilities. Fixing them does not change the terminal
- database, but a older tic without the fixes will not be able to handle
- terminfo sources which rely upon those fixes. Starting in June 2019,
- the download link for the terminfo source file was capped at that
- date. The development sources have an up-to-date copy of the file, for
- people with a legitimate need for it.
-
- The "-c" (check) option of tic is not very useful if it cannot offer
- advice on parameters needed for user-defined capabilities. The various
- Caps files were reorganized to reduce redundancy, and in the common
- portion (Caps-ncurses), a registry of user-defined capabilities is
- provided for use by tic. While users can still define their own custom
- capabilities, tic will not offer any advice when their parameters do
- not match.
-
- In ncurses 6.2, tic makes a special check to allow any type for RGB,
- but its being able to do this relies upon fixes made in the ncurses
- library in mid-2019.
+ The interesting bugs were:
+ * modify wbkgd and wbkgrnd to avoid storing a null in the background
+ character, because it may be used in cases where the corresponding
+ 0x80 is not treated as a null.
+ This was a regression introduced in ncurses 6.2 (reported on the
+ mailing list), for which the workaround was to specify a blank for
+ the background character.
+ * remove output-related checks for nl/nonl (also reported on the
+ mailing list).
+ * improve tparm implementation of %P and %g, more closely matching
+ SVr4 terminfo. Those denote static and dynamic variables in
+ terminfo expressions.
+ Exactly what those terms meant was never documented before in any
+ implementation of curses, aside from source code. Unlike the other
+ two fixes, the problem was discovered while studying OpenBSD's
+ version of tset.
Configuration changes
@@ -588,93 +388,84 @@ diff --git a/st.info b/st.info
There are a few new/modified configure options:
- --with-config-suffix
- helps work around a filename conflict with Debian packages
- versus test-packages.
+ --enable-fvisibility
+ new configure option and check for gcc -fvisibility=hidden
+ feature
- --with-ada-libname
- allows one to rename the "AdaCurses" library (at least one
- packager prefers a lowercase name).
+ --enable-leaks
+ corrected to allow turning leak-checking off later in a set of
+ options.
- --with-fallbacks
- now ensures there is a value, and adds the fallback information
- to top-level Makefile summary.
+ --enable-stdnoreturn
+ new configure option makes the _Noreturn keyword optional to
+ ease transition.
- --with-pcre2
- check for pcre-posix library to help with MinGW port.
+ --disable-pkg-ldflags
+ revised option also controls whether $LDFLAGS from the build is
+ provided in "-config" and ".pc" files.
- --with-tic-path and
+ --disable-root-access
+ add configure option which tells ncurses to disallow most
+ file-opens by setuid processes.
- --with-infocmp-path
- help work around problems building fallback source using
- pre-6.0 tic/infocmp.
+ --disable-wattr-macros
+ changed default to help packagers who reuse wide ncursesw
+ header file with non-wide ncurses library.
- --with-versioned-syms
- option value can now be a relative pathname.
+ --with-pkg-config-libdir
+ revised option uses the actual search path from pkg-config or
+ pkgconf using the output from --debug.
+
+ --with-ada-libname
+ --with-form-libname
+ --with-menu-libname
+ --with-panel-libname
+ new several --with-xxx-libname options, to help with pkgsrc
Portability
Many of the portability changes are implemented via the configure
script:
- * ignore $TERMINFO as a default value in configure script if it came
- from the infocmp -Q option.
- * distinguish gcc from icc and clang when the --enable-warnings
- option is not used, to avoid unnecessary warnings about
- unrecognized inline options
- * consistently prepend new libraries as they are found during
- configuration, rather than relying upon the linker to resolve
- order dependencies of libraries.
- * modified configure scripts to reduce relinking/ranlib during
- library install :
- + use "install -p" when available, to avoid need for ranlib of
- static libraries.
- + scripts which use "--disable-relink;" add a 1-second sleep to
- work around tools which use whole-second timestamps, e.g., in
- utime rather than the actual file system resolution.
- * add configure check for getenv to work around implementation shown
- in Emscripten which overwrites the previous return value on each
- call.
- Use that to optionally suppress START_TRACE macro, whose call to
- getenv may not work properly
- * change target configure level for _XOPEN_SOURCE to 600 to address
- use of vsscanf and setenv.
- * reduce use of _GNU_SOURCE for current glibc where _DEFAULT_SOURCE
- combines with _XOPEN_SOURCE
- Allow for Cygwin's newlib when checking for the _DEFAULT_SOURCE
- symbol.
- MidnightBSD is now checked for the _XOPEN_SOURCE-related
- definitions.
- * If the check for va_copy or __va_copy fails,
- + configure now tries copying the pointers for va_list, or as
- an array.
- + alternatively, it checks for __builtin_va_copy(), which could
- be used with AIX xlc in c89 mode.
- * several changes to support a port to Ultrix 3.1:
- + check if "b" binary feature of fopen works
- + check for missing feature of locale.h
- + add fallback for strstr() in test-programs
- + add fallback for STDOUT_FILENO in test-programs
- * The test/configure script (used for ncurses-examples) is improved:
- + work around non-ncurses termcap.h file, e.g., in Slackware.
- + check for TABSIZE variable.
- + checks for the X11/Intrinsic.h header, accommodate recent
- MacOS changes which largely emptied /usr/include.
+ * add a special case in the configure script to work around one of
+ the build-time breakages reported for OpenBSD 6 here:
+
+ https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ * modify configure check for libtool to prevent accidental use of an
+ OpenBSD program which uses the same name.
+ * modify configuration checks for build-time tic/infocmp to use
+ AC_CHECK_TOOL. That can still be overridden by --with-tic-path and
+ --with-infocmp-path when fallbacks are used, but even if not using
+ fallbacks, the improved check may help with cross-compiling.
+ * relax modification-time comparison in CF_LINK_FUNCS to allow it to
+ accept link() function with NFS filesystems which change the mtime
+ on the link target, e.g., several BSD systems.
+ * modify configure check for c89/c99 aliases of clang to use its
+ -std option instead, because some platforms, in particular macOS,
+ do not provide workable c89/c99 aliases.
+ * modify CF_NCURSES_CONFIG to work around Xcode's c99 "-W" option,
+ which conflicts with conventional use for passing linker options.
+ * modify configure scripts to filter out redefinitions of
+ _XOPEN_SOURCE, e.g., for NetBSD which generally supports 500, but
+ 600 is needed for ncursesw.
Here are some of the other portability fixes:
- * added dummy "check" rule in top-level and test-Makefile to
- simplify building test-packages for ArchLinux.
- * dropped library-dependency on psapi for MinGW port, since
- win_driver.c defines PSAPI_VERSION to 2, making it use
- GetProcessImageFileName from kernel32.dll
- * made build-fixes for configuration using --program-suffix with
- Ada95, noticed with MacOS but applicable to other platforms
- without libpanelw, etc.
- * modified ncurses/Makefile.in to fix a case where Debian/testing
- changes to the ld --as-needed configuration broke ncurses-examples
- test packages.
- * used _WIN32/_WIN64 in preference to __MINGW32__/__MINGW64__
- symbols to simplify building with Microsoft Visual C++, since the
- former are defined in both compiler configurations.
+ * change configure-check and source-code for gcc's noreturn
+ attribute to assume it is a prefix rather than suffix, matching
+ c11's _Noreturn convention.
+ * modify mk-1st.awk to account for extra-suffix configure option.
+ * build-fix for termsort module when configured with termcap.
+ * modify configure script and makefiles to support ".PHONY" make
+ program feature.
+ * amend libtool configuration to add dependency for install.tic,
+ etc., in ncurses/Makefile on the lower-level libraries.
+ * modify Ada95 source-generation utility to write to a file given as
+ parameter rather than to the standard output, allowing builds with
+ MinGW.
+ * amend tic/infocmp check to allow for the respective tool's
+ absence.
+ * build-fixes for gnat 10.1.1, whose gnatmake drops integration with
+ gprbuild.
+ * correct configure version-check/warning for g++ to allow for 10.x
_________________________________________________________________
Features of ncurses
@@ -705,7 +496,7 @@ Features of ncurses
curses.
* The ncurses utilities have options to allow you to filter terminfo
entries for use with less capable curses/terminfo versions such as
- the HP/UX and AIX ports.
+ the HP-UX and AIX ports.
The ncurses package also has many useful extensions over SVr4:
* The API is 8-bit clean and base-level conformant with the X/OPEN
@@ -729,6 +520,7 @@ Features of ncurses
use of function keys, e.g., disabling the ncurses KEY_MOUSE, or by
defining more than one control sequence to map to a given key
code.
+ * Support for direct-color terminals, such as modern xterm.
* Support for 256-color terminals, such as modern xterm.
* Support for 16-color terminals, such as aixterm and modern xterm.
* Better cursor-movement optimization. The package now features a
@@ -772,7 +564,7 @@ Features of ncurses
* The table-of-entries utility toe makes it easy for users to see
exactly what terminal types are available on the system.
* The library meets the XSI requirement that every macro entry point
- have a corresponding function which may be linked (and will be
+ has a corresponding function which may be linked (and will be
prototype-checked) if the macro definition is disabled with
#undef.
* Extensive documentation is provided (see the Additional Reading
@@ -854,7 +646,7 @@ Applications using ncurses
mosh
a replacement for ssh.
- https://mosh.mit.edu/
+ https://mosh.org/
tack
terminfo action checker
@@ -903,7 +695,7 @@ Development activities
Ongoing development work is done by Thomas E. Dickey. Thomas E. Dickey
has acted as the maintainer for the Free Software Foundation, which
- holds a copyright on ncurses for releases 4.2 through 6.1. Following
+ held a copyright on ncurses for releases 4.2 through 6.1. Following
the release of ncurses 6.1, effective as of release 6.2, copyright for
ncurses reverted to Thomas E. Dickey (see the ncurses FAQ for
additional information).
@@ -930,8 +722,8 @@ Development activities
Patches to the current release are made available at
- ftp://ftp.invisible-island.net/ncurses/6.1/ and
- https://invisible-mirror.net/archives/ncurses/6.1/ .
+ ftp://ftp.invisible-island.net/ncurses/6.2/ and
+ https://invisible-mirror.net/archives/ncurses/6.2/ .
There is an archive of the mailing list here:
@@ -944,6 +736,7 @@ Related resources
* ncurses licensing
* Symbol versioning in ncurses
* Comments on ncurses versus slang (S-Lang)
+ * Comments on OpenBSD
* tack - terminfo action checker
* tctest - termcap library checker
* Terminal Database
diff --git a/AUTHORS b/AUTHORS
index 0018842..09dfc9a 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 2006,2017 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,13 +26,13 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: AUTHORS,v 1.4 2020/02/02 23:34:34 tom Exp $
+-- $Id: AUTHORS,v 1.5 2021/06/17 21:20:30 tom Exp $
-------------------------------------------------------------------------------
These are the principal authors/contributors of ncurses since 1.9.9e,
in decreasing order of their contribution:
TD Thomas E. Dickey
-JPF Juergen Pfeifer
+JPF Juergen Pfeifer
ESR Eric S Raymond
AVL Alexander V Lukyanov
PB Philippe Blain
diff --git a/Ada95/Makefile.in b/Ada95/Makefile.in
index 67625d7..75cfef1 100644
--- a/Ada95/Makefile.in
+++ b/Ada95/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.23 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.28 2021/07/03 18:54:54 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2010,2015 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -31,7 +31,7 @@
# Author: Juergen Pfeifer, 1996
#
# Version Control
-# $Revision: 1.23 $
+# $Revision: 1.28 $
#
SHELL = @SHELL@
VPATH = @srcdir@
@@ -39,9 +39,24 @@ THIS = Makefile
SUBDIRS = @ADA_SUBDIRS@
-CF_MFLAGS = @cf_cv_makeflags@
+TOP_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)" RPATH_LIST="$(RPATH_LIST)"
@SET_MAKE@
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : depend
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
libs \
sources \
@@ -50,19 +65,19 @@ install.libs \
uninstall \
uninstall.libs ::
for d in $(SUBDIRS); do \
- (cd $$d ; $(MAKE) $(CF_MFLAGS) $@) ;\
+ ( cd $$d && $(MAKE) $(TOP_MFLAGS) $@ ) ;\
done
clean \
mostlyclean ::
for d in $(SUBDIRS); do \
- (cd $$d ; $(MAKE) $(CF_MFLAGS) $@) ;\
+ ( cd $$d && $(MAKE) $(TOP_MFLAGS) $@ ) ;\
done
distclean \
realclean ::
for d in $(SUBDIRS); do \
- (cd $$d ; $(MAKE) $(CF_MFLAGS) $@) ;\
+ ( cd $$d && $(MAKE) $(TOP_MFLAGS) $@ ) ;\
done
rm -rf lib
for lib_kind in static dynamic; do \
@@ -72,6 +87,8 @@ realclean ::
-rm -f config.cache config.log config.status include/ncurses_cfg.h
-rm -f Makefile
+depend :
+
tags :
@
diff --git a/Ada95/README b/Ada95/README
index d014f32..2e66625 100644
--- a/Ada95/README
+++ b/Ada95/README
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-2002,2003 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -29,6 +29,6 @@
-- Author: Juergen Pfeifer, 1996
-The documentation is provided in HTML format in the ./html
+The documentation is provided in HTML format in the ./html
subdirectory. The main document is named index.html
diff --git a/Ada95/TODO b/Ada95/TODO
index 122275f..1035495 100644
--- a/Ada95/TODO
+++ b/Ada95/TODO
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-1999,2006 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: TODO,v 1.6 2020/02/02 23:34:34 tom Exp $
+-- $Id: TODO,v 1.8 2021/09/01 23:22:33 tom Exp $
-------------------------------------------------------------------------------
-- Intensive testing
@@ -36,12 +36,12 @@
Like most WEB pages: under continuous construction
-- Style cleanup
-
+
-- Alternate functions for procedures with out params
Comfort purpose
-- Sample program
- Under continuous construction (and it's not a WEB page!!!)
+ Under continuous construction (and it is not a WEB page!!!)
-- Make the binding objects a shared library
They are rather large, so it would make sense, otherwise Ada95
diff --git a/Ada95/aclocal.m4 b/Ada95/aclocal.m4
index 7438acc..75e68c7 100644
--- a/Ada95/aclocal.m4
+++ b/Ada95/aclocal.m4
@@ -1,5 +1,5 @@
dnl***************************************************************************
-dnl Copyright 2018-2019,2020 Thomas E. Dickey *
+dnl Copyright 2018-2020,2021 Thomas E. Dickey *
dnl Copyright 2010-2017,2018 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey
dnl
-dnl $Id: aclocal.m4,v 1.153 2020/02/08 21:04:00 tom Exp $
+dnl $Id: aclocal.m4,v 1.185 2021/10/17 15:16:03 tom Exp $
dnl Macros used in NCURSES Ada95 auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
@@ -100,10 +100,11 @@ AC_DEFUN([CF_ADD_ADAFLAGS],[
AC_SUBST(ADAFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_CFLAGS version: 13 updated: 2017/02/25 18:57:40
+dnl CF_ADD_CFLAGS version: 15 updated: 2020/12/31 10:54:15
dnl -------------
dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
-dnl The second parameter if given makes this macro verbose.
+dnl $1 = flags to add
+dnl $2 = if given makes this macro verbose.
dnl
dnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS,
dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easily
@@ -117,19 +118,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $1
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
continue
elif test "${cf_tst_cflags}" = "\"'" ; then
@@ -142,7 +143,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,$cf_tst_cppflags)
@@ -160,7 +161,7 @@ case $cf_fix_cppflags in
(yes)
CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[[^"]]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -188,9 +189,9 @@ AC_SUBST(EXTRA_CPPFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_INCDIR version: 15 updated: 2018/06/20 20:23:13
+dnl CF_ADD_INCDIR version: 17 updated: 2021/09/04 06:35:04
dnl -------------
-dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it's
+dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it is
dnl redundant. We don't normally need to add -I/usr/local/include for gcc,
dnl but old versions (and some misinstalled ones) need that. To make things
dnl worse, gcc 3.x may give error messages if -I/usr/local/include is added to
@@ -200,9 +201,9 @@ AC_DEFUN([CF_ADD_INCDIR],
if test -n "$1" ; then
for cf_add_incdir in $1
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -233,7 +234,7 @@ if test -n "$1" ; then
CF_VERBOSE(adding $cf_add_incdir to include-path)
ifelse([$2],,CPPFLAGS,[$2])="$ifelse([$2],,CPPFLAGS,[$2]) -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -255,7 +256,7 @@ dnl $1 = library to add, without the "-l"
dnl $2 = variable to update (default $LIBS)
AC_DEFUN([CF_ADD_LIB],[CF_ADD_LIBS(-l$1,ifelse($2,,LIBS,[$2]))])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_LIBDIR version: 10 updated: 2015/04/18 08:56:57
+dnl CF_ADD_LIBDIR version: 11 updated: 2020/12/31 20:19:42
dnl -------------
dnl Adds to the library-path
dnl
@@ -269,9 +270,9 @@ AC_DEFUN([CF_ADD_LIBDIR],
if test -n "$1" ; then
for cf_add_libdir in $1
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -317,7 +318,7 @@ done
ifelse($2,,LIBS,[$2])="$cf_add_libs"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05
+dnl CF_ADD_SUBDIR_PATH version: 5 updated: 2020/12/31 20:19:42
dnl ------------------
dnl Append to a search-list for a nonstandard header/lib-file
dnl $1 = the variable to return as result
@@ -329,16 +330,35 @@ AC_DEFUN([CF_ADD_SUBDIR_PATH],
[
test "x$4" != "x$5" && \
test -d "$4" && \
-ifelse([$5],NONE,,[(test -z "$5" || test x$5 = xNONE || test "x$4" != "x$5") &&]) {
+ifelse([$5],NONE,,[{ test -z "$5" || test "x$5" = xNONE || test "x$4" != "x$5"; } &&]) {
test -n "$verbose" && echo " ... testing for $3-directories under $4"
- test -d $4/$3 && $1="[$]$1 $4/$3"
- test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2"
- test -d $4/$3/$2/$3 && $1="[$]$1 $4/$3/$2/$3"
- test -d $4/$2/$3 && $1="[$]$1 $4/$2/$3"
- test -d $4/$2/$3/$2 && $1="[$]$1 $4/$2/$3/$2"
+ test -d "$4/$3" && $1="[$]$1 $4/$3"
+ test -d "$4/$3/$2" && $1="[$]$1 $4/$3/$2"
+ test -d "$4/$3/$2/$3" && $1="[$]$1 $4/$3/$2/$3"
+ test -d "$4/$2/$3" && $1="[$]$1 $4/$2/$3"
+ test -d "$4/$2/$3/$2" && $1="[$]$1 $4/$2/$3/$2"
}
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_APPEND_CFLAGS version: 3 updated: 2021/09/05 17:25:40
+dnl ----------------
+dnl Use CF_ADD_CFLAGS after first checking for potential redefinitions.
+dnl $1 = flags to add
+dnl $2 = if given makes this macro verbose.
+define([CF_APPEND_CFLAGS],
+[
+for cf_add_cflags in $1
+do
+ case "x$cf_add_cflags" in
+ (x-[[DU]]*)
+ CF_REMOVE_CFLAGS($cf_add_cflags,CFLAGS,[$2])
+ CF_REMOVE_CFLAGS($cf_add_cflags,CPPFLAGS,[$2])
+ ;;
+ esac
+ CF_ADD_CFLAGS([$cf_add_cflags],[$2])
+done
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_APPEND_TEXT version: 1 updated: 2017/02/25 18:58:55
dnl --------------
dnl use this macro for appending text without introducing an extra blank at
@@ -355,6 +375,12 @@ dnl Allow user to disable a normally-on option.
AC_DEFUN([CF_ARG_DISABLE],
[CF_ARG_OPTION($1,[$2],[$3],[$4],yes)])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_ARG_ENABLE version: 3 updated: 1999/03/30 17:24:31
+dnl -------------
+dnl Allow user to enable a normally-off option.
+AC_DEFUN([CF_ARG_ENABLE],
+[CF_ARG_OPTION($1,[$2],[$3],[$4],no)])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_ARG_OPTION version: 5 updated: 2015/05/10 19:52:14
dnl -------------
dnl Restricted form of AC_ARG_ENABLE that ensures user doesn't give bogus
@@ -378,7 +404,7 @@ ifelse([$3],,[ :]dnl
])dnl
])])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_AR_FLAGS version: 6 updated: 2015/10/10 15:25:05
+dnl CF_AR_FLAGS version: 9 updated: 2021/01/01 13:31:04
dnl -----------
dnl Check for suitable "ar" (archiver) options for updating an archive.
dnl
@@ -389,39 +415,55 @@ AC_DEFUN([CF_AR_FLAGS],[
AC_REQUIRE([CF_PROG_AR])
AC_CACHE_CHECK(for options to update archives, cf_cv_ar_flags,[
- cf_cv_ar_flags=unknown
- for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
- do
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_cv_ar_flags=''
+ cat >mk_static_lib.sh <<-EOF
+ #!$SHELL
+ MSVC_BIN="[$]AR"
+ out="\[$]1"
+ shift
+ exec \[$]MSVC_BIN -out:"\[$]out" \[$]@
+ EOF
+ chmod +x mk_static_lib.sh
+ AR=`pwd`/mk_static_lib.sh
+ ;;
+ (*)
+ cf_cv_ar_flags=unknown
+ for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
+ do
- # check if $ARFLAGS already contains this choice
- if test "x$ARFLAGS" != "x" ; then
- cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
- if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
- cf_cv_ar_flags=
- break
+ # check if $ARFLAGS already contains this choice
+ if test "x$ARFLAGS" != "x" ; then
+ cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
+ if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
+ cf_cv_ar_flags=
+ break
+ fi
fi
- fi
- rm -f conftest.$ac_cv_objext
- rm -f conftest.a
+ rm -f "conftest.$ac_cv_objext"
+ rm -f conftest.a
- cat >conftest.$ac_ext <<EOF
+ cat >"conftest.$ac_ext" <<EOF
#line __oline__ "configure"
int testdata[[3]] = { 123, 456, 789 };
EOF
- if AC_TRY_EVAL(ac_compile) ; then
- echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&AC_FD_CC
- $AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&AC_FD_CC 1>/dev/null
- if test -f conftest.a ; then
- cf_cv_ar_flags=$cf_ar_flags
+ if AC_TRY_EVAL(ac_compile) ; then
+ echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&AC_FD_CC
+ $AR $ARFLAGS "$cf_ar_flags" conftest.a "conftest.$ac_cv_objext" 2>&AC_FD_CC 1>/dev/null
+ if test -f conftest.a ; then
+ cf_cv_ar_flags="$cf_ar_flags"
+ break
+ fi
+ else
+ CF_VERBOSE(cannot compile test-program)
break
fi
- else
- CF_VERBOSE(cannot compile test-program)
- break
- fi
- done
- rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
+ done
+ rm -f conftest.a "conftest.$ac_ext" "conftest.$ac_cv_objext"
+ ;;
+ esac
])
if test -n "$ARFLAGS" ; then
@@ -435,7 +477,7 @@ fi
AC_SUBST(ARFLAGS)
])
dnl ---------------------------------------------------------------------------
-dnl CF_BUILD_CC version: 8 updated: 2018/01/04 20:31:04
+dnl CF_BUILD_CC version: 9 updated: 2021/01/02 09:31:20
dnl -----------
dnl If we're cross-compiling, allow the user to override the tools and their
dnl options. The configure script is oriented toward identifying the host
@@ -501,7 +543,7 @@ if test "$cross_compiling" = yes ; then
: ${BUILD_CC:='${CC}'}
- if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
+ if { test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}'; } ; then
AC_MSG_ERROR([Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler.])
fi
@@ -527,7 +569,46 @@ AC_SUBST(BUILD_EXEEXT)
AC_SUBST(BUILD_OBJEXT)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CC_ENV_FLAGS version: 9 updated: 2018/07/29 18:03:26
+dnl CF_C11_NORETURN version: 3 updated: 2021/03/28 11:36:23
+dnl ---------------
+AC_DEFUN([CF_C11_NORETURN],
+[
+AC_MSG_CHECKING(if you want to use C11 _Noreturn feature)
+CF_ARG_ENABLE(stdnoreturn,
+ [ --enable-stdnoreturn enable C11 _Noreturn feature for diagnostics],
+ [enable_stdnoreturn=yes],
+ [enable_stdnoreturn=no])
+AC_MSG_RESULT($enable_stdnoreturn)
+
+if test $enable_stdnoreturn = yes; then
+AC_CACHE_CHECK([for C11 _Noreturn feature], cf_cv_c11_noreturn,
+ [AC_TRY_COMPILE([
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdnoreturn.h>
+static _Noreturn void giveup(void) { exit(0); }
+ ],
+ [if (feof(stdin)) giveup()],
+ cf_cv_c11_noreturn=yes,
+ cf_cv_c11_noreturn=no)
+ ])
+else
+ cf_cv_c11_noreturn=no,
+fi
+
+if test "$cf_cv_c11_noreturn" = yes; then
+ AC_DEFINE(HAVE_STDNORETURN_H, 1,[Define if <stdnoreturn.h> header is available and working])
+ AC_DEFINE_UNQUOTED(STDC_NORETURN,_Noreturn,[Define if C11 _Noreturn keyword is supported])
+ HAVE_STDNORETURN_H=1
+else
+ HAVE_STDNORETURN_H=0
+fi
+
+AC_SUBST(HAVE_STDNORETURN_H)
+AC_SUBST(STDC_NORETURN)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CC_ENV_FLAGS version: 10 updated: 2020/12/31 18:40:20
dnl ---------------
dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content
dnl into CC. This will not help with broken scripts that wrap the compiler
@@ -542,7 +623,7 @@ dnl outweighs that limitation.
AC_DEFUN([CF_CC_ENV_FLAGS],
[
# This should have been defined by AC_PROG_CC
-: ${CC:=cc}
+: "${CC:=cc}"
AC_MSG_CHECKING(\$CFLAGS variable)
case "x$CFLAGS" in
@@ -591,7 +672,7 @@ case "$CC" in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CFG_DEFAULTS version: 11 updated: 2015/04/17 21:13:04
+dnl CF_CFG_DEFAULTS version: 16 updated: 2021/01/04 19:33:05
dnl ---------------
dnl Determine the default configuration into which we'll install ncurses. This
dnl can be overridden by the user's command-line options. There's two items to
@@ -604,7 +685,8 @@ dnl We don't use AC_PREFIX_DEFAULT, because it gets evaluated too soon, and
dnl we don't use AC_PREFIX_PROGRAM, because we cannot distinguish ncurses's
dnl programs from a vendor's.
AC_DEFUN([CF_CFG_DEFAULTS],
-[
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+
AC_MSG_CHECKING(for prefix)
if test "x$prefix" = "xNONE" ; then
case "$cf_cv_system_name" in
@@ -622,20 +704,20 @@ if test "x$prefix" = "xNONE" ; then
AC_MSG_CHECKING(for default include-directory)
test -n "$verbose" && echo 1>&AC_FD_MSG
for cf_symbol in \
- $includedir \
- $includedir/ncurses \
- $prefix/include \
- $prefix/include/ncurses \
+ "$includedir" \
+ "$includedir/ncurses" \
+ "$prefix/include" \
+ "$prefix/include/ncurses" \
/usr/local/include \
/usr/local/include/ncurses \
/usr/include \
/usr/include/ncurses
do
- cf_dir=`eval echo $cf_symbol`
- if test -f $cf_dir/curses.h ; then
- if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then
+ cf_dir=`eval echo "$cf_symbol"`
+ if test -f "$cf_dir/curses.h" ; then
+ if ( ${FGREP-fgrep} NCURSES_VERSION "$cf_dir/curses.h" >/dev/null 2>&1 ) ; then
includedir="$cf_symbol"
- test -n "$verbose" && echo $ac_n " found " 1>&AC_FD_MSG
+ test -n "$verbose" && echo $ECHO_N " found " 1>&AC_FD_MSG
break
fi
fi
@@ -645,7 +727,7 @@ AC_MSG_RESULT($includedir)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03
+dnl CF_CHECK_CACHE version: 13 updated: 2020/12/31 10:54:15
dnl --------------
dnl Check if we're accidentally using a cache from a different machine.
dnl Derive the system name, as a check for reusing the autoconf cache.
@@ -659,7 +741,7 @@ dnl Note: we would use $ac_config_sub, but that is one of the places where
dnl autoconf 2.5x broke compatibility with autoconf 2.13
AC_DEFUN([CF_CHECK_CACHE],
[
-if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
+if test -f "$srcdir/config.guess" || test -f "$ac_aux_dir/config.guess" ; then
ifelse([$1],,[AC_CANONICAL_HOST],[$1])
system_name="$host_os"
else
@@ -680,13 +762,13 @@ if test ".$system_name" != ".$cf_cv_system_name" ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_GNAT_VERSION version: 2 updated: 2019/12/31 08:53:54
+dnl CF_CHECK_GNAT_VERSION version: 4 updated: 2021/01/01 13:31:04
dnl ---------------------
AC_DEFUN([CF_CHECK_GNAT_VERSION],
[
AC_REQUIRE([CF_GNAT_VERSION])
-case $cf_cv_gnat_version in
-(3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|20[[0-9]][[0-9]])
+case "$cf_cv_gnat_version" in
+(3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|[[1-9]][[0-9]].[[0-9]]*|20[[0-9]][[0-9]])
cf_cv_prog_gnat_correct=yes
;;
(*)
@@ -696,7 +778,7 @@ case $cf_cv_gnat_version in
esac
])
dnl ---------------------------------------------------------------------------
-dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35
+dnl CF_CLANG_COMPILER version: 8 updated: 2021/01/01 13:31:04
dnl -----------------
dnl Check if the given compiler is really clang. clang's C driver defines
dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does
@@ -715,21 +797,56 @@ ifelse([$2],,CLANG_COMPILER,[$2])=no
if test "$ifelse([$1],,[$1],GCC)" = yes ; then
AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler)
cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
- ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments"
AC_TRY_COMPILE([],[
#ifdef __clang__
#else
make an error
#endif
],[ifelse([$2],,CLANG_COMPILER,[$2])=yes
-cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
],[])
ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2]))
fi
+
+CLANG_VERSION=none
+
+if test "x$ifelse([$2],,CLANG_COMPILER,[$2])" = "xyes" ; then
+ case "$CC" in
+ (c[[1-9]][[0-9]]|*/c[[1-9]][[0-9]])
+ AC_MSG_WARN(replacing broken compiler alias $CC)
+ CFLAGS="$CFLAGS -std=`echo "$CC" | sed -e 's%.*/%%'`"
+ CC=clang
+ ;;
+ esac
+
+ AC_MSG_CHECKING(version of $CC)
+ CLANG_VERSION="`$CC --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(CLANG[[^)]]*) //' -e 's/^.*(Debian[[^)]]*) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
+ test -z "$CLANG_VERSION" && CLANG_VERSION=unknown
+ AC_MSG_RESULT($CLANG_VERSION)
+
+ for cf_clang_opt in \
+ -Qunused-arguments \
+ -Wno-error=implicit-function-declaration
+ do
+ AC_MSG_CHECKING(if option $cf_clang_opt works)
+ cf_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $cf_clang_opt"
+ AC_TRY_LINK([
+ #include <stdio.h>],[
+ printf("hello!\\n");],[
+ cf_clang_optok=yes],[
+ cf_clang_optok=no])
+ AC_MSG_RESULT($cf_clang_optok)
+ CFLAGS="$cf_save_CFLAGS"
+ if test "$cf_clang_optok" = yes; then
+ CF_VERBOSE(adding option $cf_clang_opt)
+ CF_APPEND_TEXT(CFLAGS,$cf_clang_opt)
+ fi
+ done
+fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_CONST_X_STRING version: 3 updated: 2020/01/11 18:39:22
+dnl CF_CONST_X_STRING version: 7 updated: 2021/06/07 17:39:17
dnl -----------------
dnl The X11R4-X11R6 Xt specification uses an ambiguous String type for most
dnl character-strings.
@@ -741,7 +858,7 @@ dnl did not take into account the use of const for telling the compiler that
dnl string literals would be in readonly memory.
dnl
dnl As a workaround, one could (starting with X11R5) define XTSTRINGDEFINES, to
-dnl let the compiler decide how to represent Xt's strings which were #define'd.
+dnl let the compiler decide how to represent Xt's strings which were #define'd.
dnl That does not solve the problem of using the block of Xt's strings which
dnl are compiled into the library (and is less efficient than one might want).
dnl
@@ -759,7 +876,7 @@ AC_TRY_COMPILE(
#include <stdlib.h>
#include <X11/Intrinsic.h>
],
-[String foo = malloc(1)],[
+[String foo = malloc(1); free((void*)foo)],[
AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
AC_TRY_COMPILE(
@@ -777,7 +894,7 @@ AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
CF_RESTORE_XTRA_FLAGS([CF_CONST_X_STRING])
-case $cf_cv_const_x_string in
+case "$cf_cv_const_x_string" in
(no)
CF_APPEND_TEXT(CPPFLAGS,-DXTSTRINGDEFINES)
;;
@@ -789,7 +906,7 @@ esac
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CONST_X_STRING version: 3 updated: 2020/01/11 18:39:22
+dnl CF_CONST_X_STRING version: 7 updated: 2021/06/07 17:39:17
dnl -----------------
dnl The X11R4-X11R6 Xt specification uses an ambiguous String type for most
dnl character-strings.
@@ -801,7 +918,7 @@ dnl did not take into account the use of const for telling the compiler that
dnl string literals would be in readonly memory.
dnl
dnl As a workaround, one could (starting with X11R5) define XTSTRINGDEFINES, to
-dnl let the compiler decide how to represent Xt's strings which were #define'd.
+dnl let the compiler decide how to represent Xt's strings which were #define'd.
dnl That does not solve the problem of using the block of Xt's strings which
dnl are compiled into the library (and is less efficient than one might want).
dnl
@@ -819,7 +936,7 @@ AC_TRY_COMPILE(
#include <stdlib.h>
#include <X11/Intrinsic.h>
],
-[String foo = malloc(1)],[
+[String foo = malloc(1); free((void*)foo)],[
AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
AC_TRY_COMPILE(
@@ -837,7 +954,7 @@ AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
CF_RESTORE_XTRA_FLAGS([CF_CONST_X_STRING])
-case $cf_cv_const_x_string in
+case "$cf_cv_const_x_string" in
(no)
CF_APPEND_TEXT(CPPFLAGS,-DXTSTRINGDEFINES)
;;
@@ -876,14 +993,14 @@ fi
AC_CHECK_HEADERS($cf_cv_ncurses_header)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52
+dnl CF_DIRNAME version: 5 updated: 2020/12/31 20:19:42
dnl ----------
dnl "dirname" is not portable, so we fake it with a shell script.
-AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
+AC_DEFUN([CF_DIRNAME],[$1=`echo "$2" | sed -e 's%/[[^/]]*$%%'`])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_ECHO version: 13 updated: 2015/04/18 08:56:57
+dnl CF_DISABLE_ECHO version: 14 updated: 2021/09/04 06:35:04
dnl ---------------
-dnl You can always use "make -n" to see the actual options, but it's hard to
+dnl You can always use "make -n" to see the actual options, but it is hard to
dnl pick out/analyze warning messages when the compile-line is long.
dnl
dnl Sets:
@@ -929,7 +1046,7 @@ CF_ARG_DISABLE(gnat-projects,
AC_MSG_RESULT($enable_gnat_projects)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_BROKEN_LINKER version: 1 updated: 2020/02/08 15:59:30
+dnl CF_ENABLE_BROKEN_LINKER version: 2 updated: 2021/01/02 17:09:14
dnl -----------------------
dnl Some linkers cannot reference a data-only object. Cygwin used to be one.
dnl This usually follows CF_LINK_DATAONLY, but is not required in case we need
@@ -943,7 +1060,7 @@ AC_ARG_ENABLE(broken_linker,
[with_broken_linker=no])
AC_MSG_RESULT($with_broken_linker)
-: ${BROKEN_LINKER:=0}
+: "${BROKEN_LINKER:=0}"
if test "x$with_broken_linker" = xyes ; then
AC_DEFINE(BROKEN_LINKER,1,[Define to 1 to work around linkers which cannot link data-only modules])
BROKEN_LINKER=1
@@ -951,7 +1068,37 @@ fi
AC_SUBST(BROKEN_LINKER)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FIND_LIBRARY version: 9 updated: 2008/03/23 14:48:54
+dnl CF_ENABLE_WARNINGS version: 9 updated: 2021/01/05 19:40:50
+dnl ------------------
+dnl Configure-option to enable gcc warnings
+dnl
+dnl $1 = extra options to add, if supported
+dnl $2 = option for checking attributes. By default, this is done when
+dnl warnings are enabled. For other values:
+dnl yes: always do this, e.g., to use in generated library-headers
+dnl no: never do this
+AC_DEFUN([CF_ENABLE_WARNINGS],[
+if test "$GCC" = yes || test "$GXX" = yes
+then
+CF_FIX_WARNINGS(CFLAGS)
+CF_FIX_WARNINGS(CPPFLAGS)
+CF_FIX_WARNINGS(LDFLAGS)
+AC_MSG_CHECKING(if you want to turn on gcc warnings)
+CF_ARG_ENABLE(warnings,
+ [ --enable-warnings test: turn on gcc compiler warnings],
+ [enable_warnings=yes],
+ [enable_warnings=no])
+AC_MSG_RESULT($enable_warnings)
+if test "$enable_warnings" = "yes"
+then
+ ifelse($2,,[CF_GCC_ATTRIBUTES])
+ CF_GCC_WARNINGS($1)
+fi
+ifelse($2,yes,[CF_GCC_ATTRIBUTES])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FIND_LIBRARY version: 11 updated: 2021/01/02 09:31:20
dnl ---------------
dnl Look for a non-standard library, given parameters for AC_TRY_LINK. We
dnl prefer a standard location, and use -L options only if we do not find the
@@ -967,16 +1114,16 @@ dnl Sets the variable "$cf_libdir" as a side-effect, so we can see if we had
dnl to use a -L option.
AC_DEFUN([CF_FIND_LIBRARY],
[
- eval 'cf_cv_have_lib_'$1'=no'
+ eval 'cf_cv_have_lib_'"$1"'=no'
cf_libdir=""
AC_CHECK_FUNC($5,
- eval 'cf_cv_have_lib_'$1'=yes',[
+ eval 'cf_cv_have_lib_'"$1"'=yes',[
cf_save_LIBS="$LIBS"
AC_MSG_CHECKING(for $5 in -l$1)
LIBS="-l$1 $LIBS"
AC_TRY_LINK([$3],[$4],
[AC_MSG_RESULT(yes)
- eval 'cf_cv_have_lib_'$1'=yes'
+ eval 'cf_cv_have_lib_'"$1"'=yes'
],
[AC_MSG_RESULT(no)
CF_LIBRARY_PATH(cf_search,$2)
@@ -986,22 +1133,22 @@ AC_DEFUN([CF_FIND_LIBRARY],
LIBS="-L$cf_libdir -l$1 $cf_save_LIBS"
AC_TRY_LINK([$3],[$4],
[AC_MSG_RESULT(yes)
- eval 'cf_cv_have_lib_'$1'=yes'
+ eval 'cf_cv_have_lib_'"$1"'=yes'
break],
[AC_MSG_RESULT(no)
LIBS="$cf_save_LIBS"])
done
])
])
-eval 'cf_found_library=[$]cf_cv_have_lib_'$1
+eval 'cf_found_library="[$]cf_cv_have_lib_'"$1"\"
ifelse($6,,[
-if test $cf_found_library = no ; then
+if test "$cf_found_library" = no ; then
AC_MSG_ERROR(Cannot link $1 library)
fi
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FIND_LINKAGE version: 21 updated: 2018/06/20 20:23:13
+dnl CF_FIND_LINKAGE version: 22 updated: 2020/12/31 20:19:42
dnl ---------------
dnl Find a library (specifically the linkage used in the code fragment),
dnl searching for it if it is not already in the library path.
@@ -1058,7 +1205,7 @@ AC_TRY_LINK([$1],[$2],[
CF_HEADER_PATH(cf_search,ifelse([$6],,[$3],[$6]))
for cf_cv_header_path_$3 in $cf_search
do
- if test -d $cf_cv_header_path_$3 ; then
+ if test -d "$cf_cv_header_path_$3" ; then
CF_VERBOSE(... testing $cf_cv_header_path_$3)
CPPFLAGS="$cf_save_CPPFLAGS"
CF_APPEND_TEXT(CPPFLAGS,-I$cf_cv_header_path_$3)
@@ -1093,7 +1240,7 @@ AC_TRY_LINK([$1],[$2],[
CF_LIBRARY_PATH(cf_search,$3)
for cf_cv_library_path_$3 in $cf_search
do
- if test -d $cf_cv_library_path_$3 ; then
+ if test -d "$cf_cv_library_path_$3" ; then
CF_VERBOSE(... testing $cf_cv_library_path_$3)
CPPFLAGS="$cf_test_CPPFLAGS"
LIBS="-l$3 $7 $cf_save_LIBS"
@@ -1151,14 +1298,50 @@ AC_DEFUN([CF_FIXUP_ADAFLAGS],[
AC_MSG_RESULT($ADAFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_ATTRIBUTES version: 17 updated: 2015/04/12 15:39:00
+dnl CF_FIX_WARNINGS version: 3 updated: 2020/12/31 18:40:20
+dnl ---------------
+dnl Warning flags do not belong in CFLAGS, CPPFLAGS, etc. Any of gcc's
+dnl "-Werror" flags can interfere with configure-checks. Those go into
+dnl EXTRA_CFLAGS.
+dnl
+dnl $1 = variable name to repair
+define([CF_FIX_WARNINGS],[
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case [$]$1 in
+ (*-Werror=*)
+ CF_VERBOSE(repairing $1: [$]$1)
+ cf_temp_flags=
+ for cf_temp_scan in [$]$1
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+ CF_APPEND_TEXT(EXTRA_CFLAGS,$cf_temp_scan)
+ ;;
+ (*)
+ CF_APPEND_TEXT(cf_temp_flags,$cf_temp_scan)
+ ;;
+ esac
+ done
+ $1="$cf_temp_flags"
+ CF_VERBOSE(... fixed [$]$1)
+ CF_VERBOSE(... extra $EXTRA_CFLAGS)
+ ;;
+ esac
+fi
+AC_SUBST(EXTRA_CFLAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_GCC_ATTRIBUTES version: 24 updated: 2021/03/20 12:00:25
dnl -----------------
dnl Test for availability of useful gcc __attribute__ directives to quiet
dnl compiler warnings. Though useful, not all are supported -- and contrary
dnl to documentation, unrecognized directives cause older compilers to barf.
AC_DEFUN([CF_GCC_ATTRIBUTES],
-[
-if test "$GCC" = yes
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+AC_REQUIRE([CF_C11_NORETURN])dnl
+
+if test "$GCC" = yes || test "$GXX" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -1177,7 +1360,7 @@ EOF
if test "$GCC" = yes
then
AC_CHECKING([for $CC __attribute__ directives])
-cat > conftest.$ac_ext <<EOF
+cat > "conftest.$ac_ext" <<EOF
#line __oline__ "${as_me:-configure}"
#include "confdefs.h"
#include "conftest.h"
@@ -1193,9 +1376,9 @@ cat > conftest.$ac_ext <<EOF
#define GCC_SCANFLIKE(fmt,var) /*nothing*/
#endif
extern void wow(char *,...) GCC_SCANFLIKE(1,2);
-extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
-extern void foo(void) GCC_NORETURN;
-int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { return 0; }
+extern GCC_NORETURN void oops(char *,...) GCC_PRINTFLIKE(1,2);
+extern GCC_NORETURN void foo(void);
+int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { (void)argc; (void)argv; return 0; }
EOF
cf_printf_attribute=no
cf_scanf_attribute=no
@@ -1205,7 +1388,7 @@ EOF
cf_directive="__attribute__(($cf_attribute))"
echo "checking for $CC $cf_directive" 1>&AC_FD_CC
- case $cf_attribute in
+ case "$cf_attribute" in
(printf)
cf_printf_attribute=yes
cat >conftest.h <<EOF
@@ -1228,7 +1411,7 @@ EOF
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
cat conftest.h >>confdefs.h
- case $cf_attribute in
+ case "$cf_attribute" in
(noreturn)
AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc])
;;
@@ -1255,9 +1438,9 @@ EOF
fi
done
else
- fgrep define conftest.i >>confdefs.h
+ ${FGREP-fgrep} define conftest.i >>confdefs.h
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
])dnl
dnl ---------------------------------------------------------------------------
@@ -1278,7 +1461,7 @@ CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_WARNINGS version: 37 updated: 2020/01/05 20:04:12
+dnl CF_GCC_WARNINGS version: 41 updated: 2021/01/01 16:53:59
dnl ---------------
dnl Check if the compiler supports useful warning options. There's a few that
dnl we don't use, simply because they're too noisy:
@@ -1302,7 +1485,7 @@ AC_DEFUN([CF_GCC_WARNINGS],
[
AC_REQUIRE([CF_GCC_VERSION])
if test "x$have_x" = xyes; then CF_CONST_X_STRING fi
-cat > conftest.$ac_ext <<EOF
+cat > "conftest.$ac_ext" <<EOF
#line __oline__ "${as_me:-configure}"
int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
EOF
@@ -1321,7 +1504,7 @@ then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wall"
for cf_opt in \
wd1419 \
wd1683 \
@@ -1344,7 +1527,6 @@ elif test "$GCC" = yes && test "$GCC_VERSION" != "unknown"
then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS=
cf_warn_CONST=""
test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
@@ -1367,16 +1549,16 @@ then
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
- case $cf_opt in
+ case "$cf_opt" in
(Winline)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([[34]].*)
CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
continue;;
esac
;;
(Wpointer-arith)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([[12]].*)
CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
continue;;
@@ -1388,7 +1570,7 @@ then
done
CFLAGS="$cf_save_CFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
AC_SUBST(EXTRA_CFLAGS)
])dnl
@@ -1404,15 +1586,15 @@ test "$cf_cv_gnatprep_opt_t" = yes && GNATPREP_OPTS="-T $GNATPREP_OPTS"
AC_SUBST(GNATPREP_OPTS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_GENERICS version: 4 updated: 2019/12/31 08:53:54
+dnl CF_GNAT_GENERICS version: 7 updated: 2021/01/01 13:31:04
dnl ----------------
AC_DEFUN([CF_GNAT_GENERICS],
[
AC_REQUIRE([CF_GNAT_VERSION])
AC_MSG_CHECKING(if GNAT supports generics)
-case $cf_cv_gnat_version in
-(3.[[1-9]]*|[[4-9]].*)
+case "$cf_cv_gnat_version" in
+(3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|[[1-9]][[0-9]].[[0-9]]*|20[[0-9]][[0-9]])
cf_gnat_generics=yes
;;
(*)
@@ -1434,7 +1616,7 @@ AC_SUBST(cf_compile_generics)
AC_SUBST(cf_generic_objects)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_PROJECTS version: 10 updated: 2019/12/31 08:53:54
+dnl CF_GNAT_PROJECTS version: 13 updated: 2021/01/02 17:09:14
dnl ----------------
dnl GNAT projects are configured with ".gpr" project files.
dnl GNAT libraries are a further development, using the project feature.
@@ -1448,19 +1630,19 @@ cf_gnat_projects=no
if test "$enable_gnat_projects" != no ; then
AC_MSG_CHECKING(if GNAT supports project files)
-case $cf_cv_gnat_version in
+case "$cf_cv_gnat_version" in
(3.[[0-9]]*)
;;
(*)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin*|msys*)
;;
(*)
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src conftest.bin conftest.lib
then
cd conftest.src
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
cat >>library.gpr <<CF_EOF
project Library is
Kind := External ("LIB_KIND");
@@ -1489,11 +1671,11 @@ package body ConfPackage is
end conftest;
end ConfPackage;
CF_EOF
- if ( $cf_ada_make $ADAFLAGS \
+ if ( "$cf_ada_make" $ADAFLAGS \
-Plibrary.gpr \
- -XBUILD_DIR=`cd ../conftest.bin;pwd` \
- -XLIBRARY_DIR=`cd ../conftest.lib;pwd` \
- -XSOURCE_DIR=`pwd` \
+ -XBUILD_DIR="`cd ../conftest.bin;pwd`" \
+ -XLIBRARY_DIR="`cd ../conftest.lib;pwd`" \
+ -XSOURCE_DIR="`pwd`" \
-XSONAME=libConfTest.so.1 \
-XLIB_KIND=static 1>&AC_FD_CC 2>&1 ) ; then
cf_gnat_projects=yes
@@ -1504,7 +1686,7 @@ CF_EOF
then
cf_gnat_libraries=yes
fi
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
;;
esac
;;
@@ -1512,19 +1694,30 @@ esac
AC_MSG_RESULT($cf_gnat_projects)
fi # enable_gnat_projects
-if test $cf_gnat_projects = yes
+if test "$cf_gnat_projects" = yes
then
AC_MSG_CHECKING(if GNAT supports libraries)
AC_MSG_RESULT($cf_gnat_libraries)
fi
+USE_OLD_MAKERULES=""
+USE_GNAT_PROJECTS="#"
+USE_GNAT_MAKE_GPR="#"
+USE_GNAT_GPRBUILD="#"
+
if test "$cf_gnat_projects" = yes
then
USE_OLD_MAKERULES="#"
USE_GNAT_PROJECTS=""
-else
- USE_OLD_MAKERULES=""
- USE_GNAT_PROJECTS="#"
+ if test "$cf_cv_VERSION_GPRBUILD" != no
+ then
+ USE_GNAT_GPRBUILD=""
+ elif test "$cf_cv_VERSION_GNATMAKE" != no
+ then
+ USE_GNAT_MAKE_GPR=""
+ else
+ AC_MSG_WARN(use old makefile rules since tools are missing)
+ fi
fi
if test "$cf_gnat_libraries" = yes
@@ -1537,9 +1730,11 @@ fi
AC_SUBST(USE_OLD_MAKERULES)
AC_SUBST(USE_GNAT_PROJECTS)
AC_SUBST(USE_GNAT_LIBRARIES)
+AC_SUBST(USE_GNAT_MAKE_GPR)
+AC_SUBST(USE_GNAT_GPRBUILD)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_SIGINT version: 1 updated: 2011/03/27 20:07:59
+dnl CF_GNAT_SIGINT version: 2 updated: 2021/01/01 13:31:04
dnl --------------
dnl Check if gnat supports SIGINT, and presumably tasking. For the latter, it
dnl is noted that gnat may compile a tasking unit even for configurations which
@@ -1578,7 +1773,7 @@ end ConfTest;],
[cf_cv_gnat_sigint=yes],
[cf_cv_gnat_sigint=no])])
-if test $cf_cv_gnat_sigint = yes ; then
+if test "$cf_cv_gnat_sigint" = yes ; then
USE_GNAT_SIGINT=""
else
USE_GNAT_SIGINT="#"
@@ -1586,7 +1781,7 @@ fi
AC_SUBST(USE_GNAT_SIGINT)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_TRY_LINK version: 3 updated: 2011/03/19 14:47:45
+dnl CF_GNAT_TRY_LINK version: 4 updated: 2021/01/01 13:31:04
dnl ----------------
dnl Verify that a test program compiles/links with GNAT.
dnl $cf_ada_make is set to the program that compiles/links
@@ -1598,22 +1793,22 @@ dnl $3 is the shell command to execute if successful
dnl $4 is the shell command to execute if not successful
AC_DEFUN([CF_GNAT_TRY_LINK],
[
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
$1
CF_EOF
cat >>conftest.adb <<CF_EOF
$2
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
ifelse($3,, :,[ $3])
ifelse($4,,,[else
$4])
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_TRY_RUN version: 5 updated: 2011/03/19 14:47:45
+dnl CF_GNAT_TRY_RUN version: 6 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Verify that a test program compiles and runs with GNAT
dnl $cf_ada_make is set to the program that compiles/links
@@ -1625,14 +1820,14 @@ dnl $3 is the shell command to execute if successful
dnl $4 is the shell command to execute if not successful
AC_DEFUN([CF_GNAT_TRY_RUN],
[
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
$1
CF_EOF
cat >>conftest.adb <<CF_EOF
$2
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
if ( ./conftest 1>&AC_FD_CC 2>&1 ) ; then
ifelse($3,, :,[ $3])
ifelse($4,,,[ else
@@ -1641,7 +1836,7 @@ ifelse($4,,,[ else
ifelse($4,,,[else
$4])
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_GNAT_VERSION version: 22 updated: 2019/12/31 08:53:54
@@ -1771,7 +1966,7 @@ if test x$cf_cv_gnu_library = xyes; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_HEADER_PATH version: 13 updated: 2015/04/15 19:08:48
+dnl CF_HEADER_PATH version: 15 updated: 2021/01/01 13:31:04
dnl --------------
dnl Construct a search-list of directories for a nonstandard header-file
dnl
@@ -1787,7 +1982,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
CF_ADD_SUBDIR_PATH($1,$2,include,$cf_header_path,NONE)
@@ -1803,15 +1998,15 @@ CF_SUBDIR_PATH($1,$2,include)
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && $1="[$]$1 $includedir"
- test -d $includedir/$2 && $1="[$]$1 $includedir/$2"
+ test -d "$includedir" && $1="[$]$1 $includedir"
+ test -d "$includedir/$2" && $1="[$]$1 $includedir/$2"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && $1="[$]$1 $oldincludedir"
- test -d $oldincludedir/$2 && $1="[$]$1 $oldincludedir/$2"
+ test -d "$oldincludedir" && $1="[$]$1 $oldincludedir"
+ test -d "$oldincludedir/$2" && $1="[$]$1 $oldincludedir/$2"
}
$1="[$]$1 $cf_header_path_list"
@@ -1852,7 +2047,7 @@ CF_INSTALL_OPT_P
CF_INSTALL_OPT_O
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_O version: 2 updated: 2015/05/15 19:45:35
+dnl CF_INSTALL_OPT_O version: 3 updated: 2020/12/31 20:19:42
dnl ----------------
dnl Almost all "install" programs default to the current user's ownership.
dnl Almost - MINIX is an exception.
@@ -1871,7 +2066,7 @@ esac
AC_MSG_RESULT($with_install_o)
if test "x$with_install_o" = xyes
then
- INSTALL_OPT_O=`id root|sed -e 's/uid=[[0-9]]*(/ -o /' -e 's/gid=[[0-9]]*(/ -g /' -e 's/ [[^=[:space:]]][[^=[:space:]]]*=.*/ /' -e 's/)//g'`
+ INSTALL_OPT_O="`id root|sed -e 's/uid=[[0-9]]*(/ -o /' -e 's/gid=[[0-9]]*(/ -g /' -e 's/ [[^=[:space:]]][[^=[:space:]]]*=.*/ /' -e 's/)//g'`"
else
INSTALL_OPT_O=
fi
@@ -1879,16 +2074,16 @@ fi
AC_SUBST(INSTALL_OPT_O)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_P version: 1 updated: 2018/08/18 12:19:21
+dnl CF_INSTALL_OPT_P version: 3 updated: 2021/01/01 13:31:04
dnl ----------------
dnl Some install-programs accept a "-p" option to preserve file modification
dnl timestamps. That can be useful as an install option, as well as a way to
dnl avoid the need for ranlib after copying a static archive.
AC_DEFUN([CF_INSTALL_OPT_P],
[
-: ${INSTALL:=install}
+: "${INSTALL:=install}"
AC_CACHE_CHECK(if install accepts -p option, cf_cv_install_p,[
- rm -rf conftest*
+ rm -rf ./conftest*
date >conftest.in
mkdir conftest.out
sleep 3
@@ -1910,11 +2105,11 @@ AC_CACHE_CHECK(if install accepts -p option, cf_cv_install_p,[
else
cf_cv_install_p=no
fi
- rm -rf conftest*
+ rm -rf ./conftest*
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_S version: 2 updated: 2018/08/18 12:19:21
+dnl CF_INSTALL_OPT_S version: 3 updated: 2021/01/05 19:23:48
dnl ----------------
dnl By default, we should strip executables which are installed, but leave the
dnl ability to suppress that for unit-testing.
@@ -1923,11 +2118,11 @@ AC_DEFUN([CF_INSTALL_OPT_S],
AC_MSG_CHECKING(if you want to install stripped executables)
CF_ARG_DISABLE(stripping,
[ --disable-stripping do not strip (debug info) installed executables],
- [with_stripping=no],
- [with_stripping=yes])
-AC_MSG_RESULT($with_stripping)
+ [enable_stripping=no],
+ [enable_stripping=yes])
+AC_MSG_RESULT($enable_stripping)
-if test "$with_stripping" = yes
+if test "$enable_stripping" = yes
then
INSTALL_OPT_S="-s"
else
@@ -1936,7 +2131,7 @@ fi
AC_SUBST(INSTALL_OPT_S)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INTEL_COMPILER version: 7 updated: 2015/04/12 15:39:00
+dnl CF_INTEL_COMPILER version: 8 updated: 2021/01/01 16:53:59
dnl -----------------
dnl Check if the given compiler is really the Intel compiler for Linux. It
dnl tries to imitate gcc, but does not return an error when it finds a mismatch
@@ -1954,7 +2149,7 @@ AC_REQUIRE([AC_CANONICAL_HOST])
ifelse([$2],,INTEL_COMPILER,[$2])=no
if test "$ifelse([$1],,[$1],GCC)" = yes ; then
- case $host_os in
+ case "$host_os" in
(linux*|gnu*)
AC_MSG_CHECKING(if this is really Intel ifelse([$1],GXX,C++,C) compiler)
cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
@@ -1974,7 +2169,7 @@ cf_save_CFLAGS="$cf_save_CFLAGS -we147"
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LARGEFILE version: 11 updated: 2018/06/20 20:23:13
+dnl CF_LARGEFILE version: 12 updated: 2020/03/19 20:23:48
dnl ------------
dnl Add checks for large file support.
AC_DEFUN([CF_LARGEFILE],[
@@ -2014,6 +2209,7 @@ ifdef([AC_FUNC_FSEEKO],[
struct dirent64 *x = readdir((DIR *)0);
struct dirent *y = readdir((DIR *)0);
int z = x - y;
+ (void)z;
],
[cf_cv_struct_dirent64=yes],
[cf_cv_struct_dirent64=no])
@@ -2023,7 +2219,7 @@ ifdef([AC_FUNC_FSEEKO],[
])
])
dnl ---------------------------------------------------------------------------
-dnl CF_LD_RPATH_OPT version: 8 updated: 2018/08/18 16:36:35
+dnl CF_LD_RPATH_OPT version: 9 updated: 2021/01/01 13:31:04
dnl ---------------
dnl For the given system and compiler, find the compiler flags to pass to the
dnl loader to use the "rpath" feature.
@@ -2035,7 +2231,7 @@ LD_RPATH_OPT=
if test "x$cf_cv_enable_rpath" != xno
then
AC_MSG_CHECKING(for an rpath option)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GCC" = yes; then
LD_RPATH_OPT="-Wl,-rpath,"
@@ -2080,7 +2276,7 @@ then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIBRARY_PATH version: 10 updated: 2015/04/15 19:08:48
+dnl CF_LIBRARY_PATH version: 11 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Construct a search-list of directories for a nonstandard library-file
dnl
@@ -2094,7 +2290,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
CF_ADD_SUBDIR_PATH($1,$2,lib,$cf_library_path,NONE)
@@ -2109,13 +2305,13 @@ CF_SUBDIR_PATH($1,$2,lib)
$1="$cf_library_path_list [$]$1"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_PREFIX version: 12 updated: 2015/10/17 19:03:33
+dnl CF_LIB_PREFIX version: 14 updated: 2021/01/01 13:31:04
dnl -------------
dnl Compute the library-prefix for the given host system
dnl $1 = variable to set
define([CF_LIB_PREFIX],
[
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(OS/2*|os2*)
if test "$DFT_LWR_MODEL" = libtool; then
LIB_PREFIX='lib'
@@ -2123,6 +2319,9 @@ define([CF_LIB_PREFIX],
LIB_PREFIX=''
fi
;;
+ (*-msvc*)
+ LIB_PREFIX=''
+ ;;
(*) LIB_PREFIX='lib'
;;
esac
@@ -2130,7 +2329,7 @@ ifelse($1,,,[$1=$LIB_PREFIX])
AC_SUBST(LIB_PREFIX)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_SUFFIX version: 25 updated: 2015/04/17 21:13:04
+dnl CF_LIB_SUFFIX version: 28 updated: 2021/01/01 16:53:59
dnl -------------
dnl Compute the library file-suffix from the given model name
dnl $1 = model name
@@ -2145,19 +2344,37 @@ AC_DEFUN([CF_LIB_SUFFIX],
$3=[$]$2
;;
(Xdebug)
- $2='_g.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ $2='_g.lib'
+ ;;
+ (*)
+ $2='_g.a'
+ ;;
+ esac
$3=[$]$2
;;
(Xprofile)
- $2='_p.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ $2='_p.lib'
+ ;;
+ (*)
+ $2='_p.a'
+ ;;
+ esac
$3=[$]$2
;;
(Xshared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[[5-7]]*)
$2='.so'
$3=[$]$2
;;
+ (*-msvc*)
+ $2='.dll'
+ $3='.dll.lib'
+ ;;
(cygwin*|msys*|mingw*)
$2='.dll'
$3='.dll.a'
@@ -2167,7 +2384,7 @@ AC_DEFUN([CF_LIB_SUFFIX],
$3=[$]$2
;;
(hpux*)
- case $target in
+ case "$target" in
(ia64*)
$2='.so'
$3=[$]$2
@@ -2185,7 +2402,14 @@ AC_DEFUN([CF_LIB_SUFFIX],
esac
;;
(*)
- $2='.a'
+ case "$target" in
+ (*-msvc*)
+ $2='.lib'
+ ;;
+ (*)
+ $2='.a'
+ ;;
+ esac
$3=[$]$2
;;
esac
@@ -2278,14 +2502,15 @@ AC_SUBST(BROKEN_LINKER)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MAKEFLAGS version: 18 updated: 2018/02/21 21:26:03
+dnl CF_MAKEFLAGS version: 21 updated: 2021/09/04 06:47:34
dnl ------------
dnl Some 'make' programs support ${MAKEFLAGS}, some ${MFLAGS}, to pass 'make'
-dnl options to lower-levels. It's very useful for "make -n" -- if we have it.
+dnl options to lower-levels. It is very useful for "make -n" -- if we have it.
dnl (GNU 'make' does both, something POSIX 'make', which happens to make the
dnl ${MAKEFLAGS} variable incompatible because it adds the assignments :-)
AC_DEFUN([CF_MAKEFLAGS],
-[
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+
AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[
cf_cv_makeflags=''
for cf_option in '-${MAKEFLAGS}' '${MFLAGS}'
@@ -2295,10 +2520,10 @@ SHELL = $SHELL
all :
@ echo '.$cf_option'
CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[[ ]]*$,,'`
+ cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | ${FGREP-fgrep} -v "ing directory" | sed -e 's,[[ ]]*$,,'`
case "$cf_result" in
(.*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
+ cf_result="`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`"
case "$cf_result" in
(.*CC=*) cf_cv_makeflags=
;;
@@ -2320,6 +2545,89 @@ CF_EOF
AC_SUBST(cf_cv_makeflags)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_MAKE_PHONY version: 3 updated: 2021/01/08 16:08:21
+dnl -------------
+dnl Check if the make-program handles a ".PHONY" target, e.g,. a target which
+dnl acts as a placeholder.
+dnl
+dnl The ".PHONY" feature was proposed in 2011 here
+dnl https://www.austingroupbugs.net/view.php?id=523
+dnl and is scheduled for release in P1003.1 Issue 8 (late 2022).
+dnl
+dnl This is not supported by SVr4 make (or SunOS 4, 4.3SD, etc), but works with
+dnl a few others (i.e., GNU make and the non-POSIX "BSD" make):
+dnl
+dnl + This is a GNU make feature (since April 1988, but in turn from binutils,
+dnl date unspecified).
+dnl
+dnl + It was adopted in NetBSD make in June 1995.
+dnl
+dnl + The other BSD make programs are derived from the NetBSD make (and for
+dnl that reason are not actually different "implementations").
+dnl
+dnl + Some features of NetBSD make were actually adapted from pmake, which
+dnl began as a modified GNU make starting in 1993.
+dnl
+dnl + Version 3.8 of the dmake program in January 1992 also implemented this
+dnl GNU make extension, but is less well known than the BSD make.
+AC_DEFUN([CF_MAKE_PHONY],[
+AC_CACHE_CHECK(for \".PHONY\" make-support, cf_cv_make_PHONY,[
+ rm -rf conftest*
+ (
+ mkdir conftest || exit 1
+ cd conftest
+ cat >makefile <<'CF_EOF'
+.PHONY: always
+DATA=0
+always: always.out
+ @echo "** making [$]@ [$](DATA)"
+once: once.out
+ @echo "** making [$]@ [$](DATA)"
+always.out:
+ @echo "** making [$]@ [$](DATA)"
+ echo [$](DATA) > [$]@
+once.out:
+ @echo "** making [$]@ [$](DATA)"
+ echo [$](DATA) > [$]@
+CF_EOF
+ for cf_data in 1 2 3
+ do
+ ${MAKE:-make} always DATA=$cf_data
+ ${MAKE:-make} once DATA=$cf_data
+ ${MAKE:-make} -t always once
+ if test -f always ; then
+ echo "no (case 1)" > ../conftest.tmp
+ elif test ! -f always.out ; then
+ echo "no (case 2)" > ../conftest.tmp
+ elif test ! -f once.out ; then
+ echo "no (case 3)" > ../conftest.tmp
+ elif ! cmp -s always.out once.out ; then
+ echo "no (case 4)" > ../conftest.tmp
+ diff always.out once.out
+ else
+ cf_check="`cat always.out`"
+ if test "x$cf_check" != "x$cf_data" ; then
+ echo "no (case 5)" > ../conftest.tmp
+ else
+ echo yes > ../conftest.tmp
+ rm -f ./*.out
+ continue
+ fi
+ fi
+ break
+ done
+ ) >&AC_FD_CC 2>&1
+ cf_cv_make_PHONY="`cat conftest.tmp`"
+ rm -rf conftest*
+])
+MAKE_NO_PHONY="#"
+MAKE_PHONY="#"
+test "x$cf_cv_make_PHONY" = xyes && MAKE_PHONY=
+test "x$cf_cv_make_PHONY" != xyes && MAKE_NO_PHONY=
+AC_SUBST(MAKE_NO_PHONY)
+AC_SUBST(MAKE_PHONY)
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_MAKE_TAGS version: 6 updated: 2010/10/23 15:52:32
dnl ------------
dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have
@@ -2357,7 +2665,7 @@ AC_SUBST(MAKE_UPPER_TAGS)
AC_SUBST(MAKE_LOWER_TAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MIXEDCASE_FILENAMES version: 7 updated: 2015/04/12 15:39:00
+dnl CF_MIXEDCASE_FILENAMES version: 9 updated: 2021/01/01 16:53:59
dnl ----------------------
dnl Check if the file-system supports mixed-case filenames. If we're able to
dnl create a lowercase name and see it as uppercase, it doesn't support that.
@@ -2365,8 +2673,8 @@ AC_DEFUN([CF_MIXEDCASE_FILENAMES],
[
AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
if test "$cross_compiling" = yes ; then
- case $target_alias in
- (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*)
+ case "$target_alias" in
+ (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*|darwin*)
cf_cv_mixedcase=no
;;
(*)
@@ -2387,7 +2695,7 @@ fi
test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if filesystem supports mixed-case filenames.])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MKSTEMP version: 10 updated: 2017/01/21 11:12:16
+dnl CF_MKSTEMP version: 11 updated: 2021/01/01 13:31:04
dnl ----------
dnl Check for a working mkstemp. This creates two files, checks that they are
dnl successfully created and distinct (AmigaOS apparently fails on the last).
@@ -2396,7 +2704,7 @@ AC_CHECK_HEADERS( \
unistd.h \
)
AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[
-rm -rf conftest*
+rm -rf ./conftest*
AC_TRY_RUN([
#include <sys/types.h>
#ifdef HAVE_UNISTD_H
@@ -2453,7 +2761,7 @@ AC_DEFUN([CF_MSG_LOG],[
echo "${as_me:-configure}:__oline__: testing $* ..." 1>&AC_FD_CC
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_ADDON version: 5 updated: 2015/04/26 18:06:58
+dnl CF_NCURSES_ADDON version: 6 updated: 2021/01/04 19:33:05
dnl ----------------
dnl Configure an ncurses add-on, built outside the ncurses tree.
AC_DEFUN([CF_NCURSES_ADDON],[
@@ -2509,7 +2817,7 @@ CF_EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | fgrep AUTOCONF_$cf_name >conftest.out"
AC_TRY_EVAL(cf_try)
if test -f conftest.out ; then
- cf_result=`cat conftest.out | sed -e "s/^.*AUTOCONF_$cf_name[[ ]][[ ]]*//"`
+ cf_result=`sed -e "s/^.*AUTOCONF_${cf_name}[[ ]][[ ]]*//" conftest.out`
eval NCURSES_$cf_name=\"$cf_result\"
# cat conftest.$ac_ext
# cat conftest.out
@@ -2543,7 +2851,7 @@ AC_SUBST(cf_cv_type_of_bool)dnl
])
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_CC_CHECK version: 4 updated: 2007/07/29 10:39:05
+dnl CF_NCURSES_CC_CHECK version: 5 updated: 2020/12/31 20:19:42
dnl -------------------
dnl Check if we can compile with ncurses' header file
dnl $1 is the cache variable to set
@@ -2563,10 +2871,10 @@ AC_DEFUN([CF_NCURSES_CC_CHECK],[
make an error
#endif
])[
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -2576,7 +2884,7 @@ printf("old\n");
,[$1=no])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_CONFIG version: 21 updated: 2018/06/20 20:23:13
+dnl CF_NCURSES_CONFIG version: 28 updated: 2021/08/28 15:20:37
dnl -----------------
dnl Tie together the configure-script macros for ncurses, preferring these in
dnl order:
@@ -2598,17 +2906,53 @@ if test "x${PKG_CONFIG:=none}" != xnone; then
AC_MSG_CHECKING(if the $cf_ncuconfig_root package files work)
cf_have_ncuconfig=unknown
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
- CF_ADD_CFLAGS(`$PKG_CONFIG --cflags $cf_ncuconfig_root`)
- CF_ADD_LIBS(`$PKG_CONFIG --libs $cf_ncuconfig_root`)
+ cf_pkg_cflags="`$PKG_CONFIG --cflags $cf_ncuconfig_root`"
+ cf_pkg_libs="`$PKG_CONFIG --libs $cf_ncuconfig_root`"
+
+ # while -W for passing linker flags is prevalent, it is not "standard".
+ # At least one wrapper for c89/c99 (in Apple's xcode) has its own
+ # incompatible _and_ non-standard -W option which gives an error. Work
+ # around that pitfall.
+ case "x${CC}@@${cf_pkg_libs}@${cf_pkg_cflags}" in
+ (x*c[[89]]9@@*-W*)
+ CF_ADD_CFLAGS($cf_pkg_cflags)
+ CF_ADD_LIBS($cf_pkg_libs)
+
+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+ [initscr(); mousemask(0,0); tigetstr((char *)0);],
+ [AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
+ int main(void)
+ { const char *xx = curses_version(); return (xx == 0); }],
+ [cf_test_ncuconfig=yes],
+ [cf_test_ncuconfig=no],
+ [cf_test_ncuconfig=maybe])],
+ [cf_test_ncuconfig=no])
+
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
+
+ if test "x$cf_test_ncuconfig" != xyes; then
+ cf_temp=`echo "x$cf_pkg_cflags" | sed -e s/^x// -e 's/-W[[^ ]]*//g'`
+ cf_pkg_cflags="$cf_temp"
+ cf_temp=`echo "x$cf_pkg_libs" | sed -e s/^x// -e 's/-W[[^ ]]*//g'`
+ cf_pkg_libs="$cf_temp"
+ fi
+ ;;
+ esac
+
+ CF_APPEND_CFLAGS($cf_pkg_cflags)
+ CF_ADD_LIBS($cf_pkg_libs)
AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
- [initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);],
+ [initscr(); mousemask(0,0); tigetstr((char *)0);],
[AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
- { char *xx = curses_version(); return (xx == 0); }],
+ { const char *xx = curses_version(); return (xx == 0); }],
[cf_have_ncuconfig=yes],
[cf_have_ncuconfig=no],
[cf_have_ncuconfig=maybe])],
@@ -2643,7 +2987,7 @@ if test "x$cf_have_ncuconfig" = "xno"; then
if test "$NCURSES_CONFIG" != none ; then
- CF_ADD_CFLAGS(`$NCURSES_CONFIG --cflags`)
+ CF_APPEND_CFLAGS(`$NCURSES_CONFIG --cflags`)
CF_ADD_LIBS(`$NCURSES_CONFIG --libs`)
# even with config script, some packages use no-override for curses.h
@@ -2657,7 +3001,7 @@ if test "x$cf_have_ncuconfig" = "xno"; then
AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
dnl like CF_NCURSES_VERSION
- cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+ cf_cv_ncurses_version="`$NCURSES_CONFIG --version`"
else
@@ -2670,7 +3014,7 @@ else
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_CPPFLAGS version: 21 updated: 2012/10/06 08:57:51
+dnl CF_NCURSES_CPPFLAGS version: 22 updated: 2021/01/02 09:31:20
dnl -------------------
dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting
dnl the CPPFLAGS variable so we can include its header.
@@ -2704,7 +3048,7 @@ test "$cf_cv_curses_dir" != "no" && { \
AC_CACHE_CHECK(for $cf_ncuhdr_root header in include-path, cf_cv_ncurses_h,[
cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+ { test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw; } && cf_header_list="$cf_header_list curses.h ncurses.h"
for cf_header in $cf_header_list
do
CF_NCURSES_CC_CHECK(cf_cv_ncurses_h,$cf_header,$1)
@@ -2721,7 +3065,7 @@ AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
CF_NCURSES_VERSION
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_HEADER version: 4 updated: 2015/04/15 19:08:48
+dnl CF_NCURSES_HEADER version: 7 updated: 2021/01/04 19:33:05
dnl -----------------
dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
dnl variations of ncurses' installs.
@@ -2736,7 +3080,7 @@ else
AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
test -n "$verbose" && echo
CF_HEADER_PATH(cf_search,$cf_ncuhdr_root)
- test -n "$verbose" && echo search path $cf_search
+ test -n "$verbose" && echo "search path $cf_search"
cf_save2_CPPFLAGS="$CPPFLAGS"
for cf_incdir in $cf_search
do
@@ -2748,7 +3092,7 @@ AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
CF_NCURSES_CC_CHECK(cf_cv_ncurses_h2,$cf_header,$1)
if test "$cf_cv_ncurses_h2" != no ; then
cf_cv_ncurses_h2=$cf_incdir/$cf_header
- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&AC_FD_MSG
+ test -n "$verbose" && echo $ECHO_N " ... found $ECHO_C" 1>&AC_FD_MSG
break
fi
test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&AC_FD_MSG
@@ -2760,9 +3104,9 @@ AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
])
CF_DIRNAME(cf_1st_incdir,$cf_cv_ncurses_h2)
- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+ cf_cv_ncurses_header="`basename "$cf_cv_ncurses_h2"`"
+ if test "`basename "$cf_1st_incdir"`" = "$cf_ncuhdr_root" ; then
+ cf_cv_ncurses_header="$cf_ncuhdr_root/$cf_cv_ncurses_header"
fi
CF_ADD_INCDIR($cf_1st_incdir)
@@ -2770,13 +3114,13 @@ fi
# Set definitions to allow ifdef'ing for ncurses.h
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(*ncurses.h)
AC_DEFINE(HAVE_NCURSES_H,1,[Define to 1 if we have ncurses.h])
;;
esac
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(ncurses/curses.h|ncurses/ncurses.h)
AC_DEFINE(HAVE_NCURSES_NCURSES_H,1,[Define to 1 if we have ncurses/ncurses.h])
;;
@@ -2787,7 +3131,7 @@ esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_LIBS version: 17 updated: 2015/04/15 19:08:48
+dnl CF_NCURSES_LIBS version: 21 updated: 2021/09/04 06:37:12
dnl ---------------
dnl Look for the ncurses library. This is a little complicated on Linux,
dnl because it may be linked with the gpm (general purpose mouse) library.
@@ -2813,10 +3157,10 @@ AC_CHECK_LIB(gpm,Gpm_Open,
[LIBS="$cf_ncurses_SAVE"],
[cf_ncurses_LIBS="-lgpm"])])
-case $host_os in
+case "$host_os" in
(freebsd*)
# This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
+ # version of ncurses (but it should do no harm, since it is static).
if test "$cf_nculib_root" = ncurses ; then
AC_CHECK_LIB(mytinfo,tgoto,[cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"])
fi
@@ -2825,7 +3169,7 @@ esac
CF_ADD_LIBS($cf_ncurses_LIBS)
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
CF_ADD_LIBS(-l$cf_nculib_root)
else
@@ -2839,13 +3183,13 @@ if test -n "$cf_ncurses_LIBS" ; then
AC_MSG_CHECKING(if we can link $cf_nculib_root without $cf_ncurses_LIBS)
cf_ncurses_SAVE="$LIBS"
for p in $cf_ncurses_LIBS ; do
- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+ q=`echo "$LIBS" | sed -e "s%$p %%" -e "s%$p$%%"`
if test "$q" != "$LIBS" ; then
LIBS="$q"
fi
done
AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
- [initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);],
+ [initscr(); mousemask(0,0); tigetstr((char *)0);],
[AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)
LIBS="$cf_ncurses_SAVE"])
@@ -2855,7 +3199,7 @@ CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_nculib_root)
AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_VERSION version: 15 updated: 2017/05/09 19:26:10
+dnl CF_NCURSES_VERSION version: 16 updated: 2020/12/31 20:19:42
dnl ------------------
dnl Check for the version of ncurses, to aid in reporting bugs, etc.
dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS. We don't use
@@ -2866,7 +3210,7 @@ AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
AC_TRY_RUN([
#include <${cf_cv_ncurses_header:-curses.h}>
#include <stdio.h>
@@ -2875,13 +3219,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -2892,7 +3236,7 @@ int main(void)
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -2907,17 +3251,17 @@ EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&AC_FD_CC | grep '^Autoconf ' >conftest.out"
AC_TRY_EVAL(cf_try)
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[[^"]]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[[^"]]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
])
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
])
test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_OBJ_SUBDIR version: 7 updated: 2015/04/17 21:13:04
+dnl CF_OBJ_SUBDIR version: 8 updated: 2021/01/01 13:31:04
dnl -------------
dnl Compute the object-directory name from the given model name
AC_DEFUN([CF_OBJ_SUBDIR],
@@ -2928,7 +3272,7 @@ AC_DEFUN([CF_OBJ_SUBDIR],
(debug) $2='obj_g' ;;
(profile) $2='obj_p' ;;
(shared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin|msys)
$2='objects' ;;
(*)
@@ -2937,14 +3281,14 @@ AC_DEFUN([CF_OBJ_SUBDIR],
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PATHSEP version: 7 updated: 2015/04/12 15:39:00
+dnl CF_PATHSEP version: 8 updated: 2021/01/01 13:31:04
dnl ----------
dnl Provide a value for the $PATH and similar separator (or amend the value
dnl as provided in autoconf 2.5x).
AC_DEFUN([CF_PATHSEP],
[
AC_MSG_CHECKING(for PATH separator)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(os2*) PATH_SEPARATOR=';' ;;
(*) ${PATH_SEPARATOR:=':'} ;;
esac
@@ -2953,7 +3297,7 @@ ifelse([$1],,,[$1=$PATH_SEPARATOR])
AC_MSG_RESULT($PATH_SEPARATOR)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PATH_SYNTAX version: 16 updated: 2015/04/18 08:56:57
+dnl CF_PATH_SYNTAX version: 18 updated: 2020/12/31 18:40:20
dnl --------------
dnl Check the argument to see that it looks like a pathname. Rewrite it if it
dnl begins with one of the prefix/exec_prefix variables, and then again if the
@@ -2973,16 +3317,16 @@ case ".[$]$1" in
;;
(.[[a-zA-Z]]:[[\\/]]*) # OS/2 EMX
;;
-(.\[$]{*prefix}*|.\[$]{*dir}*)
+(.\[$]\{*prefix\}*|.\[$]\{*dir\}*)
eval $1="[$]$1"
case ".[$]$1" in
(.NONE/*)
- $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+ $1=`echo "[$]$1" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+ $1=`echo "[$]$1" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
ifelse([$2],,[AC_MSG_ERROR([expected a pathname, not \"[$]$1\"])],$2)
@@ -2990,9 +3334,11 @@ case ".[$]$1" in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PKG_CONFIG version: 10 updated: 2015/04/26 18:06:58
+dnl CF_PKG_CONFIG version: 12 updated: 2021/10/10 20:18:09
dnl -------------
dnl Check for the package-config program, unless disabled by command-line.
+dnl
+dnl Sets $PKG_CONFIG to the pathname of the pkg-config program.
AC_DEFUN([CF_PKG_CONFIG],
[
AC_MSG_CHECKING(if you want to use pkg-config)
@@ -3002,7 +3348,7 @@ AC_ARG_WITH(pkg-config,
[cf_pkg_config=yes])
AC_MSG_RESULT($cf_pkg_config)
-case $cf_pkg_config in
+case "$cf_pkg_config" in
(no)
PKG_CONFIG=none
;;
@@ -3165,7 +3511,7 @@ CF_ACVERSION_CHECK(2.52,
CF_CC_ENV_FLAGS
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_CC_C_O version: 5 updated: 2017/01/21 11:06:25
+dnl CF_PROG_CC_C_O version: 6 updated: 2021/01/01 13:31:04
dnl --------------
dnl Analogous to AC_PROG_CC_C_O, but more useful: tests only $CC, ensures that
dnl the output file can be renamed, and allows for a shell variable that can
@@ -3197,9 +3543,9 @@ then
else
eval cf_cv_prog_$1_c_o=no
fi
-rm -rf conftest*
+rm -rf ./conftest*
])dnl
-if test $cf_cv_prog_$1_c_o = yes; then
+if test "$cf_cv_prog_$1_c_o" = yes; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
@@ -3221,13 +3567,13 @@ AC_DEFUN([CF_PROG_EGREP],
test -z "$EGREP" && AC_MSG_ERROR(No egrep program found)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_EXT version: 14 updated: 2018/06/20 20:23:13
+dnl CF_PROG_EXT version: 15 updated: 2021/01/02 09:31:20
dnl -----------
dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX.
AC_DEFUN([CF_PROG_EXT],
[
AC_REQUIRE([CF_CHECK_CACHE])
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(os2*)
CFLAGS="$CFLAGS -Zmt"
CF_APPEND_TEXT(CPPFLAGS,-D__ST_MT_ERRNO__)
@@ -3246,7 +3592,7 @@ AC_SUBST(PROG_EXT)
test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT",[Define to the program extension (normally blank)])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_GNAT version: 10 updated: 2019/12/31 08:53:54
+dnl CF_PROG_GNAT version: 12 updated: 2021/01/02 17:09:14
dnl ------------
dnl Check for gnat/gnatmake/etc, ensure that the toolset is complete.
AC_DEFUN([CF_PROG_GNAT],[
@@ -3257,14 +3603,14 @@ do
unset ac_cv_path_cf_TEMP_gnat
unset cf_TEMP_gnat
AC_PATH_PROG(cf_TEMP_gnat,$cf_prog_gnat,no)
- eval cf_cv_PATH_$cf_upper_prog_gnat=[$]ac_cv_path_cf_TEMP_gnat
+ eval "cf_cv_PATH_$cf_upper_prog_gnat=[$]ac_cv_path_cf_TEMP_gnat"
if test "x$cf_TEMP_gnat" != xno; then
unset cf_cv_gnat_version
unset cf_TEMP_gnat
CF_GNAT_VERSION(cf_TEMP_gnat,$cf_prog_gnat)
fi
- eval cf_cv_VERSION_$cf_upper_prog_gnat=[$]cf_TEMP_gnat
+ eval "cf_cv_VERSION_$cf_upper_prog_gnat=[$]cf_TEMP_gnat"
unset cf_TEMP_gnat
unset cf_cv_gnat_version
@@ -3280,7 +3626,7 @@ else
# gprconfig is newer than gnatmake; we can continue...
cf_ada_config="##"
else
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src
then
cf_ada_config=""
@@ -3288,12 +3634,12 @@ else
for cf_gprconfig in Ada C
do
AC_MSG_CHECKING(for gprconfig name for $cf_gprconfig)
- if test $cf_gprconfig = C
+ if test "$cf_gprconfig" = C
then
for cf_gprconfig_param in \
- $cf_gprconfig,,,,GNATGCC \
- $cf_gprconfig,,,,GCC \
- $cf_gprconfig
+ "$cf_gprconfig,,,,GNATGCC" \
+ "$cf_gprconfig,,,,GCC" \
+ "$cf_gprconfig"
do
cf_gprconfig_value=`echo s| gprconfig --config=$cf_gprconfig_param 2>&AC_FD_CC | ${AWK:-awk} '/^\*/{print [$]3;}' | head -n 1`
test -n "$cf_gprconfig_value" && break
@@ -3304,7 +3650,7 @@ else
fi
if test -n "$cf_gprconfig_value"
then
- eval cf_ada_config_[$]cf_gprconfig=[$]cf_gprconfig_value
+ eval "cf_ada_config_[$]cf_gprconfig=[$]cf_gprconfig_value"
AC_MSG_RESULT($cf_gprconfig_value)
else
AC_MSG_RESULT(missing)
@@ -3313,7 +3659,7 @@ else
fi
done
cd ..
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
fi
fi
if test "x$cf_ada_config" != "x#"
@@ -3351,7 +3697,7 @@ AC_SUBST(cf_ada_config_Ada)
AC_SUBST(cf_ada_config_C)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_INSTALL version: 7 updated: 2015/04/18 08:56:57
+dnl CF_PROG_INSTALL version: 10 updated: 2021/01/04 19:33:05
dnl ---------------
dnl Force $INSTALL to be an absolute-path. Otherwise, edit_man.sh and the
dnl misc/tabset install won't work properly. Usually this happens only when
@@ -3364,7 +3710,7 @@ case $INSTALL in
(*)
CF_DIRNAME(cf_dir,$INSTALL)
test -z "$cf_dir" && cf_dir=.
- INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
+ INSTALL="`cd \"$cf_dir\" && pwd`"/"`echo "$INSTALL" | sed -e 's%^.*/%%'`"
;;
esac
])dnl
@@ -3391,6 +3737,24 @@ AC_MSG_RESULT($cf_prog_ln_sf)
test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_REMOVE_CFLAGS version: 3 updated: 2021/09/05 17:25:40
+dnl ----------------
+dnl Remove a given option from CFLAGS/CPPFLAGS
+dnl $1 = option to remove
+dnl $2 = variable to update
+dnl $3 = nonempty to allow verbose message
+define([CF_REMOVE_CFLAGS],
+[
+cf_tmp_cflag=`echo "x$1" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x[$]$2" | sed -e 's/^.//' -e 's/[[ ]][[ ]]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[[^ ]][[^ ]]*\\)\?%%" -e 's/^[[ ]]*//' -e 's%[[ ]][[ ]]*-D% -D%g' -e 's%[[ ]][[ ]]*-I% -I%g'`
+ test "[$]$2" != "$cf_old_cflag" || break
+ ifelse([$3],,,[CF_VERBOSE(removing old option $1 from $2)])
+ $2="$cf_old_cflag"
+done
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_REMOVE_DEFINE version: 3 updated: 2010/01/09 11:05:50
dnl ----------------
dnl Remove all -U and -D options that refer to the given symbol from a list
@@ -3457,7 +3821,7 @@ do
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SHARED_OPTS version: 93 updated: 2018/08/18 16:36:35
+dnl CF_SHARED_OPTS version: 107 updated: 2021/09/04 06:47:34
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
@@ -3481,7 +3845,7 @@ dnl The variable 'cf_cv_shlib_version_infix' controls whether shared library
dnl version numbers are infix (ex: libncurses.<ver>.dylib) or postfix
dnl (ex: libncurses.so.<ver>).
dnl
-dnl Some loaders leave 'so_locations' lying around. It's nice to clean up.
+dnl Some loaders leave 'so_locations' lying around. It is nice to clean up.
AC_DEFUN([CF_SHARED_OPTS],
[
AC_REQUIRE([CF_LD_RPATH_OPT])
@@ -3507,7 +3871,7 @@ AC_DEFUN([CF_SHARED_OPTS],
AC_ARG_WITH(shlib-version,
[ --with-shlib-version=X Specify rel or abi version for shared libs],
[test -z "$withval" && withval=auto
- case $withval in
+ case "$withval" in
(yes)
cf_cv_shlib_version=auto
;;
@@ -3533,7 +3897,7 @@ AC_DEFUN([CF_SHARED_OPTS],
then
cf_try_fPIC=yes
else
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(*linux*) # e.g., PGI compiler
cf_try_fPIC=yes
;;
@@ -3555,7 +3919,7 @@ AC_DEFUN([CF_SHARED_OPTS],
cf_cv_shlib_version_infix=no
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix4.[3-9]*|aix[[5-7]]*)
if test "$GCC" = yes; then
CC_SHARED_OPTS='-Wl,-brtl'
@@ -3624,10 +3988,14 @@ CF_EOF
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
AC_TRY_LINK(, [int i;], cf_cv_ldflags_search_paths_first=yes, cf_cv_ldflags_search_paths_first=no)
LDFLAGS=$cf_save_LDFLAGS])
- if test $cf_cv_ldflags_search_paths_first = yes; then
+ if test "$cf_cv_ldflags_search_paths_first" = yes; then
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
fi
;;
+ (haiku*)
+ CF_SHARED_SONAME
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
+ ;;
(hpux[[7-8]]*)
# HP-UX 8.07 ld lacks "+b" option used for libdir search-list
if test "$GCC" != yes; then
@@ -3683,6 +4051,112 @@ CF_EOF
CF_SHARED_SONAME
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
;;
+ (mingw*msvc*)
+ cf_cv_shlib_version=msvcdll
+ cf_cv_shlib_version_infix=msvcdll
+ shlibdir=$bindir
+ MAKE_DLLS=
+ if test "$DFT_LWR_MODEL" = "shared" ; then
+ LOCAL_LDFLAGS="-link -dll"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ EXTRA_LDFLAGS="-link -dll $EXTRA_LDFLAGS"
+ fi
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh [$]@ ${LD} [$]{CFLAGS}'
+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.lib"
+ cat >mk_shared_lib.sh <<-CF_EOF
+ #!$SHELL
+ SHARED_LIB=\[$]1
+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/[[0-9]]*\.dll[$]/.dll.lib/'\`
+ shift
+ my_ld=\[$]1
+ shift
+ cat <<-EOF
+ Linking shared library
+ ** SHARED LIB \$SHARED_LIB
+ ** IMPORT_LIB \$IMPORT_LIB
+EOF
+ args=\$(echo \[$]* | sed -E "s#-l(\w*)#\1.dll.lib#g" | sed -E "s#-L(\w*)#-LIBPATH:\1#g")
+ exec \$my_ld -DLL -IMPLIB:"\${IMPORT_LIB}" -OUT:"\${SHARED_LIB}" ${LDFLAGS} \$args
+ mv "\${IMPORT_LIB}" "\${IMPORT_LIB}"
+CF_EOF
+ chmod +x mk_shared_lib.sh
+ cat >mk_prog.sh <<-CF_EOF
+ #!$SHELL
+ shift
+ # Ignore first argument (compiler) and use LD (link.exe) unconditionally
+ LD="[$]LD"
+ clopts=()
+ ldopts=("/subsystem:console")
+ libs=()
+ isdll=0
+ while test \[$]# -gt 0; do
+ case "\[$]1" in
+ -link)
+ # ignore -link argument
+ ;;
+ -M[[TD]] | -M[[TD]]d)
+ # ignore runtime-library option
+ ;;
+ -dll)
+ isdll=1
+ ;;
+ -W* | -w*)
+ # ignore warnings
+ ;;
+ -D*)
+ clopts+=("\[$]1")
+ ;;
+ -I*)
+ clopts+=("\[$]1")
+ ;;
+ -l*)
+ libs+=("\`echo \"\[$]1\" | sed \"s/^-l//\"\`")
+ ;;
+ -L*)
+ ldopts+=("\`echo \"\[$]1\" | sed \"s/^-L/-LIBPATH:/\"\`")
+ ;;
+ *.obj | *.o)
+ ldopts+=("\[$]1")
+ ;;
+ -Wl,*)
+ for linkarg in \`echo '\[$]1' | sed -e 's/-Wl,//' -e 's/,/ /'\`; do
+ ldopts+=("\[$]{linkarg}")
+ done
+ ;;
+ *.lib)
+ ldopts+=("\[$]1")
+ ;;
+ -o)
+ shift
+ ldopts+=("-out:\[$]1")
+ ;;
+ *)
+ clopts+=("\[$]1")
+ ldopts+=("\[$]1")
+ ;;
+ esac
+ shift
+ done
+ if [[ "\$isdll" -ne 0 ]]; then
+ for lib in \[$]{libs[[*]]}; do
+ ldopts+=("\[$]lib.dll.lib")
+ done
+ else
+ for lib in \[$]{libs[[*]]}; do
+ ldopts+=("\[$]lib.lib")
+ done
+ fi
+ cat <<-EOF
+ Creating program
+ ** ld options: "\[$]{ldopts[[@]]}"
+EOF
+ exec \[$]LD \[$]{ldopts[[@]]}
+CF_EOF
+ chmod +x mk_prog.sh
+ LINK_PROGS="$SHELL ${rel_builddir}/mk_prog.sh"
+ LINK_TESTS="$SHELL ${rel_builddir}/mk_prog.sh"
+ ;;
(mingw*)
cf_cv_shlib_version=mingw
cf_cv_shlib_version_infix=mingw
@@ -3722,6 +4196,14 @@ CF_EOF
CF_SHARED_SONAME
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-Bshareable,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
;;
+ (nskJ*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Weld=-export_all -o $[@]'
+ ;;
+ (nskL*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Wxld=-export_all -o $[@]'
+ ;;
(nto-qnx*|openbsd*|freebsd[[12]].*)
CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
MK_SHARED_LIB='${LD} ${LDFLAGS} -Bshareable -o $[@]'
@@ -3753,7 +4235,7 @@ CF_EOF
CF_SHARED_SONAME
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]'
else
- MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -Wl,-shared -Wl,-Bshareable -o $[@]'
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -o $[@]'
fi
;;
(osf*|mls+*)
@@ -3761,7 +4243,7 @@ CF_EOF
# tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't
# link with shared libs).
MK_SHARED_LIB='${LD} ${LDFLAGS} -set_version ${REL_VERSION}:${ABI_VERSION} -expect_unresolved "*" -shared -soname `basename $[@]`'
- case $host_os in
+ case "$host_os" in
(osf4*)
MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
;;
@@ -3811,7 +4293,7 @@ CF_EOF
for cf_shared_opts in -xcode=pic32 -xcode=pic13 -KPIC -Kpic -O
do
CFLAGS="$cf_shared_opts $cf_save_CFLAGS"
- AC_TRY_COMPILE([#include <stdio.h>],[printf("Hello\n");],[break])
+ AC_TRY_COMPILE([#include <stdio.h>],[printf("Hello\\n");],[break])
done
CFLAGS="$cf_save_CFLAGS"
CC_SHARED_OPTS=$cf_shared_opts
@@ -3854,7 +4336,7 @@ cat > conftest.$ac_ext <<EOF
#include <stdio.h>
int main(int argc, char *argv[[]])
{
- printf("hello\n");
+ printf("hello\\n");
return (argv[[argc-1]] == 0) ;
}
EOF
@@ -3878,7 +4360,7 @@ EOF
test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}"
test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}"
- test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
+ test "$cf_cv_rm_so_locs" = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
CF_VERBOSE(CC_SHARED_OPTS: $CC_SHARED_OPTS)
CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB)
@@ -3918,11 +4400,11 @@ define([CF_SHARED_SONAME],
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_STRIP_G_OPT version: 3 updated: 2002/12/21 19:25:52
+dnl CF_STRIP_G_OPT version: 4 updated: 2021/01/02 09:31:20
dnl --------------
dnl Remove "-g" option from the compiler options
AC_DEFUN([CF_STRIP_G_OPT],
-[$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl
+[$1=`echo "${$1}" | CF__SED_TRIMBLANKS(-e 's%-g %%' -e 's%-g$%%')`])dnl
dnl ---------------------------------------------------------------------------
dnl CF_SUBDIR_PATH version: 7 updated: 2014/12/04 04:33:06
dnl --------------
@@ -3948,14 +4430,14 @@ do
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_TERM_HEADER version: 4 updated: 2015/04/15 19:08:48
+dnl CF_TERM_HEADER version: 6 updated: 2021/01/02 09:31:20
dnl --------------
dnl Look for term.h, which is part of X/Open curses. It defines the interface
dnl to terminfo database. Usually it is in the same include-path as curses.h,
dnl but some packagers change this, breaking various applications.
AC_DEFUN([CF_TERM_HEADER],[
AC_CACHE_CHECK(for terminfo header, cf_cv_term_header,[
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[[^.]]*\.h$%term.h%'`
;;
@@ -3969,7 +4451,7 @@ do
AC_TRY_COMPILE([#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
#include <$cf_test>
-],[int x = auto_left_margin],[
+],[int x = auto_left_margin; (void)x],[
cf_cv_term_header="$cf_test"],[
cf_cv_term_header=unknown
])
@@ -3979,13 +4461,13 @@ done
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h])
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h])
;;
@@ -4004,7 +4486,7 @@ top_builddir=ifelse($1,,`pwd`,$1)
AC_SUBST(top_builddir)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_TRY_XOPEN_SOURCE version: 2 updated: 2018/06/20 20:23:13
+dnl CF_TRY_XOPEN_SOURCE version: 3 updated: 2021/08/28 15:20:37
dnl -------------------
dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
dnl can define it successfully.
@@ -4039,7 +4521,7 @@ if test "$cf_cv_xopen_source" != no ; then
CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
- CF_ADD_CFLAGS($cf_temp_xopen_source)
+ CF_APPEND_CFLAGS($cf_temp_xopen_source)
fi
])
dnl ---------------------------------------------------------------------------
@@ -4052,15 +4534,21 @@ AC_DEFUN([CF_UPPER],
$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51
+dnl CF_UTF8_LIB version: 9 updated: 2021/05/19 19:35:25
dnl -----------
dnl Check for multibyte support, and if not found, utf8 compatibility library
AC_DEFUN([CF_UTF8_LIB],
[
+AC_HAVE_HEADERS(wchar.h)
AC_CACHE_CHECK(for multibyte character support,cf_cv_utf8_lib,[
cf_save_LIBS="$LIBS"
AC_TRY_LINK([
-#include <stdlib.h>],[putwc(0,0);],
+#include <stdlib.h>
+#include <stdio.h>
+#ifdef HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+],[putwc(0,0);],
[cf_cv_utf8_lib=yes],
[CF_FIND_LINKAGE([
#include <libutf8.h>],[putwc(0,0);],utf8,
@@ -4212,7 +4700,7 @@ AC_SUBST(ADA_SHAREDLIB)
AC_SUBST(MAKE_ADA_SHAREDLIB)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_CURSES_DIR version: 3 updated: 2010/11/20 17:02:38
+dnl CF_WITH_CURSES_DIR version: 4 updated: 2021/01/02 19:22:58
dnl ------------------
dnl Wrapper for AC_ARG_WITH to specify directory under which to look for curses
dnl libraries.
@@ -4225,7 +4713,7 @@ AC_ARG_WITH(curses-dir,
[cf_cv_curses_dir=no])
AC_MSG_RESULT($cf_cv_curses_dir)
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
CF_PATH_SYNTAX(withval)
if test -d "$cf_cv_curses_dir"
@@ -4236,7 +4724,7 @@ then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_LIB_PREFIX version: 1 updated: 2012/01/21 19:28:10
+dnl CF_WITH_LIB_PREFIX version: 2 updated: 2021/01/01 16:53:59
dnl ------------------
dnl Allow the library-prefix to be overridden. OS/2 EMX originally had no
dnl "lib" prefix, e.g., because it used the dll naming convention.
@@ -4251,10 +4739,10 @@ AC_ARG_WITH(lib-prefix,
[with_lib_prefix=auto])
AC_MSG_RESULT($with_lib_prefix)
-if test $with_lib_prefix = auto
+if test "$with_lib_prefix" = auto
then
CF_LIB_PREFIX($1)
-elif test $with_lib_prefix = no
+elif test "$with_lib_prefix" = no
then
LIB_PREFIX=
else
@@ -4262,7 +4750,7 @@ else
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PATH version: 11 updated: 2012/09/29 15:04:19
+dnl CF_WITH_PATH version: 12 updated: 2021/09/04 06:35:04
dnl ------------
dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
dnl defaulting to yes/no.
@@ -4271,7 +4759,7 @@ dnl $1 = option name
dnl $2 = help-text
dnl $3 = environment variable to set
dnl $4 = default value, shown in the help-message, must be a constant
-dnl $5 = default value, if it's an expression & cannot be in the help-message
+dnl $5 = default value, if it is an expression & cannot be in the help-message
dnl
AC_DEFUN([CF_WITH_PATH],
[AC_ARG_WITH($1,[$2 ](default: ifelse([$4],,empty,[$4])),,
@@ -4283,12 +4771,21 @@ eval $3="$withval"
AC_SUBST($3)dnl
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PKG_CONFIG_LIBDIR version: 10 updated: 2015/08/22 17:10:56
+dnl CF_WITH_PKG_CONFIG_LIBDIR version: 13 updated: 2021/10/17 11:12:47
dnl -------------------------
dnl Allow the choice of the pkg-config library directory to be overridden.
+dnl
+dnl pkg-config uses a search-list built from these colon-separated lists of
+dnl directories:
+dnl a) $PKG_CONFIG_PATH (tested first, added if set)
+dnl b) $PKG_CONFIG_LIBDIR (tested second, added if set)
+dnl c) builtin-list (added if $PKG_CONFIG_LIBDIR is not set)
+dnl
+dnl pkgconf (used with some systems such as FreeBSD in place of pkg-config)
+dnl optionally ignores $PKG_CONFIG_LIBDIR.
AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[
-case $PKG_CONFIG in
+case "$PKG_CONFIG" in
(no|none|yes)
AC_MSG_CHECKING(for pkg-config library directory)
;;
@@ -4297,68 +4794,98 @@ case $PKG_CONFIG in
;;
esac
-PKG_CONFIG_LIBDIR=no
+cf_search_path=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/:/ /g' -e 's,^[[ ]]*,,'`
AC_ARG_WITH(pkg-config-libdir,
[ --with-pkg-config-libdir=XXX use given directory for installing pc-files],
- [PKG_CONFIG_LIBDIR=$withval],
- [test "x$PKG_CONFIG" != xnone && PKG_CONFIG_LIBDIR=yes])
+ [cf_search_path=$withval],
+ [test "x$PKG_CONFIG" != xnone && cf_search_path=yes])
-case x$PKG_CONFIG_LIBDIR in
+case x$cf_search_path in
(x/*)
;;
(xyes)
+ cf_search_path=
+ CF_VERBOSE(auto...)
# Look for the library directory using the same prefix as the executable
+ AC_MSG_CHECKING(for search-list)
if test "x$PKG_CONFIG" = xnone
then
cf_path=$prefix
else
cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`
+ cf_search_path=`
+ "$PKG_CONFIG" --debug --exists no-such-package 2>&1 | awk "\
+/^Scanning directory #[1-9][0-9]* '.*'$/{ \
+ sub(\"^[[^']]*'\",\"\"); \
+ sub(\"'.*\",\"\"); \
+ printf \" %s\", \\[$]0; } \
+/trying path:/{
+ sub(\"^.* trying path: \",\"\");
+ sub(\" for no-such-package.*$\",\"\");
+ printf \" %s\", \\[$]0;
+}
+{ next; } \
+"`
fi
- # If you don't like using the default architecture, you have to specify the
- # intended library directory and corresponding compiler/linker options.
- #
- # This case allows for Debian's 2014-flavor of multiarch, along with the
- # most common variations before that point. Some other variants spell the
- # directory differently, e.g., "pkg-config", and put it in unusual places.
- # pkg-config has always been poorly standardized, which is ironic...
- case x`(arch) 2>/dev/null` in
- (*64)
- cf_search_path="\
- $cf_path/lib/*64-linux-gnu \
- $cf_path/share \
- $cf_path/lib64 \
- $cf_path/lib32 \
- $cf_path/lib"
- ;;
- (*)
- cf_search_path="\
- $cf_path/lib/*-linux-gnu \
- $cf_path/share \
- $cf_path/lib32 \
- $cf_path/lib \
- $cf_path/libdata"
- ;;
- esac
+ if test -z "$cf_search_path"
+ then
+ # If you don't like using the default architecture, you have to specify
+ # the intended library directory and corresponding compiler/linker
+ # options.
+ #
+ # This case allows for Debian's 2014-flavor of multiarch, along with
+ # the most common variations before that point. Some other variants
+ # spell the directory differently, e.g., "pkg-config", and put it in
+ # unusual places.
+ #
+ # pkg-config has always been poorly standardized, which is ironic...
+ case x`(arch) 2>/dev/null` in
+ (*64)
+ cf_test_path="\
+ $cf_path/lib/*64-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib64 \
+ $cf_path/lib32 \
+ $cf_path/lib"
+ ;;
+ (*)
+ cf_test_path="\
+ $cf_path/lib/*-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib32 \
+ $cf_path/lib \
+ $cf_path/libdata"
+ ;;
+ esac
+ for cf_config in $cf_test_path
+ do
+ test -d "$cf_config/pkgconfig" && cf_search_path="$cf_search_path $cf_config/pkgconfig"
+ done
+ fi
+
+ AC_MSG_RESULT($cf_search_path)
- CF_VERBOSE(list...)
- for cf_config in $cf_search_path
- do
- CF_VERBOSE(checking $cf_config/pkgconfig)
- if test -d $cf_config/pkgconfig
- then
- PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
- AC_MSG_CHECKING(done)
- break
- fi
- done
;;
(*)
;;
esac
-if test "x$PKG_CONFIG_LIBDIR" != xno ; then
- AC_MSG_RESULT($PKG_CONFIG_LIBDIR)
+AC_MSG_CHECKING(for first directory)
+cf_pkg_config_path=none
+for cf_config in $cf_search_path
+do
+ if test -d "$cf_config"
+ then
+ cf_pkg_config_path=$cf_config
+ break
+ fi
+done
+AC_MSG_RESULT($cf_pkg_config_path)
+
+if test "x$cf_pkg_config_path" != xnone ; then
+ # limit this to the first directory found
+ PKG_CONFIG_LIBDIR="$cf_pkg_config_path"
fi
AC_SUBST(PKG_CONFIG_LIBDIR)
@@ -4426,7 +4953,7 @@ AC_ARG_WITH(system-type,
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 55 updated: 2018/12/31 20:46:17
+dnl CF_XOPEN_SOURCE version: 59 updated: 2021/08/28 15:20:37
dnl ---------------
dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
dnl or adapt to the vendor's definitions to get equivalent functionality,
@@ -4445,7 +4972,7 @@ cf_XOPEN_SOURCE=ifelse([$1],,500,[$1])
cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2])
cf_xopen_source=
-case $host_os in
+case "$host_os" in
(aix[[4-7]]*)
cf_xopen_source="-D_ALL_SOURCE"
;;
@@ -4491,7 +5018,15 @@ case $host_os in
(netbsd*)
cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
;;
-(openbsd[[4-9]]*)
+(openbsd[[6-9]]*)
+ # OpenBSD 6.x has broken locale support, both compile-time and runtime.
+ # see https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ # Abusing the conformance level is a workaround.
+ AC_MSG_WARN(this system does not provide usable locale support)
+ cf_xopen_source="-D_BSD_SOURCE"
+ cf_XOPEN_SOURCE=700
+ ;;
+(openbsd[[4-5]]*)
# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
cf_xopen_source="-D_BSD_SOURCE"
cf_XOPEN_SOURCE=600
@@ -4523,7 +5058,7 @@ case $host_os in
esac
if test -n "$cf_xopen_source" ; then
- CF_ADD_CFLAGS($cf_xopen_source,true)
+ CF_APPEND_CFLAGS($cf_xopen_source,true)
fi
dnl In anything but the default case, we may have system-specific setting
@@ -4538,7 +5073,7 @@ make an error
[cf_XOPEN_SOURCE_set=yes],
[cf_XOPEN_SOURCE_set=no])
AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
- if test $cf_XOPEN_SOURCE_set = yes
+ if test "$cf_XOPEN_SOURCE_set" = yes
then
AC_TRY_COMPILE([#include <stdlib.h>],[
#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
@@ -4546,7 +5081,7 @@ make an error
#endif],
[cf_XOPEN_SOURCE_set_ok=yes],
[cf_XOPEN_SOURCE_set_ok=no])
- if test $cf_XOPEN_SOURCE_set_ok = no
+ if test "$cf_XOPEN_SOURCE_set_ok" = no
then
AC_MSG_WARN(_XOPEN_SOURCE is lower than requested)
fi
@@ -4556,3 +5091,9 @@ make an error
fi
fi # cf_cv_posix_visible
])
+dnl ---------------------------------------------------------------------------
+dnl CF__SED_TRIMBLANKS version: 1 updated: 2021/01/02 09:31:20
+dnl ------------------
+dnl Trim something using sed, then trim extra whitespace
+dnl $1 = extra parameters, e.g., in CF_STRIP_G_OPT
+define([CF__SED_TRIMBLANKS],[sed ifelse($1,,,[$1] )-e 's%[[ ]]% %g' -e 's% [[ ]]*% %g' -e 's%^ %%' -e 's% [$]%%'])dnl
diff --git a/Ada95/configure b/Ada95/configure
index 03e8fda..0507ec8 100755
--- a/Ada95/configure
+++ b/Ada95/configure
@@ -1,8 +1,9 @@
#! /bin/sh
-# From configure.in Revision: 1.76 .
+# From configure.in Revision: 1.83 .
# Guess values for system-dependent variables and create Makefiles.
-# Generated by Autoconf 2.52.20200111.
+# Generated by Autoconf 2.52.20210509.
#
+# Copyright 2003-2020,2021 Thomas E. Dickey
# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -60,9 +61,9 @@ as_executable_p="test -f"
# Support unset when possible.
if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
+ as_unset="unset"
else
- as_unset=false
+ as_unset="false"
fi
# NLS nuisances.
@@ -97,13 +98,14 @@ exec 6>&1
ac_default_prefix=/usr/local
cross_compiling=no
subdirs=
-MFLAGS= MAKEFLAGS=
+MFLAGS=
+MAKEFLAGS=
SHELL=${CONFIG_SHELL-/bin/sh}
# Maximum number of lines to put in a shell here document.
# This variable seems obsolete. It should probably be removed, and
# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
+: "${ac_max_here_lines=38}"
ac_unique_file="gen/gen.c"
# Factoring default headers for most tests.
@@ -204,7 +206,7 @@ do
# Accept the important Cygnus configure options, so we can diagnose typos.
- case $ac_option in
+ case "$ac_option" in
-bindir | --bindir | --bindi | --bind | --bin | --bi)
ac_prev=bindir ;;
@@ -245,7 +247,7 @@ do
expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid feature name: $ac_feature" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+ ac_feature=`echo "$ac_feature" | sed 's/-/_/g'`
eval "enable_$ac_feature=no" ;;
-enable-* | --enable-*)
@@ -254,8 +256,8 @@ do
expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid feature name: $ac_feature" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- case $ac_option in
+ ac_feature=`echo "$ac_feature" | sed 's/-/_/g'`
+ case "$ac_option" in
*=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
*) ac_optarg=yes ;;
esac
@@ -445,8 +447,8 @@ do
expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid package name: $ac_package" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case $ac_option in
+ ac_package=`echo "$ac_package" | sed 's/-/_/g'`
+ case "$ac_option" in
*=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
*) ac_optarg=yes ;;
esac
@@ -458,7 +460,7 @@ do
expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid package name: $ac_package" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/-/_/g'`
+ ac_package=`echo "$ac_package" | sed 's/-/_/g'`
eval "with_$ac_package=no" ;;
--x)
@@ -492,21 +494,21 @@ Try \`$0 --help' for more information." >&2
{ (exit 1); exit 1; }; }
ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
eval "$ac_envvar='$ac_optarg'"
- export $ac_envvar ;;
+ export "$ac_envvar" ;;
*)
# FIXME: should be removed in autoconf 3.0.
echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ : "${build_alias=$ac_option}" "${host_alias=$ac_option}" "${target_alias=$ac_option}"
;;
esac
done
if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+ ac_option=--`echo "$ac_prev" | sed 's/_/-/g'`
{ echo "$as_me: error: missing argument to $ac_option" >&2
{ (exit 1); exit 1; }; }
fi
@@ -514,8 +516,8 @@ fi
# Be sure to have absolute paths.
for ac_var in exec_prefix prefix
do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
+ eval ac_val=$`echo "$ac_var"`
+ case "$ac_val" in
[\\/$]* | ?:[\\/]* | NONE | '' ) ;;
*) { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
{ (exit 1); exit 1; }; };;
@@ -526,8 +528,8 @@ done
for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \
localstatedir libdir includedir oldincludedir infodir mandir
do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
+ eval ac_val=$`echo "$ac_var"`
+ case "$ac_val" in
[\\/$]* | ?:[\\/]* ) ;;
*) { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
{ (exit 1); exit 1; }; };;
@@ -564,13 +566,13 @@ if test -z "$srcdir"; then
ac_confdir=`echo "$ac_prog" | sed 's%[\\/][^\\/][^\\/]*$%%'`
test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
+ if test ! -r "$srcdir/$ac_unique_file"; then
srcdir=..
fi
else
ac_srcdir_defaulted=no
fi
-if test ! -r $srcdir/$ac_unique_file; then
+if test ! -r "$srcdir/$ac_unique_file"; then
if test "$ac_srcdir_defaulted" = yes; then
{ echo "$as_me: error: cannot find sources in $ac_confdir or .." >&2
{ (exit 1); exit 1; }; }
@@ -737,7 +739,8 @@ Experimental Code:
--with-wrap-prefix=XXX override prefix used for public variables
Testing/development Options:
--disable-echo do not display "compiling" commands
- --enable-warnings build: turn on GCC compiler warnings
+ --enable-warnings test: turn on gcc compiler warnings
+ --enable-stdnoreturn enable C11 _Noreturn feature for diagnostics
--enable-assertions test: turn on generation of assertion code
--enable-expanded test: generate functions for certain macros
--disable-macros test: use functions rather than macros
@@ -769,42 +772,43 @@ if test "$ac_init_help" = "recursive"; then
# If there are subdirs, report their specific --help.
ac_popdir=`pwd`
for ac_subdir in : $ac_subdirs_all; do test "x$ac_subdir" = x: && continue
- cd $ac_subdir
+ cd "$ac_subdir"
# A "../" for each directory in /$ac_subdir.
- ac_dots=`echo $ac_subdir |
+ ac_dots=`echo "$ac_subdir" |
sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
- case $srcdir in
+ case "$srcdir" in
.) # No --srcdir option. We are building in place.
- ac_sub_srcdir=$srcdir ;;
+ ac_sub_srcdir="$srcdir" ;;
[\\/]* | ?:[\\/]* ) # Absolute path.
- ac_sub_srcdir=$srcdir/$ac_subdir ;;
+ ac_sub_srcdir="$srcdir/$ac_subdir" ;;
*) # Relative path.
- ac_sub_srcdir=$ac_dots$srcdir/$ac_subdir ;;
+ ac_sub_srcdir="$ac_dots$srcdir/$ac_subdir" ;;
esac
# Check for guested configure; otherwise get Cygnus style configure.
- if test -f $ac_sub_srcdir/configure.gnu; then
+ if test -f "$ac_sub_srcdir/configure.gnu"; then
echo
- $SHELL $ac_sub_srcdir/configure.gnu --help=recursive
- elif test -f $ac_sub_srcdir/configure; then
+ $SHELL "$ac_sub_srcdir/configure.gnu" --help=recursive
+ elif test -f "$ac_sub_srcdir/configure"; then
echo
- $SHELL $ac_sub_srcdir/configure --help=recursive
- elif test -f $ac_sub_srcdir/configure.ac ||
- test -f $ac_sub_srcdir/configure.in; then
+ $SHELL "$ac_sub_srcdir/configure" --help=recursive
+ elif test -f "$ac_sub_srcdir/configure.ac" ||
+ test -f "$ac_sub_srcdir/configure.in"; then
echo
- $ac_configure --help
+ "$ac_configure" --help
else
echo "$as_me: WARNING: no configuration information is in $ac_subdir" >&2
fi
- cd $ac_popdir
+ cd "$ac_popdir"
done
fi
test -n "$ac_init_help" && exit 0
-if $ac_init_version; then
+if "$ac_init_version"; then
cat <<\EOF
+Copyright 2003-2020,2021 Thomas E. Dickey
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
@@ -818,7 +822,7 @@ This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by $as_me, which was
-generated by GNU Autoconf 2.52.20200111. Invocation command line was
+generated by GNU Autoconf 2.52.20210509. Invocation command line was
$ $0 $@
@@ -865,7 +869,7 @@ ac_configure_args=
ac_sep=
for ac_arg
do
- case $ac_arg in
+ case "$ac_arg" in
-no-create | --no-create | --no-creat | --no-crea | --no-cre \
| --no-cr | --no-c) ;;
-no-recursion | --no-recursion | --no-recursio | --no-recursi \
@@ -922,7 +926,7 @@ trap 'exit_status=$?
exit $exit_status
' 0
for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' "$ac_signal"
done
ac_signal=0
@@ -942,7 +946,7 @@ if test -z "$CONFIG_SITE"; then
fi
for ac_site_file in $CONFIG_SITE; do
if test -r "$ac_site_file"; then
- { echo "$as_me:945: loading site script $ac_site_file" >&5
+ { echo "$as_me:949: loading site script $ac_site_file" >&5
echo "$as_me: loading site script $ac_site_file" >&6;}
cat "$ac_site_file" >&5
. "$ac_site_file"
@@ -953,7 +957,7 @@ if test -r "$cache_file"; then
# Some versions of bash will fail to source /dev/null (special
# files actually), so we avoid doing that.
if test -f "$cache_file"; then
- { echo "$as_me:956: loading cache $cache_file" >&5
+ { echo "$as_me:960: loading cache $cache_file" >&5
echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . $cache_file;;
@@ -961,7 +965,7 @@ echo "$as_me: loading cache $cache_file" >&6;}
esac
fi
else
- { echo "$as_me:964: creating cache $cache_file" >&5
+ { echo "$as_me:968: creating cache $cache_file" >&5
echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
@@ -975,23 +979,23 @@ for ac_var in `(set) 2>&1 |
eval ac_new_set=\$ac_env_${ac_var}_set
eval ac_old_val="\$ac_cv_env_${ac_var}_value"
eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
+ case "$ac_old_set,$ac_new_set" in
set,)
- { echo "$as_me:980: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+ { echo "$as_me:984: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { echo "$as_me:984: error: \`$ac_var' was not set in the previous run" >&5
+ { echo "$as_me:988: error: \`$ac_var' was not set in the previous run" >&5
echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:990: error: \`$ac_var' has changed since the previous run:" >&5
+ { echo "$as_me:994: error: \`$ac_var' has changed since the previous run:" >&5
echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:992: former value: $ac_old_val" >&5
+ { echo "$as_me:996: former value: $ac_old_val" >&5
echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:994: current value: $ac_new_val" >&5
+ { echo "$as_me:998: current value: $ac_new_val" >&5
echo "$as_me: current value: $ac_new_val" >&2;}
ac_cache_corrupted=:
fi;;
@@ -999,7 +1003,7 @@ echo "$as_me: current value: $ac_new_val" >&2;}
# Pass precious variables to config.status. It doesn't matter if
# we pass some twice (in addition to the command line arguments).
if test "$ac_new_set" = set; then
- case $ac_new_val in
+ case "$ac_new_val" in
*" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"`
ac_configure_args="$ac_configure_args '$ac_arg'"
@@ -1009,35 +1013,43 @@ echo "$as_me: current value: $ac_new_val" >&2;}
esac
fi
done
-if $ac_cache_corrupted; then
- { echo "$as_me:1013: error: changes in the environment can compromise the build" >&5
+if "$ac_cache_corrupted"; then
+ { echo "$as_me:1017: error: changes in the environment can compromise the build" >&5
echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:1015: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+ { { echo "$as_me:1019: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
{ (exit 1); exit 1; }; }
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
case `echo "testing\c" 2>/dev/null; echo 1,2,3`,`echo -n testing 2>/dev/null; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C= # newlines do not sed ;-) only broken shells would use this case anyway
- ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+ *c*,-n*) ECHO_N=
+ ECHO_C= # newlines do not sed ;-) only broken shells would use this case anyway
+ ECHO_T=' '
+ ;;
+ *c*,* ) ECHO_N=-n
+ ECHO_C=
+ ECHO_T=
+ ;;
+ *) ECHO_N=
+ ECHO_C='\c'
+ ECHO_T=
+ ;;
esac
echo "#! $SHELL" >conftest.sh
echo "exit 0" >>conftest.sh
chmod +x conftest.sh
-if { (echo "$as_me:1036: PATH=\".;.\"; conftest.sh") >&5
+if { (echo "$as_me:1048: PATH=\".;.\"; conftest.sh") >&5
(PATH=".;."; conftest.sh) 2>&5
ac_status=$?
- echo "$as_me:1039: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1051: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
ac_path_separator=';'
else
ac_path_separator=:
@@ -1051,22 +1063,22 @@ top_builddir=`pwd`
ac_aux_dir=
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
+ if test -f "$ac_dir/install-sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
break
- elif test -f $ac_dir/install.sh; then
+ elif test -f "$ac_dir/install.sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install.sh -c"
break
- elif test -f $ac_dir/shtool; then
+ elif test -f "$ac_dir/shtool"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/shtool install -c"
break
fi
done
if test -z "$ac_aux_dir"; then
- { { echo "$as_me:1069: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+ { { echo "$as_me:1081: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1076,11 +1088,11 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
# Make sure we can run config.sub.
$ac_config_sub sun4 >/dev/null 2>&1 ||
- { { echo "$as_me:1079: error: cannot run $ac_config_sub" >&5
+ { { echo "$as_me:1091: error: cannot run $ac_config_sub" >&5
echo "$as_me: error: cannot run $ac_config_sub" >&2;}
{ (exit 1); exit 1; }; }
-echo "$as_me:1083: checking build system type" >&5
+echo "$as_me:1095: checking build system type" >&5
echo $ECHO_N "checking build system type... $ECHO_C" >&6
if test "${ac_cv_build+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1089,23 +1101,23 @@ else
test -z "$ac_cv_build_alias" &&
ac_cv_build_alias=`$ac_config_guess`
test -z "$ac_cv_build_alias" &&
- { { echo "$as_me:1092: error: cannot guess build type; you must specify one" >&5
+ { { echo "$as_me:1104: error: cannot guess build type; you must specify one" >&5
echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
{ (exit 1); exit 1; }; }
-ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
- { { echo "$as_me:1096: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+ac_cv_build=`$ac_config_sub "$ac_cv_build_alias"` ||
+ { { echo "$as_me:1108: error: $ac_config_sub $ac_cv_build_alias failed." >&5
echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1101: result: $ac_cv_build" >&5
+echo "$as_me:1113: result: $ac_cv_build" >&5
echo "${ECHO_T}$ac_cv_build" >&6
build=$ac_cv_build
-build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+build_cpu=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$as_me:1108: checking host system type" >&5
+echo "$as_me:1120: checking host system type" >&5
echo $ECHO_N "checking host system type... $ECHO_C" >&6
if test "${ac_cv_host+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1113,21 +1125,21 @@ else
ac_cv_host_alias=$host_alias
test -z "$ac_cv_host_alias" &&
ac_cv_host_alias=$ac_cv_build_alias
-ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
- { { echo "$as_me:1117: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+ac_cv_host=`$ac_config_sub "$ac_cv_host_alias"` ||
+ { { echo "$as_me:1129: error: $ac_config_sub $ac_cv_host_alias failed" >&5
echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1122: result: $ac_cv_host" >&5
+echo "$as_me:1134: result: $ac_cv_host" >&5
echo "${ECHO_T}$ac_cv_host" >&6
host=$ac_cv_host
-host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+host_cpu=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
- echo "$as_me:1130: checking target system type" >&5
+if test -f "$srcdir/config.guess" || test -f "$ac_aux_dir/config.guess" ; then
+ echo "$as_me:1142: checking target system type" >&5
echo $ECHO_N "checking target system type... $ECHO_C" >&6
if test "${ac_cv_target+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1135,18 +1147,18 @@ else
ac_cv_target_alias=$target_alias
test "x$ac_cv_target_alias" = "x" &&
ac_cv_target_alias=$ac_cv_host_alias
-ac_cv_target=`$ac_config_sub $ac_cv_target_alias` ||
- { { echo "$as_me:1139: error: $ac_config_sub $ac_cv_target_alias failed" >&5
+ac_cv_target=`$ac_config_sub "$ac_cv_target_alias"` ||
+ { { echo "$as_me:1151: error: $ac_config_sub $ac_cv_target_alias failed" >&5
echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1144: result: $ac_cv_target" >&5
+echo "$as_me:1156: result: $ac_cv_target" >&5
echo "${ECHO_T}$ac_cv_target" >&6
target=$ac_cv_target
-target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+target_cpu=`echo "$ac_cv_target" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+target_vendor=`echo "$ac_cv_target" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+target_os=`echo "$ac_cv_target" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
# The aliases save the names the user supplied, while $host etc.
# will get canonicalized.
@@ -1173,13 +1185,13 @@ else
fi
test -z "$system_name" && system_name="$cf_cv_system_name"
-test -n "$cf_cv_system_name" && echo "$as_me:1176: result: Configuring for $cf_cv_system_name" >&5
+test -n "$cf_cv_system_name" && echo "$as_me:1188: result: Configuring for $cf_cv_system_name" >&5
echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6
if test ".$system_name" != ".$cf_cv_system_name" ; then
- echo "$as_me:1180: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
+ echo "$as_me:1192: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6
- { { echo "$as_me:1182: error: \"Please remove config.cache and try again.\"" >&5
+ { { echo "$as_me:1194: error: \"Please remove config.cache and try again.\"" >&5
echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1187,7 +1199,7 @@ fi
# Check whether --with-system-type or --without-system-type was given.
if test "${with_system_type+set}" = set; then
withval="$with_system_type"
- { echo "$as_me:1190: WARNING: overriding system type to $withval" >&5
+ { echo "$as_me:1202: WARNING: overriding system type to $withval" >&5
echo "$as_me: WARNING: overriding system type to $withval" >&2;}
cf_cv_system_name=$withval
host_os=$withval
@@ -1198,8 +1210,105 @@ fi;
cf_user_CFLAGS="$CFLAGS"
### Default install-location
+for ac_prog in ggrep grep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:1217: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_GREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$GREP"; then
+ ac_cv_prog_GREP="$GREP" # Let the user override the test.
+else
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_GREP="$ac_prog"
+echo "$as_me:1232: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+GREP=$ac_cv_prog_GREP
+if test -n "$GREP"; then
+ echo "$as_me:1240: result: $GREP" >&5
+echo "${ECHO_T}$GREP" >&6
+else
+ echo "$as_me:1243: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$GREP" && break
+done
+test -n "$GREP" || GREP=": "
+
+echo "$as_me:1251: checking for fgrep" >&5
+echo $ECHO_N "checking for fgrep... $ECHO_C" >&6
+if test "${ac_cv_path_FGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
+ then ac_cv_path_FGREP="$GREP -F"
+ else
+ for ac_prog in gfgrep fgrep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:1263: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_FGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $FGREP in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_FGREP="$FGREP" # Let the user override the test with a path.
+ ;;
+ *)
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ if $as_executable_p "$ac_dir/$ac_word"; then
+ ac_cv_path_FGREP="$ac_dir/$ac_word"
+ echo "$as_me:1280: found $ac_dir/$ac_word" >&5
+ break
+fi
+done
+
+ ;;
+esac
+fi
+FGREP=$ac_cv_path_FGREP
+
+if test -n "$FGREP"; then
+ echo "$as_me:1291: result: $FGREP" >&5
+echo "${ECHO_T}$FGREP" >&6
+else
+ echo "$as_me:1294: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$FGREP" && break
+done
+test -n "$FGREP" || FGREP=": "
+
+ test "x$ac_cv_path_FGREP" = "x:" && { { echo "$as_me:1302: error: cannot find workable fgrep" >&5
+echo "$as_me: error: cannot find workable fgrep" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+fi
+echo "$as_me:1307: result: $ac_cv_path_FGREP" >&5
+echo "${ECHO_T}$ac_cv_path_FGREP" >&6
+ FGREP="$ac_cv_path_FGREP"
-echo "$as_me:1202: checking for prefix" >&5
+echo "$as_me:1311: checking for prefix" >&5
echo $ECHO_N "checking for prefix... $ECHO_C" >&6
if test "x$prefix" = "xNONE" ; then
case "$cf_cv_system_name" in
@@ -1211,34 +1320,34 @@ if test "x$prefix" = "xNONE" ; then
;;
esac
fi
-echo "$as_me:1214: result: $prefix" >&5
+echo "$as_me:1323: result: $prefix" >&5
echo "${ECHO_T}$prefix" >&6
if test "x$prefix" = "xNONE" ; then
-echo "$as_me:1218: checking for default include-directory" >&5
+echo "$as_me:1327: checking for default include-directory" >&5
echo $ECHO_N "checking for default include-directory... $ECHO_C" >&6
test -n "$verbose" && echo 1>&6
for cf_symbol in \
- $includedir \
- $includedir/ncurses \
- $prefix/include \
- $prefix/include/ncurses \
+ "$includedir" \
+ "$includedir/ncurses" \
+ "$prefix/include" \
+ "$prefix/include/ncurses" \
/usr/local/include \
/usr/local/include/ncurses \
/usr/include \
/usr/include/ncurses
do
- cf_dir=`eval echo $cf_symbol`
- if test -f $cf_dir/curses.h ; then
- if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then
+ cf_dir=`eval echo "$cf_symbol"`
+ if test -f "$cf_dir/curses.h" ; then
+ if ( ${FGREP-fgrep} NCURSES_VERSION "$cf_dir/curses.h" >/dev/null 2>&1 ) ; then
includedir="$cf_symbol"
- test -n "$verbose" && echo $ac_n " found " 1>&6
+ test -n "$verbose" && echo $ECHO_N " found " 1>&6
break
fi
fi
test -n "$verbose" && echo " tested $cf_dir" 1>&6
done
-echo "$as_me:1241: result: $includedir" >&5
+echo "$as_me:1350: result: $includedir" >&5
echo "${ECHO_T}$includedir" >&6
fi
@@ -1246,16 +1355,16 @@ fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test -n "$ac_tool_prefix"; then
for ac_prog in gnatgcc gcc cc
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:1258: checking for $ac_word" >&5
+echo "$as_me:1367: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1270,7 +1379,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-echo "$as_me:1273: found $ac_dir/$ac_word" >&5
+echo "$as_me:1382: found $ac_dir/$ac_word" >&5
break
done
@@ -1278,10 +1387,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1281: result: $CC" >&5
+ echo "$as_me:1390: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1284: result: no" >&5
+ echo "$as_me:1393: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1294,7 +1403,7 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:1297: checking for $ac_word" >&5
+echo "$as_me:1406: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1309,7 +1418,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CC="$ac_prog"
-echo "$as_me:1312: found $ac_dir/$ac_word" >&5
+echo "$as_me:1421: found $ac_dir/$ac_word" >&5
break
done
@@ -1317,10 +1426,10 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:1320: result: $ac_ct_CC" >&5
+ echo "$as_me:1429: result: $ac_ct_CC" >&5
echo "${ECHO_T}$ac_ct_CC" >&6
else
- echo "$as_me:1323: result: no" >&5
+ echo "$as_me:1432: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1330,32 +1439,32 @@ done
CC=$ac_ct_CC
fi
-test -z "$CC" && { { echo "$as_me:1333: error: no acceptable cc found in \$PATH" >&5
+test -z "$CC" && { { echo "$as_me:1442: error: no acceptable cc found in \$PATH" >&5
echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
{ (exit 1); exit 1; }; }
# Provide some information about the compiler.
-echo "$as_me:1338:" \
+echo "$as_me:1447:" \
"checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:1341: \"$ac_compiler --version </dev/null >&5\"") >&5
+ac_compiler=`set X $ac_compile; echo "$2"`
+{ (eval echo "$as_me:1450: \"$ac_compiler --version </dev/null >&5\"") >&5
(eval $ac_compiler --version </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1344: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:1346: \"$ac_compiler -v </dev/null >&5\"") >&5
+ echo "$as_me:1453: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:1455: \"$ac_compiler -v </dev/null >&5\"") >&5
(eval $ac_compiler -v </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1349: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:1351: \"$ac_compiler -V </dev/null >&5\"") >&5
+ echo "$as_me:1458: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:1460: \"$ac_compiler -V </dev/null >&5\"") >&5
(eval $ac_compiler -V </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1354: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:1463: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
-cat >conftest.$ac_ext <<_ACEOF
-#line 1358 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 1467 "configure"
#include "confdefs.h"
int
@@ -1371,14 +1480,14 @@ ac_clean_files="$ac_clean_files a.out a.exe"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-echo "$as_me:1374: checking for C compiler default output" >&5
+echo "$as_me:1483: checking for C compiler default output" >&5
echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:1377: \"$ac_link_default\"") >&5
+ac_link_default=`echo "$ac_link" | sed 's/ -o *"conftest[^"]*"//'`
+if { (eval echo "$as_me:1486: \"$ac_link_default\"") >&5
(eval $ac_link_default) 2>&5
ac_status=$?
- echo "$as_me:1380: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1489: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
# Find the output, starting from the most likely. This scheme is
# not robust to junk in `.', hence go to wildcards (a.*) only as a last
# resort.
@@ -1399,35 +1508,35 @@ for ac_file in `ls a.exe conftest.exe 2>/dev/null;
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-{ { echo "$as_me:1403: error: C compiler cannot create executables" >&5
+cat "conftest.$ac_ext" >&5
+{ { echo "$as_me:1512: error: C compiler cannot create executables" >&5
echo "$as_me: error: C compiler cannot create executables" >&2;}
{ (exit 77); exit 77; }; }
fi
ac_exeext=$ac_cv_exeext
-echo "$as_me:1409: result: $ac_file" >&5
+echo "$as_me:1518: result: $ac_file" >&5
echo "${ECHO_T}$ac_file" >&6
# Check the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-echo "$as_me:1414: checking whether the C compiler works" >&5
+echo "$as_me:1523: checking whether the C compiler works" >&5
echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
# If not cross compiling, check that we can run a simple program.
if test "$cross_compiling" != yes; then
if { ac_try='./$ac_file'
- { (eval echo "$as_me:1420: \"$ac_try\"") >&5
+ { (eval echo "$as_me:1529: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1423: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1532: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cross_compiling=no
else
if test "$cross_compiling" = maybe; then
cross_compiling=yes
else
- { { echo "$as_me:1430: error: cannot run C compiled programs.
+ { { echo "$as_me:1539: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'." >&5
echo "$as_me: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'." >&2;}
@@ -1435,25 +1544,25 @@ If you meant to cross compile, use \`--host'." >&2;}
fi
fi
fi
-echo "$as_me:1438: result: yes" >&5
+echo "$as_me:1547: result: yes" >&5
echo "${ECHO_T}yes" >&6
-rm -f a.out a.exe conftest$ac_cv_exeext
+rm -f a.out a.exe "conftest$ac_cv_exeext"
ac_clean_files=$ac_clean_files_save
# Check the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-echo "$as_me:1445: checking whether we are cross compiling" >&5
+echo "$as_me:1554: checking whether we are cross compiling" >&5
echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:1447: result: $cross_compiling" >&5
+echo "$as_me:1556: result: $cross_compiling" >&5
echo "${ECHO_T}$cross_compiling" >&6
-echo "$as_me:1450: checking for executable suffix" >&5
+echo "$as_me:1559: checking for executable suffix" >&5
echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
-if { (eval echo "$as_me:1452: \"$ac_link\"") >&5
+if { (eval echo "$as_me:1561: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:1455: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1564: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -1468,25 +1577,25 @@ for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
esac
done
else
- { { echo "$as_me:1471: error: cannot compute EXEEXT: cannot compile and link" >&5
+ { { echo "$as_me:1580: error: cannot compute EXEEXT: cannot compile and link" >&5
echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
{ (exit 1); exit 1; }; }
fi
-rm -f conftest$ac_cv_exeext
-echo "$as_me:1477: result: $ac_cv_exeext" >&5
+rm -f "conftest$ac_cv_exeext"
+echo "$as_me:1586: result: $ac_cv_exeext" >&5
echo "${ECHO_T}$ac_cv_exeext" >&6
-rm -f conftest.$ac_ext
+rm -f "conftest.$ac_ext"
EXEEXT=$ac_cv_exeext
ac_exeext=$EXEEXT
-echo "$as_me:1483: checking for object suffix" >&5
+echo "$as_me:1592: checking for object suffix" >&5
echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
if test "${ac_cv_objext+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1489 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1598 "configure"
#include "confdefs.h"
int
@@ -1498,11 +1607,11 @@ main (void)
}
_ACEOF
rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:1501: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1610: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1504: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1613: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
case $ac_file in
*.$ac_ext | *.xcoff | *.tds | *.d | *.dbg | *.pdb | *.xSYM | *.map | *.inf ) ;;
@@ -1512,25 +1621,25 @@ if { (eval echo "$as_me:1501: \"$ac_compile\"") >&5
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-{ { echo "$as_me:1516: error: cannot compute OBJEXT: cannot compile" >&5
+cat "conftest.$ac_ext" >&5
+{ { echo "$as_me:1625: error: cannot compute OBJEXT: cannot compile" >&5
echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
{ (exit 1); exit 1; }; }
fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
+rm -f "conftest.$ac_cv_objext" "conftest.$ac_ext"
fi
-echo "$as_me:1523: result: $ac_cv_objext" >&5
+echo "$as_me:1632: result: $ac_cv_objext" >&5
echo "${ECHO_T}$ac_cv_objext" >&6
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-echo "$as_me:1527: checking whether we are using the GNU C compiler" >&5
+echo "$as_me:1636: checking whether we are using the GNU C compiler" >&5
echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
if test "${ac_cv_c_compiler_gnu+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1533 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1642 "configure"
#include "confdefs.h"
int
@@ -1544,41 +1653,41 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1548: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1657: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1551: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1554: \"$ac_try\"") >&5
+ echo "$as_me:1660: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1663: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1557: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1666: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_compiler_gnu=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_compiler_gnu=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-echo "$as_me:1569: result: $ac_cv_c_compiler_gnu" >&5
+echo "$as_me:1678: result: $ac_cv_c_compiler_gnu" >&5
echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
GCC=`test $ac_compiler_gnu = yes && echo yes`
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
CFLAGS="-g"
-echo "$as_me:1575: checking whether $CC accepts -g" >&5
+echo "$as_me:1684: checking whether $CC accepts -g" >&5
echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
if test "${ac_cv_prog_cc_g+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1581 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1690 "configure"
#include "confdefs.h"
int
@@ -1589,27 +1698,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1593: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1702: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1596: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1599: \"$ac_try\"") >&5
+ echo "$as_me:1705: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1708: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1602: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1711: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_prog_cc_g=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_prog_cc_g=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:1612: result: $ac_cv_prog_cc_g" >&5
+echo "$as_me:1721: result: $ac_cv_prog_cc_g" >&5
echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
@@ -1630,23 +1739,23 @@ fi
# in C++ we need to declare it. In case someone uses the same compiler
# for both compiling C and C++ we need to have the C++ compiler decide
# the declaration of exit, since it's the most demanding environment.
-cat >conftest.$ac_ext <<_ACEOF
+cat >"conftest.$ac_ext" <<_ACEOF
#ifndef __cplusplus
choke me
#endif
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1639: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1748: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1642: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1645: \"$ac_try\"") >&5
+ echo "$as_me:1751: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1754: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1648: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1757: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
for ac_declaration in \
''\
'#include <stdlib.h>' \
@@ -1656,8 +1765,8 @@ if { (eval echo "$as_me:1639: \"$ac_compile\"") >&5
'extern "C" void exit (int);' \
'void exit (int);'
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 1660 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1769 "configure"
#include "confdefs.h"
#include <stdlib.h>
$ac_declaration
@@ -1669,27 +1778,27 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1673: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1782: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1676: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1679: \"$ac_try\"") >&5
+ echo "$as_me:1785: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1788: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1682: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1791: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
continue
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 1692 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1801 "configure"
#include "confdefs.h"
$ac_declaration
int
@@ -1700,65 +1809,65 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1704: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1813: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1707: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1710: \"$ac_try\"") >&5
+ echo "$as_me:1816: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1819: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1713: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1822: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
rm -rf conftest*
if test -n "$ac_declaration"; then
echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
+ echo "$ac_declaration" >>confdefs.h
echo '#endif' >>confdefs.h
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
GCC_VERSION=none
if test "$GCC" = yes ; then
- echo "$as_me:1743: checking version of $CC" >&5
+ echo "$as_me:1852: checking version of $CC" >&5
echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
test -z "$GCC_VERSION" && GCC_VERSION=unknown
- echo "$as_me:1747: result: $GCC_VERSION" >&5
+ echo "$as_me:1856: result: $GCC_VERSION" >&5
echo "${ECHO_T}$GCC_VERSION" >&6
fi
INTEL_COMPILER=no
if test "$GCC" = yes ; then
- case $host_os in
+ case "$host_os" in
(linux*|gnu*)
- echo "$as_me:1756: checking if this is really Intel C compiler" >&5
+ echo "$as_me:1865: checking if this is really Intel C compiler" >&5
echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -no-gcc"
- cat >conftest.$ac_ext <<_ACEOF
-#line 1761 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1870 "configure"
#include "confdefs.h"
int
@@ -1774,28 +1883,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1778: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1887: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1781: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1784: \"$ac_try\"") >&5
+ echo "$as_me:1890: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1893: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1787: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1896: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
INTEL_COMPILER=yes
cf_save_CFLAGS="$cf_save_CFLAGS -we147"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
- echo "$as_me:1798: result: $INTEL_COMPILER" >&5
+ echo "$as_me:1907: result: $INTEL_COMPILER" >&5
echo "${ECHO_T}$INTEL_COMPILER" >&6
;;
esac
@@ -1804,12 +1913,11 @@ fi
CLANG_COMPILER=no
if test "$GCC" = yes ; then
- echo "$as_me:1807: checking if this is really Clang C compiler" >&5
+ echo "$as_me:1916: checking if this is really Clang C compiler" >&5
echo $ECHO_N "checking if this is really Clang C compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Qunused-arguments"
- cat >conftest.$ac_ext <<_ACEOF
-#line 1812 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1920 "configure"
#include "confdefs.h"
int
@@ -1825,40 +1933,116 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1829: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1937: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1832: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1835: \"$ac_try\"") >&5
+ echo "$as_me:1940: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1943: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1838: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1946: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
CLANG_COMPILER=yes
-cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
- echo "$as_me:1849: result: $CLANG_COMPILER" >&5
+ echo "$as_me:1956: result: $CLANG_COMPILER" >&5
echo "${ECHO_T}$CLANG_COMPILER" >&6
fi
-echo "$as_me:1853: checking for $CC option to accept ANSI C" >&5
+CLANG_VERSION=none
+
+if test "x$CLANG_COMPILER" = "xyes" ; then
+ case "$CC" in
+ (c[1-9][0-9]|*/c[1-9][0-9])
+ { echo "$as_me:1965: WARNING: replacing broken compiler alias $CC" >&5
+echo "$as_me: WARNING: replacing broken compiler alias $CC" >&2;}
+ CFLAGS="$CFLAGS -std=`echo "$CC" | sed -e 's%.*/%%'`"
+ CC=clang
+ ;;
+ esac
+
+ echo "$as_me:1972: checking version of $CC" >&5
+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
+ CLANG_VERSION="`$CC --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(CLANG[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
+ test -z "$CLANG_VERSION" && CLANG_VERSION=unknown
+ echo "$as_me:1976: result: $CLANG_VERSION" >&5
+echo "${ECHO_T}$CLANG_VERSION" >&6
+
+ for cf_clang_opt in \
+ -Qunused-arguments \
+ -Wno-error=implicit-function-declaration
+ do
+ echo "$as_me:1983: checking if option $cf_clang_opt works" >&5
+echo $ECHO_N "checking if option $cf_clang_opt works... $ECHO_C" >&6
+ cf_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $cf_clang_opt"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1988 "configure"
+#include "confdefs.h"
+
+ #include <stdio.h>
+int
+main (void)
+{
+
+ printf("hello!\\n");
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:2002: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:2005: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:2008: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:2011: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+
+ cf_clang_optok=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+
+ cf_clang_optok=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:2022: result: $cf_clang_optok" >&5
+echo "${ECHO_T}$cf_clang_optok" >&6
+ CFLAGS="$cf_save_CFLAGS"
+ if test "$cf_clang_optok" = yes; then
+ test -n "$verbose" && echo " adding option $cf_clang_opt" 1>&6
+
+echo "${as_me:-configure}:2028: testing adding option $cf_clang_opt ..." 1>&5
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_clang_opt"
+
+ fi
+ done
+fi
+
+echo "$as_me:2037: checking for $CC option to accept ANSI C" >&5
echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
if test "${ac_cv_prog_cc_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_cv_prog_cc_stdc=no
ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-#line 1861 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 2045 "configure"
#include "confdefs.h"
#include <stdarg.h>
#include <stdio.h>
@@ -1906,51 +2090,51 @@ _ACEOF
for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1910: \"$ac_compile\"") >&5
+ rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2094: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1913: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1916: \"$ac_try\"") >&5
+ echo "$as_me:2097: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2100: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1919: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2103: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_prog_cc_stdc=$ac_arg
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext
+rm -f "conftest.$ac_objext"
done
-rm -f conftest.$ac_ext conftest.$ac_objext
+rm -f "conftest.$ac_ext" "conftest.$ac_objext"
CC=$ac_save_CC
fi
case "x$ac_cv_prog_cc_stdc" in
x|xno)
- echo "$as_me:1936: result: none needed" >&5
+ echo "$as_me:2120: result: none needed" >&5
echo "${ECHO_T}none needed" >&6 ;;
*)
- echo "$as_me:1939: result: $ac_cv_prog_cc_stdc" >&5
+ echo "$as_me:2123: result: $ac_cv_prog_cc_stdc" >&5
echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
CC="$CC $ac_cv_prog_cc_stdc" ;;
esac
# This should have been defined by AC_PROG_CC
-: ${CC:=cc}
+: "${CC:=cc}"
-echo "$as_me:1947: checking \$CFLAGS variable" >&5
+echo "$as_me:2131: checking \$CFLAGS variable" >&5
echo $ECHO_N "checking \$CFLAGS variable... $ECHO_C" >&6
case "x$CFLAGS" in
(*-[IUD]*)
- echo "$as_me:1951: result: broken" >&5
+ echo "$as_me:2135: result: broken" >&5
echo "${ECHO_T}broken" >&6
- { echo "$as_me:1953: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&5
+ { echo "$as_me:2137: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&5
echo "$as_me: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&2;}
cf_flags="$CFLAGS"
CFLAGS=
@@ -1964,19 +2148,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_arg
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -1995,7 +2179,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -2025,7 +2209,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -2058,18 +2242,18 @@ fi
done
;;
(*)
- echo "$as_me:2061: result: ok" >&5
+ echo "$as_me:2245: result: ok" >&5
echo "${ECHO_T}ok" >&6
;;
esac
-echo "$as_me:2066: checking \$CC variable" >&5
+echo "$as_me:2250: checking \$CC variable" >&5
echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6
case "$CC" in
(*[\ \ ]-*)
- echo "$as_me:2070: result: broken" >&5
+ echo "$as_me:2254: result: broken" >&5
echo "${ECHO_T}broken" >&6
- { echo "$as_me:2072: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
+ { echo "$as_me:2256: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
echo "$as_me: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
# humor him...
cf_prog=`echo "$CC" | sed -e 's/ / /g' -e 's/[ ]* / /g' -e 's/[ ]*[ ]-[^ ].*//'`
@@ -2087,19 +2271,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_arg
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -2118,7 +2302,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -2148,7 +2332,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -2186,30 +2370,90 @@ fi
done
test -n "$verbose" && echo " resulting CC: '$CC'" 1>&6
-echo "${as_me:-configure}:2189: testing resulting CC: '$CC' ..." 1>&5
+echo "${as_me:-configure}:2373: testing resulting CC: '$CC' ..." 1>&5
test -n "$verbose" && echo " resulting CFLAGS: '$CFLAGS'" 1>&6
-echo "${as_me:-configure}:2193: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5
+echo "${as_me:-configure}:2377: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5
test -n "$verbose" && echo " resulting CPPFLAGS: '$CPPFLAGS'" 1>&6
-echo "${as_me:-configure}:2197: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5
+echo "${as_me:-configure}:2381: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5
;;
(*)
- echo "$as_me:2201: result: ok" >&5
+ echo "$as_me:2385: result: ok" >&5
echo "${ECHO_T}ok" >&6
;;
esac
+echo "$as_me:2390: checking for egrep" >&5
+echo $ECHO_N "checking for egrep... $ECHO_C" >&6
+if test "${ac_cv_path_EGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ for ac_prog in gegrep egrep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:2402: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_EGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $EGREP in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_EGREP="$EGREP" # Let the user override the test with a path.
+ ;;
+ *)
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ if $as_executable_p "$ac_dir/$ac_word"; then
+ ac_cv_path_EGREP="$ac_dir/$ac_word"
+ echo "$as_me:2419: found $ac_dir/$ac_word" >&5
+ break
+fi
+done
+
+ ;;
+esac
+fi
+EGREP=$ac_cv_path_EGREP
+
+if test -n "$EGREP"; then
+ echo "$as_me:2430: result: $EGREP" >&5
+echo "${ECHO_T}$EGREP" >&6
+else
+ echo "$as_me:2433: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$EGREP" && break
+done
+test -n "$EGREP" || EGREP=": "
+
+ test "x$ac_cv_path_EGREP" = "x:" && { { echo "$as_me:2441: error: cannot find workable egrep" >&5
+echo "$as_me: error: cannot find workable egrep" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+fi
+echo "$as_me:2446: result: $ac_cv_path_EGREP" >&5
+echo "${ECHO_T}$ac_cv_path_EGREP" >&6
+ EGREP="$ac_cv_path_EGREP"
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
-echo "$as_me:2212: checking how to run the C preprocessor" >&5
+ac_main_return="return"
+echo "$as_me:2456: checking how to run the C preprocessor" >&5
echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
@@ -2229,20 +2473,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2233 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2477 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:2238: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2482: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2244: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2488: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2255,27 +2499,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2267 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2511 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:2271: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2515: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2277: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2521: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2289,16 +2533,16 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
break
fi
@@ -2311,7 +2555,7 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-echo "$as_me:2314: result: $CPP" >&5
+echo "$as_me:2558: result: $CPP" >&5
echo "${ECHO_T}$CPP" >&6
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
@@ -2320,20 +2564,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2324 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2568 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:2329: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2573: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2335: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2579: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2346,27 +2590,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2358 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2602 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:2362: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2606: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2368: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2612: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2380,46 +2624,46 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
:
else
- { { echo "$as_me:2396: error: C preprocessor \"$CPP\" fails sanity check" >&5
+ { { echo "$as_me:2640: error: C preprocessor \"$CPP\" fails sanity check" >&5
echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
{ (exit 1); exit 1; }; }
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test $ac_cv_c_compiler_gnu = yes; then
- echo "$as_me:2409: checking whether $CC needs -traditional" >&5
+ echo "$as_me:2653: checking whether $CC needs -traditional" >&5
echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6
if test "${ac_cv_prog_gcc_traditional+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_pattern="Autoconf.*'x'"
- cat >conftest.$ac_ext <<_ACEOF
-#line 2416 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2660 "configure"
#include "confdefs.h"
#include <sgtty.h>
int Autoconf = TIOCGETP;
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then
ac_cv_prog_gcc_traditional=yes
else
ac_cv_prog_gcc_traditional=no
@@ -2427,28 +2671,28 @@ fi
rm -rf conftest*
if test $ac_cv_prog_gcc_traditional = no; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 2431 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2675 "configure"
#include "confdefs.h"
#include <termio.h>
int Autoconf = TCGETA;
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then
ac_cv_prog_gcc_traditional=yes
fi
rm -rf conftest*
fi
fi
-echo "$as_me:2444: result: $ac_cv_prog_gcc_traditional" >&5
+echo "$as_me:2688: result: $ac_cv_prog_gcc_traditional" >&5
echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6
if test $ac_cv_prog_gcc_traditional = yes; then
CC="$CC -traditional"
fi
fi
-echo "$as_me:2451: checking whether $CC understands -c and -o together" >&5
+echo "$as_me:2695: checking whether $CC understands -c and -o together" >&5
echo $ECHO_N "checking whether $CC understands -c and -o together... $ECHO_C" >&6
if test "${cf_cv_prog_CC_c_o+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2463,29 +2707,29 @@ CF_EOF
# We do the test twice because some compilers refuse to overwrite an
# existing .o file with -o, though they will create one.
ac_try='$CC $CFLAGS $CPPFLAGS -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
-if { (eval echo "$as_me:2466: \"$ac_try\"") >&5
+if { (eval echo "$as_me:2710: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2469: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- test -f conftest2.$ac_objext && { (eval echo "$as_me:2471: \"$ac_try\"") >&5
+ echo "$as_me:2713: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ test -f conftest2.$ac_objext && { (eval echo "$as_me:2715: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2474: \$? = $ac_status" >&5
- (exit $ac_status); };
+ echo "$as_me:2718: \$? = $ac_status" >&5
+ (exit "$ac_status"); };
then
eval cf_cv_prog_CC_c_o=yes
else
eval cf_cv_prog_CC_c_o=no
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
-if test $cf_cv_prog_CC_c_o = yes; then
- echo "$as_me:2485: result: yes" >&5
+if test "$cf_cv_prog_CC_c_o" = yes; then
+ echo "$as_me:2729: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:2488: result: no" >&5
+ echo "$as_me:2732: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2506,7 +2750,7 @@ for ac_prog in mawk gawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:2509: checking for $ac_word" >&5
+echo "$as_me:2753: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_AWK+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2521,7 +2765,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_AWK="$ac_prog"
-echo "$as_me:2524: found $ac_dir/$ac_word" >&5
+echo "$as_me:2768: found $ac_dir/$ac_word" >&5
break
done
@@ -2529,21 +2773,21 @@ fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- echo "$as_me:2532: result: $AWK" >&5
+ echo "$as_me:2776: result: $AWK" >&5
echo "${ECHO_T}$AWK" >&6
else
- echo "$as_me:2535: result: no" >&5
+ echo "$as_me:2779: result: no" >&5
echo "${ECHO_T}no" >&6
fi
test -n "$AWK" && break
done
-test -z "$AWK" && { { echo "$as_me:2542: error: No awk program found" >&5
+test -z "$AWK" && { { echo "$as_me:2786: error: No awk program found" >&5
echo "$as_me: error: No awk program found" >&2;}
{ (exit 1); exit 1; }; }
-echo "$as_me:2546: checking for egrep" >&5
+echo "$as_me:2790: checking for egrep" >&5
echo $ECHO_N "checking for egrep... $ECHO_C" >&6
if test "${ac_cv_prog_egrep+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2553,11 +2797,11 @@ else
else ac_cv_prog_egrep='egrep'
fi
fi
-echo "$as_me:2556: result: $ac_cv_prog_egrep" >&5
+echo "$as_me:2800: result: $ac_cv_prog_egrep" >&5
echo "${ECHO_T}$ac_cv_prog_egrep" >&6
EGREP=$ac_cv_prog_egrep
- test -z "$EGREP" && { { echo "$as_me:2560: error: No egrep program found" >&5
+ test -z "$EGREP" && { { echo "$as_me:2804: error: No egrep program found" >&5
echo "$as_me: error: No egrep program found" >&2;}
{ (exit 1); exit 1; }; }
@@ -2573,7 +2817,7 @@ echo "$as_me: error: No egrep program found" >&2;}
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:2576: checking for a BSD compatible install" >&5
+echo "$as_me:2820: checking for a BSD compatible install" >&5
echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
if test -z "$INSTALL"; then
if test "${ac_cv_path_install+set}" = set; then
@@ -2622,7 +2866,7 @@ fi
INSTALL=$ac_install_sh
fi
fi
-echo "$as_me:2625: result: $INSTALL" >&5
+echo "$as_me:2869: result: $INSTALL" >&5
echo "${ECHO_T}$INSTALL" >&6
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -2633,18 +2877,18 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-echo "$as_me:2636: checking whether ln -s works" >&5
+echo "$as_me:2880: checking whether ln -s works" >&5
echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
LN_S=$as_ln_s
if test "$LN_S" = "ln -s"; then
- echo "$as_me:2640: result: yes" >&5
+ echo "$as_me:2884: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:2643: result: no, using $LN_S" >&5
+ echo "$as_me:2887: result: no, using $LN_S" >&5
echo "${ECHO_T}no, using $LN_S" >&6
fi
-echo "$as_me:2647: checking if $LN_S -f options work" >&5
+echo "$as_me:2891: checking if $LN_S -f options work" >&5
echo $ECHO_N "checking if $LN_S -f options work... $ECHO_C" >&6
rm -f conf$$.src conf$$dst
@@ -2656,7 +2900,7 @@ else
cf_prog_ln_sf=no
fi
rm -f conf$$.dst conf$$src
-echo "$as_me:2659: result: $cf_prog_ln_sf" >&5
+echo "$as_me:2903: result: $cf_prog_ln_sf" >&5
echo "${ECHO_T}$cf_prog_ln_sf" >&6
test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
@@ -2673,7 +2917,7 @@ test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:2676: checking for a BSD compatible install" >&5
+echo "$as_me:2920: checking for a BSD compatible install" >&5
echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
if test -z "$INSTALL"; then
if test "${ac_cv_path_install+set}" = set; then
@@ -2722,7 +2966,7 @@ fi
INSTALL=$ac_install_sh
fi
fi
-echo "$as_me:2725: result: $INSTALL" >&5
+echo "$as_me:2969: result: $INSTALL" >&5
echo "${ECHO_T}$INSTALL" >&6
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -2737,13 +2981,13 @@ case $INSTALL in
(/*)
;;
(*)
- cf_dir=`echo $INSTALL | sed -e 's%/[^/]*$%%'`
+ cf_dir=`echo "$INSTALL" | sed -e 's%/[^/]*$%%'`
test -z "$cf_dir" && cf_dir=.
- INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
+ INSTALL="`cd \"$cf_dir\" && pwd`"/"`echo "$INSTALL" | sed -e 's%^.*/%%'`"
;;
esac
-echo "$as_me:2746: checking if you want to install stripped executables" >&5
+echo "$as_me:2990: checking if you want to install stripped executables" >&5
echo $ECHO_N "checking if you want to install stripped executables... $ECHO_C" >&6
# Check whether --enable-stripping or --disable-stripping was given.
@@ -2751,33 +2995,33 @@ if test "${enable_stripping+set}" = set; then
enableval="$enable_stripping"
test "$enableval" != no && enableval=yes
if test "$enableval" != "yes" ; then
- with_stripping=no
+ enable_stripping=no
else
- with_stripping=yes
+ enable_stripping=yes
fi
else
enableval=yes
- with_stripping=yes
+ enable_stripping=yes
fi;
-echo "$as_me:2763: result: $with_stripping" >&5
-echo "${ECHO_T}$with_stripping" >&6
+echo "$as_me:3007: result: $enable_stripping" >&5
+echo "${ECHO_T}$enable_stripping" >&6
-if test "$with_stripping" = yes
+if test "$enable_stripping" = yes
then
INSTALL_OPT_S="-s"
else
INSTALL_OPT_S=
fi
-: ${INSTALL:=install}
-echo "$as_me:2774: checking if install accepts -p option" >&5
+: "${INSTALL:=install}"
+echo "$as_me:3018: checking if install accepts -p option" >&5
echo $ECHO_N "checking if install accepts -p option... $ECHO_C" >&6
if test "${cf_cv_install_p+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- rm -rf conftest*
+ rm -rf ./conftest*
date >conftest.in
mkdir conftest.out
sleep 3
@@ -2799,13 +3043,13 @@ else
else
cf_cv_install_p=no
fi
- rm -rf conftest*
+ rm -rf ./conftest*
fi
-echo "$as_me:2805: result: $cf_cv_install_p" >&5
+echo "$as_me:3049: result: $cf_cv_install_p" >&5
echo "${ECHO_T}$cf_cv_install_p" >&6
-echo "$as_me:2808: checking if install needs to be told about ownership" >&5
+echo "$as_me:3052: checking if install needs to be told about ownership" >&5
echo $ECHO_N "checking if install needs to be told about ownership... $ECHO_C" >&6
case `$ac_config_guess` in
(*minix)
@@ -2816,16 +3060,16 @@ case `$ac_config_guess` in
;;
esac
-echo "$as_me:2819: result: $with_install_o" >&5
+echo "$as_me:3063: result: $with_install_o" >&5
echo "${ECHO_T}$with_install_o" >&6
if test "x$with_install_o" = xyes
then
- INSTALL_OPT_O=`id root|sed -e 's/uid=[0-9]*(/ -o /' -e 's/gid=[0-9]*(/ -g /' -e 's/ [^=[:space:]][^=[:space:]]*=.*/ /' -e 's/)//g'`
+ INSTALL_OPT_O="`id root|sed -e 's/uid=[0-9]*(/ -o /' -e 's/gid=[0-9]*(/ -g /' -e 's/ [^=[:space:]][^=[:space:]]*=.*/ /' -e 's/)//g'`"
else
INSTALL_OPT_O=
fi
-echo "$as_me:2828: checking for long file names" >&5
+echo "$as_me:3072: checking for long file names" >&5
echo $ECHO_N "checking for long file names... $ECHO_C" >&6
if test "${ac_cv_sys_long_file_names+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2846,27 +3090,27 @@ if test -n "$TMPDIR" && test -d "$TMPDIR" && test -w "$TMPDIR"; then
else
ac_tmpdirs='/tmp /var/tmp /usr/tmp'
fi
-for ac_dir in . $ac_tmpdirs `eval echo $prefix/lib $exec_prefix/lib` ; do
- test -d $ac_dir || continue
- test -w $ac_dir || continue # It is less confusing to not echo anything here.
+for ac_dir in . $ac_tmpdirs `eval echo "$prefix/lib" "$exec_prefix/lib"` ; do
+ test -d "$ac_dir" || continue
+ test -w "$ac_dir" || continue # It is less confusing to not echo anything here.
ac_xdir=$ac_dir/cf$$
- (umask 077 && mkdir $ac_xdir 2>/dev/null) || continue
+ (umask 077 && mkdir "$ac_xdir" 2>/dev/null) || continue
ac_tf1=$ac_xdir/conftest9012345
ac_tf2=$ac_xdir/conftest9012346
- (echo 1 >$ac_tf1) 2>/dev/null
- (echo 2 >$ac_tf2) 2>/dev/null
- ac_val=`cat $ac_tf1 2>/dev/null`
- if test ! -f $ac_tf1 || test "$ac_val" != 1; then
+ (echo 1 >"$ac_tf1") 2>/dev/null
+ (echo 2 >"$ac_tf2") 2>/dev/null
+ ac_val=`cat "$ac_tf1" 2>/dev/null`
+ if test ! -f "$ac_tf1" || test "$ac_val" != 1; then
ac_cv_sys_long_file_names=no
- rm -rf $ac_xdir 2>/dev/null
+ rm -rf "$ac_xdir" 2>/dev/null
break
fi
- rm -rf $ac_xdir 2>/dev/null
+ rm -rf "$ac_xdir" 2>/dev/null
done
fi
-echo "$as_me:2867: result: $ac_cv_sys_long_file_names" >&5
+echo "$as_me:3111: result: $ac_cv_sys_long_file_names" >&5
echo "${ECHO_T}$ac_cv_sys_long_file_names" >&6
-if test $ac_cv_sys_long_file_names = yes; then
+if test "$ac_cv_sys_long_file_names" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_LONG_FILE_NAMES 1
@@ -2876,7 +3120,7 @@ fi
# if we find pkg-config, check if we should install the ".pc" files.
-echo "$as_me:2879: checking if you want to use pkg-config" >&5
+echo "$as_me:3123: checking if you want to use pkg-config" >&5
echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6
# Check whether --with-pkg-config or --without-pkg-config was given.
@@ -2886,10 +3130,10 @@ if test "${with_pkg_config+set}" = set; then
else
cf_pkg_config=yes
fi;
-echo "$as_me:2889: result: $cf_pkg_config" >&5
+echo "$as_me:3133: result: $cf_pkg_config" >&5
echo "${ECHO_T}$cf_pkg_config" >&6
-case $cf_pkg_config in
+case "$cf_pkg_config" in
(no)
PKG_CONFIG=none
;;
@@ -2898,7 +3142,7 @@ case $cf_pkg_config in
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-echo "$as_me:2901: checking for $ac_word" >&5
+echo "$as_me:3145: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2915,7 +3159,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word"
- echo "$as_me:2918: found $ac_dir/$ac_word" >&5
+ echo "$as_me:3162: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -2926,10 +3170,10 @@ fi
PKG_CONFIG=$ac_cv_path_PKG_CONFIG
if test -n "$PKG_CONFIG"; then
- echo "$as_me:2929: result: $PKG_CONFIG" >&5
+ echo "$as_me:3173: result: $PKG_CONFIG" >&5
echo "${ECHO_T}$PKG_CONFIG" >&6
else
- echo "$as_me:2932: result: no" >&5
+ echo "$as_me:3176: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2938,7 +3182,7 @@ if test -z "$ac_cv_path_PKG_CONFIG"; then
ac_pt_PKG_CONFIG=$PKG_CONFIG
# Extract the first word of "pkg-config", so it can be a program name with args.
set dummy pkg-config; ac_word=$2
-echo "$as_me:2941: checking for $ac_word" >&5
+echo "$as_me:3185: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2955,7 +3199,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word"
- echo "$as_me:2958: found $ac_dir/$ac_word" >&5
+ echo "$as_me:3202: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -2967,10 +3211,10 @@ fi
ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
if test -n "$ac_pt_PKG_CONFIG"; then
- echo "$as_me:2970: result: $ac_pt_PKG_CONFIG" >&5
+ echo "$as_me:3214: result: $ac_pt_PKG_CONFIG" >&5
echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
else
- echo "$as_me:2973: result: no" >&5
+ echo "$as_me:3217: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3001,117 +3245,146 @@ case ".$PKG_CONFIG" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval PKG_CONFIG="$PKG_CONFIG"
case ".$PKG_CONFIG" in
(.NONE/*)
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG=`echo "$PKG_CONFIG" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG=`echo "$PKG_CONFIG" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:3016: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
+ { { echo "$as_me:3260: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
elif test "x$cf_pkg_config" != xno ; then
- { echo "$as_me:3023: WARNING: pkg-config is not installed" >&5
+ { echo "$as_me:3267: WARNING: pkg-config is not installed" >&5
echo "$as_me: WARNING: pkg-config is not installed" >&2;}
fi
-case $PKG_CONFIG in
+case "$PKG_CONFIG" in
(no|none|yes)
- echo "$as_me:3029: checking for pkg-config library directory" >&5
+ echo "$as_me:3273: checking for pkg-config library directory" >&5
echo $ECHO_N "checking for pkg-config library directory... $ECHO_C" >&6
;;
(*)
- echo "$as_me:3033: checking for $PKG_CONFIG library directory" >&5
+ echo "$as_me:3277: checking for $PKG_CONFIG library directory" >&5
echo $ECHO_N "checking for $PKG_CONFIG library directory... $ECHO_C" >&6
;;
esac
-PKG_CONFIG_LIBDIR=no
+cf_search_path=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/:/ /g' -e 's,^[ ]*,,'`
# Check whether --with-pkg-config-libdir or --without-pkg-config-libdir was given.
if test "${with_pkg_config_libdir+set}" = set; then
withval="$with_pkg_config_libdir"
- PKG_CONFIG_LIBDIR=$withval
+ cf_search_path=$withval
else
- test "x$PKG_CONFIG" != xnone && PKG_CONFIG_LIBDIR=yes
+ test "x$PKG_CONFIG" != xnone && cf_search_path=yes
fi;
-case x$PKG_CONFIG_LIBDIR in
+case x$cf_search_path in
(x/*)
;;
(xyes)
+ cf_search_path=
+ test -n "$verbose" && echo " auto..." 1>&6
+
+echo "${as_me:-configure}:3299: testing auto... ..." 1>&5
+
# Look for the library directory using the same prefix as the executable
+ echo "$as_me:3302: checking for search-list" >&5
+echo $ECHO_N "checking for search-list... $ECHO_C" >&6
if test "x$PKG_CONFIG" = xnone
then
cf_path=$prefix
else
cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`
+ cf_search_path=`
+ "$PKG_CONFIG" --debug --exists no-such-package 2>&1 | awk "\
+/^Scanning directory #[1-9][0-9]* '.*'$/{ \
+ sub(\"^[^']*'\",\"\"); \
+ sub(\"'.*\",\"\"); \
+ printf \" %s\", \\$0; } \
+/trying path:/{
+ sub(\"^.* trying path: \",\"\");
+ sub(\" for no-such-package.*$\",\"\");
+ printf \" %s\", \\$0;
+}
+{ next; } \
+"`
fi
- # If you don't like using the default architecture, you have to specify the
- # intended library directory and corresponding compiler/linker options.
- #
- # This case allows for Debian's 2014-flavor of multiarch, along with the
- # most common variations before that point. Some other variants spell the
- # directory differently, e.g., "pkg-config", and put it in unusual places.
- # pkg-config has always been poorly standardized, which is ironic...
- case x`(arch) 2>/dev/null` in
- (*64)
- cf_search_path="\
- $cf_path/lib/*64-linux-gnu \
- $cf_path/share \
- $cf_path/lib64 \
- $cf_path/lib32 \
- $cf_path/lib"
- ;;
- (*)
- cf_search_path="\
- $cf_path/lib/*-linux-gnu \
- $cf_path/share \
- $cf_path/lib32 \
- $cf_path/lib \
- $cf_path/libdata"
- ;;
- esac
-
- test -n "$verbose" && echo " list..." 1>&6
-
-echo "${as_me:-configure}:3088: testing list... ..." 1>&5
-
- for cf_config in $cf_search_path
- do
- test -n "$verbose" && echo " checking $cf_config/pkgconfig" 1>&6
+ if test -z "$cf_search_path"
+ then
+ # If you don't like using the default architecture, you have to specify
+ # the intended library directory and corresponding compiler/linker
+ # options.
+ #
+ # This case allows for Debian's 2014-flavor of multiarch, along with
+ # the most common variations before that point. Some other variants
+ # spell the directory differently, e.g., "pkg-config", and put it in
+ # unusual places.
+ #
+ # pkg-config has always been poorly standardized, which is ironic...
+ case x`(arch) 2>/dev/null` in
+ (*64)
+ cf_test_path="\
+ $cf_path/lib/*64-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib64 \
+ $cf_path/lib32 \
+ $cf_path/lib"
+ ;;
+ (*)
+ cf_test_path="\
+ $cf_path/lib/*-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib32 \
+ $cf_path/lib \
+ $cf_path/libdata"
+ ;;
+ esac
+ for cf_config in $cf_test_path
+ do
+ test -d "$cf_config/pkgconfig" && cf_search_path="$cf_search_path $cf_config/pkgconfig"
+ done
+ fi
-echo "${as_me:-configure}:3094: testing checking $cf_config/pkgconfig ..." 1>&5
+ echo "$as_me:3360: result: $cf_search_path" >&5
+echo "${ECHO_T}$cf_search_path" >&6
- if test -d $cf_config/pkgconfig
- then
- PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
- echo "$as_me:3099: checking done" >&5
-echo $ECHO_N "checking done... $ECHO_C" >&6
- break
- fi
- done
;;
(*)
;;
esac
-if test "x$PKG_CONFIG_LIBDIR" != xno ; then
- echo "$as_me:3110: result: $PKG_CONFIG_LIBDIR" >&5
-echo "${ECHO_T}$PKG_CONFIG_LIBDIR" >&6
+echo "$as_me:3368: checking for first directory" >&5
+echo $ECHO_N "checking for first directory... $ECHO_C" >&6
+cf_pkg_config_path=none
+for cf_config in $cf_search_path
+do
+ if test -d "$cf_config"
+ then
+ cf_pkg_config_path=$cf_config
+ break
+ fi
+done
+echo "$as_me:3379: result: $cf_pkg_config_path" >&5
+echo "${ECHO_T}$cf_pkg_config_path" >&6
+
+if test "x$cf_pkg_config_path" != xnone ; then
+ # limit this to the first directory found
+ PKG_CONFIG_LIBDIR="$cf_pkg_config_path"
fi
-echo "$as_me:3114: checking if you want to build test-programs" >&5
+echo "$as_me:3387: checking if you want to build test-programs" >&5
echo $ECHO_N "checking if you want to build test-programs... $ECHO_C" >&6
# Check whether --with-tests or --without-tests was given.
@@ -3121,10 +3394,10 @@ if test "${with_tests+set}" = set; then
else
cf_with_tests=yes
fi;
-echo "$as_me:3124: result: $cf_with_tests" >&5
+echo "$as_me:3397: result: $cf_with_tests" >&5
echo "${ECHO_T}$cf_with_tests" >&6
-echo "$as_me:3127: checking if we should assume mixed-case filenames" >&5
+echo "$as_me:3400: checking if we should assume mixed-case filenames" >&5
echo $ECHO_N "checking if we should assume mixed-case filenames... $ECHO_C" >&6
# Check whether --enable-mixed-case or --disable-mixed-case was given.
@@ -3134,19 +3407,19 @@ if test "${enable_mixed_case+set}" = set; then
else
enable_mixedcase=auto
fi;
-echo "$as_me:3137: result: $enable_mixedcase" >&5
+echo "$as_me:3410: result: $enable_mixedcase" >&5
echo "${ECHO_T}$enable_mixedcase" >&6
if test "$enable_mixedcase" = "auto" ; then
-echo "$as_me:3141: checking if filesystem supports mixed-case filenames" >&5
+echo "$as_me:3414: checking if filesystem supports mixed-case filenames" >&5
echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6
if test "${cf_cv_mixedcase+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test "$cross_compiling" = yes ; then
- case $target_alias in
- (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*)
+ case "$target_alias" in
+ (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*|darwin*)
cf_cv_mixedcase=no
;;
(*)
@@ -3165,7 +3438,7 @@ else
fi
fi
-echo "$as_me:3168: result: $cf_cv_mixedcase" >&5
+echo "$as_me:3441: result: $cf_cv_mixedcase" >&5
echo "${ECHO_T}$cf_cv_mixedcase" >&6
test "$cf_cv_mixedcase" = yes &&
cat >>confdefs.h <<\EOF
@@ -3183,7 +3456,7 @@ EOF
fi
# do this after mixed-case option (tags/TAGS is not as important as tic).
-echo "$as_me:3186: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "$as_me:3459: checking whether ${MAKE-make} sets \${MAKE}" >&5
echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
@@ -3203,20 +3476,82 @@ fi
rm -f conftest.make
fi
if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$as_me:3206: result: yes" >&5
+ echo "$as_me:3479: result: yes" >&5
echo "${ECHO_T}yes" >&6
SET_MAKE=
else
- echo "$as_me:3210: result: no" >&5
+ echo "$as_me:3483: result: no" >&5
echo "${ECHO_T}no" >&6
SET_MAKE="MAKE=${MAKE-make}"
fi
+echo "$as_me:3488: checking for \".PHONY\" make-support" >&5
+echo $ECHO_N "checking for \".PHONY\" make-support... $ECHO_C" >&6
+if test "${cf_cv_make_PHONY+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+ rm -rf conftest*
+ (
+ mkdir conftest || exit 1
+ cd conftest
+ cat >makefile <<'CF_EOF'
+.PHONY: always
+DATA=0
+always: always.out
+ @echo "** making $@ $(DATA)"
+once: once.out
+ @echo "** making $@ $(DATA)"
+always.out:
+ @echo "** making $@ $(DATA)"
+ echo $(DATA) > $@
+once.out:
+ @echo "** making $@ $(DATA)"
+ echo $(DATA) > $@
+CF_EOF
+ for cf_data in 1 2 3
+ do
+ ${MAKE:-make} always DATA=$cf_data
+ ${MAKE:-make} once DATA=$cf_data
+ ${MAKE:-make} -t always once
+ if test -f always ; then
+ echo "no (case 1)" > ../conftest.tmp
+ elif test ! -f always.out ; then
+ echo "no (case 2)" > ../conftest.tmp
+ elif test ! -f once.out ; then
+ echo "no (case 3)" > ../conftest.tmp
+ elif ! cmp -s always.out once.out ; then
+ echo "no (case 4)" > ../conftest.tmp
+ diff always.out once.out
+ else
+ cf_check="`cat always.out`"
+ if test "x$cf_check" != "x$cf_data" ; then
+ echo "no (case 5)" > ../conftest.tmp
+ else
+ echo yes > ../conftest.tmp
+ rm -f ./*.out
+ continue
+ fi
+ fi
+ break
+ done
+ ) >&5 2>&1
+ cf_cv_make_PHONY="`cat conftest.tmp`"
+ rm -rf conftest*
+
+fi
+echo "$as_me:3543: result: $cf_cv_make_PHONY" >&5
+echo "${ECHO_T}$cf_cv_make_PHONY" >&6
+MAKE_NO_PHONY="#"
+MAKE_PHONY="#"
+test "x$cf_cv_make_PHONY" = xyes && MAKE_PHONY=
+test "x$cf_cv_make_PHONY" != xyes && MAKE_NO_PHONY=
+
for ac_prog in exctags ctags
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:3219: checking for $ac_word" >&5
+echo "$as_me:3554: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CTAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3231,7 +3566,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CTAGS="$ac_prog"
-echo "$as_me:3234: found $ac_dir/$ac_word" >&5
+echo "$as_me:3569: found $ac_dir/$ac_word" >&5
break
done
@@ -3239,10 +3574,10 @@ fi
fi
CTAGS=$ac_cv_prog_CTAGS
if test -n "$CTAGS"; then
- echo "$as_me:3242: result: $CTAGS" >&5
+ echo "$as_me:3577: result: $CTAGS" >&5
echo "${ECHO_T}$CTAGS" >&6
else
- echo "$as_me:3245: result: no" >&5
+ echo "$as_me:3580: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3253,7 +3588,7 @@ for ac_prog in exetags etags
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:3256: checking for $ac_word" >&5
+echo "$as_me:3591: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ETAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3268,7 +3603,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ETAGS="$ac_prog"
-echo "$as_me:3271: found $ac_dir/$ac_word" >&5
+echo "$as_me:3606: found $ac_dir/$ac_word" >&5
break
done
@@ -3276,10 +3611,10 @@ fi
fi
ETAGS=$ac_cv_prog_ETAGS
if test -n "$ETAGS"; then
- echo "$as_me:3279: result: $ETAGS" >&5
+ echo "$as_me:3614: result: $ETAGS" >&5
echo "${ECHO_T}$ETAGS" >&6
else
- echo "$as_me:3282: result: no" >&5
+ echo "$as_me:3617: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3288,7 +3623,7 @@ done
# Extract the first word of "${CTAGS:-ctags}", so it can be a program name with args.
set dummy ${CTAGS:-ctags}; ac_word=$2
-echo "$as_me:3291: checking for $ac_word" >&5
+echo "$as_me:3626: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3303,7 +3638,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_MAKE_LOWER_TAGS="yes"
-echo "$as_me:3306: found $ac_dir/$ac_word" >&5
+echo "$as_me:3641: found $ac_dir/$ac_word" >&5
break
done
@@ -3312,17 +3647,17 @@ fi
fi
MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
if test -n "$MAKE_LOWER_TAGS"; then
- echo "$as_me:3315: result: $MAKE_LOWER_TAGS" >&5
+ echo "$as_me:3650: result: $MAKE_LOWER_TAGS" >&5
echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
else
- echo "$as_me:3318: result: no" >&5
+ echo "$as_me:3653: result: no" >&5
echo "${ECHO_T}no" >&6
fi
if test "$cf_cv_mixedcase" = yes ; then
# Extract the first word of "${ETAGS:-etags}", so it can be a program name with args.
set dummy ${ETAGS:-etags}; ac_word=$2
-echo "$as_me:3325: checking for $ac_word" >&5
+echo "$as_me:3660: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3337,7 +3672,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_MAKE_UPPER_TAGS="yes"
-echo "$as_me:3340: found $ac_dir/$ac_word" >&5
+echo "$as_me:3675: found $ac_dir/$ac_word" >&5
break
done
@@ -3346,10 +3681,10 @@ fi
fi
MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
if test -n "$MAKE_UPPER_TAGS"; then
- echo "$as_me:3349: result: $MAKE_UPPER_TAGS" >&5
+ echo "$as_me:3684: result: $MAKE_UPPER_TAGS" >&5
echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
else
- echo "$as_me:3352: result: no" >&5
+ echo "$as_me:3687: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3369,7 +3704,7 @@ else
MAKE_LOWER_TAGS="#"
fi
-echo "$as_me:3372: checking for makeflags variable" >&5
+echo "$as_me:3707: checking for makeflags variable" >&5
echo $ECHO_N "checking for makeflags variable... $ECHO_C" >&6
if test "${cf_cv_makeflags+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3383,10 +3718,10 @@ SHELL = $SHELL
all :
@ echo '.$cf_option'
CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[ ]*$,,'`
+ cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | ${FGREP-fgrep} -v "ing directory" | sed -e 's,[ ]*$,,'`
case "$cf_result" in
(.*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
+ cf_result="`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`"
case "$cf_result" in
(.*CC=*) cf_cv_makeflags=
;;
@@ -3399,7 +3734,7 @@ CF_EOF
;;
(*)
-echo "${as_me:-configure}:3402: testing given option \"$cf_option\",no match \"$cf_result\" ..." 1>&5
+echo "${as_me:-configure}:3737: testing given option \"$cf_option\",no match \"$cf_result\" ..." 1>&5
;;
esac
@@ -3407,13 +3742,13 @@ echo "${as_me:-configure}:3402: testing given option \"$cf_option\",no match \"$
rm -f cf_makeflags.tmp
fi
-echo "$as_me:3410: result: $cf_cv_makeflags" >&5
+echo "$as_me:3745: result: $cf_cv_makeflags" >&5
echo "${ECHO_T}$cf_cv_makeflags" >&6
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo "$as_me:3416: checking for $ac_word" >&5
+echo "$as_me:3751: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_RANLIB+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3428,7 +3763,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-echo "$as_me:3431: found $ac_dir/$ac_word" >&5
+echo "$as_me:3766: found $ac_dir/$ac_word" >&5
break
done
@@ -3436,10 +3771,10 @@ fi
fi
RANLIB=$ac_cv_prog_RANLIB
if test -n "$RANLIB"; then
- echo "$as_me:3439: result: $RANLIB" >&5
+ echo "$as_me:3774: result: $RANLIB" >&5
echo "${ECHO_T}$RANLIB" >&6
else
- echo "$as_me:3442: result: no" >&5
+ echo "$as_me:3777: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3448,7 +3783,7 @@ if test -z "$ac_cv_prog_RANLIB"; then
ac_ct_RANLIB=$RANLIB
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
-echo "$as_me:3451: checking for $ac_word" >&5
+echo "$as_me:3786: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3463,7 +3798,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_RANLIB="ranlib"
-echo "$as_me:3466: found $ac_dir/$ac_word" >&5
+echo "$as_me:3801: found $ac_dir/$ac_word" >&5
break
done
@@ -3472,10 +3807,10 @@ fi
fi
ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
if test -n "$ac_ct_RANLIB"; then
- echo "$as_me:3475: result: $ac_ct_RANLIB" >&5
+ echo "$as_me:3810: result: $ac_ct_RANLIB" >&5
echo "${ECHO_T}$ac_ct_RANLIB" >&6
else
- echo "$as_me:3478: result: no" >&5
+ echo "$as_me:3813: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3487,7 +3822,7 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ld", so it can be a program name with args.
set dummy ${ac_tool_prefix}ld; ac_word=$2
-echo "$as_me:3490: checking for $ac_word" >&5
+echo "$as_me:3825: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_LD+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3502,7 +3837,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_LD="${ac_tool_prefix}ld"
-echo "$as_me:3505: found $ac_dir/$ac_word" >&5
+echo "$as_me:3840: found $ac_dir/$ac_word" >&5
break
done
@@ -3510,10 +3845,10 @@ fi
fi
LD=$ac_cv_prog_LD
if test -n "$LD"; then
- echo "$as_me:3513: result: $LD" >&5
+ echo "$as_me:3848: result: $LD" >&5
echo "${ECHO_T}$LD" >&6
else
- echo "$as_me:3516: result: no" >&5
+ echo "$as_me:3851: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3522,7 +3857,7 @@ if test -z "$ac_cv_prog_LD"; then
ac_ct_LD=$LD
# Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
-echo "$as_me:3525: checking for $ac_word" >&5
+echo "$as_me:3860: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_LD+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3537,7 +3872,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_LD="ld"
-echo "$as_me:3540: found $ac_dir/$ac_word" >&5
+echo "$as_me:3875: found $ac_dir/$ac_word" >&5
break
done
@@ -3546,10 +3881,10 @@ fi
fi
ac_ct_LD=$ac_cv_prog_ac_ct_LD
if test -n "$ac_ct_LD"; then
- echo "$as_me:3549: result: $ac_ct_LD" >&5
+ echo "$as_me:3884: result: $ac_ct_LD" >&5
echo "${ECHO_T}$ac_ct_LD" >&6
else
- echo "$as_me:3552: result: no" >&5
+ echo "$as_me:3887: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3561,7 +3896,7 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo "$as_me:3564: checking for $ac_word" >&5
+echo "$as_me:3899: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3576,7 +3911,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_AR="${ac_tool_prefix}ar"
-echo "$as_me:3579: found $ac_dir/$ac_word" >&5
+echo "$as_me:3914: found $ac_dir/$ac_word" >&5
break
done
@@ -3584,10 +3919,10 @@ fi
fi
AR=$ac_cv_prog_AR
if test -n "$AR"; then
- echo "$as_me:3587: result: $AR" >&5
+ echo "$as_me:3922: result: $AR" >&5
echo "${ECHO_T}$AR" >&6
else
- echo "$as_me:3590: result: no" >&5
+ echo "$as_me:3925: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3596,7 +3931,7 @@ if test -z "$ac_cv_prog_AR"; then
ac_ct_AR=$AR
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
-echo "$as_me:3599: checking for $ac_word" >&5
+echo "$as_me:3934: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3611,7 +3946,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_AR="ar"
-echo "$as_me:3614: found $ac_dir/$ac_word" >&5
+echo "$as_me:3949: found $ac_dir/$ac_word" >&5
break
done
@@ -3620,10 +3955,10 @@ fi
fi
ac_ct_AR=$ac_cv_prog_ac_ct_AR
if test -n "$ac_ct_AR"; then
- echo "$as_me:3623: result: $ac_ct_AR" >&5
+ echo "$as_me:3958: result: $ac_ct_AR" >&5
echo "${ECHO_T}$ac_ct_AR" >&6
else
- echo "$as_me:3626: result: no" >&5
+ echo "$as_me:3961: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3635,7 +3970,7 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo "$as_me:3638: checking for $ac_word" >&5
+echo "$as_me:3973: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3650,7 +3985,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_AR="${ac_tool_prefix}ar"
-echo "$as_me:3653: found $ac_dir/$ac_word" >&5
+echo "$as_me:3988: found $ac_dir/$ac_word" >&5
break
done
@@ -3658,10 +3993,10 @@ fi
fi
AR=$ac_cv_prog_AR
if test -n "$AR"; then
- echo "$as_me:3661: result: $AR" >&5
+ echo "$as_me:3996: result: $AR" >&5
echo "${ECHO_T}$AR" >&6
else
- echo "$as_me:3664: result: no" >&5
+ echo "$as_me:3999: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3670,7 +4005,7 @@ if test -z "$ac_cv_prog_AR"; then
ac_ct_AR=$AR
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
-echo "$as_me:3673: checking for $ac_word" >&5
+echo "$as_me:4008: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3685,7 +4020,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_AR="ar"
-echo "$as_me:3688: found $ac_dir/$ac_word" >&5
+echo "$as_me:4023: found $ac_dir/$ac_word" >&5
break
done
@@ -3694,10 +4029,10 @@ fi
fi
ac_ct_AR=$ac_cv_prog_ac_ct_AR
if test -n "$ac_ct_AR"; then
- echo "$as_me:3697: result: $ac_ct_AR" >&5
+ echo "$as_me:4032: result: $ac_ct_AR" >&5
echo "${ECHO_T}$ac_ct_AR" >&6
else
- echo "$as_me:3700: result: no" >&5
+ echo "$as_me:4035: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3706,55 +4041,71 @@ else
AR="$ac_cv_prog_AR"
fi
-echo "$as_me:3709: checking for options to update archives" >&5
+echo "$as_me:4044: checking for options to update archives" >&5
echo $ECHO_N "checking for options to update archives... $ECHO_C" >&6
if test "${cf_cv_ar_flags+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cf_cv_ar_flags=unknown
- for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
- do
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_cv_ar_flags=''
+ cat >mk_static_lib.sh <<-EOF
+ #!$SHELL
+ MSVC_BIN="$AR"
+ out="\$1"
+ shift
+ exec \$MSVC_BIN -out:"\$out" \$@
+ EOF
+ chmod +x mk_static_lib.sh
+ AR=`pwd`/mk_static_lib.sh
+ ;;
+ (*)
+ cf_cv_ar_flags=unknown
+ for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
+ do
- # check if $ARFLAGS already contains this choice
- if test "x$ARFLAGS" != "x" ; then
- cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
- if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
- cf_cv_ar_flags=
- break
+ # check if $ARFLAGS already contains this choice
+ if test "x$ARFLAGS" != "x" ; then
+ cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
+ if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
+ cf_cv_ar_flags=
+ break
+ fi
fi
- fi
- rm -f conftest.$ac_cv_objext
- rm -f conftest.a
+ rm -f "conftest.$ac_cv_objext"
+ rm -f conftest.a
- cat >conftest.$ac_ext <<EOF
-#line 3732 "configure"
+ cat >"conftest.$ac_ext" <<EOF
+#line 4081 "configure"
int testdata[3] = { 123, 456, 789 };
EOF
- if { (eval echo "$as_me:3735: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:4084: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3738: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
- echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&5
- $AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&5 1>/dev/null
- if test -f conftest.a ; then
- cf_cv_ar_flags=$cf_ar_flags
- break
- fi
- else
- test -n "$verbose" && echo " cannot compile test-program" 1>&6
+ echo "$as_me:4087: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
+ echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&5
+ $AR $ARFLAGS "$cf_ar_flags" conftest.a "conftest.$ac_cv_objext" 2>&5 1>/dev/null
+ if test -f conftest.a ; then
+ cf_cv_ar_flags="$cf_ar_flags"
+ break
+ fi
+ else
+ test -n "$verbose" && echo " cannot compile test-program" 1>&6
-echo "${as_me:-configure}:3749: testing cannot compile test-program ..." 1>&5
+echo "${as_me:-configure}:4098: testing cannot compile test-program ..." 1>&5
- break
- fi
- done
- rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
+ break
+ fi
+ done
+ rm -f conftest.a "conftest.$ac_ext" "conftest.$ac_cv_objext"
+ ;;
+ esac
fi
-echo "$as_me:3757: result: $cf_cv_ar_flags" >&5
+echo "$as_me:4108: result: $cf_cv_ar_flags" >&5
echo "${ECHO_T}$cf_cv_ar_flags" >&6
if test -n "$ARFLAGS" ; then
@@ -3765,17 +4116,17 @@ else
ARFLAGS=$cf_cv_ar_flags
fi
- echo "$as_me:3768: checking for PATH separator" >&5
+ echo "$as_me:4119: checking for PATH separator" >&5
echo $ECHO_N "checking for PATH separator... $ECHO_C" >&6
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(os2*) PATH_SEPARATOR=';' ;;
(*) ${PATH_SEPARATOR:=':'} ;;
esac
- echo "$as_me:3775: result: $PATH_SEPARATOR" >&5
+ echo "$as_me:4126: result: $PATH_SEPARATOR" >&5
echo "${ECHO_T}$PATH_SEPARATOR" >&6
-echo "$as_me:3778: checking if you have specified an install-prefix" >&5
+echo "$as_me:4129: checking if you have specified an install-prefix" >&5
echo $ECHO_N "checking if you have specified an install-prefix... $ECHO_C" >&6
# Check whether --with-install-prefix or --without-install-prefix was given.
@@ -3788,7 +4139,7 @@ if test "${with_install_prefix+set}" = set; then
;;
esac
fi;
-echo "$as_me:3791: result: $DESTDIR" >&5
+echo "$as_me:4142: result: $DESTDIR" >&5
echo "${ECHO_T}$DESTDIR" >&6
###############################################################################
@@ -3816,7 +4167,7 @@ else
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:3819: checking for $ac_word" >&5
+echo "$as_me:4170: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_BUILD_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3831,7 +4182,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_BUILD_CC="$ac_prog"
-echo "$as_me:3834: found $ac_dir/$ac_word" >&5
+echo "$as_me:4185: found $ac_dir/$ac_word" >&5
break
done
@@ -3839,10 +4190,10 @@ fi
fi
BUILD_CC=$ac_cv_prog_BUILD_CC
if test -n "$BUILD_CC"; then
- echo "$as_me:3842: result: $BUILD_CC" >&5
+ echo "$as_me:4193: result: $BUILD_CC" >&5
echo "${ECHO_T}$BUILD_CC" >&6
else
- echo "$as_me:3845: result: no" >&5
+ echo "$as_me:4196: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3851,12 +4202,12 @@ done
test -n "$BUILD_CC" || BUILD_CC="none"
fi;
- echo "$as_me:3854: checking for native build C compiler" >&5
+ echo "$as_me:4205: checking for native build C compiler" >&5
echo $ECHO_N "checking for native build C compiler... $ECHO_C" >&6
- echo "$as_me:3856: result: $BUILD_CC" >&5
+ echo "$as_me:4207: result: $BUILD_CC" >&5
echo "${ECHO_T}$BUILD_CC" >&6
- echo "$as_me:3859: checking for native build C preprocessor" >&5
+ echo "$as_me:4210: checking for native build C preprocessor" >&5
echo $ECHO_N "checking for native build C preprocessor... $ECHO_C" >&6
# Check whether --with-build-cpp or --without-build-cpp was given.
@@ -3866,10 +4217,10 @@ if test "${with_build_cpp+set}" = set; then
else
BUILD_CPP='${BUILD_CC} -E'
fi;
- echo "$as_me:3869: result: $BUILD_CPP" >&5
+ echo "$as_me:4220: result: $BUILD_CPP" >&5
echo "${ECHO_T}$BUILD_CPP" >&6
- echo "$as_me:3872: checking for native build C flags" >&5
+ echo "$as_me:4223: checking for native build C flags" >&5
echo $ECHO_N "checking for native build C flags... $ECHO_C" >&6
# Check whether --with-build-cflags or --without-build-cflags was given.
@@ -3877,10 +4228,10 @@ if test "${with_build_cflags+set}" = set; then
withval="$with_build_cflags"
BUILD_CFLAGS="$withval"
fi;
- echo "$as_me:3880: result: $BUILD_CFLAGS" >&5
+ echo "$as_me:4231: result: $BUILD_CFLAGS" >&5
echo "${ECHO_T}$BUILD_CFLAGS" >&6
- echo "$as_me:3883: checking for native build C preprocessor-flags" >&5
+ echo "$as_me:4234: checking for native build C preprocessor-flags" >&5
echo $ECHO_N "checking for native build C preprocessor-flags... $ECHO_C" >&6
# Check whether --with-build-cppflags or --without-build-cppflags was given.
@@ -3888,10 +4239,10 @@ if test "${with_build_cppflags+set}" = set; then
withval="$with_build_cppflags"
BUILD_CPPFLAGS="$withval"
fi;
- echo "$as_me:3891: result: $BUILD_CPPFLAGS" >&5
+ echo "$as_me:4242: result: $BUILD_CPPFLAGS" >&5
echo "${ECHO_T}$BUILD_CPPFLAGS" >&6
- echo "$as_me:3894: checking for native build linker-flags" >&5
+ echo "$as_me:4245: checking for native build linker-flags" >&5
echo $ECHO_N "checking for native build linker-flags... $ECHO_C" >&6
# Check whether --with-build-ldflags or --without-build-ldflags was given.
@@ -3899,10 +4250,10 @@ if test "${with_build_ldflags+set}" = set; then
withval="$with_build_ldflags"
BUILD_LDFLAGS="$withval"
fi;
- echo "$as_me:3902: result: $BUILD_LDFLAGS" >&5
+ echo "$as_me:4253: result: $BUILD_LDFLAGS" >&5
echo "${ECHO_T}$BUILD_LDFLAGS" >&6
- echo "$as_me:3905: checking for native build linker-libraries" >&5
+ echo "$as_me:4256: checking for native build linker-libraries" >&5
echo $ECHO_N "checking for native build linker-libraries... $ECHO_C" >&6
# Check whether --with-build-libs or --without-build-libs was given.
@@ -3910,7 +4261,7 @@ if test "${with_build_libs+set}" = set; then
withval="$with_build_libs"
BUILD_LIBS="$withval"
fi;
- echo "$as_me:3913: result: $BUILD_LIBS" >&5
+ echo "$as_me:4264: result: $BUILD_LIBS" >&5
echo "${ECHO_T}$BUILD_LIBS" >&6
# this assumes we're on Unix.
@@ -3919,8 +4270,8 @@ echo "${ECHO_T}$BUILD_LIBS" >&6
: ${BUILD_CC:='${CC}'}
- if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
- { { echo "$as_me:3923: error: Cross-build requires two compilers.
+ if { test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}'; } ; then
+ { { echo "$as_me:4274: error: Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler." >&5
echo "$as_me: error: Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler." >&2;}
@@ -3945,7 +4296,7 @@ fi
### shared, for example.
cf_list_models=""
-echo "$as_me:3948: checking if you want to build shared C-objects" >&5
+echo "$as_me:4299: checking if you want to build shared C-objects" >&5
echo $ECHO_N "checking if you want to build shared C-objects... $ECHO_C" >&6
# Check whether --with-shared or --without-shared was given.
@@ -3955,27 +4306,27 @@ if test "${with_shared+set}" = set; then
else
with_shared=no
fi;
-echo "$as_me:3958: result: $with_shared" >&5
+echo "$as_me:4309: result: $with_shared" >&5
echo "${ECHO_T}$with_shared" >&6
test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
-echo "$as_me:3962: checking for specified models" >&5
+echo "$as_me:4313: checking for specified models" >&5
echo $ECHO_N "checking for specified models... $ECHO_C" >&6
test -z "$cf_list_models" && cf_list_models=normal
-echo "$as_me:3965: result: $cf_list_models" >&5
+echo "$as_me:4316: result: $cf_list_models" >&5
echo "${ECHO_T}$cf_list_models" >&6
### Use the first model as the default, and save its suffix for use in building
### up test-applications.
-echo "$as_me:3970: checking for default model" >&5
+echo "$as_me:4321: checking for default model" >&5
echo $ECHO_N "checking for default model... $ECHO_C" >&6
DFT_LWR_MODEL=`echo "$cf_list_models" | $AWK '{print $1}'`
-echo "$as_me:3973: result: $DFT_LWR_MODEL" >&5
+echo "$as_me:4324: result: $DFT_LWR_MODEL" >&5
echo "${ECHO_T}$DFT_LWR_MODEL" >&6
DFT_UPR_MODEL=`echo "$DFT_LWR_MODEL" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-echo "$as_me:3978: checking for specific curses-directory" >&5
+echo "$as_me:4329: checking for specific curses-directory" >&5
echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6
# Check whether --with-curses-dir or --without-curses-dir was given.
@@ -3985,10 +4336,10 @@ if test "${with_curses_dir+set}" = set; then
else
cf_cv_curses_dir=no
fi;
-echo "$as_me:3988: result: $cf_cv_curses_dir" >&5
+echo "$as_me:4339: result: $cf_cv_curses_dir" >&5
echo "${ECHO_T}$cf_cv_curses_dir" >&6
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
if test "x$prefix" != xNONE; then
@@ -4004,19 +4355,19 @@ case ".$withval" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval withval="$withval"
case ".$withval" in
(.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:4019: error: expected a pathname, not \"$withval\"" >&5
+ { { echo "$as_me:4370: error: expected a pathname, not \"$withval\"" >&5
echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -4028,9 +4379,9 @@ esac
if test -n "$cf_cv_curses_dir/include" ; then
for cf_add_incdir in $cf_cv_curses_dir/include
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -4051,8 +4402,8 @@ if test -n "$cf_cv_curses_dir/include" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 4055 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4406 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -4063,25 +4414,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4067: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4418: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4070: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4073: \"$ac_try\"") >&5
+ echo "$as_me:4421: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4424: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4076: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4427: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -4090,11 +4441,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:4093: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:4444: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -4110,9 +4461,9 @@ fi
if test -n "$cf_cv_curses_dir/lib" ; then
for cf_add_libdir in $cf_cv_curses_dir/lib
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -4126,7 +4477,7 @@ if test -n "$cf_cv_curses_dir/lib" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:4129: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:4480: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -4141,39 +4492,50 @@ cf_ncuconfig_root=ncurses
cf_have_ncuconfig=no
if test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:4144: checking pkg-config for $cf_ncuconfig_root" >&5
+ echo "$as_me:4495: checking pkg-config for $cf_ncuconfig_root" >&5
echo $ECHO_N "checking pkg-config for $cf_ncuconfig_root... $ECHO_C" >&6
if "$PKG_CONFIG" --exists $cf_ncuconfig_root ; then
- echo "$as_me:4147: result: yes" >&5
+ echo "$as_me:4498: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:4150: checking if the $cf_ncuconfig_root package files work" >&5
+ echo "$as_me:4501: checking if the $cf_ncuconfig_root package files work" >&5
echo $ECHO_N "checking if the $cf_ncuconfig_root package files work... $ECHO_C" >&6
cf_have_ncuconfig=unknown
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+ cf_pkg_cflags="`$PKG_CONFIG --cflags $cf_ncuconfig_root`"
+ cf_pkg_libs="`$PKG_CONFIG --libs $cf_ncuconfig_root`"
+
+ # while -W for passing linker flags is prevalent, it is not "standard".
+ # At least one wrapper for c89/c99 (in Apple's xcode) has its own
+ # incompatible _and_ non-standard -W option which gives an error. Work
+ # around that pitfall.
+ case "x${CC}@@${cf_pkg_libs}@${cf_pkg_cflags}" in
+ (x*c[89]9@@*-W*)
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags $cf_ncuconfig_root`
+for cf_add_cflags in $cf_pkg_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -4192,7 +4554,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -4222,7 +4584,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -4255,7 +4617,7 @@ fi
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs $cf_ncuconfig_root`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -4268,67 +4630,283 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 4272 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4634 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:4284: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:4646: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:4287: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:4290: \"$ac_try\"") >&5
+ echo "$as_me:4649: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:4652: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4293: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4655: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ if test "$cross_compiling" = yes; then
+ cf_test_ncuconfig=maybe
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4661 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+ int main(void)
+ { const char *xx = curses_version(); return (xx == 0); }
+_ACEOF
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:4668: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:4671: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:4673: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:4676: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_test_ncuconfig=yes
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
+
+ if test "x$cf_test_ncuconfig" != xyes; then
+ cf_temp=`echo "x$cf_pkg_cflags" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_cflags="$cf_temp"
+ cf_temp=`echo "x$cf_pkg_libs" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_libs="$cf_temp"
+ fi
+ ;;
+ esac
+
+for cf_add_cflags in $cf_pkg_cflags
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_add_cflags
+do
+case "$cf_fix_cppflags" in
+(no)
+ case "$cf_add_cflags" in
+ (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=yes
+
+ if test "$cf_fix_cppflags" = yes ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ elif test "${cf_tst_cflags}" = "\"'" ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ fi
+ ;;
+ esac
+ case "$CPPFLAGS" in
+ (*$cf_add_cflags)
+ ;;
+ (*)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
+
+ ;;
+ esac
+
+ test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
+ cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+ (*)
+
+ test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
+ cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+(yes)
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=no
+ ;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_new_cflags"
+
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+ test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
+ CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
+
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+ test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
+ EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
+
+fi
+
+done
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4850 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main (void)
+{
+initscr(); mousemask(0,0); tigetstr((char *)0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:4862: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:4865: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:4868: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:4871: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_ncuconfig=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 4299 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4877 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
- { char *xx = curses_version(); return (xx == 0); }
+ { const char *xx = curses_version(); return (xx == 0); }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:4306: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:4884: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:4309: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:4311: \"$ac_try\"") >&5
+ echo "$as_me:4887: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:4889: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4314: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4892: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_ncuconfig=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:4331: result: $cf_have_ncuconfig" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:4909: result: $cf_have_ncuconfig" >&5
echo "${ECHO_T}$cf_have_ncuconfig" >&6
test "$cf_have_ncuconfig" = maybe && cf_have_ncuconfig=yes
if test "$cf_have_ncuconfig" != "yes"
@@ -4344,13 +4922,13 @@ EOF
NCURSES_CONFIG_PKG=$cf_ncuconfig_root
-echo "$as_me:4347: checking for terminfo header" >&5
+echo "$as_me:4925: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -4361,8 +4939,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 4365 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 4943 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -4371,43 +4949,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4380: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4958: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4383: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4386: \"$ac_try\"") >&5
+ echo "$as_me:4961: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4964: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4389: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4967: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:4405: result: $cf_cv_term_header" >&5
+echo "$as_me:4983: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -4417,7 +4995,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -4437,7 +5015,7 @@ esac
fi
else
- echo "$as_me:4440: result: no" >&5
+ echo "$as_me:5018: result: no" >&5
echo "${ECHO_T}no" >&6
NCURSES_CONFIG_PKG=none
fi
@@ -4453,7 +5031,7 @@ if test -n "$ac_tool_prefix"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:4456: checking for $ac_word" >&5
+echo "$as_me:5034: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4468,7 +5046,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-echo "$as_me:4471: found $ac_dir/$ac_word" >&5
+echo "$as_me:5049: found $ac_dir/$ac_word" >&5
break
done
@@ -4476,10 +5054,10 @@ fi
fi
NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
if test -n "$NCURSES_CONFIG"; then
- echo "$as_me:4479: result: $NCURSES_CONFIG" >&5
+ echo "$as_me:5057: result: $NCURSES_CONFIG" >&5
echo "${ECHO_T}$NCURSES_CONFIG" >&6
else
- echo "$as_me:4482: result: no" >&5
+ echo "$as_me:5060: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4492,7 +5070,7 @@ if test -z "$NCURSES_CONFIG"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:4495: checking for $ac_word" >&5
+echo "$as_me:5073: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4507,7 +5085,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
-echo "$as_me:4510: found $ac_dir/$ac_word" >&5
+echo "$as_me:5088: found $ac_dir/$ac_word" >&5
break
done
@@ -4515,10 +5093,10 @@ fi
fi
ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
if test -n "$ac_ct_NCURSES_CONFIG"; then
- echo "$as_me:4518: result: $ac_ct_NCURSES_CONFIG" >&5
+ echo "$as_me:5096: result: $ac_ct_NCURSES_CONFIG" >&5
echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
else
- echo "$as_me:4521: result: no" >&5
+ echo "$as_me:5099: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4531,26 +5109,52 @@ fi
if test "$NCURSES_CONFIG" != none ; then
+for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -4569,7 +5173,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -4599,7 +5203,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -4629,6 +5233,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
@@ -4647,7 +5253,7 @@ LIBS="$cf_add_libs"
# even with config script, some packages use no-override for curses.h
-echo "$as_me:4650: checking if we have identified curses headers" >&5
+echo "$as_me:5256: checking if we have identified curses headers" >&5
echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
if test "${cf_cv_ncurses_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4658,8 +5264,8 @@ for cf_header in \
ncurses.h ncurses/ncurses.h \
curses.h ncurses/curses.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 4662 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 5268 "configure"
#include "confdefs.h"
#include <${cf_header}>
int
@@ -4670,32 +5276,32 @@ initscr(); tgoto("?", 0,0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4674: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5280: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4677: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4680: \"$ac_try\"") >&5
+ echo "$as_me:5283: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5286: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4683: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5289: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_header=$cf_header; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:4694: result: $cf_cv_ncurses_header" >&5
+echo "$as_me:5300: result: $cf_cv_ncurses_header" >&5
echo "${ECHO_T}$cf_cv_ncurses_header" >&6
if test "$cf_cv_ncurses_header" = none ; then
- { { echo "$as_me:4698: error: No curses header-files found" >&5
+ { { echo "$as_me:5304: error: No curses header-files found" >&5
echo "$as_me: error: No curses header-files found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -4705,24 +5311,24 @@ fi
for ac_header in $cf_cv_ncurses_header
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:4708: checking for $ac_header" >&5
+echo "$as_me:5314: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 4714 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5320 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:4718: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:5324: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:4724: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:5330: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -4735,14 +5341,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:4743: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:5349: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -4760,7 +5366,7 @@ cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuv
#define $cf_nculib_ROOT 1
EOF
- cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+ cf_cv_ncurses_version="`$NCURSES_CONFIG --version`"
else
@@ -4772,9 +5378,9 @@ test "$cf_cv_curses_dir" != "no" && { \
if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -4795,8 +5401,8 @@ if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 4799 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5405 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -4807,25 +5413,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4811: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5417: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4814: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4817: \"$ac_try\"") >&5
+ echo "$as_me:5420: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5423: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4820: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5426: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -4834,11 +5440,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:4837: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:5443: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -4853,19 +5459,19 @@ fi
}
-echo "$as_me:4856: checking for $cf_ncuhdr_root header in include-path" >&5
+echo "$as_me:5462: checking for $cf_ncuhdr_root header in include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+ { test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw; } && cf_header_list="$cf_header_list curses.h ncurses.h"
for cf_header in $cf_header_list
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 4868 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5474 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -4875,10 +5481,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -4888,39 +5494,39 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4892: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5498: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4895: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4898: \"$ac_try\"") >&5
+ echo "$as_me:5501: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5504: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4901: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5507: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_ncurses_h" != no && break
done
fi
-echo "$as_me:4916: result: $cf_cv_ncurses_h" >&5
+echo "$as_me:5522: result: $cf_cv_ncurses_h" >&5
echo "${ECHO_T}$cf_cv_ncurses_h" >&6
if test "$cf_cv_ncurses_h" != no ; then
cf_cv_ncurses_header=$cf_cv_ncurses_h
else
-echo "$as_me:4923: checking for $cf_ncuhdr_root include-path" >&5
+echo "$as_me:5529: checking for $cf_ncuhdr_root include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h2+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4935,7 +5541,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -4943,11 +5549,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
- test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -4964,11 +5570,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
- test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+ test -d "$prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
for cf_subdir_prefix in \
@@ -4982,13 +5588,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
done
@@ -4996,20 +5602,20 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/$cf_ncuhdr_root" && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/$cf_ncuhdr_root" && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
}
cf_search="$cf_search $cf_header_path_list"
- test -n "$verbose" && echo search path $cf_search
+ test -n "$verbose" && echo "search path $cf_search"
cf_save2_CPPFLAGS="$CPPFLAGS"
for cf_incdir in $cf_search
do
@@ -5017,9 +5623,9 @@ cf_search="$cf_search $cf_header_path_list"
if test -n "$cf_incdir" ; then
for cf_add_incdir in $cf_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -5040,8 +5646,8 @@ if test -n "$cf_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5044 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5650 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -5052,25 +5658,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5056: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5662: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5059: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5062: \"$ac_try\"") >&5
+ echo "$as_me:5665: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5668: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5065: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5671: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -5079,11 +5685,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:5082: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:5688: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -5101,8 +5707,8 @@ fi
curses.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 5105 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5711 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -5112,10 +5718,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -5125,30 +5731,30 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5129: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5735: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5132: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5135: \"$ac_try\"") >&5
+ echo "$as_me:5738: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5741: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5138: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5744: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h2=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h2=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
if test "$cf_cv_ncurses_h2" != no ; then
cf_cv_ncurses_h2=$cf_incdir/$cf_header
- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6
+ test -n "$verbose" && echo $ECHO_N " ... found $ECHO_C" 1>&6
break
fi
test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
@@ -5156,26 +5762,26 @@ rm -f conftest.$ac_objext conftest.$ac_ext
CPPFLAGS="$cf_save2_CPPFLAGS"
test "$cf_cv_ncurses_h2" != no && break
done
- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:5159: error: not found" >&5
+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:5765: error: not found" >&5
echo "$as_me: error: not found" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:5164: result: $cf_cv_ncurses_h2" >&5
+echo "$as_me:5770: result: $cf_cv_ncurses_h2" >&5
echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
- cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+ cf_1st_incdir=`echo "$cf_cv_ncurses_h2" | sed -e 's%/[^/]*$%%'`
+ cf_cv_ncurses_header="`basename "$cf_cv_ncurses_h2"`"
+ if test "`basename "$cf_1st_incdir"`" = "$cf_ncuhdr_root" ; then
+ cf_cv_ncurses_header="$cf_ncuhdr_root/$cf_cv_ncurses_header"
fi
if test -n "$cf_1st_incdir" ; then
for cf_add_incdir in $cf_1st_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -5196,8 +5802,8 @@ if test -n "$cf_1st_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5200 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5806 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -5208,25 +5814,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5212: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5818: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5215: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5218: \"$ac_try\"") >&5
+ echo "$as_me:5821: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5824: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5221: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5827: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -5235,11 +5841,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:5238: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:5844: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -5256,7 +5862,7 @@ fi
# Set definitions to allow ifdef'ing for ncurses.h
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(*ncurses.h)
cat >>confdefs.h <<\EOF
@@ -5266,7 +5872,7 @@ EOF
;;
esac
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(ncurses/curses.h|ncurses/ncurses.h)
cat >>confdefs.h <<\EOF
@@ -5283,13 +5889,13 @@ EOF
;;
esac
-echo "$as_me:5286: checking for terminfo header" >&5
+echo "$as_me:5892: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -5300,8 +5906,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 5304 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 5910 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -5310,43 +5916,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5319: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5925: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5322: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5325: \"$ac_try\"") >&5
+ echo "$as_me:5928: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5931: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5328: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5934: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:5344: result: $cf_cv_term_header" >&5
+echo "$as_me:5950: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -5356,7 +5962,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -5379,7 +5985,7 @@ cat >>confdefs.h <<\EOF
#define NCURSES 1
EOF
-echo "$as_me:5382: checking for ncurses version" >&5
+echo "$as_me:5988: checking for ncurses version" >&5
echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
if test "${cf_cv_ncurses_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5387,12 +5993,12 @@ else
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
if test "$cross_compiling" = yes; then
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -5405,20 +6011,20 @@ Autoconf "old"
#endif
EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
- { (eval echo "$as_me:5408: \"$cf_try\"") >&5
+ { (eval echo "$as_me:6014: \"$cf_try\"") >&5
(eval $cf_try) 2>&5
ac_status=$?
- echo "$as_me:5411: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:6017: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 5421 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6027 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -5428,13 +6034,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -5442,30 +6048,30 @@ int main(void)
${cf_cv_main_return:-return}(0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:5446: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:6052: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5449: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:5451: \"$ac_try\"") >&5
+ echo "$as_me:6055: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:6057: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5454: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6060: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_version=`cat $cf_tempfile`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
fi
-echo "$as_me:5468: result: $cf_cv_ncurses_version" >&5
+echo "$as_me:6074: result: $cf_cv_ncurses_version" >&5
echo "${ECHO_T}$cf_cv_ncurses_version" >&6
test "$cf_cv_ncurses_version" = no ||
cat >>confdefs.h <<\EOF
@@ -5478,15 +6084,15 @@ cf_nculib_root=ncurses
# to link gpm.
cf_ncurses_LIBS=""
cf_ncurses_SAVE="$LIBS"
-echo "$as_me:5481: checking for Gpm_Open in -lgpm" >&5
+echo "$as_me:6087: checking for Gpm_Open in -lgpm" >&5
echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 5489 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6095 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -5504,39 +6110,39 @@ Gpm_Open ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5508: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6114: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5511: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5514: \"$ac_try\"") >&5
+ echo "$as_me:6117: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6120: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5517: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6123: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_Gpm_Open=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_Gpm_Open=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:5528: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "$as_me:6134: result: $ac_cv_lib_gpm_Gpm_Open" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
-if test $ac_cv_lib_gpm_Gpm_Open = yes; then
- echo "$as_me:5531: checking for initscr in -lgpm" >&5
+if test "$ac_cv_lib_gpm_Gpm_Open" = yes; then
+ echo "$as_me:6137: checking for initscr in -lgpm" >&5
echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 5539 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6145 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -5554,30 +6160,30 @@ initscr ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5558: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6164: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5561: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5564: \"$ac_try\"") >&5
+ echo "$as_me:6167: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6170: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5567: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6173: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:5578: result: $ac_cv_lib_gpm_initscr" >&5
+echo "$as_me:6184: result: $ac_cv_lib_gpm_initscr" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6
-if test $ac_cv_lib_gpm_initscr = yes; then
+if test "$ac_cv_lib_gpm_initscr" = yes; then
LIBS="$cf_ncurses_SAVE"
else
cf_ncurses_LIBS="-lgpm"
@@ -5585,20 +6191,20 @@ fi
fi
-case $host_os in
+case "$host_os" in
(freebsd*)
# This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
+ # version of ncurses (but it should do no harm, since it is static).
if test "$cf_nculib_root" = ncurses ; then
- echo "$as_me:5593: checking for tgoto in -lmytinfo" >&5
+ echo "$as_me:6199: checking for tgoto in -lmytinfo" >&5
echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lmytinfo $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 5601 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6207 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -5616,30 +6222,30 @@ tgoto ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5620: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6226: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5623: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5626: \"$ac_try\"") >&5
+ echo "$as_me:6229: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6232: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5629: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6235: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_mytinfo_tgoto=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_mytinfo_tgoto=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:5640: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "$as_me:6246: result: $ac_cv_lib_mytinfo_tgoto" >&5
echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
-if test $ac_cv_lib_mytinfo_tgoto = yes; then
+if test "$ac_cv_lib_mytinfo_tgoto" = yes; then
cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
fi
@@ -5663,7 +6269,7 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
cf_add_libs="$LIBS"
@@ -5684,15 +6290,15 @@ LIBS="$cf_add_libs"
else
- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=no'
cf_libdir=""
- echo "$as_me:5689: checking for initscr" >&5
+ echo "$as_me:6295: checking for initscr" >&5
echo $ECHO_N "checking for initscr... $ECHO_C" >&6
if test "${ac_cv_func_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 5695 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6301 "configure"
#include "confdefs.h"
#define initscr autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -5722,38 +6328,38 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5726: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6332: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5729: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5732: \"$ac_try\"") >&5
+ echo "$as_me:6335: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6338: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5735: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6341: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:5745: result: $ac_cv_func_initscr" >&5
+echo "$as_me:6351: result: $ac_cv_func_initscr" >&5
echo "${ECHO_T}$ac_cv_func_initscr" >&6
-if test $ac_cv_func_initscr = yes; then
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+if test "$ac_cv_func_initscr" = yes; then
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
cf_save_LIBS="$LIBS"
- echo "$as_me:5752: checking for initscr in -l$cf_nculib_root" >&5
+ echo "$as_me:6358: checking for initscr in -l$cf_nculib_root" >&5
echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6
LIBS="-l$cf_nculib_root $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5756 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6362 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -5764,26 +6370,26 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5768: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6374: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5771: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5774: \"$ac_try\"") >&5
+ echo "$as_me:6377: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6380: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5777: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:5779: result: yes" >&5
+ echo "$as_me:6383: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:6385: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:5786: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:6392: result: no" >&5
echo "${ECHO_T}no" >&6
cf_search=
@@ -5791,7 +6397,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -5799,11 +6405,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
- test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -5818,11 +6424,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
- test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+ test -d "$prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
for cf_subdir_prefix in \
@@ -5836,13 +6442,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
done
@@ -5851,11 +6457,11 @@ cf_search="$cf_library_path_list $cf_search"
for cf_libdir in $cf_search
do
- echo "$as_me:5854: checking for -l$cf_nculib_root in $cf_libdir" >&5
+ echo "$as_me:6460: checking for -l$cf_nculib_root in $cf_libdir" >&5
echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6
LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5858 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6464 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -5866,41 +6472,41 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5870: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6476: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5873: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5876: \"$ac_try\"") >&5
+ echo "$as_me:6479: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6482: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5879: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:5881: result: yes" >&5
+ echo "$as_me:6485: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:6487: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:5888: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:6494: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_save_LIBS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+eval 'cf_found_library="$cf_cv_have_lib_'"$cf_nculib_root"\"
-if test $cf_found_library = no ; then
- { { echo "$as_me:5903: error: Cannot link $cf_nculib_root library" >&5
+if test "$cf_found_library" = no ; then
+ { { echo "$as_me:6509: error: Cannot link $cf_nculib_root library" >&5
echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -5908,49 +6514,49 @@ fi
fi
if test -n "$cf_ncurses_LIBS" ; then
- echo "$as_me:5911: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+ echo "$as_me:6517: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6
cf_ncurses_SAVE="$LIBS"
for p in $cf_ncurses_LIBS ; do
- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+ q=`echo "$LIBS" | sed -e "s%$p %%" -e "s%$p$%%"`
if test "$q" != "$LIBS" ; then
LIBS="$q"
fi
done
- cat >conftest.$ac_ext <<_ACEOF
-#line 5921 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6527 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5933: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6539: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5936: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5939: \"$ac_try\"") >&5
+ echo "$as_me:6542: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6545: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5942: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:5944: result: yes" >&5
+ echo "$as_me:6548: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:6550: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:5949: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:6555: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_ncurses_SAVE"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -5964,7 +6570,7 @@ else
NCURSES_CONFIG=none
fi
-echo "$as_me:5967: checking if you want wide-character code" >&5
+echo "$as_me:6573: checking if you want wide-character code" >&5
echo $ECHO_N "checking if you want wide-character code... $ECHO_C" >&6
# Check whether --enable-widec or --disable-widec was given.
@@ -5974,22 +6580,75 @@ if test "${enable_widec+set}" = set; then
else
with_widec=no
fi;
-echo "$as_me:5977: result: $with_widec" >&5
+echo "$as_me:6583: result: $with_widec" >&5
echo "${ECHO_T}$with_widec" >&6
if test "$with_widec" = yes ; then
-echo "$as_me:5981: checking for multibyte character support" >&5
+for ac_header in wchar.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:6590: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6596 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:6600: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:6606: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ eval "$as_ac_Header=yes"
+else
+ echo "$as_me: failed program was:" >&5
+ cat "conftest.$ac_ext" >&5
+ eval "$as_ac_Header=no"
+fi
+rm -f conftest.err "conftest.$ac_ext"
+fi
+echo "$as_me:6625: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
+ cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:6635: checking for multibyte character support" >&5
echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6
if test "${cf_cv_utf8_lib+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_save_LIBS="$LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5989 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6643 "configure"
#include "confdefs.h"
#include <stdlib.h>
+#include <stdio.h>
+#ifdef HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+
int
main (void)
{
@@ -5998,34 +6657,34 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6002: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6661: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6005: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6008: \"$ac_try\"") >&5
+ echo "$as_me:6664: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6667: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6011: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6670: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_utf8_lib=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
# will be set on completion of the AC_TRY_LINK below.
cf_cv_header_path_utf8=
cf_cv_library_path_utf8=
-echo "${as_me:-configure}:6023: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:6682: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_LIBS="$LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6028 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6687 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -6037,18 +6696,18 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6041: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6700: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6044: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6047: \"$ac_try\"") >&5
+ echo "$as_me:6703: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6706: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6050: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6709: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_find_linkage_utf8=yes
cf_cv_header_path_utf8=/usr/include
@@ -6056,12 +6715,12 @@ if { (eval echo "$as_me:6041: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
LIBS="-lutf8 $cf_save_LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6064 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6723 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -6073,18 +6732,18 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6077: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6736: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6080: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6083: \"$ac_try\"") >&5
+ echo "$as_me:6739: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6742: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6086: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6745: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_find_linkage_utf8=yes
cf_cv_header_path_utf8=/usr/include
@@ -6093,16 +6752,16 @@ if { (eval echo "$as_me:6077: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_find_linkage_utf8=no
LIBS="$cf_save_LIBS"
test -n "$verbose" && echo " find linkage for utf8 library" 1>&6
-echo "${as_me:-configure}:6103: testing find linkage for utf8 library ..." 1>&5
+echo "${as_me:-configure}:6762: testing find linkage for utf8 library ..." 1>&5
-echo "${as_me:-configure}:6105: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:6764: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_CPPFLAGS="$CPPFLAGS"
cf_test_CPPFLAGS="$CPPFLAGS"
@@ -6114,7 +6773,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -6122,11 +6781,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/utf8 && cf_search="$cf_search $cf_header_path/include/utf8"
- test -d $cf_header_path/include/utf8/include && cf_search="$cf_search $cf_header_path/include/utf8/include"
- test -d $cf_header_path/utf8/include && cf_search="$cf_search $cf_header_path/utf8/include"
- test -d $cf_header_path/utf8/include/utf8 && cf_search="$cf_search $cf_header_path/utf8/include/utf8"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/utf8" && cf_search="$cf_search $cf_header_path/include/utf8"
+ test -d "$cf_header_path/include/utf8/include" && cf_search="$cf_search $cf_header_path/include/utf8/include"
+ test -d "$cf_header_path/utf8/include" && cf_search="$cf_search $cf_header_path/utf8/include"
+ test -d "$cf_header_path/utf8/include/utf8" && cf_search="$cf_search $cf_header_path/utf8/include/utf8"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -6143,11 +6802,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/utf8 && cf_search="$cf_search $prefix/include/utf8"
- test -d $prefix/include/utf8/include && cf_search="$cf_search $prefix/include/utf8/include"
- test -d $prefix/utf8/include && cf_search="$cf_search $prefix/utf8/include"
- test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/utf8" && cf_search="$cf_search $prefix/include/utf8"
+ test -d "$prefix/include/utf8/include" && cf_search="$cf_search $prefix/include/utf8/include"
+ test -d "$prefix/utf8/include" && cf_search="$cf_search $prefix/utf8/include"
+ test -d "$prefix/utf8/include/utf8" && cf_search="$cf_search $prefix/utf8/include/utf8"
}
for cf_subdir_prefix in \
@@ -6161,13 +6820,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/utf8 && cf_search="$cf_search $cf_subdir_prefix/include/utf8"
- test -d $cf_subdir_prefix/include/utf8/include && cf_search="$cf_search $cf_subdir_prefix/include/utf8/include"
- test -d $cf_subdir_prefix/utf8/include && cf_search="$cf_search $cf_subdir_prefix/utf8/include"
- test -d $cf_subdir_prefix/utf8/include/utf8 && cf_search="$cf_search $cf_subdir_prefix/utf8/include/utf8"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/utf8" && cf_search="$cf_search $cf_subdir_prefix/include/utf8"
+ test -d "$cf_subdir_prefix/include/utf8/include" && cf_search="$cf_search $cf_subdir_prefix/include/utf8/include"
+ test -d "$cf_subdir_prefix/utf8/include" && cf_search="$cf_search $cf_subdir_prefix/utf8/include"
+ test -d "$cf_subdir_prefix/utf8/include/utf8" && cf_search="$cf_search $cf_subdir_prefix/utf8/include/utf8"
}
done
@@ -6175,33 +6834,33 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/utf8 && cf_search="$cf_search $includedir/utf8"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/utf8" && cf_search="$cf_search $includedir/utf8"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/utf8 && cf_search="$cf_search $oldincludedir/utf8"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/utf8" && cf_search="$cf_search $oldincludedir/utf8"
}
cf_search="$cf_search $cf_header_path_list"
for cf_cv_header_path_utf8 in $cf_search
do
- if test -d $cf_cv_header_path_utf8 ; then
+ if test -d "$cf_cv_header_path_utf8" ; then
test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6
-echo "${as_me:-configure}:6196: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:6855: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
CPPFLAGS="$cf_save_CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_cv_header_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
-#line 6204 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6863 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -6213,40 +6872,40 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6217: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:6876: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6220: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:6223: \"$ac_try\"") >&5
+ echo "$as_me:6879: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:6882: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6226: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6885: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6
-echo "${as_me:-configure}:6231: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:6890: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
cf_cv_find_linkage_utf8=maybe
cf_test_CPPFLAGS="$CPPFLAGS"
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
done
if test "$cf_cv_find_linkage_utf8" = maybe ; then
-echo "${as_me:-configure}:6249: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:6908: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_LIBS="$LIBS"
cf_save_LDFLAGS="$LDFLAGS"
@@ -6258,7 +6917,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -6266,11 +6925,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/utf8 && cf_search="$cf_search $cf_library_path/lib/utf8"
- test -d $cf_library_path/lib/utf8/lib && cf_search="$cf_search $cf_library_path/lib/utf8/lib"
- test -d $cf_library_path/utf8/lib && cf_search="$cf_search $cf_library_path/utf8/lib"
- test -d $cf_library_path/utf8/lib/utf8 && cf_search="$cf_search $cf_library_path/utf8/lib/utf8"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/utf8" && cf_search="$cf_search $cf_library_path/lib/utf8"
+ test -d "$cf_library_path/lib/utf8/lib" && cf_search="$cf_search $cf_library_path/lib/utf8/lib"
+ test -d "$cf_library_path/utf8/lib" && cf_search="$cf_search $cf_library_path/utf8/lib"
+ test -d "$cf_library_path/utf8/lib/utf8" && cf_search="$cf_search $cf_library_path/utf8/lib/utf8"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -6285,11 +6944,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/utf8 && cf_search="$cf_search $prefix/lib/utf8"
- test -d $prefix/lib/utf8/lib && cf_search="$cf_search $prefix/lib/utf8/lib"
- test -d $prefix/utf8/lib && cf_search="$cf_search $prefix/utf8/lib"
- test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/utf8" && cf_search="$cf_search $prefix/lib/utf8"
+ test -d "$prefix/lib/utf8/lib" && cf_search="$cf_search $prefix/lib/utf8/lib"
+ test -d "$prefix/utf8/lib" && cf_search="$cf_search $prefix/utf8/lib"
+ test -d "$prefix/utf8/lib/utf8" && cf_search="$cf_search $prefix/utf8/lib/utf8"
}
for cf_subdir_prefix in \
@@ -6303,13 +6962,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/utf8 && cf_search="$cf_search $cf_subdir_prefix/lib/utf8"
- test -d $cf_subdir_prefix/lib/utf8/lib && cf_search="$cf_search $cf_subdir_prefix/lib/utf8/lib"
- test -d $cf_subdir_prefix/utf8/lib && cf_search="$cf_search $cf_subdir_prefix/utf8/lib"
- test -d $cf_subdir_prefix/utf8/lib/utf8 && cf_search="$cf_search $cf_subdir_prefix/utf8/lib/utf8"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/utf8" && cf_search="$cf_search $cf_subdir_prefix/lib/utf8"
+ test -d "$cf_subdir_prefix/lib/utf8/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/utf8/lib"
+ test -d "$cf_subdir_prefix/utf8/lib" && cf_search="$cf_search $cf_subdir_prefix/utf8/lib"
+ test -d "$cf_subdir_prefix/utf8/lib/utf8" && cf_search="$cf_search $cf_subdir_prefix/utf8/lib/utf8"
}
done
@@ -6318,16 +6977,16 @@ cf_search="$cf_library_path_list $cf_search"
for cf_cv_library_path_utf8 in $cf_search
do
- if test -d $cf_cv_library_path_utf8 ; then
+ if test -d "$cf_cv_library_path_utf8" ; then
test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6
-echo "${as_me:-configure}:6324: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:6983: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
CPPFLAGS="$cf_test_CPPFLAGS"
LIBS="-lutf8 $cf_save_LIBS"
LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
-#line 6330 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6989 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -6339,36 +6998,36 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6343: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7002: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6346: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6349: \"$ac_try\"") >&5
+ echo "$as_me:7005: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7008: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6352: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7011: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6
-echo "${as_me:-configure}:6357: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:7016: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
cf_cv_find_linkage_utf8=yes
cf_cv_library_file_utf8="-lutf8"
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
CPPFLAGS="$cf_save_CPPFLAGS"
LIBS="$cf_save_LIBS"
LDFLAGS="$cf_save_LDFLAGS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
done
CPPFLAGS="$cf_save_CPPFLAGS"
@@ -6380,10 +7039,10 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
fi
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
@@ -6394,9 +7053,9 @@ cf_cv_utf8_lib=no
fi
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:6399: result: $cf_cv_utf8_lib" >&5
+echo "$as_me:7058: result: $cf_cv_utf8_lib" >&5
echo "${ECHO_T}$cf_cv_utf8_lib" >&6
# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
@@ -6410,9 +7069,9 @@ EOF
if test -n "$cf_cv_header_path_utf8" ; then
for cf_add_incdir in $cf_cv_header_path_utf8
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -6433,8 +7092,8 @@ if test -n "$cf_cv_header_path_utf8" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 6437 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7096 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -6445,25 +7104,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6449: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:7108: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6452: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:6455: \"$ac_try\"") >&5
+ echo "$as_me:7111: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:7114: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6458: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7117: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -6472,11 +7131,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:6475: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:7134: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -6492,9 +7151,9 @@ fi
if test -n "$cf_cv_library_path_utf8" ; then
for cf_add_libdir in $cf_cv_library_path_utf8
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -6508,7 +7167,7 @@ if test -n "$cf_cv_library_path_utf8" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:6511: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:7170: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -6538,39 +7197,50 @@ cf_ncuconfig_root=ncursesw
cf_have_ncuconfig=no
if test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:6541: checking pkg-config for $cf_ncuconfig_root" >&5
+ echo "$as_me:7200: checking pkg-config for $cf_ncuconfig_root" >&5
echo $ECHO_N "checking pkg-config for $cf_ncuconfig_root... $ECHO_C" >&6
if "$PKG_CONFIG" --exists $cf_ncuconfig_root ; then
- echo "$as_me:6544: result: yes" >&5
+ echo "$as_me:7203: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:6547: checking if the $cf_ncuconfig_root package files work" >&5
+ echo "$as_me:7206: checking if the $cf_ncuconfig_root package files work" >&5
echo $ECHO_N "checking if the $cf_ncuconfig_root package files work... $ECHO_C" >&6
cf_have_ncuconfig=unknown
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+ cf_pkg_cflags="`$PKG_CONFIG --cflags $cf_ncuconfig_root`"
+ cf_pkg_libs="`$PKG_CONFIG --libs $cf_ncuconfig_root`"
+
+ # while -W for passing linker flags is prevalent, it is not "standard".
+ # At least one wrapper for c89/c99 (in Apple's xcode) has its own
+ # incompatible _and_ non-standard -W option which gives an error. Work
+ # around that pitfall.
+ case "x${CC}@@${cf_pkg_libs}@${cf_pkg_cflags}" in
+ (x*c[89]9@@*-W*)
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags $cf_ncuconfig_root`
+for cf_add_cflags in $cf_pkg_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -6589,7 +7259,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -6619,7 +7289,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -6652,7 +7322,7 @@ fi
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs $cf_ncuconfig_root`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -6665,67 +7335,283 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 6669 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7339 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6681: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7351: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6684: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6687: \"$ac_try\"") >&5
+ echo "$as_me:7354: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7357: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6690: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7360: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ if test "$cross_compiling" = yes; then
+ cf_test_ncuconfig=maybe
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7366 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+ int main(void)
+ { const char *xx = curses_version(); return (xx == 0); }
+_ACEOF
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:7373: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:7376: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:7378: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:7381: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_test_ncuconfig=yes
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
+
+ if test "x$cf_test_ncuconfig" != xyes; then
+ cf_temp=`echo "x$cf_pkg_cflags" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_cflags="$cf_temp"
+ cf_temp=`echo "x$cf_pkg_libs" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_libs="$cf_temp"
+ fi
+ ;;
+ esac
+
+for cf_add_cflags in $cf_pkg_cflags
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_add_cflags
+do
+case "$cf_fix_cppflags" in
+(no)
+ case "$cf_add_cflags" in
+ (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=yes
+
+ if test "$cf_fix_cppflags" = yes ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ elif test "${cf_tst_cflags}" = "\"'" ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ fi
+ ;;
+ esac
+ case "$CPPFLAGS" in
+ (*$cf_add_cflags)
+ ;;
+ (*)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
+
+ ;;
+ esac
+
+ test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
+ cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+ (*)
+
+ test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
+ cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+(yes)
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=no
+ ;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_new_cflags"
+
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+ test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
+ CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
+
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+ test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
+ EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
+
+fi
+
+done
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7555 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main (void)
+{
+initscr(); mousemask(0,0); tigetstr((char *)0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7567: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:7570: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7573: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:7576: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_ncuconfig=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 6696 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7582 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
- { char *xx = curses_version(); return (xx == 0); }
+ { const char *xx = curses_version(); return (xx == 0); }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:6703: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:7589: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6706: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:6708: \"$ac_try\"") >&5
+ echo "$as_me:7592: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:7594: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6711: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7597: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_ncuconfig=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:6728: result: $cf_have_ncuconfig" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:7614: result: $cf_have_ncuconfig" >&5
echo "${ECHO_T}$cf_have_ncuconfig" >&6
test "$cf_have_ncuconfig" = maybe && cf_have_ncuconfig=yes
if test "$cf_have_ncuconfig" != "yes"
@@ -6741,13 +7627,13 @@ EOF
NCURSES_CONFIG_PKG=$cf_ncuconfig_root
-echo "$as_me:6744: checking for terminfo header" >&5
+echo "$as_me:7630: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -6758,8 +7644,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 6762 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7648 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -6768,43 +7654,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6777: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:7663: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6780: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:6783: \"$ac_try\"") >&5
+ echo "$as_me:7666: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:7669: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6786: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7672: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:6802: result: $cf_cv_term_header" >&5
+echo "$as_me:7688: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -6814,7 +7700,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -6834,7 +7720,7 @@ esac
fi
else
- echo "$as_me:6837: result: no" >&5
+ echo "$as_me:7723: result: no" >&5
echo "${ECHO_T}no" >&6
NCURSES_CONFIG_PKG=none
fi
@@ -6850,7 +7736,7 @@ if test -n "$ac_tool_prefix"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:6853: checking for $ac_word" >&5
+echo "$as_me:7739: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6865,7 +7751,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-echo "$as_me:6868: found $ac_dir/$ac_word" >&5
+echo "$as_me:7754: found $ac_dir/$ac_word" >&5
break
done
@@ -6873,10 +7759,10 @@ fi
fi
NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
if test -n "$NCURSES_CONFIG"; then
- echo "$as_me:6876: result: $NCURSES_CONFIG" >&5
+ echo "$as_me:7762: result: $NCURSES_CONFIG" >&5
echo "${ECHO_T}$NCURSES_CONFIG" >&6
else
- echo "$as_me:6879: result: no" >&5
+ echo "$as_me:7765: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -6889,7 +7775,7 @@ if test -z "$NCURSES_CONFIG"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:6892: checking for $ac_word" >&5
+echo "$as_me:7778: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6904,7 +7790,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
-echo "$as_me:6907: found $ac_dir/$ac_word" >&5
+echo "$as_me:7793: found $ac_dir/$ac_word" >&5
break
done
@@ -6912,10 +7798,10 @@ fi
fi
ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
if test -n "$ac_ct_NCURSES_CONFIG"; then
- echo "$as_me:6915: result: $ac_ct_NCURSES_CONFIG" >&5
+ echo "$as_me:7801: result: $ac_ct_NCURSES_CONFIG" >&5
echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
else
- echo "$as_me:6918: result: no" >&5
+ echo "$as_me:7804: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -6928,26 +7814,52 @@ fi
if test "$NCURSES_CONFIG" != none ; then
+for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -6966,7 +7878,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -6996,7 +7908,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -7026,6 +7938,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
@@ -7044,7 +7958,7 @@ LIBS="$cf_add_libs"
# even with config script, some packages use no-override for curses.h
-echo "$as_me:7047: checking if we have identified curses headers" >&5
+echo "$as_me:7961: checking if we have identified curses headers" >&5
echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
if test "${cf_cv_ncurses_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7055,8 +7969,8 @@ for cf_header in \
ncurses.h ncursesw/ncurses.h \
curses.h ncursesw/curses.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 7059 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7973 "configure"
#include "confdefs.h"
#include <${cf_header}>
int
@@ -7067,32 +7981,32 @@ initscr(); tgoto("?", 0,0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7071: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:7985: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7074: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7077: \"$ac_try\"") >&5
+ echo "$as_me:7988: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:7991: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7080: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7994: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_header=$cf_header; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:7091: result: $cf_cv_ncurses_header" >&5
+echo "$as_me:8005: result: $cf_cv_ncurses_header" >&5
echo "${ECHO_T}$cf_cv_ncurses_header" >&6
if test "$cf_cv_ncurses_header" = none ; then
- { { echo "$as_me:7095: error: No curses header-files found" >&5
+ { { echo "$as_me:8009: error: No curses header-files found" >&5
echo "$as_me: error: No curses header-files found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -7102,24 +8016,24 @@ fi
for ac_header in $cf_cv_ncurses_header
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:7105: checking for $ac_header" >&5
+echo "$as_me:8019: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 7111 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8025 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:7115: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:8029: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:7121: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:8035: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -7132,14 +8046,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:7140: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:8054: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -7157,7 +8071,7 @@ cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuv
#define $cf_nculib_ROOT 1
EOF
- cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+ cf_cv_ncurses_version="`$NCURSES_CONFIG --version`"
else
@@ -7169,9 +8083,9 @@ test "$cf_cv_curses_dir" != "no" && { \
if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -7192,8 +8106,8 @@ if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 7196 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8110 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -7204,25 +8118,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7208: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8122: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7211: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7214: \"$ac_try\"") >&5
+ echo "$as_me:8125: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8128: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7217: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8131: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -7231,11 +8145,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:7234: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:8148: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -7250,19 +8164,19 @@ fi
}
-echo "$as_me:7253: checking for $cf_ncuhdr_root header in include-path" >&5
+echo "$as_me:8167: checking for $cf_ncuhdr_root header in include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+ { test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw; } && cf_header_list="$cf_header_list curses.h ncurses.h"
for cf_header in $cf_header_list
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 7265 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8179 "configure"
#include "confdefs.h"
#define _XOPEN_SOURCE_EXTENDED
@@ -7280,10 +8194,10 @@ main (void)
make an error
#endif
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -7293,39 +8207,39 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7297: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8211: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7300: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7303: \"$ac_try\"") >&5
+ echo "$as_me:8214: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8217: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7306: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8220: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_ncurses_h" != no && break
done
fi
-echo "$as_me:7321: result: $cf_cv_ncurses_h" >&5
+echo "$as_me:8235: result: $cf_cv_ncurses_h" >&5
echo "${ECHO_T}$cf_cv_ncurses_h" >&6
if test "$cf_cv_ncurses_h" != no ; then
cf_cv_ncurses_header=$cf_cv_ncurses_h
else
-echo "$as_me:7328: checking for $cf_ncuhdr_root include-path" >&5
+echo "$as_me:8242: checking for $cf_ncuhdr_root include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h2+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7340,7 +8254,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -7348,11 +8262,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
- test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -7369,11 +8283,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
- test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+ test -d "$prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
for cf_subdir_prefix in \
@@ -7387,13 +8301,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
done
@@ -7401,20 +8315,20 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/$cf_ncuhdr_root" && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/$cf_ncuhdr_root" && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
}
cf_search="$cf_search $cf_header_path_list"
- test -n "$verbose" && echo search path $cf_search
+ test -n "$verbose" && echo "search path $cf_search"
cf_save2_CPPFLAGS="$CPPFLAGS"
for cf_incdir in $cf_search
do
@@ -7422,9 +8336,9 @@ cf_search="$cf_search $cf_header_path_list"
if test -n "$cf_incdir" ; then
for cf_add_incdir in $cf_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -7445,8 +8359,8 @@ if test -n "$cf_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 7449 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8363 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -7457,25 +8371,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7461: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8375: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7464: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7467: \"$ac_try\"") >&5
+ echo "$as_me:8378: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8381: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7470: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8384: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -7484,11 +8398,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:7487: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:8401: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -7506,8 +8420,8 @@ fi
curses.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 7510 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8424 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -7517,10 +8431,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -7530,30 +8444,30 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7534: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8448: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7537: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7540: \"$ac_try\"") >&5
+ echo "$as_me:8451: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8454: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7543: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8457: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h2=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h2=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
if test "$cf_cv_ncurses_h2" != no ; then
cf_cv_ncurses_h2=$cf_incdir/$cf_header
- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6
+ test -n "$verbose" && echo $ECHO_N " ... found $ECHO_C" 1>&6
break
fi
test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
@@ -7561,26 +8475,26 @@ rm -f conftest.$ac_objext conftest.$ac_ext
CPPFLAGS="$cf_save2_CPPFLAGS"
test "$cf_cv_ncurses_h2" != no && break
done
- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:7564: error: not found" >&5
+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:8478: error: not found" >&5
echo "$as_me: error: not found" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:7569: result: $cf_cv_ncurses_h2" >&5
+echo "$as_me:8483: result: $cf_cv_ncurses_h2" >&5
echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
- cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+ cf_1st_incdir=`echo "$cf_cv_ncurses_h2" | sed -e 's%/[^/]*$%%'`
+ cf_cv_ncurses_header="`basename "$cf_cv_ncurses_h2"`"
+ if test "`basename "$cf_1st_incdir"`" = "$cf_ncuhdr_root" ; then
+ cf_cv_ncurses_header="$cf_ncuhdr_root/$cf_cv_ncurses_header"
fi
if test -n "$cf_1st_incdir" ; then
for cf_add_incdir in $cf_1st_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -7601,8 +8515,8 @@ if test -n "$cf_1st_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 7605 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8519 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -7613,25 +8527,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7617: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8531: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7620: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7623: \"$ac_try\"") >&5
+ echo "$as_me:8534: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8537: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7626: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8540: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -7640,11 +8554,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:7643: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:8557: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -7661,7 +8575,7 @@ fi
# Set definitions to allow ifdef'ing for ncurses.h
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(*ncurses.h)
cat >>confdefs.h <<\EOF
@@ -7671,7 +8585,7 @@ EOF
;;
esac
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(ncurses/curses.h|ncurses/ncurses.h)
cat >>confdefs.h <<\EOF
@@ -7688,13 +8602,13 @@ EOF
;;
esac
-echo "$as_me:7691: checking for terminfo header" >&5
+echo "$as_me:8605: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -7705,8 +8619,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 7709 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 8623 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -7715,43 +8629,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7724: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8638: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7727: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7730: \"$ac_try\"") >&5
+ echo "$as_me:8641: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8644: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7733: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8647: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:7749: result: $cf_cv_term_header" >&5
+echo "$as_me:8663: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -7761,7 +8675,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -7784,7 +8698,7 @@ cat >>confdefs.h <<\EOF
#define NCURSES 1
EOF
-echo "$as_me:7787: checking for ncurses version" >&5
+echo "$as_me:8701: checking for ncurses version" >&5
echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
if test "${cf_cv_ncurses_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7792,12 +8706,12 @@ else
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
if test "$cross_compiling" = yes; then
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -7810,20 +8724,20 @@ Autoconf "old"
#endif
EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
- { (eval echo "$as_me:7813: \"$cf_try\"") >&5
+ { (eval echo "$as_me:8727: \"$cf_try\"") >&5
(eval $cf_try) 2>&5
ac_status=$?
- echo "$as_me:7816: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:8730: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 7826 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8740 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -7833,13 +8747,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -7847,30 +8761,30 @@ int main(void)
${cf_cv_main_return:-return}(0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:7851: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:8765: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7854: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:7856: \"$ac_try\"") >&5
+ echo "$as_me:8768: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:8770: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7859: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8773: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_version=`cat $cf_tempfile`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
fi
-echo "$as_me:7873: result: $cf_cv_ncurses_version" >&5
+echo "$as_me:8787: result: $cf_cv_ncurses_version" >&5
echo "${ECHO_T}$cf_cv_ncurses_version" >&6
test "$cf_cv_ncurses_version" = no ||
cat >>confdefs.h <<\EOF
@@ -7883,15 +8797,15 @@ cf_nculib_root=ncursesw
# to link gpm.
cf_ncurses_LIBS=""
cf_ncurses_SAVE="$LIBS"
-echo "$as_me:7886: checking for Gpm_Open in -lgpm" >&5
+echo "$as_me:8800: checking for Gpm_Open in -lgpm" >&5
echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 7894 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 8808 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -7909,39 +8823,39 @@ Gpm_Open ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7913: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:8827: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7916: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7919: \"$ac_try\"") >&5
+ echo "$as_me:8830: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:8833: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7922: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8836: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_Gpm_Open=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_Gpm_Open=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:7933: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "$as_me:8847: result: $ac_cv_lib_gpm_Gpm_Open" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
-if test $ac_cv_lib_gpm_Gpm_Open = yes; then
- echo "$as_me:7936: checking for initscr in -lgpm" >&5
+if test "$ac_cv_lib_gpm_Gpm_Open" = yes; then
+ echo "$as_me:8850: checking for initscr in -lgpm" >&5
echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 7944 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 8858 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -7959,30 +8873,30 @@ initscr ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7963: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:8877: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7966: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7969: \"$ac_try\"") >&5
+ echo "$as_me:8880: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:8883: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7972: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8886: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:7983: result: $ac_cv_lib_gpm_initscr" >&5
+echo "$as_me:8897: result: $ac_cv_lib_gpm_initscr" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6
-if test $ac_cv_lib_gpm_initscr = yes; then
+if test "$ac_cv_lib_gpm_initscr" = yes; then
LIBS="$cf_ncurses_SAVE"
else
cf_ncurses_LIBS="-lgpm"
@@ -7990,20 +8904,20 @@ fi
fi
-case $host_os in
+case "$host_os" in
(freebsd*)
# This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
+ # version of ncurses (but it should do no harm, since it is static).
if test "$cf_nculib_root" = ncurses ; then
- echo "$as_me:7998: checking for tgoto in -lmytinfo" >&5
+ echo "$as_me:8912: checking for tgoto in -lmytinfo" >&5
echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lmytinfo $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 8006 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 8920 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -8021,30 +8935,30 @@ tgoto ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8025: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:8939: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8028: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8031: \"$ac_try\"") >&5
+ echo "$as_me:8942: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:8945: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8034: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8948: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_mytinfo_tgoto=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_mytinfo_tgoto=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:8045: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "$as_me:8959: result: $ac_cv_lib_mytinfo_tgoto" >&5
echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
-if test $ac_cv_lib_mytinfo_tgoto = yes; then
+if test "$ac_cv_lib_mytinfo_tgoto" = yes; then
cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
fi
@@ -8068,7 +8982,7 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
cf_add_libs="$LIBS"
@@ -8089,15 +9003,15 @@ LIBS="$cf_add_libs"
else
- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=no'
cf_libdir=""
- echo "$as_me:8094: checking for initscr" >&5
+ echo "$as_me:9008: checking for initscr" >&5
echo $ECHO_N "checking for initscr... $ECHO_C" >&6
if test "${ac_cv_func_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8100 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9014 "configure"
#include "confdefs.h"
#define initscr autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -8127,38 +9041,38 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8131: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9045: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8134: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8137: \"$ac_try\"") >&5
+ echo "$as_me:9048: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9051: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8140: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9054: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:8150: result: $ac_cv_func_initscr" >&5
+echo "$as_me:9064: result: $ac_cv_func_initscr" >&5
echo "${ECHO_T}$ac_cv_func_initscr" >&6
-if test $ac_cv_func_initscr = yes; then
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+if test "$ac_cv_func_initscr" = yes; then
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
cf_save_LIBS="$LIBS"
- echo "$as_me:8157: checking for initscr in -l$cf_nculib_root" >&5
+ echo "$as_me:9071: checking for initscr in -l$cf_nculib_root" >&5
echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6
LIBS="-l$cf_nculib_root $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 8161 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9075 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -8169,26 +9083,26 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8173: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9087: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8176: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8179: \"$ac_try\"") >&5
+ echo "$as_me:9090: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9093: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8182: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:8184: result: yes" >&5
+ echo "$as_me:9096: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:9098: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:8191: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:9105: result: no" >&5
echo "${ECHO_T}no" >&6
cf_search=
@@ -8196,7 +9110,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -8204,11 +9118,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
- test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -8223,11 +9137,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
- test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+ test -d "$prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
for cf_subdir_prefix in \
@@ -8241,13 +9155,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
done
@@ -8256,11 +9170,11 @@ cf_search="$cf_library_path_list $cf_search"
for cf_libdir in $cf_search
do
- echo "$as_me:8259: checking for -l$cf_nculib_root in $cf_libdir" >&5
+ echo "$as_me:9173: checking for -l$cf_nculib_root in $cf_libdir" >&5
echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6
LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 8263 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9177 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -8271,41 +9185,41 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8275: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9189: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8278: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8281: \"$ac_try\"") >&5
+ echo "$as_me:9192: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9195: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8284: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:8286: result: yes" >&5
+ echo "$as_me:9198: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:9200: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:8293: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:9207: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_save_LIBS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+eval 'cf_found_library="$cf_cv_have_lib_'"$cf_nculib_root"\"
-if test $cf_found_library = no ; then
- { { echo "$as_me:8308: error: Cannot link $cf_nculib_root library" >&5
+if test "$cf_found_library" = no ; then
+ { { echo "$as_me:9222: error: Cannot link $cf_nculib_root library" >&5
echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -8313,49 +9227,49 @@ fi
fi
if test -n "$cf_ncurses_LIBS" ; then
- echo "$as_me:8316: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+ echo "$as_me:9230: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6
cf_ncurses_SAVE="$LIBS"
for p in $cf_ncurses_LIBS ; do
- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+ q=`echo "$LIBS" | sed -e "s%$p %%" -e "s%$p$%%"`
if test "$q" != "$LIBS" ; then
LIBS="$q"
fi
done
- cat >conftest.$ac_ext <<_ACEOF
-#line 8326 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9240 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8338: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9252: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8341: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8344: \"$ac_try\"") >&5
+ echo "$as_me:9255: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9258: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8347: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:8349: result: yes" >&5
+ echo "$as_me:9261: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:9263: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:8354: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:9268: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_ncurses_SAVE"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -8375,39 +9289,50 @@ cf_ncuconfig_root=ncurses
cf_have_ncuconfig=no
if test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:8378: checking pkg-config for $cf_ncuconfig_root" >&5
+ echo "$as_me:9292: checking pkg-config for $cf_ncuconfig_root" >&5
echo $ECHO_N "checking pkg-config for $cf_ncuconfig_root... $ECHO_C" >&6
if "$PKG_CONFIG" --exists $cf_ncuconfig_root ; then
- echo "$as_me:8381: result: yes" >&5
+ echo "$as_me:9295: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:8384: checking if the $cf_ncuconfig_root package files work" >&5
+ echo "$as_me:9298: checking if the $cf_ncuconfig_root package files work" >&5
echo $ECHO_N "checking if the $cf_ncuconfig_root package files work... $ECHO_C" >&6
cf_have_ncuconfig=unknown
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+ cf_pkg_cflags="`$PKG_CONFIG --cflags $cf_ncuconfig_root`"
+ cf_pkg_libs="`$PKG_CONFIG --libs $cf_ncuconfig_root`"
+
+ # while -W for passing linker flags is prevalent, it is not "standard".
+ # At least one wrapper for c89/c99 (in Apple's xcode) has its own
+ # incompatible _and_ non-standard -W option which gives an error. Work
+ # around that pitfall.
+ case "x${CC}@@${cf_pkg_libs}@${cf_pkg_cflags}" in
+ (x*c[89]9@@*-W*)
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags $cf_ncuconfig_root`
+for cf_add_cflags in $cf_pkg_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -8426,7 +9351,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -8456,7 +9381,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -8489,7 +9414,7 @@ fi
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs $cf_ncuconfig_root`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -8502,67 +9427,283 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 8506 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9431 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8518: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9443: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8521: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8524: \"$ac_try\"") >&5
+ echo "$as_me:9446: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9449: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8527: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9452: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ if test "$cross_compiling" = yes; then
+ cf_test_ncuconfig=maybe
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9458 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+ int main(void)
+ { const char *xx = curses_version(); return (xx == 0); }
+_ACEOF
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:9465: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:9468: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:9470: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:9473: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_test_ncuconfig=yes
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
+
+ if test "x$cf_test_ncuconfig" != xyes; then
+ cf_temp=`echo "x$cf_pkg_cflags" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_cflags="$cf_temp"
+ cf_temp=`echo "x$cf_pkg_libs" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_libs="$cf_temp"
+ fi
+ ;;
+ esac
+
+for cf_add_cflags in $cf_pkg_cflags
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_add_cflags
+do
+case "$cf_fix_cppflags" in
+(no)
+ case "$cf_add_cflags" in
+ (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=yes
+
+ if test "$cf_fix_cppflags" = yes ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ elif test "${cf_tst_cflags}" = "\"'" ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ fi
+ ;;
+ esac
+ case "$CPPFLAGS" in
+ (*$cf_add_cflags)
+ ;;
+ (*)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
+
+ ;;
+ esac
+
+ test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
+ cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+ (*)
+
+ test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
+ cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+(yes)
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=no
+ ;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_new_cflags"
+
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+ test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
+ CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
+
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+ test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
+ EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
+
+fi
+
+done
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9647 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main (void)
+{
+initscr(); mousemask(0,0); tigetstr((char *)0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9659: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:9662: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9665: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:9668: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_ncuconfig=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8533 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9674 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
- { char *xx = curses_version(); return (xx == 0); }
+ { const char *xx = curses_version(); return (xx == 0); }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:8540: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:9681: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8543: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:8545: \"$ac_try\"") >&5
+ echo "$as_me:9684: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:9686: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8548: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9689: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_ncuconfig=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:8565: result: $cf_have_ncuconfig" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:9706: result: $cf_have_ncuconfig" >&5
echo "${ECHO_T}$cf_have_ncuconfig" >&6
test "$cf_have_ncuconfig" = maybe && cf_have_ncuconfig=yes
if test "$cf_have_ncuconfig" != "yes"
@@ -8578,13 +9719,13 @@ EOF
NCURSES_CONFIG_PKG=$cf_ncuconfig_root
-echo "$as_me:8581: checking for terminfo header" >&5
+echo "$as_me:9722: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -8595,8 +9736,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 8599 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 9740 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -8605,43 +9746,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8614: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9755: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8617: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8620: \"$ac_try\"") >&5
+ echo "$as_me:9758: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9761: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8623: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9764: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:8639: result: $cf_cv_term_header" >&5
+echo "$as_me:9780: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -8651,7 +9792,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -8671,7 +9812,7 @@ esac
fi
else
- echo "$as_me:8674: result: no" >&5
+ echo "$as_me:9815: result: no" >&5
echo "${ECHO_T}no" >&6
NCURSES_CONFIG_PKG=none
fi
@@ -8687,7 +9828,7 @@ if test -n "$ac_tool_prefix"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:8690: checking for $ac_word" >&5
+echo "$as_me:9831: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8702,7 +9843,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-echo "$as_me:8705: found $ac_dir/$ac_word" >&5
+echo "$as_me:9846: found $ac_dir/$ac_word" >&5
break
done
@@ -8710,10 +9851,10 @@ fi
fi
NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
if test -n "$NCURSES_CONFIG"; then
- echo "$as_me:8713: result: $NCURSES_CONFIG" >&5
+ echo "$as_me:9854: result: $NCURSES_CONFIG" >&5
echo "${ECHO_T}$NCURSES_CONFIG" >&6
else
- echo "$as_me:8716: result: no" >&5
+ echo "$as_me:9857: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -8726,7 +9867,7 @@ if test -z "$NCURSES_CONFIG"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:8729: checking for $ac_word" >&5
+echo "$as_me:9870: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8741,7 +9882,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
-echo "$as_me:8744: found $ac_dir/$ac_word" >&5
+echo "$as_me:9885: found $ac_dir/$ac_word" >&5
break
done
@@ -8749,10 +9890,10 @@ fi
fi
ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
if test -n "$ac_ct_NCURSES_CONFIG"; then
- echo "$as_me:8752: result: $ac_ct_NCURSES_CONFIG" >&5
+ echo "$as_me:9893: result: $ac_ct_NCURSES_CONFIG" >&5
echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
else
- echo "$as_me:8755: result: no" >&5
+ echo "$as_me:9896: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -8765,26 +9906,52 @@ fi
if test "$NCURSES_CONFIG" != none ; then
+for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -8803,7 +9970,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -8833,7 +10000,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -8863,6 +10030,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
@@ -8881,7 +10050,7 @@ LIBS="$cf_add_libs"
# even with config script, some packages use no-override for curses.h
-echo "$as_me:8884: checking if we have identified curses headers" >&5
+echo "$as_me:10053: checking if we have identified curses headers" >&5
echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
if test "${cf_cv_ncurses_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8892,8 +10061,8 @@ for cf_header in \
ncurses.h ncurses/ncurses.h \
curses.h ncurses/curses.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 8896 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 10065 "configure"
#include "confdefs.h"
#include <${cf_header}>
int
@@ -8904,32 +10073,32 @@ initscr(); tgoto("?", 0,0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8908: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10077: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8911: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8914: \"$ac_try\"") >&5
+ echo "$as_me:10080: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10083: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8917: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10086: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_header=$cf_header; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:8928: result: $cf_cv_ncurses_header" >&5
+echo "$as_me:10097: result: $cf_cv_ncurses_header" >&5
echo "${ECHO_T}$cf_cv_ncurses_header" >&6
if test "$cf_cv_ncurses_header" = none ; then
- { { echo "$as_me:8932: error: No curses header-files found" >&5
+ { { echo "$as_me:10101: error: No curses header-files found" >&5
echo "$as_me: error: No curses header-files found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -8939,24 +10108,24 @@ fi
for ac_header in $cf_cv_ncurses_header
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:8942: checking for $ac_header" >&5
+echo "$as_me:10111: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8948 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10117 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:8952: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:10121: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:8958: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:10127: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -8969,14 +10138,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:8977: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:10146: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -8994,7 +10163,7 @@ cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuv
#define $cf_nculib_ROOT 1
EOF
- cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+ cf_cv_ncurses_version="`$NCURSES_CONFIG --version`"
else
@@ -9006,9 +10175,9 @@ test "$cf_cv_curses_dir" != "no" && { \
if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -9029,8 +10198,8 @@ if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9033 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10202 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -9041,25 +10210,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9045: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10214: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9048: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9051: \"$ac_try\"") >&5
+ echo "$as_me:10217: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10220: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9054: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10223: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -9068,11 +10237,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:9071: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:10240: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -9087,19 +10256,19 @@ fi
}
-echo "$as_me:9090: checking for $cf_ncuhdr_root header in include-path" >&5
+echo "$as_me:10259: checking for $cf_ncuhdr_root header in include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+ { test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw; } && cf_header_list="$cf_header_list curses.h ncurses.h"
for cf_header in $cf_header_list
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 9102 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10271 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -9109,10 +10278,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -9122,39 +10291,39 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9126: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10295: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9129: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9132: \"$ac_try\"") >&5
+ echo "$as_me:10298: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10301: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9135: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10304: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_ncurses_h" != no && break
done
fi
-echo "$as_me:9150: result: $cf_cv_ncurses_h" >&5
+echo "$as_me:10319: result: $cf_cv_ncurses_h" >&5
echo "${ECHO_T}$cf_cv_ncurses_h" >&6
if test "$cf_cv_ncurses_h" != no ; then
cf_cv_ncurses_header=$cf_cv_ncurses_h
else
-echo "$as_me:9157: checking for $cf_ncuhdr_root include-path" >&5
+echo "$as_me:10326: checking for $cf_ncuhdr_root include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h2+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9169,7 +10338,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -9177,11 +10346,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
- test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -9198,11 +10367,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
- test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+ test -d "$prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
for cf_subdir_prefix in \
@@ -9216,13 +10385,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
done
@@ -9230,20 +10399,20 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/$cf_ncuhdr_root" && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/$cf_ncuhdr_root" && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
}
cf_search="$cf_search $cf_header_path_list"
- test -n "$verbose" && echo search path $cf_search
+ test -n "$verbose" && echo "search path $cf_search"
cf_save2_CPPFLAGS="$CPPFLAGS"
for cf_incdir in $cf_search
do
@@ -9251,9 +10420,9 @@ cf_search="$cf_search $cf_header_path_list"
if test -n "$cf_incdir" ; then
for cf_add_incdir in $cf_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -9274,8 +10443,8 @@ if test -n "$cf_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9278 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10447 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -9286,25 +10455,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9290: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10459: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9293: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9296: \"$ac_try\"") >&5
+ echo "$as_me:10462: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10465: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9299: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10468: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -9313,11 +10482,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:9316: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:10485: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -9335,8 +10504,8 @@ fi
curses.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 9339 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10508 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -9346,10 +10515,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -9359,30 +10528,30 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9363: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10532: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9366: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9369: \"$ac_try\"") >&5
+ echo "$as_me:10535: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10538: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9372: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10541: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h2=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h2=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
if test "$cf_cv_ncurses_h2" != no ; then
cf_cv_ncurses_h2=$cf_incdir/$cf_header
- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6
+ test -n "$verbose" && echo $ECHO_N " ... found $ECHO_C" 1>&6
break
fi
test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
@@ -9390,26 +10559,26 @@ rm -f conftest.$ac_objext conftest.$ac_ext
CPPFLAGS="$cf_save2_CPPFLAGS"
test "$cf_cv_ncurses_h2" != no && break
done
- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:9393: error: not found" >&5
+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:10562: error: not found" >&5
echo "$as_me: error: not found" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:9398: result: $cf_cv_ncurses_h2" >&5
+echo "$as_me:10567: result: $cf_cv_ncurses_h2" >&5
echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
- cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+ cf_1st_incdir=`echo "$cf_cv_ncurses_h2" | sed -e 's%/[^/]*$%%'`
+ cf_cv_ncurses_header="`basename "$cf_cv_ncurses_h2"`"
+ if test "`basename "$cf_1st_incdir"`" = "$cf_ncuhdr_root" ; then
+ cf_cv_ncurses_header="$cf_ncuhdr_root/$cf_cv_ncurses_header"
fi
if test -n "$cf_1st_incdir" ; then
for cf_add_incdir in $cf_1st_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -9430,8 +10599,8 @@ if test -n "$cf_1st_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9434 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10603 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -9442,25 +10611,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9446: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10615: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9449: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9452: \"$ac_try\"") >&5
+ echo "$as_me:10618: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10621: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9455: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10624: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -9469,11 +10638,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:9472: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:10641: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -9490,7 +10659,7 @@ fi
# Set definitions to allow ifdef'ing for ncurses.h
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(*ncurses.h)
cat >>confdefs.h <<\EOF
@@ -9500,7 +10669,7 @@ EOF
;;
esac
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(ncurses/curses.h|ncurses/ncurses.h)
cat >>confdefs.h <<\EOF
@@ -9517,13 +10686,13 @@ EOF
;;
esac
-echo "$as_me:9520: checking for terminfo header" >&5
+echo "$as_me:10689: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -9534,8 +10703,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 9538 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 10707 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -9544,43 +10713,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9553: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10722: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9556: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9559: \"$ac_try\"") >&5
+ echo "$as_me:10725: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10728: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9562: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10731: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:9578: result: $cf_cv_term_header" >&5
+echo "$as_me:10747: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -9590,7 +10759,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -9613,7 +10782,7 @@ cat >>confdefs.h <<\EOF
#define NCURSES 1
EOF
-echo "$as_me:9616: checking for ncurses version" >&5
+echo "$as_me:10785: checking for ncurses version" >&5
echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
if test "${cf_cv_ncurses_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9621,12 +10790,12 @@ else
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
if test "$cross_compiling" = yes; then
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -9639,20 +10808,20 @@ Autoconf "old"
#endif
EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
- { (eval echo "$as_me:9642: \"$cf_try\"") >&5
+ { (eval echo "$as_me:10811: \"$cf_try\"") >&5
(eval $cf_try) 2>&5
ac_status=$?
- echo "$as_me:9645: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:10814: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 9655 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10824 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -9662,13 +10831,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -9676,30 +10845,30 @@ int main(void)
${cf_cv_main_return:-return}(0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:9680: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:10849: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9683: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:9685: \"$ac_try\"") >&5
+ echo "$as_me:10852: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:10854: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9688: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10857: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_version=`cat $cf_tempfile`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
fi
-echo "$as_me:9702: result: $cf_cv_ncurses_version" >&5
+echo "$as_me:10871: result: $cf_cv_ncurses_version" >&5
echo "${ECHO_T}$cf_cv_ncurses_version" >&6
test "$cf_cv_ncurses_version" = no ||
cat >>confdefs.h <<\EOF
@@ -9712,15 +10881,15 @@ cf_nculib_root=ncurses
# to link gpm.
cf_ncurses_LIBS=""
cf_ncurses_SAVE="$LIBS"
-echo "$as_me:9715: checking for Gpm_Open in -lgpm" >&5
+echo "$as_me:10884: checking for Gpm_Open in -lgpm" >&5
echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 9723 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 10892 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -9738,39 +10907,39 @@ Gpm_Open ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9742: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:10911: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9745: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9748: \"$ac_try\"") >&5
+ echo "$as_me:10914: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:10917: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9751: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10920: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_Gpm_Open=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_Gpm_Open=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:9762: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "$as_me:10931: result: $ac_cv_lib_gpm_Gpm_Open" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
-if test $ac_cv_lib_gpm_Gpm_Open = yes; then
- echo "$as_me:9765: checking for initscr in -lgpm" >&5
+if test "$ac_cv_lib_gpm_Gpm_Open" = yes; then
+ echo "$as_me:10934: checking for initscr in -lgpm" >&5
echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 9773 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 10942 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -9788,30 +10957,30 @@ initscr ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9792: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:10961: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9795: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9798: \"$ac_try\"") >&5
+ echo "$as_me:10964: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:10967: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9801: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10970: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:9812: result: $ac_cv_lib_gpm_initscr" >&5
+echo "$as_me:10981: result: $ac_cv_lib_gpm_initscr" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6
-if test $ac_cv_lib_gpm_initscr = yes; then
+if test "$ac_cv_lib_gpm_initscr" = yes; then
LIBS="$cf_ncurses_SAVE"
else
cf_ncurses_LIBS="-lgpm"
@@ -9819,20 +10988,20 @@ fi
fi
-case $host_os in
+case "$host_os" in
(freebsd*)
# This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
+ # version of ncurses (but it should do no harm, since it is static).
if test "$cf_nculib_root" = ncurses ; then
- echo "$as_me:9827: checking for tgoto in -lmytinfo" >&5
+ echo "$as_me:10996: checking for tgoto in -lmytinfo" >&5
echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lmytinfo $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 9835 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 11004 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -9850,30 +11019,30 @@ tgoto ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9854: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11023: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9857: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9860: \"$ac_try\"") >&5
+ echo "$as_me:11026: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11029: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9863: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11032: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_mytinfo_tgoto=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_mytinfo_tgoto=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:9874: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "$as_me:11043: result: $ac_cv_lib_mytinfo_tgoto" >&5
echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
-if test $ac_cv_lib_mytinfo_tgoto = yes; then
+if test "$ac_cv_lib_mytinfo_tgoto" = yes; then
cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
fi
@@ -9897,7 +11066,7 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
cf_add_libs="$LIBS"
@@ -9918,15 +11087,15 @@ LIBS="$cf_add_libs"
else
- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=no'
cf_libdir=""
- echo "$as_me:9923: checking for initscr" >&5
+ echo "$as_me:11092: checking for initscr" >&5
echo $ECHO_N "checking for initscr... $ECHO_C" >&6
if test "${ac_cv_func_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 9929 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11098 "configure"
#include "confdefs.h"
#define initscr autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -9956,38 +11125,38 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9960: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11129: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9963: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9966: \"$ac_try\"") >&5
+ echo "$as_me:11132: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11135: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9969: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11138: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:9979: result: $ac_cv_func_initscr" >&5
+echo "$as_me:11148: result: $ac_cv_func_initscr" >&5
echo "${ECHO_T}$ac_cv_func_initscr" >&6
-if test $ac_cv_func_initscr = yes; then
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+if test "$ac_cv_func_initscr" = yes; then
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
cf_save_LIBS="$LIBS"
- echo "$as_me:9986: checking for initscr in -l$cf_nculib_root" >&5
+ echo "$as_me:11155: checking for initscr in -l$cf_nculib_root" >&5
echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6
LIBS="-l$cf_nculib_root $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9990 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11159 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -9998,26 +11167,26 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10002: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11171: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10005: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10008: \"$ac_try\"") >&5
+ echo "$as_me:11174: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11177: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10011: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:10013: result: yes" >&5
+ echo "$as_me:11180: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:11182: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:10020: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:11189: result: no" >&5
echo "${ECHO_T}no" >&6
cf_search=
@@ -10025,7 +11194,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -10033,11 +11202,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
- test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -10052,11 +11221,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
- test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+ test -d "$prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
for cf_subdir_prefix in \
@@ -10070,13 +11239,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
done
@@ -10085,11 +11254,11 @@ cf_search="$cf_library_path_list $cf_search"
for cf_libdir in $cf_search
do
- echo "$as_me:10088: checking for -l$cf_nculib_root in $cf_libdir" >&5
+ echo "$as_me:11257: checking for -l$cf_nculib_root in $cf_libdir" >&5
echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6
LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10092 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11261 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -10100,41 +11269,41 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10104: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11273: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10107: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10110: \"$ac_try\"") >&5
+ echo "$as_me:11276: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11279: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10113: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:10115: result: yes" >&5
+ echo "$as_me:11282: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:11284: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:10122: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:11291: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_save_LIBS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+eval 'cf_found_library="$cf_cv_have_lib_'"$cf_nculib_root"\"
-if test $cf_found_library = no ; then
- { { echo "$as_me:10137: error: Cannot link $cf_nculib_root library" >&5
+if test "$cf_found_library" = no ; then
+ { { echo "$as_me:11306: error: Cannot link $cf_nculib_root library" >&5
echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -10142,49 +11311,49 @@ fi
fi
if test -n "$cf_ncurses_LIBS" ; then
- echo "$as_me:10145: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+ echo "$as_me:11314: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6
cf_ncurses_SAVE="$LIBS"
for p in $cf_ncurses_LIBS ; do
- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+ q=`echo "$LIBS" | sed -e "s%$p %%" -e "s%$p$%%"`
if test "$q" != "$LIBS" ; then
LIBS="$q"
fi
done
- cat >conftest.$ac_ext <<_ACEOF
-#line 10155 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11324 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10167: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11336: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10170: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10173: \"$ac_try\"") >&5
+ echo "$as_me:11339: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11342: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10176: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:10178: result: yes" >&5
+ echo "$as_me:11345: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:11347: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:10183: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:11352: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_ncurses_SAVE"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -10233,13 +11402,13 @@ else
AUTOCONF_$cf_name NCURSES_VERSION_$cf_name
CF_EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | fgrep AUTOCONF_$cf_name >conftest.out"
- { (eval echo "$as_me:10236: \"$cf_try\"") >&5
+ { (eval echo "$as_me:11405: \"$cf_try\"") >&5
(eval $cf_try) 2>&5
ac_status=$?
- echo "$as_me:10239: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:11408: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
if test -f conftest.out ; then
- cf_result=`cat conftest.out | sed -e "s/^.*AUTOCONF_$cf_name[ ][ ]*//"`
+ cf_result=`sed -e "s/^.*AUTOCONF_${cf_name}[ ][ ]*//" conftest.out`
eval NCURSES_$cf_name=\"$cf_result\"
# cat conftest.$ac_ext
# cat conftest.out
@@ -10254,10 +11423,10 @@ cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
cf_cv_timestamp=`date`
-echo "$as_me:10257: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
+echo "$as_me:11426: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
echo "${ECHO_T}Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&6
-echo "$as_me:10260: checking if you want to have a library-prefix" >&5
+echo "$as_me:11429: checking if you want to have a library-prefix" >&5
echo $ECHO_N "checking if you want to have a library-prefix... $ECHO_C" >&6
# Check whether --with-lib-prefix or --without-lib-prefix was given.
@@ -10267,13 +11436,13 @@ if test "${with_lib_prefix+set}" = set; then
else
with_lib_prefix=auto
fi;
-echo "$as_me:10270: result: $with_lib_prefix" >&5
+echo "$as_me:11439: result: $with_lib_prefix" >&5
echo "${ECHO_T}$with_lib_prefix" >&6
-if test $with_lib_prefix = auto
+if test "$with_lib_prefix" = auto
then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(OS/2*|os2*)
if test "$DFT_LWR_MODEL" = libtool; then
LIB_PREFIX='lib'
@@ -10281,12 +11450,15 @@ then
LIB_PREFIX=''
fi
;;
+ (*-msvc*)
+ LIB_PREFIX=''
+ ;;
(*) LIB_PREFIX='lib'
;;
esac
cf_prefix=$LIB_PREFIX
-elif test $with_lib_prefix = no
+elif test "$with_lib_prefix" = no
then
LIB_PREFIX=
else
@@ -10302,7 +11474,7 @@ if test X"$CC_G_OPT" = X"" ; then
test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT=''
fi
-echo "$as_me:10305: checking for default loader flags" >&5
+echo "$as_me:11477: checking for default loader flags" >&5
echo $ECHO_N "checking for default loader flags... $ECHO_C" >&6
case $DFT_LWR_MODEL in
(normal) LD_MODEL='' ;;
@@ -10310,15 +11482,15 @@ case $DFT_LWR_MODEL in
(profile) LD_MODEL='-pg';;
(shared) LD_MODEL='' ;;
esac
-echo "$as_me:10313: result: $LD_MODEL" >&5
+echo "$as_me:11485: result: $LD_MODEL" >&5
echo "${ECHO_T}$LD_MODEL" >&6
LD_RPATH_OPT=
if test "x$cf_cv_enable_rpath" != xno
then
- echo "$as_me:10319: checking for an rpath option" >&5
+ echo "$as_me:11491: checking for an rpath option" >&5
echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GCC" = yes; then
LD_RPATH_OPT="-Wl,-rpath,"
@@ -10347,12 +11519,12 @@ echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
(*)
;;
esac
- echo "$as_me:10350: result: $LD_RPATH_OPT" >&5
+ echo "$as_me:11522: result: $LD_RPATH_OPT" >&5
echo "${ECHO_T}$LD_RPATH_OPT" >&6
case "x$LD_RPATH_OPT" in
(x-R*)
- echo "$as_me:10355: checking if we need a space after rpath option" >&5
+ echo "$as_me:11527: checking if we need a space after rpath option" >&5
echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6
cf_save_LIBS="$LIBS"
@@ -10372,8 +11544,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10376 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11548 "configure"
#include "confdefs.h"
int
@@ -10384,27 +11556,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10388: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11560: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10391: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10394: \"$ac_try\"") >&5
+ echo "$as_me:11563: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11566: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10397: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11569: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_rpath_space=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_rpath_space=yes
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
- echo "$as_me:10407: result: $cf_rpath_space" >&5
+ echo "$as_me:11579: result: $cf_rpath_space" >&5
echo "${ECHO_T}$cf_rpath_space" >&6
test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
;;
@@ -10426,14 +11598,14 @@ fi
cf_ld_rpath_opt=
test "$cf_cv_enable_rpath" = yes && cf_ld_rpath_opt="$LD_RPATH_OPT"
- echo "$as_me:10429: checking if release/abi version should be used for shared libs" >&5
+ echo "$as_me:11601: checking if release/abi version should be used for shared libs" >&5
echo $ECHO_N "checking if release/abi version should be used for shared libs... $ECHO_C" >&6
# Check whether --with-shlib-version or --without-shlib-version was given.
if test "${with_shlib_version+set}" = set; then
withval="$with_shlib_version"
test -z "$withval" && withval=auto
- case $withval in
+ case "$withval" in
(yes)
cf_cv_shlib_version=auto
;;
@@ -10441,9 +11613,9 @@ if test "${with_shlib_version+set}" = set; then
cf_cv_shlib_version=$withval
;;
(*)
- echo "$as_me:10444: result: $withval" >&5
+ echo "$as_me:11616: result: $withval" >&5
echo "${ECHO_T}$withval" >&6
- { { echo "$as_me:10446: error: option value must be one of: rel, abi, or auto" >&5
+ { { echo "$as_me:11618: error: option value must be one of: rel, abi, or auto" >&5
echo "$as_me: error: option value must be one of: rel, abi, or auto" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -10452,7 +11624,7 @@ echo "$as_me: error: option value must be one of: rel, abi, or auto" >&2;}
else
cf_cv_shlib_version=auto
fi;
- echo "$as_me:10455: result: $cf_cv_shlib_version" >&5
+ echo "$as_me:11627: result: $cf_cv_shlib_version" >&5
echo "${ECHO_T}$cf_cv_shlib_version" >&6
cf_cv_rm_so_locs=no
@@ -10466,7 +11638,7 @@ echo "${ECHO_T}$cf_cv_shlib_version" >&6
then
cf_try_fPIC=yes
else
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(*linux*) # e.g., PGI compiler
cf_try_fPIC=yes
;;
@@ -10475,14 +11647,14 @@ echo "${ECHO_T}$cf_cv_shlib_version" >&6
if test "$cf_try_fPIC" = yes
then
- echo "$as_me:10478: checking which $CC option to use" >&5
+ echo "$as_me:11650: checking which $CC option to use" >&5
echo $ECHO_N "checking which $CC option to use... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
for CC_SHARED_OPTS in -fPIC -fpic ''
do
CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10485 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11657 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -10493,33 +11665,33 @@ int x = 1
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10497: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11669: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10500: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10503: \"$ac_try\"") >&5
+ echo "$as_me:11672: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11675: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10506: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11678: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
- echo "$as_me:10515: result: $CC_SHARED_OPTS" >&5
+ echo "$as_me:11687: result: $CC_SHARED_OPTS" >&5
echo "${ECHO_T}$CC_SHARED_OPTS" >&6
CFLAGS="$cf_save_CFLAGS"
fi
cf_cv_shlib_version_infix=no
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix4.3-9*|aix[5-7]*)
if test "$GCC" = yes; then
CC_SHARED_OPTS='-Wl,-brtl'
@@ -10583,7 +11755,7 @@ CF_EOF
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $@` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $@'
test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi
cf_cv_shlib_version_infix=yes
- echo "$as_me:10586: checking if ld -search_paths_first works" >&5
+ echo "$as_me:11758: checking if ld -search_paths_first works" >&5
echo $ECHO_N "checking if ld -search_paths_first works... $ECHO_C" >&6
if test "${cf_cv_ldflags_search_paths_first+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -10591,8 +11763,8 @@ else
cf_save_LDFLAGS=$LDFLAGS
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10595 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11767 "configure"
#include "confdefs.h"
int
@@ -10603,33 +11775,44 @@ int i;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10607: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11779: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10610: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10613: \"$ac_try\"") >&5
+ echo "$as_me:11782: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11785: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10616: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11788: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ldflags_search_paths_first=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ldflags_search_paths_first=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LDFLAGS=$cf_save_LDFLAGS
fi
-echo "$as_me:10627: result: $cf_cv_ldflags_search_paths_first" >&5
+echo "$as_me:11799: result: $cf_cv_ldflags_search_paths_first" >&5
echo "${ECHO_T}$cf_cv_ldflags_search_paths_first" >&6
- if test $cf_cv_ldflags_search_paths_first = yes; then
+ if test "$cf_cv_ldflags_search_paths_first" = yes; then
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
fi
;;
+ (haiku*)
+
+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
+ if test "$cf_cv_shlib_version" = rel; then
+ cf_cv_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
+ else
+ cf_cv_shared_soname='`basename $@`'
+ fi
+
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
+ ;;
(hpux[7-8]*)
# HP-UX 8.07 ld lacks "+b" option used for libdir search-list
if test "$GCC" != yes; then
@@ -10692,6 +11875,112 @@ echo "${ECHO_T}$cf_cv_ldflags_search_paths_first" >&6
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
;;
+ (mingw*msvc*)
+ cf_cv_shlib_version=msvcdll
+ cf_cv_shlib_version_infix=msvcdll
+ shlibdir=$bindir
+ MAKE_DLLS=
+ if test "$DFT_LWR_MODEL" = "shared" ; then
+ LOCAL_LDFLAGS="-link -dll"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ EXTRA_LDFLAGS="-link -dll $EXTRA_LDFLAGS"
+ fi
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh $@ ${LD} ${CFLAGS}'
+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.lib"
+ cat >mk_shared_lib.sh <<-CF_EOF
+ #!$SHELL
+ SHARED_LIB=\$1
+ IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$/.dll.lib/'\`
+ shift
+ my_ld=\$1
+ shift
+ cat <<-EOF
+ Linking shared library
+ ** SHARED LIB \$SHARED_LIB
+ ** IMPORT_LIB \$IMPORT_LIB
+EOF
+ args=\$(echo \$* | sed -E "s#-l(\w*)#\1.dll.lib#g" | sed -E "s#-L(\w*)#-LIBPATH:\1#g")
+ exec \$my_ld -DLL -IMPLIB:"\${IMPORT_LIB}" -OUT:"\${SHARED_LIB}" ${LDFLAGS} \$args
+ mv "\${IMPORT_LIB}" "\${IMPORT_LIB}"
+CF_EOF
+ chmod +x mk_shared_lib.sh
+ cat >mk_prog.sh <<-CF_EOF
+ #!$SHELL
+ shift
+ # Ignore first argument (compiler) and use LD (link.exe) unconditionally
+ LD="$LD"
+ clopts=()
+ ldopts=("/subsystem:console")
+ libs=()
+ isdll=0
+ while test \$# -gt 0; do
+ case "\$1" in
+ -link)
+ # ignore -link argument
+ ;;
+ -M[TD] | -M[TD]d)
+ # ignore runtime-library option
+ ;;
+ -dll)
+ isdll=1
+ ;;
+ -W* | -w*)
+ # ignore warnings
+ ;;
+ -D*)
+ clopts+=("\$1")
+ ;;
+ -I*)
+ clopts+=("\$1")
+ ;;
+ -l*)
+ libs+=("\`echo \"\$1\" | sed \"s/^-l//\"\`")
+ ;;
+ -L*)
+ ldopts+=("\`echo \"\$1\" | sed \"s/^-L/-LIBPATH:/\"\`")
+ ;;
+ *.obj | *.o)
+ ldopts+=("\$1")
+ ;;
+ -Wl,*)
+ for linkarg in \`echo '\$1' | sed -e 's/-Wl,//' -e 's/,/ /'\`; do
+ ldopts+=("\${linkarg}")
+ done
+ ;;
+ *.lib)
+ ldopts+=("\$1")
+ ;;
+ -o)
+ shift
+ ldopts+=("-out:\$1")
+ ;;
+ *)
+ clopts+=("\$1")
+ ldopts+=("\$1")
+ ;;
+ esac
+ shift
+ done
+ if [ "\$isdll" -ne 0 ]; then
+ for lib in \${libs[*]}; do
+ ldopts+=("\$lib.dll.lib")
+ done
+ else
+ for lib in \${libs[*]}; do
+ ldopts+=("\$lib.lib")
+ done
+ fi
+ cat <<-EOF
+ Creating program
+ ** ld options: "\${ldopts[@]}"
+EOF
+ exec \$LD \${ldopts[@]}
+CF_EOF
+ chmod +x mk_prog.sh
+ LINK_PROGS="$SHELL ${rel_builddir}/mk_prog.sh"
+ LINK_TESTS="$SHELL ${rel_builddir}/mk_prog.sh"
+ ;;
(mingw*)
cf_cv_shlib_version=mingw
cf_cv_shlib_version_infix=mingw
@@ -10738,6 +12027,14 @@ CF_EOF
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-Bshareable,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
;;
+ (nskJ*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Weld=-export_all -o $@'
+ ;;
+ (nskL*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Wxld=-export_all -o $@'
+ ;;
(nto-qnx*|openbsd*|freebsd[12].*)
CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
MK_SHARED_LIB='${LD} ${LDFLAGS} -Bshareable -o $@'
@@ -10783,7 +12080,7 @@ CF_EOF
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $@'
else
- MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -Wl,-shared -Wl,-Bshareable -o $@'
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -o $@'
fi
;;
(osf*|mls+*)
@@ -10791,7 +12088,7 @@ CF_EOF
# tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't
# link with shared libs).
MK_SHARED_LIB='${LD} ${LDFLAGS} -set_version ${REL_VERSION}:${ABI_VERSION} -expect_unresolved "*" -shared -soname `basename $@`'
- case $host_os in
+ case "$host_os" in
(osf4*)
MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
;;
@@ -10848,36 +12145,36 @@ CF_EOF
for cf_shared_opts in -xcode=pic32 -xcode=pic13 -KPIC -Kpic -O
do
CFLAGS="$cf_shared_opts $cf_save_CFLAGS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10852 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12149 "configure"
#include "confdefs.h"
#include <stdio.h>
int
main (void)
{
-printf("Hello\n");
+printf("Hello\\n");
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10864: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12161: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10867: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10870: \"$ac_try\"") >&5
+ echo "$as_me:12164: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12167: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10873: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12170: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
CFLAGS="$cf_save_CFLAGS"
CC_SHARED_OPTS=$cf_shared_opts
@@ -10907,7 +12204,7 @@ rm -f conftest.$ac_objext conftest.$ac_ext
test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes
;;
(*)
- { echo "$as_me:10910: WARNING: ignored --with-shlib-version" >&5
+ { echo "$as_me:12207: WARNING: ignored --with-shlib-version" >&5
echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
;;
esac
@@ -10917,11 +12214,11 @@ echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
if test -n "$cf_try_cflags"
then
cat > conftest.$ac_ext <<EOF
-#line 10920 "${as_me:-configure}"
+#line 12217 "${as_me:-configure}"
#include <stdio.h>
int main(int argc, char *argv[])
{
- printf("hello\n");
+ printf("hello\\n");
return (argv[argc-1] == 0) ;
}
EOF
@@ -10929,18 +12226,18 @@ EOF
for cf_opt in $cf_try_cflags
do
CFLAGS="$cf_save_CFLAGS -$cf_opt"
- echo "$as_me:10932: checking if CFLAGS option -$cf_opt works" >&5
+ echo "$as_me:12229: checking if CFLAGS option -$cf_opt works" >&5
echo $ECHO_N "checking if CFLAGS option -$cf_opt works... $ECHO_C" >&6
- if { (eval echo "$as_me:10934: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:12231: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10937: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- echo "$as_me:10939: result: yes" >&5
+ echo "$as_me:12234: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ echo "$as_me:12236: result: yes" >&5
echo "${ECHO_T}yes" >&6
cf_save_CFLAGS="$CFLAGS"
else
- echo "$as_me:10943: result: no" >&5
+ echo "$as_me:12240: result: no" >&5
echo "${ECHO_T}no" >&6
fi
done
@@ -10951,21 +12248,21 @@ echo "${ECHO_T}no" >&6
test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}"
test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}"
- test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
+ test "$cf_cv_rm_so_locs" = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
test -n "$verbose" && echo " CC_SHARED_OPTS: $CC_SHARED_OPTS" 1>&6
-echo "${as_me:-configure}:10958: testing CC_SHARED_OPTS: $CC_SHARED_OPTS ..." 1>&5
+echo "${as_me:-configure}:12255: testing CC_SHARED_OPTS: $CC_SHARED_OPTS ..." 1>&5
test -n "$verbose" && echo " MK_SHARED_LIB: $MK_SHARED_LIB" 1>&6
-echo "${as_me:-configure}:10962: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
+echo "${as_me:-configure}:12259: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
# The test/sample programs in the original tree link using rpath option.
# Make it optional for packagers.
if test -n "$LOCAL_LDFLAGS"
then
- echo "$as_me:10968: checking if you want to link sample programs with rpath option" >&5
+ echo "$as_me:12265: checking if you want to link sample programs with rpath option" >&5
echo $ECHO_N "checking if you want to link sample programs with rpath option... $ECHO_C" >&6
# Check whether --enable-rpath-link or --disable-rpath-link was given.
@@ -10975,7 +12272,7 @@ if test "${enable_rpath_link+set}" = set; then
else
with_rpath_link=yes
fi;
- echo "$as_me:10978: result: $with_rpath_link" >&5
+ echo "$as_me:12275: result: $with_rpath_link" >&5
echo "${ECHO_T}$with_rpath_link" >&6
if test "$with_rpath_link" = no
then
@@ -10988,7 +12285,7 @@ fi
### use option --enable-broken-linker to force on use of broken-linker support
-echo "$as_me:10991: checking if you want broken-linker support code" >&5
+echo "$as_me:12288: checking if you want broken-linker support code" >&5
echo $ECHO_N "checking if you want broken-linker support code... $ECHO_C" >&6
# Check whether --enable-broken_linker or --disable-broken_linker was given.
@@ -10998,10 +12295,10 @@ if test "${enable_broken_linker+set}" = set; then
else
with_broken_linker=no
fi;
-echo "$as_me:11001: result: $with_broken_linker" >&5
+echo "$as_me:12298: result: $with_broken_linker" >&5
echo "${ECHO_T}$with_broken_linker" >&6
-: ${BROKEN_LINKER:=0}
+: "${BROKEN_LINKER:=0}"
if test "x$with_broken_linker" = xyes ; then
cat >>confdefs.h <<\EOF
@@ -11013,14 +12310,14 @@ fi
# Check to define _XOPEN_SOURCE "automatically"
-echo "$as_me:11016: checking if the POSIX test-macros are already defined" >&5
+echo "$as_me:12313: checking if the POSIX test-macros are already defined" >&5
echo $ECHO_N "checking if the POSIX test-macros are already defined... $ECHO_C" >&6
if test "${cf_cv_posix_visible+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 11023 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12320 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -11038,28 +12335,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11042: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12339: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11045: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11048: \"$ac_try\"") >&5
+ echo "$as_me:12342: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12345: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11051: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12348: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_visible=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_visible=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11062: result: $cf_cv_posix_visible" >&5
+echo "$as_me:12359: result: $cf_cv_posix_visible" >&5
echo "${ECHO_T}$cf_cv_posix_visible" >&6
if test "$cf_cv_posix_visible" = no; then
@@ -11068,7 +12365,7 @@ cf_XOPEN_SOURCE=600
cf_POSIX_C_SOURCE=199506L
cf_xopen_source=
-case $host_os in
+case "$host_os" in
(aix[4-7]*)
cf_xopen_source="-D_ALL_SOURCE"
;;
@@ -11104,14 +12401,14 @@ case $host_os in
cf_gnu_xopen_source=$cf_XOPEN_SOURCE
-echo "$as_me:11107: checking if this is the GNU C library" >&5
+echo "$as_me:12404: checking if this is the GNU C library" >&5
echo $ECHO_N "checking if this is the GNU C library... $ECHO_C" >&6
if test "${cf_cv_gnu_library+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 11114 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12411 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11129,28 +12426,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11133: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12430: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11136: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11139: \"$ac_try\"") >&5
+ echo "$as_me:12433: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12436: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11142: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12439: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_library=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_library=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11153: result: $cf_cv_gnu_library" >&5
+echo "$as_me:12450: result: $cf_cv_gnu_library" >&5
echo "${ECHO_T}$cf_cv_gnu_library" >&6
if test x$cf_cv_gnu_library = xyes; then
@@ -11158,7 +12455,7 @@ if test x$cf_cv_gnu_library = xyes; then
# With glibc 2.19 (13 years after this check was begun), _DEFAULT_SOURCE
# was changed to help a little. newlib incorporated the change about 4
# years later.
- echo "$as_me:11161: checking if _DEFAULT_SOURCE can be used as a basis" >&5
+ echo "$as_me:12458: checking if _DEFAULT_SOURCE can be used as a basis" >&5
echo $ECHO_N "checking if _DEFAULT_SOURCE can be used as a basis... $ECHO_C" >&6
if test "${cf_cv_gnu_library_219+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -11169,8 +12466,8 @@ else
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_DEFAULT_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11173 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12470 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11188,34 +12485,34 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11192: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12489: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11195: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11198: \"$ac_try\"") >&5
+ echo "$as_me:12492: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12495: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11201: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12498: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_library_219=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_library_219=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-echo "$as_me:11213: result: $cf_cv_gnu_library_219" >&5
+echo "$as_me:12510: result: $cf_cv_gnu_library_219" >&5
echo "${ECHO_T}$cf_cv_gnu_library_219" >&6
if test "x$cf_cv_gnu_library_219" = xyes; then
cf_save="$CPPFLAGS"
- echo "$as_me:11218: checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE" >&5
+ echo "$as_me:12515: checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE" >&5
echo $ECHO_N "checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE... $ECHO_C" >&6
if test "${cf_cv_gnu_dftsrc_219+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -11228,19 +12525,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=$cf_gnu_xopen_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -11259,7 +12556,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -11289,7 +12586,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -11319,8 +12616,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 11323 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12620 "configure"
#include "confdefs.h"
#include <limits.h>
@@ -11339,28 +12636,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11343: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12640: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11346: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11349: \"$ac_try\"") >&5
+ echo "$as_me:12643: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12646: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11352: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12649: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_dftsrc_219=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_dftsrc_219=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11363: result: $cf_cv_gnu_dftsrc_219" >&5
+echo "$as_me:12660: result: $cf_cv_gnu_dftsrc_219" >&5
echo "${ECHO_T}$cf_cv_gnu_dftsrc_219" >&6
test "x$cf_cv_gnu_dftsrc_219" = "xyes" || CPPFLAGS="$cf_save"
else
@@ -11369,14 +12666,14 @@ echo "${ECHO_T}$cf_cv_gnu_dftsrc_219" >&6
if test "x$cf_cv_gnu_dftsrc_219" != xyes; then
- echo "$as_me:11372: checking if we must define _GNU_SOURCE" >&5
+ echo "$as_me:12669: checking if we must define _GNU_SOURCE" >&5
echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6
if test "${cf_cv_gnu_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11379 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12676 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11390,22 +12687,22 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11394: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12691: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11397: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11400: \"$ac_try\"") >&5
+ echo "$as_me:12694: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12697: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11403: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12700: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
cf_fix_cppflags=no
@@ -11415,19 +12712,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -D_GNU_SOURCE
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -11446,7 +12743,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -11476,7 +12773,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -11506,8 +12803,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 11510 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12807 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11521,37 +12818,37 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11525: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12822: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11528: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11531: \"$ac_try\"") >&5
+ echo "$as_me:12825: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12828: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11534: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12831: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_source=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11549: result: $cf_cv_gnu_source" >&5
+echo "$as_me:12846: result: $cf_cv_gnu_source" >&5
echo "${ECHO_T}$cf_cv_gnu_source" >&6
if test "$cf_cv_gnu_source" = yes
then
- echo "$as_me:11554: checking if we should also define _DEFAULT_SOURCE" >&5
+ echo "$as_me:12851: checking if we should also define _DEFAULT_SOURCE" >&5
echo $ECHO_N "checking if we should also define _DEFAULT_SOURCE... $ECHO_C" >&6
if test "${cf_cv_default_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -11560,8 +12857,8 @@ else
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_GNU_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11564 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12861 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11575,28 +12872,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11579: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12876: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11582: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11585: \"$ac_try\"") >&5
+ echo "$as_me:12879: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12882: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11588: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12885: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_default_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_default_source=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11599: result: $cf_cv_default_source" >&5
+echo "$as_me:12896: result: $cf_cv_default_source" >&5
echo "${ECHO_T}$cf_cv_default_source" >&6
if test "$cf_cv_default_source" = yes
then
@@ -11633,16 +12930,16 @@ cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-echo "$as_me:11636: checking if we should define _POSIX_C_SOURCE" >&5
+echo "$as_me:12933: checking if we should define _POSIX_C_SOURCE" >&5
echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
if test "${cf_cv_posix_c_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-echo "${as_me:-configure}:11642: testing if the symbol is already defined go no further ..." 1>&5
+echo "${as_me:-configure}:12939: testing if the symbol is already defined go no further ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 11645 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12942 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11656,22 +12953,22 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11660: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12957: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11663: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11666: \"$ac_try\"") >&5
+ echo "$as_me:12960: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12963: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11669: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12966: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_c_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_want_posix_source=no
case .$cf_POSIX_C_SOURCE in
(.[12]??*)
@@ -11686,8 +12983,8 @@ cf_want_posix_source=no
;;
esac
if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 11690 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12987 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11701,28 +12998,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11705: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13002: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11708: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11711: \"$ac_try\"") >&5
+ echo "$as_me:13005: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13008: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11714: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13011: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "${as_me:-configure}:11725: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+echo "${as_me:-configure}:13022: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS"
@@ -11730,10 +13027,10 @@ echo "${as_me:-configure}:11725: testing ifdef from value $cf_POSIX_C_SOURCE ...
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_cv_posix_c_source"
-echo "${as_me:-configure}:11733: testing if the second compile does not leave our definition intact error ..." 1>&5
+echo "${as_me:-configure}:13030: testing if the second compile does not leave our definition intact error ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 11736 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13033 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -11747,33 +13044,33 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11751: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13048: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11754: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11757: \"$ac_try\"") >&5
+ echo "$as_me:13051: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13054: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11760: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13057: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11776: result: $cf_cv_posix_c_source" >&5
+echo "$as_me:13073: result: $cf_cv_posix_c_source" >&5
echo "${ECHO_T}$cf_cv_posix_c_source" >&6
if test "$cf_cv_posix_c_source" != no ; then
@@ -11787,19 +13084,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_cv_posix_c_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -11818,7 +13115,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -11848,7 +13145,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -11886,7 +13183,16 @@ fi # cf_cv_posix_visible
(netbsd*)
cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
;;
-(openbsd[4-9]*)
+(openbsd[6-9]*)
+ # OpenBSD 6.x has broken locale support, both compile-time and runtime.
+ # see https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ # Abusing the conformance level is a workaround.
+ { echo "$as_me:13190: WARNING: this system does not provide usable locale support" >&5
+echo "$as_me: WARNING: this system does not provide usable locale support" >&2;}
+ cf_xopen_source="-D_BSD_SOURCE"
+ cf_XOPEN_SOURCE=700
+ ;;
+(openbsd[4-5]*)
# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
cf_xopen_source="-D_BSD_SOURCE"
cf_XOPEN_SOURCE=600
@@ -11913,14 +13219,14 @@ fi # cf_cv_posix_visible
;;
(*)
-echo "$as_me:11916: checking if we should define _XOPEN_SOURCE" >&5
+echo "$as_me:13222: checking if we should define _XOPEN_SOURCE" >&5
echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
if test "${cf_cv_xopen_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11923 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13229 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -11938,29 +13244,29 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11942: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13248: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11945: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11948: \"$ac_try\"") >&5
+ echo "$as_me:13251: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13254: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11951: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13257: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11963 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13269 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -11978,32 +13284,32 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11982: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13288: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11985: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11988: \"$ac_try\"") >&5
+ echo "$as_me:13291: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13294: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11991: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13297: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xopen_source=$cf_XOPEN_SOURCE
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:12006: result: $cf_cv_xopen_source" >&5
+echo "$as_me:13312: result: $cf_cv_xopen_source" >&5
echo "${ECHO_T}$cf_cv_xopen_source" >&6
if test "$cf_cv_xopen_source" != no ; then
@@ -12018,26 +13324,52 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+for cf_add_cflags in $cf_temp_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_temp_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -12056,7 +13388,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -12086,7 +13418,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -12116,6 +13448,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
fi
if test "$cf_cv_posix_visible" = no; then
@@ -12133,16 +13467,16 @@ cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-echo "$as_me:12136: checking if we should define _POSIX_C_SOURCE" >&5
+echo "$as_me:13470: checking if we should define _POSIX_C_SOURCE" >&5
echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
if test "${cf_cv_posix_c_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-echo "${as_me:-configure}:12142: testing if the symbol is already defined go no further ..." 1>&5
+echo "${as_me:-configure}:13476: testing if the symbol is already defined go no further ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 12145 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13479 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -12156,22 +13490,22 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12160: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13494: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12163: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12166: \"$ac_try\"") >&5
+ echo "$as_me:13497: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13500: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12169: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13503: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_c_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_want_posix_source=no
case .$cf_POSIX_C_SOURCE in
(.[12]??*)
@@ -12186,8 +13520,8 @@ cf_want_posix_source=no
;;
esac
if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 12190 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13524 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -12201,28 +13535,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12205: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13539: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12208: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12211: \"$ac_try\"") >&5
+ echo "$as_me:13542: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13545: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12214: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13548: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "${as_me:-configure}:12225: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+echo "${as_me:-configure}:13559: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS"
@@ -12230,10 +13564,10 @@ echo "${as_me:-configure}:12225: testing ifdef from value $cf_POSIX_C_SOURCE ...
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_cv_posix_c_source"
-echo "${as_me:-configure}:12233: testing if the second compile does not leave our definition intact error ..." 1>&5
+echo "${as_me:-configure}:13567: testing if the second compile does not leave our definition intact error ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 12236 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13570 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -12247,33 +13581,33 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12251: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13585: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12254: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12257: \"$ac_try\"") >&5
+ echo "$as_me:13588: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13591: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12260: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13594: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:12276: result: $cf_cv_posix_c_source" >&5
+echo "$as_me:13610: result: $cf_cv_posix_c_source" >&5
echo "${ECHO_T}$cf_cv_posix_c_source" >&6
if test "$cf_cv_posix_c_source" != no ; then
@@ -12287,19 +13621,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_cv_posix_c_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -12318,7 +13652,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -12348,7 +13682,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -12387,26 +13721,58 @@ esac
if test -n "$cf_xopen_source" ; then
+for cf_add_cflags in $cf_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+ test -n "$verbose" && echo " removing old option $cf_add_cflags from CFLAGS" 1>&6
+
+echo "${as_me:-configure}:13736: testing removing old option $cf_add_cflags from CFLAGS ..." 1>&5
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+ test -n "$verbose" && echo " removing old option $cf_add_cflags from CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:13748: testing removing old option $cf_add_cflags from CPPFLAGS ..." 1>&5
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -12425,7 +13791,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -12455,7 +13821,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -12467,7 +13833,7 @@ done
if test -n "$cf_new_cflags" ; then
test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-echo "${as_me:-configure}:12470: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+echo "${as_me:-configure}:13836: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
test -n "$CFLAGS" && CFLAGS="$CFLAGS "
CFLAGS="${CFLAGS}$cf_new_cflags"
@@ -12477,7 +13843,7 @@ fi
if test -n "$cf_new_cppflags" ; then
test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-echo "${as_me:-configure}:12480: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+echo "${as_me:-configure}:13846: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
@@ -12487,20 +13853,22 @@ fi
if test -n "$cf_new_extra_cppflags" ; then
test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
-echo "${as_me:-configure}:12490: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+echo "${as_me:-configure}:13856: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
fi
+done
+
fi
if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
- echo "$as_me:12500: checking if _XOPEN_SOURCE really is set" >&5
+ echo "$as_me:13868: checking if _XOPEN_SOURCE really is set" >&5
echo $ECHO_N "checking if _XOPEN_SOURCE really is set... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 12503 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13871 "configure"
#include "confdefs.h"
#include <stdlib.h>
int
@@ -12514,31 +13882,31 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12518: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13886: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12521: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12524: \"$ac_try\"") >&5
+ echo "$as_me:13889: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13892: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12527: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13895: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_XOPEN_SOURCE_set=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_XOPEN_SOURCE_set=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:12536: result: $cf_XOPEN_SOURCE_set" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:13904: result: $cf_XOPEN_SOURCE_set" >&5
echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6
- if test $cf_XOPEN_SOURCE_set = yes
+ if test "$cf_XOPEN_SOURCE_set" = yes
then
- cat >conftest.$ac_ext <<_ACEOF
-#line 12541 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13909 "configure"
#include "confdefs.h"
#include <stdlib.h>
int
@@ -12552,40 +13920,40 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12556: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13924: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12559: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12562: \"$ac_try\"") >&5
+ echo "$as_me:13927: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13930: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12565: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13933: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_XOPEN_SOURCE_set_ok=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_XOPEN_SOURCE_set_ok=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- if test $cf_XOPEN_SOURCE_set_ok = no
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ if test "$cf_XOPEN_SOURCE_set_ok" = no
then
- { echo "$as_me:12576: WARNING: _XOPEN_SOURCE is lower than requested" >&5
+ { echo "$as_me:13944: WARNING: _XOPEN_SOURCE is lower than requested" >&5
echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;}
fi
else
-echo "$as_me:12581: checking if we should define _XOPEN_SOURCE" >&5
+echo "$as_me:13949: checking if we should define _XOPEN_SOURCE" >&5
echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
if test "${cf_cv_xopen_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 12588 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13956 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12603,29 +13971,29 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12607: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13975: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12610: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12613: \"$ac_try\"") >&5
+ echo "$as_me:13978: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13981: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12616: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13984: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 12628 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13996 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12643,32 +14011,32 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12647: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14015: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12650: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12653: \"$ac_try\"") >&5
+ echo "$as_me:14018: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14021: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12656: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14024: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xopen_source=$cf_XOPEN_SOURCE
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:12671: result: $cf_cv_xopen_source" >&5
+echo "$as_me:14039: result: $cf_cv_xopen_source" >&5
echo "${ECHO_T}$cf_cv_xopen_source" >&6
if test "$cf_cv_xopen_source" != no ; then
@@ -12683,26 +14051,52 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+for cf_add_cflags in $cf_temp_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_temp_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -12721,7 +14115,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -12751,7 +14145,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -12781,6 +14175,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
fi
fi
@@ -12794,7 +14190,7 @@ if test "${enable_largefile+set}" = set; then
fi;
if test "$enable_largefile" != no; then
- echo "$as_me:12797: checking for special C compiler options needed for large files" >&5
+ echo "$as_me:14193: checking for special C compiler options needed for large files" >&5
echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_largefile_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -12805,8 +14201,8 @@ else
while :; do
# IRIX 6.2 and later do not support large files by default,
# so use the C compiler's -n32 option if that helps.
- cat >conftest.$ac_ext <<_ACEOF
-#line 12809 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14205 "configure"
#include "confdefs.h"
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -12825,64 +14221,64 @@ main (void)
return 0;
}
_ACEOF
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12829: \"$ac_compile\"") >&5
+ rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14225: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12832: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12835: \"$ac_try\"") >&5
+ echo "$as_me:14228: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14231: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12838: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14234: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext
+rm -f "conftest.$ac_objext"
CC="$CC -n32"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12848: \"$ac_compile\"") >&5
+ rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14244: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12851: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12854: \"$ac_try\"") >&5
+ echo "$as_me:14247: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14250: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12857: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14253: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_largefile_CC=' -n32'; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext
+rm -f "conftest.$ac_objext"
break
done
CC=$ac_save_CC
- rm -f conftest.$ac_ext
+ rm -f "conftest.$ac_ext"
fi
fi
-echo "$as_me:12871: result: $ac_cv_sys_largefile_CC" >&5
+echo "$as_me:14267: result: $ac_cv_sys_largefile_CC" >&5
echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
if test "$ac_cv_sys_largefile_CC" != no; then
CC=$CC$ac_cv_sys_largefile_CC
fi
- echo "$as_me:12877: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+ echo "$as_me:14273: checking for _FILE_OFFSET_BITS value needed for large files" >&5
echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_file_offset_bits+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
while :; do
ac_cv_sys_file_offset_bits=no
- cat >conftest.$ac_ext <<_ACEOF
-#line 12885 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14281 "configure"
#include "confdefs.h"
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -12901,26 +14297,26 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12905: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14301: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12908: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12911: \"$ac_try\"") >&5
+ echo "$as_me:14304: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14307: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12914: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14310: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 12923 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14319 "configure"
#include "confdefs.h"
#define _FILE_OFFSET_BITS 64
#include <sys/types.h>
@@ -12940,28 +14336,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12944: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14340: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12947: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12950: \"$ac_try\"") >&5
+ echo "$as_me:14343: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14346: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12953: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14349: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_file_offset_bits=64; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
break
done
fi
-echo "$as_me:12964: result: $ac_cv_sys_file_offset_bits" >&5
+echo "$as_me:14360: result: $ac_cv_sys_file_offset_bits" >&5
echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
if test "$ac_cv_sys_file_offset_bits" != no; then
@@ -12971,15 +14367,15 @@ EOF
fi
rm -rf conftest*
- echo "$as_me:12974: checking for _LARGE_FILES value needed for large files" >&5
+ echo "$as_me:14370: checking for _LARGE_FILES value needed for large files" >&5
echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_large_files+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
while :; do
ac_cv_sys_large_files=no
- cat >conftest.$ac_ext <<_ACEOF
-#line 12982 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14378 "configure"
#include "confdefs.h"
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -12998,26 +14394,26 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13002: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14398: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13005: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13008: \"$ac_try\"") >&5
+ echo "$as_me:14401: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14404: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13011: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14407: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 13020 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14416 "configure"
#include "confdefs.h"
#define _LARGE_FILES 1
#include <sys/types.h>
@@ -13037,28 +14433,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13041: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14437: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13044: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13047: \"$ac_try\"") >&5
+ echo "$as_me:14440: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14443: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13050: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14446: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_large_files=1; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
break
done
fi
-echo "$as_me:13061: result: $ac_cv_sys_large_files" >&5
+echo "$as_me:14457: result: $ac_cv_sys_large_files" >&5
echo "${ECHO_T}$ac_cv_sys_large_files" >&6
if test "$ac_cv_sys_large_files" != no; then
@@ -13071,15 +14467,15 @@ rm -rf conftest*
fi
if test "$enable_largefile" != no ; then
- echo "$as_me:13074: checking for _LARGEFILE_SOURCE value needed for large files" >&5
+ echo "$as_me:14470: checking for _LARGEFILE_SOURCE value needed for large files" >&5
echo $ECHO_N "checking for _LARGEFILE_SOURCE value needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_largefile_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
while :; do
ac_cv_sys_largefile_source=no
- cat >conftest.$ac_ext <<_ACEOF
-#line 13082 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14478 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -13090,26 +14486,26 @@ return !fseeko;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13094: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14490: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13097: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13100: \"$ac_try\"") >&5
+ echo "$as_me:14493: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14496: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13103: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14499: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 13112 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14508 "configure"
#include "confdefs.h"
#define _LARGEFILE_SOURCE 1
#include <stdio.h>
@@ -13121,28 +14517,28 @@ return !fseeko;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13125: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14521: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13128: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13131: \"$ac_try\"") >&5
+ echo "$as_me:14524: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14527: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13134: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14530: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_largefile_source=1; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
break
done
fi
-echo "$as_me:13145: result: $ac_cv_sys_largefile_source" >&5
+echo "$as_me:14541: result: $ac_cv_sys_largefile_source" >&5
echo "${ECHO_T}$ac_cv_sys_largefile_source" >&6
if test "$ac_cv_sys_largefile_source" != no; then
@@ -13156,13 +14552,13 @@ rm -rf conftest*
# We used to try defining _XOPEN_SOURCE=500 too, to work around a bug
# in glibc 2.1.3, but that breaks too many other things.
# If you want fseeko and ftello with glibc, upgrade to a fixed glibc.
-echo "$as_me:13159: checking for fseeko" >&5
+echo "$as_me:14555: checking for fseeko" >&5
echo $ECHO_N "checking for fseeko... $ECHO_C" >&6
if test "${ac_cv_func_fseeko+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13165 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14561 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -13173,27 +14569,27 @@ return fseeko && fseeko (stdin, 0, 0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:13177: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:14573: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:13180: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:13183: \"$ac_try\"") >&5
+ echo "$as_me:14576: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:14579: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13186: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14582: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_fseeko=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_fseeko=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:13196: result: $ac_cv_func_fseeko" >&5
+echo "$as_me:14592: result: $ac_cv_func_fseeko" >&5
echo "${ECHO_T}$ac_cv_func_fseeko" >&6
if test $ac_cv_func_fseeko = yes; then
@@ -13232,14 +14628,14 @@ fi
fi
- echo "$as_me:13235: checking whether to use struct dirent64" >&5
+ echo "$as_me:14631: checking whether to use struct dirent64" >&5
echo $ECHO_N "checking whether to use struct dirent64... $ECHO_C" >&6
if test "${cf_cv_struct_dirent64+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13242 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14638 "configure"
#include "confdefs.h"
#pragma GCC diagnostic error "-Wincompatible-pointer-types"
@@ -13255,33 +14651,34 @@ main (void)
struct dirent64 *x = readdir((DIR *)0);
struct dirent *y = readdir((DIR *)0);
int z = x - y;
+ (void)z;
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13264: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14661: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13267: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13270: \"$ac_try\"") >&5
+ echo "$as_me:14664: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14667: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13273: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14670: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_struct_dirent64=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_struct_dirent64=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:13284: result: $cf_cv_struct_dirent64" >&5
+echo "$as_me:14681: result: $cf_cv_struct_dirent64" >&5
echo "${ECHO_T}$cf_cv_struct_dirent64" >&6
test "$cf_cv_struct_dirent64" = yes &&
cat >>confdefs.h <<\EOF
@@ -13291,7 +14688,7 @@ EOF
fi
### Enable compiling-in rcs id's
-echo "$as_me:13294: checking if RCS identifiers should be compiled-in" >&5
+echo "$as_me:14691: checking if RCS identifiers should be compiled-in" >&5
echo $ECHO_N "checking if RCS identifiers should be compiled-in... $ECHO_C" >&6
# Check whether --with-rcs-ids or --without-rcs-ids was given.
@@ -13301,7 +14698,7 @@ if test "${with_rcs_ids+set}" = set; then
else
with_rcs_ids=no
fi;
-echo "$as_me:13304: result: $with_rcs_ids" >&5
+echo "$as_me:14701: result: $with_rcs_ids" >&5
echo "${ECHO_T}$with_rcs_ids" >&6
test "$with_rcs_ids" = yes &&
cat >>confdefs.h <<\EOF
@@ -13311,7 +14708,7 @@ EOF
###############################################################################
### Note that some functions (such as const) are normally disabled anyway.
-echo "$as_me:13314: checking if you want to build with function extensions" >&5
+echo "$as_me:14711: checking if you want to build with function extensions" >&5
echo $ECHO_N "checking if you want to build with function extensions... $ECHO_C" >&6
# Check whether --enable-ext-funcs or --disable-ext-funcs was given.
@@ -13321,7 +14718,7 @@ if test "${enable_ext_funcs+set}" = set; then
else
with_ext_funcs=yes
fi;
-echo "$as_me:13324: result: $with_ext_funcs" >&5
+echo "$as_me:14721: result: $with_ext_funcs" >&5
echo "${ECHO_T}$with_ext_funcs" >&6
if test "$with_ext_funcs" = yes ; then
NCURSES_EXT_FUNCS=1
@@ -13339,7 +14736,7 @@ else
fi
### use option --enable-const to turn on use of const beyond that in XSI.
-echo "$as_me:13342: checking for extended use of const keyword" >&5
+echo "$as_me:14739: checking for extended use of const keyword" >&5
echo $ECHO_N "checking for extended use of const keyword... $ECHO_C" >&6
# Check whether --enable-const or --disable-const was given.
@@ -13349,7 +14746,7 @@ if test "${enable_const+set}" = set; then
else
with_ext_const=no
fi;
-echo "$as_me:13352: result: $with_ext_const" >&5
+echo "$as_me:14749: result: $with_ext_const" >&5
echo "${ECHO_T}$with_ext_const" >&6
NCURSES_CONST='/*nothing*/'
if test "$with_ext_const" = yes ; then
@@ -13359,7 +14756,7 @@ fi
###############################################################################
# These options are relatively safe to experiment with.
-echo "$as_me:13362: checking if you want all development code" >&5
+echo "$as_me:14759: checking if you want all development code" >&5
echo $ECHO_N "checking if you want all development code... $ECHO_C" >&6
# Check whether --with-develop or --without-develop was given.
@@ -13369,7 +14766,7 @@ if test "${with_develop+set}" = set; then
else
with_develop=no
fi;
-echo "$as_me:13372: result: $with_develop" >&5
+echo "$as_me:14769: result: $with_develop" >&5
echo "${ECHO_T}$with_develop" >&6
###############################################################################
@@ -13378,7 +14775,7 @@ echo "${ECHO_T}$with_develop" >&6
# This is still experimental (20080329), but should ultimately be moved to
# the script-block --with-normal, etc.
-echo "$as_me:13381: checking if you want to link with the pthread library" >&5
+echo "$as_me:14778: checking if you want to link with the pthread library" >&5
echo $ECHO_N "checking if you want to link with the pthread library... $ECHO_C" >&6
# Check whether --with-pthread or --without-pthread was given.
@@ -13388,28 +14785,28 @@ if test "${with_pthread+set}" = set; then
else
with_pthread=no
fi;
-echo "$as_me:13391: result: $with_pthread" >&5
+echo "$as_me:14788: result: $with_pthread" >&5
echo "${ECHO_T}$with_pthread" >&6
if test "$with_pthread" != no ; then
- echo "$as_me:13395: checking for pthread.h" >&5
+ echo "$as_me:14792: checking for pthread.h" >&5
echo $ECHO_N "checking for pthread.h... $ECHO_C" >&6
if test "${ac_cv_header_pthread_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13401 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14798 "configure"
#include "confdefs.h"
#include <pthread.h>
_ACEOF
-if { (eval echo "$as_me:13405: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:14802: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:13411: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:14808: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -13422,14 +14819,14 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_pthread_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_pthread_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:13430: result: $ac_cv_header_pthread_h" >&5
+echo "$as_me:14827: result: $ac_cv_header_pthread_h" >&5
echo "${ECHO_T}$ac_cv_header_pthread_h" >&6
-if test $ac_cv_header_pthread_h = yes; then
+if test "$ac_cv_header_pthread_h" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_PTHREADS_H 1
@@ -13437,7 +14834,7 @@ EOF
for cf_lib_pthread in pthread c_r
do
- echo "$as_me:13440: checking if we can link with the $cf_lib_pthread library" >&5
+ echo "$as_me:14837: checking if we can link with the $cf_lib_pthread library" >&5
echo $ECHO_N "checking if we can link with the $cf_lib_pthread library... $ECHO_C" >&6
cf_save_LIBS="$LIBS"
@@ -13457,8 +14854,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 13461 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14858 "configure"
#include "confdefs.h"
#include <pthread.h>
@@ -13474,27 +14871,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:13478: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:14875: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:13481: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:13484: \"$ac_try\"") >&5
+ echo "$as_me:14878: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:14881: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13487: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14884: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
with_pthread=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
with_pthread=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
- echo "$as_me:13497: result: $with_pthread" >&5
+ echo "$as_me:14894: result: $with_pthread" >&5
echo "${ECHO_T}$with_pthread" >&6
test "$with_pthread" = yes && break
done
@@ -13522,7 +14919,7 @@ cat >>confdefs.h <<\EOF
EOF
else
- { { echo "$as_me:13525: error: Cannot link with pthread library" >&5
+ { { echo "$as_me:14922: error: Cannot link with pthread library" >&5
echo "$as_me: error: Cannot link with pthread library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -13531,7 +14928,7 @@ fi
fi
-echo "$as_me:13534: checking if you want to use weak-symbols for pthreads" >&5
+echo "$as_me:14931: checking if you want to use weak-symbols for pthreads" >&5
echo $ECHO_N "checking if you want to use weak-symbols for pthreads... $ECHO_C" >&6
# Check whether --enable-weak-symbols or --disable-weak-symbols was given.
@@ -13541,18 +14938,18 @@ if test "${enable_weak_symbols+set}" = set; then
else
use_weak_symbols=no
fi;
-echo "$as_me:13544: result: $use_weak_symbols" >&5
+echo "$as_me:14941: result: $use_weak_symbols" >&5
echo "${ECHO_T}$use_weak_symbols" >&6
if test "$use_weak_symbols" = yes ; then
-echo "$as_me:13548: checking if $CC supports weak symbols" >&5
+echo "$as_me:14945: checking if $CC supports weak symbols" >&5
echo $ECHO_N "checking if $CC supports weak symbols... $ECHO_C" >&6
if test "${cf_cv_weak_symbols+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 13555 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 14952 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -13577,28 +14974,28 @@ weak_symbol(fopen);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13581: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14978: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13584: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13587: \"$ac_try\"") >&5
+ echo "$as_me:14981: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14984: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13590: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14987: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_weak_symbols=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_weak_symbols=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:13601: result: $cf_cv_weak_symbols" >&5
+echo "$as_me:14998: result: $cf_cv_weak_symbols" >&5
echo "${ECHO_T}$cf_cv_weak_symbols" >&6
else
@@ -13627,13 +15024,13 @@ EOF
fi
# OpenSUSE is installing ncurses6, using reentrant option.
-echo "$as_me:13630: checking for _nc_TABSIZE" >&5
+echo "$as_me:15027: checking for _nc_TABSIZE" >&5
echo $ECHO_N "checking for _nc_TABSIZE... $ECHO_C" >&6
if test "${ac_cv_func__nc_TABSIZE+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13636 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15033 "configure"
#include "confdefs.h"
#define _nc_TABSIZE autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -13663,29 +15060,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:13667: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15064: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:13670: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:13673: \"$ac_try\"") >&5
+ echo "$as_me:15067: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15070: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13676: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15073: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func__nc_TABSIZE=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func__nc_TABSIZE=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:13686: result: $ac_cv_func__nc_TABSIZE" >&5
+echo "$as_me:15083: result: $ac_cv_func__nc_TABSIZE" >&5
echo "${ECHO_T}$ac_cv_func__nc_TABSIZE" >&6
-if test $ac_cv_func__nc_TABSIZE = yes; then
+if test "$ac_cv_func__nc_TABSIZE" = yes; then
assume_reentrant=yes
else
assume_reentrant=no
@@ -13695,7 +15092,7 @@ fi
# opaque outside of that, so there is no --enable-opaque option. We can use
# this option without --with-pthreads, but this will be always set for
# pthreads.
-echo "$as_me:13698: checking if you want experimental reentrant code" >&5
+echo "$as_me:15095: checking if you want experimental reentrant code" >&5
echo $ECHO_N "checking if you want experimental reentrant code... $ECHO_C" >&6
# Check whether --enable-reentrant or --disable-reentrant was given.
@@ -13705,7 +15102,7 @@ if test "${enable_reentrant+set}" = set; then
else
with_reentrant=$assume_reentrant
fi;
-echo "$as_me:13708: result: $with_reentrant" >&5
+echo "$as_me:15105: result: $with_reentrant" >&5
echo "${ECHO_T}$with_reentrant" >&6
if test "$with_reentrant" = yes ; then
cf_cv_enable_reentrant=1
@@ -13728,7 +15125,7 @@ fi
### Allow using a different wrap-prefix
if test "$cf_cv_enable_reentrant" != 0 || test "$BROKEN_LINKER" = 1 ; then
- echo "$as_me:13731: checking for prefix used to wrap public variables" >&5
+ echo "$as_me:15128: checking for prefix used to wrap public variables" >&5
echo $ECHO_N "checking for prefix used to wrap public variables... $ECHO_C" >&6
# Check whether --with-wrap-prefix or --without-wrap-prefix was given.
@@ -13738,7 +15135,7 @@ if test "${with_wrap_prefix+set}" = set; then
else
NCURSES_WRAP_PREFIX=_nc_
fi;
- echo "$as_me:13741: result: $NCURSES_WRAP_PREFIX" >&5
+ echo "$as_me:15138: result: $NCURSES_WRAP_PREFIX" >&5
echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6
else
NCURSES_WRAP_PREFIX=_nc_
@@ -13752,7 +15149,7 @@ EOF
### use option --disable-echo to suppress full display compiling commands
-echo "$as_me:13755: checking if you want to see long compiling messages" >&5
+echo "$as_me:15152: checking if you want to see long compiling messages" >&5
echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6
# Check whether --enable-echo or --disable-echo was given.
@@ -13786,24 +15183,235 @@ else
ECHO_CC=''
fi;
-echo "$as_me:13789: result: $enableval" >&5
+echo "$as_me:15186: result: $enableval" >&5
echo "${ECHO_T}$enableval" >&6
-### use option --enable-warnings to turn on all gcc warnings
-echo "$as_me:13793: checking if you want to see compiler warnings" >&5
-echo $ECHO_N "checking if you want to see compiler warnings... $ECHO_C" >&6
+echo "$as_me:15189: checking if you want to use C11 _Noreturn feature" >&5
+echo $ECHO_N "checking if you want to use C11 _Noreturn feature... $ECHO_C" >&6
+
+# Check whether --enable-stdnoreturn or --disable-stdnoreturn was given.
+if test "${enable_stdnoreturn+set}" = set; then
+ enableval="$enable_stdnoreturn"
+ test "$enableval" != yes && enableval=no
+ if test "$enableval" != "no" ; then
+ enable_stdnoreturn=yes
+ else
+ enable_stdnoreturn=no
+ fi
+else
+ enableval=no
+ enable_stdnoreturn=no
+
+fi;
+echo "$as_me:15206: result: $enable_stdnoreturn" >&5
+echo "${ECHO_T}$enable_stdnoreturn" >&6
+
+if test $enable_stdnoreturn = yes; then
+echo "$as_me:15210: checking for C11 _Noreturn feature" >&5
+echo $ECHO_N "checking for C11 _Noreturn feature... $ECHO_C" >&6
+if test "${cf_cv_c11_noreturn+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15216 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdnoreturn.h>
+static _Noreturn void giveup(void) { exit(0); }
+
+int
+main (void)
+{
+if (feof(stdin)) giveup()
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:15233: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:15236: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:15239: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:15242: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_cv_c11_noreturn=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_cv_c11_noreturn=no
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+
+fi
+echo "$as_me:15253: result: $cf_cv_c11_noreturn" >&5
+echo "${ECHO_T}$cf_cv_c11_noreturn" >&6
+else
+ cf_cv_c11_noreturn=no,
+fi
+
+if test "$cf_cv_c11_noreturn" = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_STDNORETURN_H 1
+EOF
+
+cat >>confdefs.h <<EOF
+#define STDC_NORETURN _Noreturn
+EOF
+
+ HAVE_STDNORETURN_H=1
+else
+ HAVE_STDNORETURN_H=0
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $CFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing CFLAGS: $CFLAGS" 1>&6
+
+echo "${as_me:-configure}:15283: testing repairing CFLAGS: $CFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $CFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ CFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $CFLAGS" 1>&6
+
+echo "${as_me:-configure}:15306: testing ... fixed $CFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:15310: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $CPPFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing CPPFLAGS: $CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:15322: testing repairing CPPFLAGS: $CPPFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $CPPFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ CPPFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:15345: testing ... fixed $CPPFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:15349: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $LDFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing LDFLAGS: $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:15361: testing repairing LDFLAGS: $LDFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $LDFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ LDFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:15384: testing ... fixed $LDFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:15388: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+echo "$as_me:15394: checking if you want to turn on gcc warnings" >&5
+echo $ECHO_N "checking if you want to turn on gcc warnings... $ECHO_C" >&6
# Check whether --enable-warnings or --disable-warnings was given.
if test "${enable_warnings+set}" = set; then
enableval="$enable_warnings"
- with_warnings=$enableval
-fi;
-echo "$as_me:13801: result: $with_warnings" >&5
-echo "${ECHO_T}$with_warnings" >&6
-
-if test "x$with_warnings" = "xyes"; then
+ test "$enableval" != yes && enableval=no
+ if test "$enableval" != "no" ; then
+ enable_warnings=yes
+ else
+ enable_warnings=no
+ fi
+else
+ enableval=no
+ enable_warnings=no
- ADAFLAGS="$ADAFLAGS -gnatg"
+fi;
+echo "$as_me:15411: result: $enable_warnings" >&5
+echo "${ECHO_T}$enable_warnings" >&6
+if test "$enable_warnings" = "yes"
+then
if test "x$have_x" = xyes; then
@@ -13823,8 +15431,8 @@ do
esac
done
-cat >conftest.$ac_ext <<_ACEOF
-#line 13827 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 15435 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -13833,32 +15441,32 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-String foo = malloc(1)
+String foo = malloc(1); free((void*)foo)
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13842: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:15450: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13845: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13848: \"$ac_try\"") >&5
+ echo "$as_me:15453: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:15456: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13851: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15459: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
-echo "$as_me:13854: checking for X11/Xt const-feature" >&5
+echo "$as_me:15462: checking for X11/Xt const-feature" >&5
echo $ECHO_N "checking for X11/Xt const-feature... $ECHO_C" >&6
if test "${cf_cv_const_x_string+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13861 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15469 "configure"
#include "confdefs.h"
#define _CONST_X_STRING /* X11R7.8 (perhaps) */
@@ -13874,39 +15482,39 @@ String foo = malloc(1); *foo = 0
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13878: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:15486: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13881: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13884: \"$ac_try\"") >&5
+ echo "$as_me:15489: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:15492: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13887: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15495: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_const_x_string=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_const_x_string=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:13902: result: $cf_cv_const_x_string" >&5
+echo "$as_me:15510: result: $cf_cv_const_x_string" >&5
echo "${ECHO_T}$cf_cv_const_x_string" >&6
LIBS="$cf_save_LIBS_CF_CONST_X_STRING"
CFLAGS="$cf_save_CFLAGS_CF_CONST_X_STRING"
CPPFLAGS="$cf_save_CPPFLAGS_CF_CONST_X_STRING"
-case $cf_cv_const_x_string in
+case "$cf_cv_const_x_string" in
(no)
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
@@ -13923,12 +15531,12 @@ esac
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-cat > conftest.$ac_ext <<EOF
-#line 13931 "${as_me:-configure}"
+cat > "conftest.$ac_ext" <<EOF
+#line 15539 "${as_me:-configure}"
int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
EOF
if test "$INTEL_COMPILER" = yes
@@ -13944,10 +15552,10 @@ then
# remark #981: operands are evaluated in unspecified order
# warning #279: controlling expression is constant
- { echo "$as_me:13947: checking for $CC warning options..." >&5
+ { echo "$as_me:15555: checking for $CC warning options..." >&5
echo "$as_me: checking for $CC warning options..." >&6;}
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wall"
for cf_opt in \
wd1419 \
wd1683 \
@@ -13960,12 +15568,12 @@ echo "$as_me: checking for $CC warning options..." >&6;}
wd981
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if { (eval echo "$as_me:13963: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:15571: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13966: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:13968: result: ... -$cf_opt" >&5
+ echo "$as_me:15574: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:15576: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
fi
@@ -13973,10 +15581,9 @@ echo "${ECHO_T}... -$cf_opt" >&6
CFLAGS="$cf_save_CFLAGS"
elif test "$GCC" = yes && test "$GCC_VERSION" != "unknown"
then
- { echo "$as_me:13976: checking for $CC warning options..." >&5
+ { echo "$as_me:15584: checking for $CC warning options..." >&5
echo "$as_me: checking for $CC warning options..." >&6;}
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS=
cf_warn_CONST=""
test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
@@ -13997,30 +15604,30 @@ echo "$as_me: checking for $CC warning options..." >&6;}
Wundef Wno-inline $cf_gcc_warnings $cf_warn_CONST Wno-unknown-pragmas Wswitch-enum
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if { (eval echo "$as_me:14000: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:15607: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14003: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:14005: result: ... -$cf_opt" >&5
+ echo "$as_me:15610: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:15612: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
- case $cf_opt in
+ case "$cf_opt" in
(Winline)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([34].*)
test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-echo "${as_me:-configure}:14013: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
+echo "${as_me:-configure}:15620: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
continue;;
esac
;;
(Wpointer-arith)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([12].*)
test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-echo "${as_me:-configure}:14023: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
+echo "${as_me:-configure}:15630: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
continue;;
esac
@@ -14031,11 +15638,11 @@ echo "${as_me:-configure}:14023: testing feature is broken in gcc $GCC_VERSION .
done
CFLAGS="$cf_save_CFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
-if test "$GCC" = yes
+if test "$GCC" = yes || test "$GXX" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -14053,10 +15660,10 @@ cat > conftest.i <<EOF
EOF
if test "$GCC" = yes
then
- { echo "$as_me:14056: checking for $CC __attribute__ directives..." >&5
+ { echo "$as_me:15663: checking for $CC __attribute__ directives..." >&5
echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
-cat > conftest.$ac_ext <<EOF
-#line 14059 "${as_me:-configure}"
+cat > "conftest.$ac_ext" <<EOF
+#line 15666 "${as_me:-configure}"
#include "confdefs.h"
#include "conftest.h"
#include "conftest.i"
@@ -14071,9 +15678,9 @@ cat > conftest.$ac_ext <<EOF
#define GCC_SCANFLIKE(fmt,var) /*nothing*/
#endif
extern void wow(char *,...) GCC_SCANFLIKE(1,2);
-extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
-extern void foo(void) GCC_NORETURN;
-int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; }
+extern GCC_NORETURN void oops(char *,...) GCC_PRINTFLIKE(1,2);
+extern GCC_NORETURN void foo(void);
+int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { (void)argc; (void)argv; return 0; }
EOF
cf_printf_attribute=no
cf_scanf_attribute=no
@@ -14085,7 +15692,7 @@ cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFG
cf_directive="__attribute__(($cf_attribute))"
echo "checking for $CC $cf_directive" 1>&5
- case $cf_attribute in
+ case "$cf_attribute" in
(printf)
cf_printf_attribute=yes
cat >conftest.h <<EOF
@@ -14105,15 +15712,15 @@ EOF
;;
esac
- if { (eval echo "$as_me:14108: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:15715: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14111: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:14113: result: ... $cf_attribute" >&5
+ echo "$as_me:15718: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:15720: result: ... $cf_attribute" >&5
echo "${ECHO_T}... $cf_attribute" >&6
cat conftest.h >>confdefs.h
- case $cf_attribute in
+ case "$cf_attribute" in
(noreturn)
cat >>confdefs.h <<EOF
@@ -14164,13 +15771,21 @@ EOF
fi
done
else
- fgrep define conftest.i >>confdefs.h
+ ${FGREP-fgrep} define conftest.i >>confdefs.h
fi
-rm -rf conftest*
+rm -rf ./conftest*
+fi
+
+fi
+
+if test "x$enable_warnings" = "xyes"; then
+
+ ADAFLAGS="$ADAFLAGS -gnatg"
+
fi
### use option --enable-assertions to turn on generation of assertion code
-echo "$as_me:14173: checking if you want to enable runtime assertions" >&5
+echo "$as_me:15788: checking if you want to enable runtime assertions" >&5
echo $ECHO_N "checking if you want to enable runtime assertions... $ECHO_C" >&6
# Check whether --enable-assertions or --disable-assertions was given.
@@ -14180,7 +15795,7 @@ if test "${enable_assertions+set}" = set; then
else
with_assertions=no
fi;
-echo "$as_me:14183: result: $with_assertions" >&5
+echo "$as_me:15798: result: $with_assertions" >&5
echo "${ECHO_T}$with_assertions" >&6
if test -n "$GCC"
then
@@ -14233,7 +15848,7 @@ case "$CFLAGS $CPPFLAGS" in
;;
esac
-echo "$as_me:14236: checking whether to add trace feature to all models" >&5
+echo "$as_me:15851: checking whether to add trace feature to all models" >&5
echo $ECHO_N "checking whether to add trace feature to all models... $ECHO_C" >&6
# Check whether --with-trace or --without-trace was given.
@@ -14243,7 +15858,7 @@ if test "${with_trace+set}" = set; then
else
cf_with_trace=$cf_all_traces
fi;
-echo "$as_me:14246: result: $cf_with_trace" >&5
+echo "$as_me:15861: result: $cf_with_trace" >&5
echo "${ECHO_T}$cf_with_trace" >&6
if test "$cf_with_trace" = yes ; then
@@ -14256,19 +15871,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -DTRACE
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -14287,7 +15902,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -14317,7 +15932,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -14351,7 +15966,7 @@ else
ADA_TRACE=FALSE
fi
-echo "$as_me:14354: checking if we want to use GNAT projects" >&5
+echo "$as_me:15969: checking if we want to use GNAT projects" >&5
echo $ECHO_N "checking if we want to use GNAT projects... $ECHO_C" >&6
# Check whether --enable-gnat-projects or --disable-gnat-projects was given.
@@ -14368,7 +15983,7 @@ else
enable_gnat_projects=yes
fi;
-echo "$as_me:14371: result: $enable_gnat_projects" >&5
+echo "$as_me:15986: result: $enable_gnat_projects" >&5
echo "${ECHO_T}$enable_gnat_projects" >&6
### Checks for libraries.
@@ -14376,13 +15991,13 @@ case $cf_cv_system_name in
(*mingw32*)
;;
(*)
-echo "$as_me:14379: checking for gettimeofday" >&5
+echo "$as_me:15994: checking for gettimeofday" >&5
echo $ECHO_N "checking for gettimeofday... $ECHO_C" >&6
if test "${ac_cv_func_gettimeofday+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14385 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16000 "configure"
#include "confdefs.h"
#define gettimeofday autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -14412,44 +16027,44 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14416: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16031: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14419: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14422: \"$ac_try\"") >&5
+ echo "$as_me:16034: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16037: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14425: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16040: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_gettimeofday=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_gettimeofday=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:14435: result: $ac_cv_func_gettimeofday" >&5
+echo "$as_me:16050: result: $ac_cv_func_gettimeofday" >&5
echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6
-if test $ac_cv_func_gettimeofday = yes; then
+if test "$ac_cv_func_gettimeofday" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_GETTIMEOFDAY 1
EOF
else
-echo "$as_me:14444: checking for gettimeofday in -lbsd" >&5
+echo "$as_me:16059: checking for gettimeofday in -lbsd" >&5
echo $ECHO_N "checking for gettimeofday in -lbsd... $ECHO_C" >&6
if test "${ac_cv_lib_bsd_gettimeofday+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lbsd $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 14452 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16067 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -14467,30 +16082,30 @@ gettimeofday ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14471: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16086: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14474: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14477: \"$ac_try\"") >&5
+ echo "$as_me:16089: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16092: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14480: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16095: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_bsd_gettimeofday=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_bsd_gettimeofday=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:14491: result: $ac_cv_lib_bsd_gettimeofday" >&5
+echo "$as_me:16106: result: $ac_cv_lib_bsd_gettimeofday" >&5
echo "${ECHO_T}$ac_cv_lib_bsd_gettimeofday" >&6
-if test $ac_cv_lib_bsd_gettimeofday = yes; then
+if test "$ac_cv_lib_bsd_gettimeofday" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_GETTIMEOFDAY 1
@@ -14504,13 +16119,13 @@ fi
esac
### Checks for header files.
-echo "$as_me:14507: checking for ANSI C header files" >&5
+echo "$as_me:16122: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
if test "${ac_cv_header_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14513 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16128 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@@ -14518,14 +16133,14 @@ else
#include <float.h>
_ACEOF
-if { (eval echo "$as_me:14521: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:16136: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:14527: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:16142: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -14538,21 +16153,21 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_stdc=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 14549 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16164 "configure"
#include "confdefs.h"
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "memchr" >/dev/null 2>&1; then
+ $EGREP "memchr" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -14563,14 +16178,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 14567 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16182 "configure"
#include "confdefs.h"
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "free" >/dev/null 2>&1; then
+ $EGREP "free" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -14584,8 +16199,8 @@ if test $ac_cv_header_stdc = yes; then
if test "$cross_compiling" = yes; then
:
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14588 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16203 "configure"
#include "confdefs.h"
#include <ctype.h>
#if ((' ' & 0x0FF) == 0x020)
@@ -14610,29 +16225,29 @@ main (void)
$ac_main_return (0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:14614: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:16229: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14617: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:14619: \"$ac_try\"") >&5
+ echo "$as_me:16232: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:16234: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14622: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16237: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
fi
-echo "$as_me:14635: result: $ac_cv_header_stdc" >&5
+echo "$as_me:16250: result: $ac_cv_header_stdc" >&5
echo "${ECHO_T}$ac_cv_header_stdc" >&6
if test $ac_cv_header_stdc = yes; then
@@ -14648,40 +16263,40 @@ for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
inttypes.h stdint.h unistd.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:14651: checking for $ac_header" >&5
+echo "$as_me:16266: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14657 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16272 "configure"
#include "confdefs.h"
$ac_includes_default
#include <$ac_header>
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14663: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16278: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14666: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14669: \"$ac_try\"") >&5
+ echo "$as_me:16281: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16284: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14672: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16287: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:14682: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:16297: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -14689,13 +16304,13 @@ EOF
fi
done
-echo "$as_me:14692: checking for signed char" >&5
+echo "$as_me:16307: checking for signed char" >&5
echo $ECHO_N "checking for signed char... $ECHO_C" >&6
if test "${ac_cv_type_signed_char+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14698 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16313 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -14709,30 +16324,30 @@ if (sizeof (signed char))
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14713: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16328: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14716: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14719: \"$ac_try\"") >&5
+ echo "$as_me:16331: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16334: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14722: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16337: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_type_signed_char=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_type_signed_char=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:14732: result: $ac_cv_type_signed_char" >&5
+echo "$as_me:16347: result: $ac_cv_type_signed_char" >&5
echo "${ECHO_T}$ac_cv_type_signed_char" >&6
-echo "$as_me:14735: checking size of signed char" >&5
+echo "$as_me:16350: checking size of signed char" >&5
echo $ECHO_N "checking size of signed char... $ECHO_C" >&6
if test "${ac_cv_sizeof_signed_char+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -14740,8 +16355,8 @@ else
if test "$ac_cv_type_signed_char" = yes; then
if test "$cross_compiling" = yes; then
# Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-#line 14744 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16359 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -14752,22 +16367,22 @@ int _array_ [1 - 2 * !((sizeof (signed char)) >= 0)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14756: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16371: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14759: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14762: \"$ac_try\"") >&5
+ echo "$as_me:16374: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16377: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14765: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16380: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_lo=0 ac_mid=0
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 14770 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16385 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -14778,33 +16393,33 @@ int _array_ [1 - 2 * !((sizeof (signed char)) <= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14782: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16397: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14785: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14788: \"$ac_try\"") >&5
+ echo "$as_me:16400: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16403: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14791: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16406: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_hi=$ac_mid; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1`
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`; ac_mid=`expr 2 '*' "$ac_mid" + 1`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_hi=-1 ac_mid=-1
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 14807 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16422 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -14815,33 +16430,33 @@ int _array_ [1 - 2 * !((sizeof (signed char)) >= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14819: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16434: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14822: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14825: \"$ac_try\"") >&5
+ echo "$as_me:16437: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16440: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14828: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16443: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_lo=$ac_mid; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid`
+cat "conftest.$ac_ext" >&5
+ac_hi=`expr "$ac_mid" - 1`; ac_mid=`expr 2 '*' "$ac_mid"`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
# Binary search between lo and hi bounds.
while test "x$ac_lo" != "x$ac_hi"; do
- ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
- cat >conftest.$ac_ext <<_ACEOF
-#line 14844 "configure"
+ ac_mid=`expr '(' "$ac_hi" - "$ac_lo" ')' / 2 + "$ac_lo"`
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16459 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -14852,35 +16467,35 @@ int _array_ [1 - 2 * !((sizeof (signed char)) <= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14856: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16471: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14859: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14862: \"$ac_try\"") >&5
+ echo "$as_me:16474: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16477: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14865: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16480: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_hi=$ac_mid
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_lo=`expr $ac_mid + 1`
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
ac_cv_sizeof_signed_char=$ac_lo
else
if test "$cross_compiling" = yes; then
- { { echo "$as_me:14878: error: cannot run test program while cross compiling" >&5
+ { { echo "$as_me:16493: error: cannot run test program while cross compiling" >&5
echo "$as_me: error: cannot run test program while cross compiling" >&2;}
{ (exit 1); exit 1; }; }
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14883 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16498 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -14889,30 +16504,30 @@ main (void)
FILE *f = fopen ("conftest.val", "w");
if (!f)
$ac_main_return (1);
-fprintf (f, "%d", (sizeof (signed char)));
+fprintf (f, "%ld", (long)(sizeof (signed char)));
fclose (f);
;
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:14899: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:16514: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14902: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:14904: \"$ac_try\"") >&5
+ echo "$as_me:16517: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:16519: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14907: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16522: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sizeof_signed_char=`cat conftest.val`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
rm -f conftest.val
@@ -14920,19 +16535,19 @@ else
ac_cv_sizeof_signed_char=0
fi
fi
-echo "$as_me:14923: result: $ac_cv_sizeof_signed_char" >&5
+echo "$as_me:16538: result: $ac_cv_sizeof_signed_char" >&5
echo "${ECHO_T}$ac_cv_sizeof_signed_char" >&6
cat >>confdefs.h <<EOF
#define SIZEOF_SIGNED_CHAR $ac_cv_sizeof_signed_char
EOF
-echo "$as_me:14929: checking for ANSI C header files" >&5
+echo "$as_me:16544: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
if test "${ac_cv_header_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14935 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16550 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@@ -14940,14 +16555,14 @@ else
#include <float.h>
_ACEOF
-if { (eval echo "$as_me:14943: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:16558: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:14949: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:16564: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -14960,21 +16575,21 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_stdc=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 14971 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16586 "configure"
#include "confdefs.h"
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "memchr" >/dev/null 2>&1; then
+ $EGREP "memchr" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -14985,14 +16600,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 14989 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16604 "configure"
#include "confdefs.h"
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "free" >/dev/null 2>&1; then
+ $EGREP "free" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -15006,8 +16621,8 @@ if test $ac_cv_header_stdc = yes; then
if test "$cross_compiling" = yes; then
:
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15010 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16625 "configure"
#include "confdefs.h"
#include <ctype.h>
#if ((' ' & 0x0FF) == 0x020)
@@ -15032,29 +16647,29 @@ main (void)
$ac_main_return (0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:15036: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:16651: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15039: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:15041: \"$ac_try\"") >&5
+ echo "$as_me:16654: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:16656: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15044: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16659: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
fi
-echo "$as_me:15057: result: $ac_cv_header_stdc" >&5
+echo "$as_me:16672: result: $ac_cv_header_stdc" >&5
echo "${ECHO_T}$ac_cv_header_stdc" >&6
if test $ac_cv_header_stdc = yes; then
@@ -15067,13 +16682,13 @@ fi
ac_header_dirent=no
for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-echo "$as_me:15070: checking for $ac_hdr that defines DIR" >&5
+echo "$as_me:16685: checking for $ac_hdr that defines DIR" >&5
echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15076 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16691 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <$ac_hdr>
@@ -15087,29 +16702,29 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15091: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16706: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15094: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:15097: \"$ac_try\"") >&5
+ echo "$as_me:16709: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16712: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15100: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16715: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:15110: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:16725: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
EOF
@@ -15120,15 +16735,15 @@ fi
done
# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
if test $ac_header_dirent = dirent.h; then
- echo "$as_me:15123: checking for opendir in -ldir" >&5
+ echo "$as_me:16738: checking for opendir in -ldir" >&5
echo $ECHO_N "checking for opendir in -ldir... $ECHO_C" >&6
if test "${ac_cv_lib_dir_opendir+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldir $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 15131 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16746 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -15146,43 +16761,43 @@ opendir ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15150: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16765: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15153: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15156: \"$ac_try\"") >&5
+ echo "$as_me:16768: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16771: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15159: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16774: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dir_opendir=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dir_opendir=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:15170: result: $ac_cv_lib_dir_opendir" >&5
+echo "$as_me:16785: result: $ac_cv_lib_dir_opendir" >&5
echo "${ECHO_T}$ac_cv_lib_dir_opendir" >&6
-if test $ac_cv_lib_dir_opendir = yes; then
+if test "$ac_cv_lib_dir_opendir" = yes; then
LIBS="$LIBS -ldir"
fi
else
- echo "$as_me:15177: checking for opendir in -lx" >&5
+ echo "$as_me:16792: checking for opendir in -lx" >&5
echo $ECHO_N "checking for opendir in -lx... $ECHO_C" >&6
if test "${ac_cv_lib_x_opendir+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lx $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 15185 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16800 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -15200,42 +16815,42 @@ opendir ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15204: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16819: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15207: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15210: \"$ac_try\"") >&5
+ echo "$as_me:16822: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16825: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15213: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16828: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_x_opendir=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_x_opendir=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:15224: result: $ac_cv_lib_x_opendir" >&5
+echo "$as_me:16839: result: $ac_cv_lib_x_opendir" >&5
echo "${ECHO_T}$ac_cv_lib_x_opendir" >&6
-if test $ac_cv_lib_x_opendir = yes; then
+if test "$ac_cv_lib_x_opendir" = yes; then
LIBS="$LIBS -lx"
fi
fi
-echo "$as_me:15232: checking whether time.h and sys/time.h may both be included" >&5
+echo "$as_me:16847: checking whether time.h and sys/time.h may both be included" >&5
echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6
if test "${ac_cv_header_time+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15238 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16853 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/time.h>
@@ -15250,27 +16865,27 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15254: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16869: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15257: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:15260: \"$ac_try\"") >&5
+ echo "$as_me:16872: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16875: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15263: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16878: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_header_time=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_time=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:15273: result: $ac_cv_header_time" >&5
+echo "$as_me:16888: result: $ac_cv_header_time" >&5
echo "${ECHO_T}$ac_cv_header_time" >&6
if test $ac_cv_header_time = yes; then
@@ -15283,18 +16898,18 @@ fi
### checks for compiler characteristics
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
-echo "$as_me:15291: checking for an ANSI C-conforming const" >&5
+echo "$as_me:16906: checking for an ANSI C-conforming const" >&5
echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
if test "${ac_cv_c_const+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15297 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16912 "configure"
#include "confdefs.h"
int
@@ -15351,27 +16966,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15355: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16970: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15358: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:15361: \"$ac_try\"") >&5
+ echo "$as_me:16973: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16976: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15364: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16979: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_c_const=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_c_const=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:15374: result: $ac_cv_c_const" >&5
+echo "$as_me:16989: result: $ac_cv_c_const" >&5
echo "${ECHO_T}$ac_cv_c_const" >&6
if test $ac_cv_c_const = no; then
@@ -15383,7 +16998,7 @@ fi
### Checks for external-data
-echo "$as_me:15386: checking if data-only library module links" >&5
+echo "$as_me:17001: checking if data-only library module links" >&5
echo $ECHO_N "checking if data-only library module links... $ECHO_C" >&6
if test "${cf_cv_link_dataonly+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -15391,20 +17006,20 @@ else
rm -f conftest.a
cat >conftest.$ac_ext <<EOF
-#line 15394 "configure"
+#line 17009 "configure"
int testdata[3] = { 123, 456, 789 };
EOF
- if { (eval echo "$as_me:15397: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:17012: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15400: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
+ echo "$as_me:17015: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
mv conftest.o data.o && \
( $AR $ARFLAGS conftest.a data.o ) 2>&5 1>/dev/null
fi
rm -f conftest.$ac_ext data.o
cat >conftest.$ac_ext <<EOF
-#line 15407 "configure"
+#line 17022 "configure"
int testfunc(void)
{
#if defined(NeXT)
@@ -15417,11 +17032,11 @@ int testfunc(void)
#endif
}
EOF
- if { (eval echo "$as_me:15420: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:17035: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15423: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:17038: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
mv conftest.o func.o && \
( $AR $ARFLAGS conftest.a func.o ) 2>&5 1>/dev/null
fi
@@ -15432,8 +17047,8 @@ EOF
if test "$cross_compiling" = yes; then
cf_cv_link_dataonly=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15436 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17051 "configure"
#include "confdefs.h"
int main(void)
@@ -15443,31 +17058,31 @@ else
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:15447: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:17062: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15450: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:15452: \"$ac_try\"") >&5
+ echo "$as_me:17065: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:17067: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15455: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17070: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_link_dataonly=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_link_dataonly=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
LIBS="$cf_saveLIBS"
fi
-echo "$as_me:15470: result: $cf_cv_link_dataonly" >&5
+echo "$as_me:17085: result: $cf_cv_link_dataonly" >&5
echo "${ECHO_T}$cf_cv_link_dataonly" >&6
if test "$cf_cv_link_dataonly" = no ; then
@@ -15486,24 +17101,24 @@ unistd.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:15489: checking for $ac_header" >&5
+echo "$as_me:17104: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15495 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17110 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:15499: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:17114: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:15505: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:17120: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -15516,14 +17131,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:15524: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:17139: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -15531,18 +17146,18 @@ EOF
fi
done
-echo "$as_me:15534: checking for working mkstemp" >&5
+echo "$as_me:17149: checking for working mkstemp" >&5
echo $ECHO_N "checking for working mkstemp... $ECHO_C" >&6
if test "${cf_cv_func_mkstemp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-rm -rf conftest*
+rm -rf ./conftest*
if test "$cross_compiling" = yes; then
cf_cv_func_mkstemp=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15545 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17160 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -15582,40 +17197,40 @@ int main(void)
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:15586: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:17201: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15589: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:15591: \"$ac_try\"") >&5
+ echo "$as_me:17204: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:17206: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15594: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17209: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_mkstemp=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_func_mkstemp=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:15609: result: $cf_cv_func_mkstemp" >&5
+echo "$as_me:17224: result: $cf_cv_func_mkstemp" >&5
echo "${ECHO_T}$cf_cv_func_mkstemp" >&6
if test "x$cf_cv_func_mkstemp" = xmaybe ; then
- echo "$as_me:15612: checking for mkstemp" >&5
+ echo "$as_me:17227: checking for mkstemp" >&5
echo $ECHO_N "checking for mkstemp... $ECHO_C" >&6
if test "${ac_cv_func_mkstemp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15618 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17233 "configure"
#include "confdefs.h"
#define mkstemp autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -15645,27 +17260,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15649: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17264: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15652: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15655: \"$ac_try\"") >&5
+ echo "$as_me:17267: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17270: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15658: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17273: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_mkstemp=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_mkstemp=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:15668: result: $ac_cv_func_mkstemp" >&5
+echo "$as_me:17283: result: $ac_cv_func_mkstemp" >&5
echo "${ECHO_T}$ac_cv_func_mkstemp" >&6
fi
@@ -15678,8 +17293,8 @@ EOF
fi
if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then
- CFLAGS=`echo ${CFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
- CXXFLAGS=`echo ${CXXFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
+ CFLAGS=`echo "${CFLAGS}" | sed -e 's%-g %%' -e 's%-g$%%' -e 's%[ ]% %g' -e 's% [ ]*% %g' -e 's%^ %%' -e 's% $%%'`
+ CXXFLAGS=`echo "${CXXFLAGS}" | sed -e 's%-g %%' -e 's%-g$%%' -e 's%[ ]% %g' -e 's% [ ]*% %g' -e 's%^ %%' -e 's% $%%'`
fi
cf_with_ada=yes
@@ -15694,7 +17309,7 @@ cf_upper_prog_gnat=`echo "${cf_prog_gnat}" | sed y%abcdefghijklmnopqrstuvwxyz./-
unset cf_TEMP_gnat
# Extract the first word of "$cf_prog_gnat", so it can be a program name with args.
set dummy $cf_prog_gnat; ac_word=$2
-echo "$as_me:15697: checking for $ac_word" >&5
+echo "$as_me:17312: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_cf_TEMP_gnat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -15711,7 +17326,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_cf_TEMP_gnat="$ac_dir/$ac_word"
- echo "$as_me:15714: found $ac_dir/$ac_word" >&5
+ echo "$as_me:17329: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -15723,20 +17338,20 @@ fi
cf_TEMP_gnat=$ac_cv_path_cf_TEMP_gnat
if test -n "$cf_TEMP_gnat"; then
- echo "$as_me:15726: result: $cf_TEMP_gnat" >&5
+ echo "$as_me:17341: result: $cf_TEMP_gnat" >&5
echo "${ECHO_T}$cf_TEMP_gnat" >&6
else
- echo "$as_me:15729: result: no" >&5
+ echo "$as_me:17344: result: no" >&5
echo "${ECHO_T}no" >&6
fi
- eval cf_cv_PATH_$cf_upper_prog_gnat=$ac_cv_path_cf_TEMP_gnat
+ eval "cf_cv_PATH_$cf_upper_prog_gnat=$ac_cv_path_cf_TEMP_gnat"
if test "x$cf_TEMP_gnat" != xno; then
unset cf_cv_gnat_version
unset cf_TEMP_gnat
-echo "$as_me:15739: checking for $cf_prog_gnat version" >&5
+echo "$as_me:17354: checking for $cf_prog_gnat version" >&5
echo $ECHO_N "checking for $cf_prog_gnat version... $ECHO_C" >&6
if test "${cf_cv_gnat_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -15747,13 +17362,13 @@ cf_cv_gnat_version=`$cf_prog_gnat --version 2>&1 | \
sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'`
fi
-echo "$as_me:15750: result: $cf_cv_gnat_version" >&5
+echo "$as_me:17365: result: $cf_cv_gnat_version" >&5
echo "${ECHO_T}$cf_cv_gnat_version" >&6
test -z "$cf_cv_gnat_version" && cf_cv_gnat_version=no
eval cf_TEMP_gnat=$cf_cv_gnat_version; unset cf_cv_gnat_version
fi
- eval cf_cv_VERSION_$cf_upper_prog_gnat=$cf_TEMP_gnat
+ eval "cf_cv_VERSION_$cf_upper_prog_gnat=$cf_TEMP_gnat"
unset cf_TEMP_gnat
unset cf_cv_gnat_version
@@ -15769,21 +17384,21 @@ else
# gprconfig is newer than gnatmake; we can continue...
cf_ada_config="##"
else
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src
then
cf_ada_config=""
cd conftest.src
for cf_gprconfig in Ada C
do
- echo "$as_me:15779: checking for gprconfig name for $cf_gprconfig" >&5
+ echo "$as_me:17394: checking for gprconfig name for $cf_gprconfig" >&5
echo $ECHO_N "checking for gprconfig name for $cf_gprconfig... $ECHO_C" >&6
- if test $cf_gprconfig = C
+ if test "$cf_gprconfig" = C
then
for cf_gprconfig_param in \
- $cf_gprconfig,,,,GNATGCC \
- $cf_gprconfig,,,,GCC \
- $cf_gprconfig
+ "$cf_gprconfig,,,,GNATGCC" \
+ "$cf_gprconfig,,,,GCC" \
+ "$cf_gprconfig"
do
cf_gprconfig_value=`echo s| gprconfig --config=$cf_gprconfig_param 2>&5 | ${AWK:-awk} '/^\*/{print $3;}' | head -n 1`
test -n "$cf_gprconfig_value" && break
@@ -15794,24 +17409,24 @@ echo $ECHO_N "checking for gprconfig name for $cf_gprconfig... $ECHO_C" >&6
fi
if test -n "$cf_gprconfig_value"
then
- eval cf_ada_config_$cf_gprconfig=$cf_gprconfig_value
- echo "$as_me:15798: result: $cf_gprconfig_value" >&5
+ eval "cf_ada_config_$cf_gprconfig=$cf_gprconfig_value"
+ echo "$as_me:17413: result: $cf_gprconfig_value" >&5
echo "${ECHO_T}$cf_gprconfig_value" >&6
else
- echo "$as_me:15801: result: missing" >&5
+ echo "$as_me:17416: result: missing" >&5
echo "${ECHO_T}missing" >&6
cf_ada_config="#"
break
fi
done
cd ..
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
fi
fi
if test "x$cf_ada_config" != "x#"
then
-echo "$as_me:15814: checking for gnat version" >&5
+echo "$as_me:17429: checking for gnat version" >&5
echo $ECHO_N "checking for gnat version... $ECHO_C" >&6
if test "${cf_cv_gnat_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -15822,16 +17437,16 @@ cf_cv_gnat_version=`${cf_ada_make:-gnatmake} --version 2>&1 | \
sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'`
fi
-echo "$as_me:15825: result: $cf_cv_gnat_version" >&5
+echo "$as_me:17440: result: $cf_cv_gnat_version" >&5
echo "${ECHO_T}$cf_cv_gnat_version" >&6
test -z "$cf_cv_gnat_version" && cf_cv_gnat_version=no
-case $cf_cv_gnat_version in
-(3.1[1-9]*|3.[2-9]*|[4-9].*|20[0-9][0-9])
+case "$cf_cv_gnat_version" in
+(3.1[1-9]*|3.[2-9]*|[4-9].*|[1-9][0-9].[0-9]*|20[0-9][0-9])
cf_cv_prog_gnat_correct=yes
;;
(*)
- { echo "$as_me:15834: WARNING: Unsupported GNAT version $cf_cv_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
+ { echo "$as_me:17449: WARNING: Unsupported GNAT version $cf_cv_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
echo "$as_me: WARNING: Unsupported GNAT version $cf_cv_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&2;}
cf_cv_prog_gnat_correct=no
;;
@@ -15839,7 +17454,7 @@ esac
# Extract the first word of "m4", so it can be a program name with args.
set dummy m4; ac_word=$2
-echo "$as_me:15842: checking for $ac_word" >&5
+echo "$as_me:17457: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_M4_exists+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -15854,7 +17469,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_M4_exists="yes"
-echo "$as_me:15857: found $ac_dir/$ac_word" >&5
+echo "$as_me:17472: found $ac_dir/$ac_word" >&5
break
done
@@ -15863,23 +17478,23 @@ fi
fi
M4_exists=$ac_cv_prog_M4_exists
if test -n "$M4_exists"; then
- echo "$as_me:15866: result: $M4_exists" >&5
+ echo "$as_me:17481: result: $M4_exists" >&5
echo "${ECHO_T}$M4_exists" >&6
else
- echo "$as_me:15869: result: no" >&5
+ echo "$as_me:17484: result: no" >&5
echo "${ECHO_T}no" >&6
fi
if test "$ac_cv_prog_M4_exists" = no; then
cf_cv_prog_gnat_correct=no
- { echo "$as_me:15875: WARNING: Ada95 binding required program m4 not found. Ada95 binding disabled" >&5
+ { echo "$as_me:17490: WARNING: Ada95 binding required program m4 not found. Ada95 binding disabled" >&5
echo "$as_me: WARNING: Ada95 binding required program m4 not found. Ada95 binding disabled" >&2;}
fi
if test "$cf_cv_prog_gnat_correct" = yes; then
- echo "$as_me:15879: checking if GNAT works" >&5
+ echo "$as_me:17494: checking if GNAT works" >&5
echo $ECHO_N "checking if GNAT works... $ECHO_C" >&6
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
procedure conftest;
CF_EOF
@@ -15893,7 +17508,7 @@ begin
GNAT.OS_Lib.OS_Exit (0);
end conftest;
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&5 2>&1 ) ; then
if ( ./conftest 1>&5 2>&1 ) ; then
cf_cv_prog_gnat_correct=yes
else
@@ -15902,9 +17517,9 @@ if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
else
cf_cv_prog_gnat_correct=no
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
- echo "$as_me:15907: result: $cf_cv_prog_gnat_correct" >&5
+ echo "$as_me:17522: result: $cf_cv_prog_gnat_correct" >&5
echo "${ECHO_T}$cf_cv_prog_gnat_correct" >&6
fi
else
@@ -15914,7 +17529,7 @@ fi
if test "$cf_cv_prog_gnat_correct" = yes; then
- echo "$as_me:15917: checking optimization options for ADAFLAGS" >&5
+ echo "$as_me:17532: checking optimization options for ADAFLAGS" >&5
echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6
case "$CFLAGS" in
(*-g*)
@@ -15931,10 +17546,10 @@ echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6
;;
esac
- echo "$as_me:15934: result: $ADAFLAGS" >&5
+ echo "$as_me:17549: result: $ADAFLAGS" >&5
echo "${ECHO_T}$ADAFLAGS" >&6
-echo "$as_me:15937: checking if GNATPREP supports -T option" >&5
+echo "$as_me:17552: checking if GNATPREP supports -T option" >&5
echo $ECHO_N "checking if GNATPREP supports -T option... $ECHO_C" >&6
if test "${cf_cv_gnatprep_opt_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -15944,21 +17559,21 @@ cf_cv_gnatprep_opt_t=no
gnatprep -T 2>/dev/null >/dev/null && cf_cv_gnatprep_opt_t=yes
fi
-echo "$as_me:15947: result: $cf_cv_gnatprep_opt_t" >&5
+echo "$as_me:17562: result: $cf_cv_gnatprep_opt_t" >&5
echo "${ECHO_T}$cf_cv_gnatprep_opt_t" >&6
test "$cf_cv_gnatprep_opt_t" = yes && GNATPREP_OPTS="-T $GNATPREP_OPTS"
-echo "$as_me:15951: checking if GNAT supports generics" >&5
+echo "$as_me:17566: checking if GNAT supports generics" >&5
echo $ECHO_N "checking if GNAT supports generics... $ECHO_C" >&6
-case $cf_cv_gnat_version in
-(3.[1-9]*|[4-9].*)
+case "$cf_cv_gnat_version" in
+(3.1[1-9]*|3.[2-9]*|[4-9].*|[1-9][0-9].[0-9]*|20[0-9][0-9])
cf_gnat_generics=yes
;;
(*)
cf_gnat_generics=no
;;
esac
-echo "$as_me:15961: result: $cf_gnat_generics" >&5
+echo "$as_me:17576: result: $cf_gnat_generics" >&5
echo "${ECHO_T}$cf_gnat_generics" >&6
if test "$cf_gnat_generics" = yes
@@ -15970,13 +17585,13 @@ else
cf_generic_objects=
fi
-echo "$as_me:15973: checking if GNAT supports SIGINT" >&5
+echo "$as_me:17588: checking if GNAT supports SIGINT" >&5
echo $ECHO_N "checking if GNAT supports SIGINT... $ECHO_C" >&6
if test "${cf_cv_gnat_sigint+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
with Ada.Interrupts.Names;
@@ -16010,18 +17625,18 @@ package body ConfTest is
end Process;
end ConfTest;
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&5 2>&1 ) ; then
cf_cv_gnat_sigint=yes
else
cf_cv_gnat_sigint=no
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
fi
-echo "$as_me:16021: result: $cf_cv_gnat_sigint" >&5
+echo "$as_me:17636: result: $cf_cv_gnat_sigint" >&5
echo "${ECHO_T}$cf_cv_gnat_sigint" >&6
-if test $cf_cv_gnat_sigint = yes ; then
+if test "$cf_cv_gnat_sigint" = yes ; then
USE_GNAT_SIGINT=""
else
USE_GNAT_SIGINT="#"
@@ -16031,21 +17646,21 @@ cf_gnat_libraries=no
cf_gnat_projects=no
if test "$enable_gnat_projects" != no ; then
-echo "$as_me:16034: checking if GNAT supports project files" >&5
+echo "$as_me:17649: checking if GNAT supports project files" >&5
echo $ECHO_N "checking if GNAT supports project files... $ECHO_C" >&6
-case $cf_cv_gnat_version in
+case "$cf_cv_gnat_version" in
(3.[0-9]*)
;;
(*)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin*|msys*)
;;
(*)
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src conftest.bin conftest.lib
then
cd conftest.src
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
cat >>library.gpr <<CF_EOF
project Library is
Kind := External ("LIB_KIND");
@@ -16074,11 +17689,11 @@ package body ConfPackage is
end conftest;
end ConfPackage;
CF_EOF
- if ( $cf_ada_make $ADAFLAGS \
+ if ( "$cf_ada_make" $ADAFLAGS \
-Plibrary.gpr \
- -XBUILD_DIR=`cd ../conftest.bin;pwd` \
- -XLIBRARY_DIR=`cd ../conftest.lib;pwd` \
- -XSOURCE_DIR=`pwd` \
+ -XBUILD_DIR="`cd ../conftest.bin;pwd`" \
+ -XLIBRARY_DIR="`cd ../conftest.lib;pwd`" \
+ -XSOURCE_DIR="`pwd`" \
-XSONAME=libConfTest.so.1 \
-XLIB_KIND=static 1>&5 2>&1 ) ; then
cf_gnat_projects=yes
@@ -16089,30 +17704,42 @@ CF_EOF
then
cf_gnat_libraries=yes
fi
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
;;
esac
;;
esac
-echo "$as_me:16097: result: $cf_gnat_projects" >&5
+echo "$as_me:17712: result: $cf_gnat_projects" >&5
echo "${ECHO_T}$cf_gnat_projects" >&6
fi # enable_gnat_projects
-if test $cf_gnat_projects = yes
+if test "$cf_gnat_projects" = yes
then
- echo "$as_me:16103: checking if GNAT supports libraries" >&5
+ echo "$as_me:17718: checking if GNAT supports libraries" >&5
echo $ECHO_N "checking if GNAT supports libraries... $ECHO_C" >&6
- echo "$as_me:16105: result: $cf_gnat_libraries" >&5
+ echo "$as_me:17720: result: $cf_gnat_libraries" >&5
echo "${ECHO_T}$cf_gnat_libraries" >&6
fi
+USE_OLD_MAKERULES=""
+USE_GNAT_PROJECTS="#"
+USE_GNAT_MAKE_GPR="#"
+USE_GNAT_GPRBUILD="#"
+
if test "$cf_gnat_projects" = yes
then
USE_OLD_MAKERULES="#"
USE_GNAT_PROJECTS=""
-else
- USE_OLD_MAKERULES=""
- USE_GNAT_PROJECTS="#"
+ if test "$cf_cv_VERSION_GPRBUILD" != no
+ then
+ USE_GNAT_GPRBUILD=""
+ elif test "$cf_cv_VERSION_GNATMAKE" != no
+ then
+ USE_GNAT_MAKE_GPR=""
+ else
+ { echo "$as_me:17740: WARNING: use old makefile rules since tools are missing" >&5
+echo "$as_me: WARNING: use old makefile rules since tools are missing" >&2;}
+ fi
fi
if test "$cf_gnat_libraries" = yes
@@ -16122,7 +17749,7 @@ else
USE_GNAT_LIBRARIES="#"
fi
-echo "$as_me:16125: checking for ada-compiler" >&5
+echo "$as_me:17752: checking for ada-compiler" >&5
echo $ECHO_N "checking for ada-compiler... $ECHO_C" >&6
# Check whether --with-ada-compiler or --without-ada-compiler was given.
@@ -16133,12 +17760,12 @@ else
cf_ada_compiler=gnatmake
fi;
-echo "$as_me:16136: result: $cf_ada_compiler" >&5
+echo "$as_me:17763: result: $cf_ada_compiler" >&5
echo "${ECHO_T}$cf_ada_compiler" >&6
cf_ada_package=terminal_interface
-echo "$as_me:16141: checking for ada-include" >&5
+echo "$as_me:17768: checking for ada-include" >&5
echo $ECHO_N "checking for ada-include... $ECHO_C" >&6
# Check whether --with-ada-include or --without-ada-include was given.
@@ -16162,19 +17789,19 @@ case ".$withval" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval withval="$withval"
case ".$withval" in
(.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:16177: error: expected a pathname, not \"$withval\"" >&5
+ { { echo "$as_me:17804: error: expected a pathname, not \"$withval\"" >&5
echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -16183,10 +17810,10 @@ esac
fi
eval ADA_INCLUDE="$withval"
-echo "$as_me:16186: result: $ADA_INCLUDE" >&5
+echo "$as_me:17813: result: $ADA_INCLUDE" >&5
echo "${ECHO_T}$ADA_INCLUDE" >&6
-echo "$as_me:16189: checking for ada-objects" >&5
+echo "$as_me:17816: checking for ada-objects" >&5
echo $ECHO_N "checking for ada-objects... $ECHO_C" >&6
# Check whether --with-ada-objects or --without-ada-objects was given.
@@ -16210,19 +17837,19 @@ case ".$withval" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval withval="$withval"
case ".$withval" in
(.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:16225: error: expected a pathname, not \"$withval\"" >&5
+ { { echo "$as_me:17852: error: expected a pathname, not \"$withval\"" >&5
echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -16231,10 +17858,10 @@ esac
fi
eval ADA_OBJECTS="$withval"
-echo "$as_me:16234: result: $ADA_OBJECTS" >&5
+echo "$as_me:17861: result: $ADA_OBJECTS" >&5
echo "${ECHO_T}$ADA_OBJECTS" >&6
-echo "$as_me:16237: checking if an Ada95 shared-library should be built" >&5
+echo "$as_me:17864: checking if an Ada95 shared-library should be built" >&5
echo $ECHO_N "checking if an Ada95 shared-library should be built... $ECHO_C" >&6
# Check whether --with-ada-sharedlib or --without-ada-sharedlib was given.
@@ -16244,14 +17871,14 @@ if test "${with_ada_sharedlib+set}" = set; then
else
with_ada_sharedlib=no
fi;
-echo "$as_me:16247: result: $with_ada_sharedlib" >&5
+echo "$as_me:17874: result: $with_ada_sharedlib" >&5
echo "${ECHO_T}$with_ada_sharedlib" >&6
if test "x$with_ada_sharedlib" != xno
then
if test "x$cf_gnat_projects" != xyes
then
- { echo "$as_me:16254: WARNING: disabling shared-library since GNAT projects are not supported" >&5
+ { echo "$as_me:17881: WARNING: disabling shared-library since GNAT projects are not supported" >&5
echo "$as_me: WARNING: disabling shared-library since GNAT projects are not supported" >&2;}
with_ada_sharedlib=no
fi
@@ -16271,7 +17898,7 @@ fi
# allow the Ada binding to be renamed
-echo "$as_me:16274: checking for ada-libname" >&5
+echo "$as_me:17901: checking for ada-libname" >&5
echo $ECHO_N "checking for ada-libname... $ECHO_C" >&6
# Check whether --with-ada-libname or --without-ada-libname was given.
@@ -16287,16 +17914,16 @@ case "x$ADA_LIBNAME" in
;;
esac
-echo "$as_me:16290: result: $ADA_LIBNAME" >&5
+echo "$as_me:17917: result: $ADA_LIBNAME" >&5
echo "${ECHO_T}$ADA_LIBNAME" >&6
else
- { { echo "$as_me:16294: error: No usable Ada compiler found" >&5
+ { { echo "$as_me:17921: error: No usable Ada compiler found" >&5
echo "$as_me: error: No usable Ada compiler found" >&2;}
{ (exit 1); exit 1; }; }
fi
else
- { { echo "$as_me:16299: error: The Ada compiler is needed for this package" >&5
+ { { echo "$as_me:17926: error: The Ada compiler is needed for this package" >&5
echo "$as_me: error: The Ada compiler is needed for this package" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -16336,7 +17963,7 @@ elif test "$includedir" != "/usr/include"; then
fi
### Build up pieces for makefile rules
-echo "$as_me:16339: checking default library suffix" >&5
+echo "$as_me:17966: checking default library suffix" >&5
echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
case $DFT_LWR_MODEL in
@@ -16347,10 +17974,10 @@ echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
(shared) DFT_ARG_SUFFIX='' ;;
esac
test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}"
-echo "$as_me:16350: result: $DFT_ARG_SUFFIX" >&5
+echo "$as_me:17977: result: $DFT_ARG_SUFFIX" >&5
echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6
-echo "$as_me:16353: checking default library-dependency suffix" >&5
+echo "$as_me:17980: checking default library-dependency suffix" >&5
echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
case X$DFT_LWR_MODEL in
@@ -16359,19 +17986,37 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(Xdebug)
- DFT_LIB_SUFFIX='_g.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ DFT_LIB_SUFFIX='_g.lib'
+ ;;
+ (*)
+ DFT_LIB_SUFFIX='_g.a'
+ ;;
+ esac
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(Xprofile)
- DFT_LIB_SUFFIX='_p.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ DFT_LIB_SUFFIX='_p.lib'
+ ;;
+ (*)
+ DFT_LIB_SUFFIX='_p.a'
+ ;;
+ esac
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(Xshared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[5-7]*)
DFT_LIB_SUFFIX='.so'
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
+ (*-msvc*)
+ DFT_LIB_SUFFIX='.dll'
+ DFT_DEP_SUFFIX='.dll.lib'
+ ;;
(cygwin*|msys*|mingw*)
DFT_LIB_SUFFIX='.dll'
DFT_DEP_SUFFIX='.dll.a'
@@ -16381,7 +18026,7 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(hpux*)
- case $target in
+ case "$target" in
(ia64*)
DFT_LIB_SUFFIX='.so'
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
@@ -16399,7 +18044,14 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
esac
;;
(*)
- DFT_LIB_SUFFIX='.a'
+ case "$target" in
+ (*-msvc*)
+ DFT_LIB_SUFFIX='.lib'
+ ;;
+ (*)
+ DFT_LIB_SUFFIX='.a'
+ ;;
+ esac
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
esac
@@ -16408,10 +18060,10 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
DFT_LIB_SUFFIX="${LIB_SUFFIX}${EXTRA_SUFFIX}${DFT_LIB_SUFFIX}"
DFT_DEP_SUFFIX="${LIB_SUFFIX}${EXTRA_SUFFIX}${DFT_DEP_SUFFIX}"
fi
-echo "$as_me:16411: result: $DFT_DEP_SUFFIX" >&5
+echo "$as_me:18063: result: $DFT_DEP_SUFFIX" >&5
echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6
-echo "$as_me:16414: checking default object directory" >&5
+echo "$as_me:18066: checking default object directory" >&5
echo $ECHO_N "checking default object directory... $ECHO_C" >&6
case $DFT_LWR_MODEL in
@@ -16420,14 +18072,14 @@ echo $ECHO_N "checking default object directory... $ECHO_C" >&6
(debug) DFT_OBJ_SUBDIR='obj_g' ;;
(profile) DFT_OBJ_SUBDIR='obj_p' ;;
(shared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin|msys)
DFT_OBJ_SUBDIR='objects' ;;
(*)
DFT_OBJ_SUBDIR='obj_s' ;;
esac
esac
-echo "$as_me:16430: result: $DFT_OBJ_SUBDIR" >&5
+echo "$as_me:18082: result: $DFT_OBJ_SUBDIR" >&5
echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6
### Set up low-level terminfo dependencies for makefiles.
@@ -16458,106 +18110,6 @@ cat >>confdefs.h <<EOF
#define NCURSES_PATHSEP '$PATH_SEPARATOR'
EOF
-### Now that we're done running tests, add the compiler-warnings, if any
-
-cf_fix_cppflags=no
-cf_new_cflags=
-cf_new_cppflags=
-cf_new_extra_cppflags=
-
-for cf_add_cflags in $EXTRA_CFLAGS
-do
-case $cf_fix_cppflags in
-(no)
- case $cf_add_cflags in
- (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
- (-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
- if test $cf_fix_cppflags = yes ; then
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- continue
- elif test "${cf_tst_cflags}" = "\"'" ; then
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- continue
- fi
- ;;
- esac
- case "$CPPFLAGS" in
- (*$cf_add_cflags)
- ;;
- (*)
- case $cf_add_cflags in
- (-D*)
- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-
-CPPFLAGS=`echo "$CPPFLAGS" | \
- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
-
- ;;
- esac
-
- test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
- cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
-
- ;;
- esac
- ;;
- (*)
-
- test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
- cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
-
- ;;
- esac
- ;;
-(yes)
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-esac
-done
-
-if test -n "$cf_new_cflags" ; then
-
- test -n "$CFLAGS" && CFLAGS="$CFLAGS "
- CFLAGS="${CFLAGS}$cf_new_cflags"
-
-fi
-
-if test -n "$cf_new_cppflags" ; then
-
- test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
- CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
-
-fi
-
-if test -n "$cf_new_extra_cppflags" ; then
-
- test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
- EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
-
-fi
-
################################################################################
TEST_ARG2=
@@ -16666,12 +18218,12 @@ fi
DEFS=-DHAVE_CONFIG_H
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:16672: creating $CONFIG_STATUS" >&5
+{ echo "$as_me:18224: creating $CONFIG_STATUS" >&5
echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
+cat >"$CONFIG_STATUS" <<_ACEOF
#! $SHELL
# Generated automatically by configure.
# Run this file to recreate the current configuration.
@@ -16682,9 +18234,11 @@ debug=false
SHELL=\${CONFIG_SHELL-$SHELL}
ac_cs_invocation="\$0 \$@"
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>"$CONFIG_STATUS" <<\_ACEOF
# Be Bourne compatible
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
@@ -16724,9 +18278,9 @@ as_executable_p="test -f"
# Support unset when possible.
if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
+ as_unset="unset"
else
- as_unset=false
+ as_unset="false"
fi
# NLS nuisances.
@@ -16754,22 +18308,22 @@ _ACEOF
# Files that config.status was made for.
if test -n "$ac_config_files"; then
- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+ echo "config_files=\"$ac_config_files\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_headers"; then
- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+ echo "config_headers=\"$ac_config_headers\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_links"; then
- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+ echo "config_links=\"$ac_config_links\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_commands"; then
- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+ echo "config_commands=\"$ac_config_commands\"" >>"$CONFIG_STATUS"
fi
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
ac_cs_usage="\
\`$as_me' instantiates files from templates according to the
@@ -16798,21 +18352,22 @@ $config_commands
Report bugs to <dickey@invisible-island.net>."
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
ac_cs_version="\\
config.status
-configured by $0, generated by GNU Autoconf 2.52.20200111,
+configured by $0, generated by GNU Autoconf 2.52.20210509,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+Copyright 2003-2020,2021 Thomas E. Dickey
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
+srcdir="$srcdir"
INSTALL="$INSTALL"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
# If no file are specified by the user, then we need to provide default
# value. By we need to know if files were specified by the user.
ac_need_defaults=:
@@ -16835,17 +18390,17 @@ do
case $1 in
# Handling of the options.
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion"
exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;;
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
--version | --vers* | -V )
echo "$ac_cs_version"; exit 0 ;;
--he | --h)
# Conflict between --help and --header
- { { echo "$as_me:16848: error: ambiguous option: $1
+ { { echo "$as_me:18403: error: ambiguous option: $1
Try \`$0 --help' for more information." >&5
echo "$as_me: error: ambiguous option: $1
Try \`$0 --help' for more information." >&2;}
@@ -16864,7 +18419,7 @@ Try \`$0 --help' for more information." >&2;}
ac_need_defaults=false;;
# This is an error.
- -*) { { echo "$as_me:16867: error: unrecognized option: $1
+ -*) { { echo "$as_me:18422: error: unrecognized option: $1
Try \`$0 --help' for more information." >&5
echo "$as_me: error: unrecognized option: $1
Try \`$0 --help' for more information." >&2;}
@@ -16883,18 +18438,18 @@ cat >&5 << _ACEOF
## Running config.status. ##
## ----------------------- ##
-This file was extended by $as_me 2.52.20200111, executed with
+This file was extended by $as_me 2.52.20210509, executed with
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
CONFIG_LINKS = $CONFIG_LINKS
CONFIG_COMMANDS = $CONFIG_COMMANDS
- > $ac_cs_invocation
+ > "$ac_cs_invocation"
on `(hostname || uname -n) 2>/dev/null | sed 1q`
_ACEOF
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
#
# INIT-COMMANDS section.
#
@@ -16913,6 +18468,8 @@ NCURSES_MAJOR="$NCURSES_MAJOR"
NCURSES_MINOR="$NCURSES_MINOR"
NCURSES_PATCH="$NCURSES_PATCH"
USE_OLD_MAKERULES="$USE_OLD_MAKERULES"
+cf_cv_VERSION_GNATMAKE=$cf_cv_VERSION_GNATMAKE
+cf_cv_VERSION_GPRBUILD=$cf_cv_VERSION_GPRBUILD
cf_cv_abi_version="$cf_cv_abi_version"
cf_cv_rel_version="$cf_cv_rel_version"
cf_cv_rm_so_locs="$cf_cv_rm_so_locs"
@@ -16925,7 +18482,7 @@ target="$target"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
for ac_config_target in $ac_config_targets
do
case "$ac_config_target" in
@@ -16936,7 +18493,7 @@ do
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
"include/ncurses_cfg.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/ncurses_cfg.h:include/ncurses_cfg.hin" ;;
- *) { { echo "$as_me:16939: error: invalid argument: $ac_config_target" >&5
+ *) { { echo "$as_me:18496: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
@@ -16946,7 +18503,7 @@ done
# then the envvar interface is used. Set only those that are not.
# We use the long form for the default assignment because of an extremely
# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
+if "$ac_need_defaults"; then
test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
@@ -16976,7 +18533,7 @@ $debug ||
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
#
# CONFIG_FILES section.
@@ -17033,6 +18590,8 @@ s,@target@,$target,;t t
s,@target_cpu@,$target_cpu,;t t
s,@target_vendor@,$target_vendor,;t t
s,@target_os@,$target_os,;t t
+s,@GREP@,$GREP,;t t
+s,@FGREP@,$FGREP,;t t
s,@CC@,$CC,;t t
s,@CFLAGS@,$CFLAGS,;t t
s,@LDFLAGS@,$LDFLAGS,;t t
@@ -17042,8 +18601,8 @@ s,@EXEEXT@,$EXEEXT,;t t
s,@OBJEXT@,$OBJEXT,;t t
s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t
s,@CPP@,$CPP,;t t
-s,@AWK@,$AWK,;t t
s,@EGREP@,$EGREP,;t t
+s,@AWK@,$AWK,;t t
s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
s,@INSTALL_DATA@,$INSTALL_DATA,;t t
@@ -17054,6 +18613,8 @@ s,@PKG_CONFIG@,$PKG_CONFIG,;t t
s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t
s,@PKG_CONFIG_LIBDIR@,$PKG_CONFIG_LIBDIR,;t t
s,@SET_MAKE@,$SET_MAKE,;t t
+s,@MAKE_NO_PHONY@,$MAKE_NO_PHONY,;t t
+s,@MAKE_PHONY@,$MAKE_PHONY,;t t
s,@CTAGS@,$CTAGS,;t t
s,@ETAGS@,$ETAGS,;t t
s,@MAKE_LOWER_TAGS@,$MAKE_LOWER_TAGS,;t t
@@ -17116,8 +18677,10 @@ s,@ECHO_LD@,$ECHO_LD,;t t
s,@RULE_CC@,$RULE_CC,;t t
s,@SHOW_CC@,$SHOW_CC,;t t
s,@ECHO_CC@,$ECHO_CC,;t t
-s,@ADAFLAGS@,$ADAFLAGS,;t t
s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t
+s,@HAVE_STDNORETURN_H@,$HAVE_STDNORETURN_H,;t t
+s,@STDC_NORETURN@,$STDC_NORETURN,;t t
+s,@ADAFLAGS@,$ADAFLAGS,;t t
s,@ADA_TRACE@,$ADA_TRACE,;t t
s,@cf_TEMP_gnat@,$cf_TEMP_gnat,;t t
s,@M4_exists@,$M4_exists,;t t
@@ -17132,6 +18695,8 @@ s,@USE_GNAT_SIGINT@,$USE_GNAT_SIGINT,;t t
s,@USE_OLD_MAKERULES@,$USE_OLD_MAKERULES,;t t
s,@USE_GNAT_PROJECTS@,$USE_GNAT_PROJECTS,;t t
s,@USE_GNAT_LIBRARIES@,$USE_GNAT_LIBRARIES,;t t
+s,@USE_GNAT_MAKE_GPR@,$USE_GNAT_MAKE_GPR,;t t
+s,@USE_GNAT_GPRBUILD@,$USE_GNAT_GPRBUILD,;t t
s,@cf_ada_compiler@,$cf_ada_compiler,;t t
s,@cf_ada_package@,$cf_ada_package,;t t
s,@ADA_INCLUDE@,$ADA_INCLUDE,;t t
@@ -17160,7 +18725,7 @@ CEOF
EOF
- cat >>$CONFIG_STATUS <<\EOF
+ cat >>"$CONFIG_STATUS" <<\EOF
# Split the substitutions into bite-sized pieces for seds with
# small command number limits, like on Digital OSF/1 and HP-UX.
ac_max_sed_lines=48
@@ -17169,8 +18734,8 @@ EOF
ac_end=$ac_max_sed_lines # Line after last line for current file.
ac_more_lines=:
ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
+ while "$ac_more_lines"; do
+ if test "$ac_beg" -gt 1; then
sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
else
sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
@@ -17187,15 +18752,15 @@ EOF
# It is possible to make a multiline substitution using escaped newlines.
# Ensure that we do not split the substitution between script fragments.
ac_BEG=$ac_end
- ac_END=`expr $ac_end + $ac_max_sed_lines`
+ ac_END=`expr "$ac_end" + "$ac_max_sed_lines"`
sed "1,${ac_BEG}d; ${ac_END}p; q" $tmp/subs.sed >$tmp/subs.next
if test -s $tmp/subs.next; then
grep '^s,@[^@,][^@,]*@,.*\\$' $tmp/subs.next >$tmp/subs.edit
if test ! -s $tmp/subs.edit; then
grep "^s,@[^@,][^@,]*@,.*,;t t$" $tmp/subs.next >$tmp/subs.edit
if test ! -s $tmp/subs.edit; then
- if test $ac_beg -gt 1; then
- ac_end=`expr $ac_end - 1`
+ if test "$ac_beg" -gt 1; then
+ ac_end=`expr "$ac_end" - 1`
continue
fi
fi
@@ -17207,9 +18772,9 @@ EOF
else
ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
+ ac_sed_frag=`expr "$ac_sed_frag" + 1`
ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
+ ac_end=`expr "$ac_end" + "$ac_max_sed_lines"`
fi
done
if test -z "$ac_sed_cmds"; then
@@ -17218,10 +18783,10 @@ EOF
fi # test -n "$CONFIG_FILES"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
+ case "$ac_file" in
- | *:- | *:-:* ) # input from stdin
cat >$tmp/stdin
ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
@@ -17267,19 +18832,19 @@ done; }
ac_dir_suffix= ac_dots=
fi
- case $srcdir in
+ case "$srcdir" in
.) ac_srcdir=.
if test -z "$ac_dots"; then
ac_top_srcdir=.
else
- ac_top_srcdir=`echo $ac_dots | sed 's,/$,,'`
+ ac_top_srcdir=`echo "$ac_dots" | sed 's,/$,,'`
fi ;;
[\\/]* | ?:[\\/]* )
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
+ ac_srcdir="$srcdir$ac_dir_suffix";
+ ac_top_srcdir="$srcdir" ;;
*) # Relative path.
- ac_srcdir=$ac_dots$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_dots$srcdir ;;
+ ac_srcdir="$ac_dots$srcdir$ac_dir_suffix"
+ ac_top_srcdir="$ac_dots$srcdir" ;;
esac
case $INSTALL in
@@ -17288,7 +18853,7 @@ done; }
esac
if test x"$ac_file" != x-; then
- { echo "$as_me:17291: creating $ac_file" >&5
+ { echo "$as_me:18856: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
rm -f "$ac_file"
fi
@@ -17306,7 +18871,7 @@ echo "$as_me: creating $ac_file" >&6;}
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:17309: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:18874: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
@@ -17316,35 +18881,35 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
echo $f
elif test -f "$srcdir/$f"; then
# Source tree
- echo $srcdir/$f
+ echo "$srcdir/$f"
else
# /dev/null tree
- { { echo "$as_me:17322: error: cannot find input file: $f" >&5
+ { { echo "$as_me:18887: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
esac
done` || { (exit 1); exit 1; }
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
ac_warn_datarootdir=no
if test x"$ac_file" != x-; then
for ac_item in $ac_file_inputs
do
- ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' $ac_item`
+ ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' "$ac_item"`
if test -n "$ac_seen"; then
- ac_used=`grep '@datarootdir@' $ac_item`
+ ac_used=`grep '@datarootdir@' "$ac_item"`
if test -z "$ac_used"; then
- { echo "$as_me:17338: WARNING: datarootdir was used implicitly but not set:
+ { echo "$as_me:18903: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&5
echo "$as_me: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&2;}
ac_warn_datarootdir=yes
fi
fi
- ac_seen=`grep '${datarootdir}' $ac_item`
+ ac_seen=`grep '${datarootdir}' "$ac_item"`
if test -n "$ac_seen"; then
- { echo "$as_me:17347: WARNING: datarootdir was used explicitly but not set:
+ { echo "$as_me:18912: WARNING: datarootdir was used explicitly but not set:
$ac_seen" >&5
echo "$as_me: WARNING: datarootdir was used explicitly but not set:
$ac_seen" >&2;}
@@ -17358,11 +18923,11 @@ if test "x$ac_warn_datarootdir" = xyes; then
fi
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
sed "$ac_vpsub
$extrasub
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
:t
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
s,@configure_input@,$configure_input,;t t
@@ -17372,27 +18937,27 @@ s,@INSTALL@,$ac_INSTALL,;t t
" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
rm -f $tmp/stdin
if test x"$ac_file" != x-; then
- cp $tmp/out $ac_file
+ cp "$tmp/out" "$ac_file"
for ac_name in prefix exec_prefix datarootdir
do
- ac_seen=`fgrep -n '${'$ac_name'[:=].*}' $ac_file`
+ ac_seen=`${FGREP-fgrep} -n '${'$ac_name'[:=].*}' "$ac_file"`
if test -n "$ac_seen"; then
- ac_init=`egrep '[ ]*'$ac_name'[ ]*=' $ac_file`
+ ac_init=`${EGREP-egrep} '[ ]*'$ac_name'[ ]*=' "$ac_file"`
if test -z "$ac_init"; then
ac_seen=`echo "$ac_seen" |sed -e 's,^,'$ac_file':,'`
- { echo "$as_me:17384: WARNING: Variable $ac_name is used but was not set:
+ { echo "$as_me:18949: WARNING: Variable $ac_name is used but was not set:
$ac_seen" >&5
echo "$as_me: WARNING: Variable $ac_name is used but was not set:
$ac_seen" >&2;}
fi
fi
done
- egrep -n '@[a-z_][a-z_0-9]+@' $ac_file >$tmp/out
- egrep -n '@[A-Z_][A-Z_0-9]+@' $ac_file >>$tmp/out
+ ${EGREP-egrep} -n '@[a-z_][a-z_0-9]+@' "$ac_file" >$tmp/out
+ ${EGREP-egrep} -n '@[A-Z_][A-Z_0-9]+@' "$ac_file" >>$tmp/out
if test -s $tmp/out; then
ac_seen=`sed -e 's,^,'$ac_file':,' < $tmp/out`
- { echo "$as_me:17395: WARNING: Some variables may not be substituted:
+ { echo "$as_me:18960: WARNING: Some variables may not be substituted:
$ac_seen" >&5
echo "$as_me: WARNING: Some variables may not be substituted:
$ac_seen" >&2;}
@@ -17404,7 +18969,7 @@ $ac_seen" >&2;}
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
#
# CONFIG_HEADER section.
@@ -17431,7 +18996,7 @@ ac_uD=',;t'
for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
+ case "$ac_file" in
- | *:- | *:-:* ) # input from stdin
cat >$tmp/stdin
ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
@@ -17441,7 +19006,7 @@ for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
* ) ac_file_in=$ac_file.in ;;
esac
- test x"$ac_file" != x- && { echo "$as_me:17444: creating $ac_file" >&5
+ test x"$ac_file" != x- && { echo "$as_me:19009: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
# First look for the input files in the build tree, otherwise in the
@@ -17452,7 +19017,7 @@ echo "$as_me: creating $ac_file" >&6;}
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:17455: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:19020: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
@@ -17462,10 +19027,10 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
echo $f
elif test -f "$srcdir/$f"; then
# Source tree
- echo $srcdir/$f
+ echo "$srcdir/$f"
else
# /dev/null tree
- { { echo "$as_me:17468: error: cannot find input file: $f" >&5
+ { { echo "$as_me:19033: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
@@ -17485,14 +19050,14 @@ cat confdefs.h | uniq >conftest.vals
# the size of here documents, and old seds have small limits too.
rm -f conftest.tail
-echo ' rm -f conftest.frag' >> $CONFIG_STATUS
+echo ' rm -f conftest.frag' >> "$CONFIG_STATUS"
while grep . conftest.vals >/dev/null
do
# Write chunks of a limited-size here document to conftest.frag.
- echo ' cat >> conftest.frag <<CEOF' >> $CONFIG_STATUS
- sed ${ac_max_here_lines}q conftest.vals | sed -e 's/#ifdef.*/#if 0/' >> $CONFIG_STATUS
- echo 'CEOF' >> $CONFIG_STATUS
- sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
+ echo ' cat >> conftest.frag <<CEOF' >> "$CONFIG_STATUS"
+ sed "${ac_max_here_lines}q" conftest.vals | sed -e 's/#ifdef.*/#if 0/' >> "$CONFIG_STATUS"
+ echo 'CEOF' >> "$CONFIG_STATUS"
+ sed "1,${ac_max_here_lines}d" conftest.vals > conftest.tail
rm -f conftest.vals
mv conftest.tail conftest.vals
done
@@ -17508,9 +19073,9 @@ sed -f conftest.edit $tmp/in > $tmp/out
rm -f $tmp/in
mv $tmp/out $tmp/in
rm -f conftest.edit conftest.frag
-' >> $CONFIG_STATUS
+' >> "$CONFIG_STATUS"
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
# Let's still pretend it is `configure' which instantiates (i.e., don't
# use $as_me), people would be surprised to read:
# /* config.h. Generated automatically by config.status. */
@@ -17522,8 +19087,8 @@ cat >>$CONFIG_STATUS <<\EOF
cat $tmp/in >>$tmp/config.h
rm -f $tmp/in
if test x"$ac_file" != x-; then
- if cmp -s $ac_file $tmp/config.h 2>/dev/null; then
- { echo "$as_me:17526: $ac_file is unchanged" >&5
+ if cmp -s "$ac_file" "$tmp/config.h" 2>/dev/null; then
+ { echo "$as_me:19091: $ac_file is unchanged" >&5
echo "$as_me: $ac_file is unchanged" >&6;}
else
ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
@@ -17555,8 +19120,8 @@ for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
done; }
fi
- rm -f $ac_file
- mv $tmp/config.h $ac_file
+ rm -f "$ac_file"
+ mv "$tmp/config.h" "$ac_file"
fi
else
cat $tmp/config.h
@@ -17564,7 +19129,7 @@ done; }
fi
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
#
# CONFIG_COMMANDS section.
#
@@ -17572,7 +19137,7 @@ for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
- case $ac_dest in
+ case "$ac_dest" in
default )
if test -z "$USE_OLD_MAKERULES" ; then
$AWK -f $srcdir/mk-1st.awk <$srcdir/src/modules >>src/Makefile
@@ -17582,11 +19147,11 @@ fi
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
{ (exit 0); exit 0; }
EOF
-chmod +x $CONFIG_STATUS
+chmod +x "$CONFIG_STATUS"
ac_clean_files=$ac_clean_files_save
# configure is writing to config.log, and then calls config.status.
@@ -17600,10 +19165,10 @@ ac_clean_files=$ac_clean_files_save
if test "$no_create" != yes; then
ac_cs_success=:
exec 5>/dev/null
- $SHELL $CONFIG_STATUS || ac_cs_success=false
+ $SHELL "$CONFIG_STATUS" || ac_cs_success=false
exec 5>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
+ "$ac_cs_success" || { (exit 1); exit 1; }
fi
${MAKE:-make} preinstall
diff --git a/Ada95/configure.in b/Ada95/configure.in
index 3c3c1b1..1d86d82 100644
--- a/Ada95/configure.in
+++ b/Ada95/configure.in
@@ -1,5 +1,5 @@
dnl***************************************************************************
-dnl Copyright 2018-2019,2020 Thomas E. Dickey *
+dnl Copyright 2018-2020,2021 Thomas E. Dickey *
dnl Copyright 2010-2016,2018 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey
dnl
-dnl $Id: configure.in,v 1.76 2020/02/08 21:03:20 tom Exp $
+dnl $Id: configure.in,v 1.83 2021/07/03 20:23:24 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl For additional information, see
@@ -37,8 +37,8 @@ dnl https://invisible-island.net/autoconf/
dnl https://invisible-island.net/autoconf/my-autoconf.html
dnl
dnl ---------------------------------------------------------------------------
-AC_PREREQ(2.52.20200111)
-AC_REVISION($Revision: 1.76 $)
+AC_PREREQ(2.52.20210509)
+AC_REVISION($Revision: 1.83 $)
AC_INIT(gen/gen.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
@@ -102,6 +102,7 @@ fi
# do this after mixed-case option (tags/TAGS is not as important as tic).
AC_PROG_MAKE_SET
+CF_MAKE_PHONY
CF_MAKE_TAGS
CF_MAKEFLAGS
@@ -353,18 +354,10 @@ CF_HELP_MESSAGE(Testing/development Options:)
### use option --disable-echo to suppress full display compiling commands
CF_DISABLE_ECHO
-### use option --enable-warnings to turn on all gcc warnings
-AC_MSG_CHECKING(if you want to see compiler warnings)
-AC_ARG_ENABLE(warnings,
- [ --enable-warnings build: turn on GCC compiler warnings],
- [with_warnings=$enableval])
-AC_MSG_RESULT($with_warnings)
-
-if test "x$with_warnings" = "xyes"; then
+CF_ENABLE_WARNINGS(Wno-unknown-pragmas Wswitch-enum,yes)
+if test "x$enable_warnings" = "xyes"; then
CF_ADD_ADAFLAGS(-gnatg)
- CF_GCC_WARNINGS(Wno-unknown-pragmas Wswitch-enum)
fi
-CF_GCC_ATTRIBUTES
### use option --enable-assertions to turn on generation of assertion code
AC_MSG_CHECKING(if you want to enable runtime assertions)
@@ -549,9 +542,6 @@ SUB_MAKEFILES="gen/adacurses${USE_ARG_SUFFIX}-config:gen/adacurses-config.in"
AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR',[Define to override ':' as the library path-separator])
-### Now that we're done running tests, add the compiler-warnings, if any
-CF_ADD_CFLAGS($EXTRA_CFLAGS)
-
################################################################################
TEST_ARG2=
@@ -615,6 +605,8 @@ NCURSES_MAJOR="$NCURSES_MAJOR"
NCURSES_MINOR="$NCURSES_MINOR"
NCURSES_PATCH="$NCURSES_PATCH"
USE_OLD_MAKERULES="$USE_OLD_MAKERULES"
+cf_cv_VERSION_GNATMAKE=$cf_cv_VERSION_GNATMAKE
+cf_cv_VERSION_GPRBUILD=$cf_cv_VERSION_GPRBUILD
cf_cv_abi_version="$cf_cv_abi_version"
cf_cv_rel_version="$cf_cv_rel_version"
cf_cv_rm_so_locs="$cf_cv_rm_so_locs"
diff --git a/Ada95/doc/Makefile.in b/Ada95/doc/Makefile.in
index 3ef3900..0aed33f 100644
--- a/Ada95/doc/Makefile.in
+++ b/Ada95/doc/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.7 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.9 2021/07/03 15:45:33 tom Exp $
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2011-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -52,9 +52,26 @@ THIS = @ADA_LIBNAME@
DOCDIR = $(DESTDIR)$(datadir)/doc/$(THIS)
MANDIR = $(DESTDIR)$(mandir)/man1
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.html
+@MAKE_PHONY@.PHONY : install.man
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : lint
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.html
+@MAKE_PHONY@.PHONY : uninstall.man
+
all \
sources \
-depend \
tags :
$(DOCDIR) \
@@ -69,7 +86,7 @@ uninstall uninstall.man :
# HTML documentation is optional, usually in a separate package.
install.html : $(DOCDIR)
- cd $(srcdir) && tar -cf - *.htm* ada | tar -C $(DOCDIR) -xf -
+ ( cd $(srcdir) && tar -cf - *.htm* ada | tar -C $(DOCDIR) -xf - )
uninstall.html :
-rm -rf $(DOCDIR)
diff --git a/Ada95/gen/Makefile.in b/Ada95/gen/Makefile.in
index 446f8bd..4d845c7 100644
--- a/Ada95/gen/Makefile.in
+++ b/Ada95/gen/Makefile.in
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -28,8 +28,9 @@
##############################################################################
#
# Author: Juergen Pfeifer, 1996
+# and: Thomas E. Dickey, 1997
#
-# $Id: Makefile.in,v 1.90 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.97 2021/07/03 15:45:33 tom Exp $
#
.SUFFIXES:
@@ -57,7 +58,7 @@ LN_S = @LN_S@
CC = @CC@
HOST_CC = @BUILD_CC@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
HOST_CFLAGS = @BUILD_CFLAGS@
CPPFLAGS = @CPPFLAGS@
@@ -65,9 +66,9 @@ HOST_CPPFLAGS = @ACPPFLAGS@ @BUILD_CPPFLAGS@ \
-DHAVE_CONFIG_H -I$(srcdir)
CCFLAGS = $(HOST_CPPFLAGS) $(HOST_CFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -142,6 +143,19 @@ GEN_SRC = $(srcdir)/$(ABASE).ads.m4 \
$(srcdir)/$(ABASE)-forms-field_user_data.ads.m4 \
$(srcdir)/$(ABASE)-panels-user_data.ads.m4
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
all \
libs : $(GEN_TARGETS)
@@ -167,7 +181,7 @@ gen.o: $(srcdir)/gen.c
$(HOST_CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/gen.c
$(ADA_SRCDIR)/$(ABASE)_constants.ads: $(PROG_GENERATE)
- $(WRAPPER) "$(GENERATE)" >$@
+ $(WRAPPER) "$(GENERATE) $@"
################################################################################
$(ADA_SRCDIR)/$(ABASE).ads: $(srcdir)/$(ABASE).ads.m4 \
$(srcdir)/normal.m4
@@ -310,7 +324,7 @@ adahtml:
test -n "$(GNATHTML)" || exit 1
@find $(HTML_DIR) -type f -exec rm -f {} \;
@mkdir -p $(HTML_DIR)
- cp -p ../src/*.ad[sb] . && chmod +w *.ad[sb]
+ ( cp -p ../src/*.ad[sb] . && chmod +w *.ad[sb] )
@USE_OLD_MAKERULES@ ln -sf ../src/*.ali .
@USE_GNAT_PROJECTS@ ln -sf ../static-ali/*.ali .
@echo "Filtering generated files"
diff --git a/Ada95/gen/gen.c b/Ada95/gen/gen.c
index b204236..51bc161 100644
--- a/Ada95/gen/gen.c
+++ b/Ada95/gen/gen.c
@@ -29,11 +29,13 @@
/****************************************************************************
* Author: Juergen Pfeifer, 1996 *
+ * and: Thomas E. Dickey, 1998 *
+ * and: Nicolas Boulenguez, 2011 *
****************************************************************************/
/*
Version Control
- $Id: gen.c,v 1.71 2020/02/02 23:34:34 tom Exp $
+ $Id: gen.c,v 1.77 2020/08/16 18:05:05 tom Exp $
--------------------------------------------------------------------------*/
/*
This program prints on its standard output the source for the
@@ -55,9 +57,11 @@
#undef UCHAR
#undef UINT
+#undef ULONG
typedef unsigned char UCHAR;
typedef unsigned int UINT;
+typedef unsigned long ULONG;
/* These global variables will be set by main () */
static int little_endian;
@@ -71,19 +75,36 @@ my_error(const char *message)
}
static void
-print_constant(const char *name,
+print_constant(FILE * fp,
+ const char *name,
+ UINT value)
+{
+ fprintf(fp, " %-28s : constant := %u;\n", name, value);
+}
+
+static void
+print_long_val(FILE * fp,
+ const char *name,
long value)
{
- printf(" %-28s : constant := %ld;\n", name, value);
+ fprintf(fp, " %-28s : constant := %ld;\n", name, value);
+}
+
+static void
+print_size_of(FILE * fp,
+ const char *name,
+ size_t value)
+{
+ fprintf(fp, " %-28s : constant := %lu;\n", name, value);
}
#define PRINT_NAMED_CONSTANT(name) \
- print_constant (#name, name)
+ print_long_val (fp, #name, name)
static void
-print_comment(const char *message)
+print_comment(FILE * fp, const char *message)
{
- printf("\n -- %s\n\n", message);
+ fprintf(fp, "\n -- %s\n\n", message);
}
/*
@@ -142,8 +163,8 @@ find_pos(const UCHAR * const data,
c_type mask = (mask_macro); \
if (!find_pos ((UCHAR *)&mask, sizeof (mask), &first, &last)) \
my_error ("failed to locate " ada_name); \
- print_constant (ada_name "_First", first); \
- print_constant (ada_name "_Last", last); \
+ print_constant (fp, ada_name "_First", first); \
+ print_constant (fp, ada_name "_Last", last); \
}
#define PRINT_NAMED_BITMASK(c_type, mask_macro) \
@@ -157,8 +178,8 @@ find_pos(const UCHAR * const data,
memset (&mask.field, 0xff, sizeof(mask.field)); \
if (!find_pos ((UCHAR *)&mask, sizeof (mask), &first, &last)) \
my_error ("failed to locate" #record "_" #field); \
- print_constant (#record "_" #field "_First", first); \
- print_constant (#record "_" #field "_Last", last); \
+ print_constant (fp, #record "_" #field "_First", first); \
+ print_constant (fp, #record "_" #field "_Last", last); \
}
/*--------------------*/
@@ -168,6 +189,7 @@ find_pos(const UCHAR * const data,
int
main(int argc, const char *argv[])
{
+ FILE *fp = 0;
const int x = 0x12345678;
little_endian = (*((const char *)&x) == 0x78);
@@ -177,40 +199,61 @@ main(int argc, const char *argv[])
if (KEY_MIN == 256)
my_error("unexpected value for KEY_MIN: 256");
- if (argc != 2)
- my_error("Only one argument expected (DFT_ARG_SUFFIX)");
-
- printf("-- Generated by the C program %s (source " __FILE__ ").\n",
- my_program_invocation_name);
- printf("-- Do not edit this file directly.\n");
- printf("-- The values provided here may vary on your system.\n");
- printf("\n");
- printf("with System;\n");
- printf("package Terminal_Interface.Curses_Constants is\n");
- printf(" pragma Pure;\n");
- printf("\n");
+ if (argc == 3)
+ {
+ fp = fopen(argv[2], "wb");
+ }
+ else if (argc == 2)
+ {
+ fp = stdout;
+ }
+ else
+ {
+ my_error("Only one or two arguments expected (DFT_ARG_SUFFIX)");
+ }
- printf(" DFT_ARG_SUFFIX : constant String := \"%s\";\n", argv[1]);
- printf(" Bit_Order : constant System.Bit_Order := System.%s_Order_First;\n",
- little_endian ? "Low" : "High");
- print_constant("Sizeof_Bool", 8 * sizeof(bool));
+ if ((strlen(argv[0]) + strlen(__FILE__)) > 25)
+ {
+ fprintf(fp, "-- Generated by the C program %.40s.\n",
+ my_program_invocation_name);
+ }
+ else
+ {
+ fprintf(fp, "-- Generated by the C program %s (source %s).\n",
+ my_program_invocation_name,
+ __FILE__);
+ }
+ fprintf(fp, "-- Do not edit this file directly.\n");
+ fprintf(fp, "-- The values provided here may vary on your system.\n");
+ fprintf(fp, "\n");
+ fprintf(fp, "with System;\n");
+ fprintf(fp, "package Terminal_Interface.Curses_Constants is\n");
+ fprintf(fp, " pragma Pure;\n");
+ fprintf(fp, "\n");
+
+ fprintf(fp, " DFT_ARG_SUFFIX : constant String := \"%s\";\n", argv[1]);
+ fprintf(fp,
+ " Bit_Order : constant System.Bit_Order := System.%s_Order_First;\n",
+ little_endian ? "Low" : "High");
+ print_size_of(fp, "Sizeof_Bool", 8 * sizeof(bool));
PRINT_NAMED_CONSTANT(OK);
PRINT_NAMED_CONSTANT(ERR);
- printf(" pragma Warnings (Off); -- redefinition of Standard.True and False\n");
+ fprintf(fp,
+ " pragma Warnings (Off); -- redefinition of Standard.True and False\n");
PRINT_NAMED_CONSTANT(TRUE);
PRINT_NAMED_CONSTANT(FALSE);
- printf(" pragma Warnings (On);\n");
+ fprintf(fp, " pragma Warnings (On);\n");
- print_comment("Version of the ncurses library from extensions(3NCURSES)");
+ print_comment(fp, "Version of the ncurses library from extensions(3NCURSES)");
PRINT_NAMED_CONSTANT(NCURSES_VERSION_MAJOR);
PRINT_NAMED_CONSTANT(NCURSES_VERSION_MINOR);
- printf(" Version : constant String := \"%d.%d\";\n",
- NCURSES_VERSION_MAJOR, NCURSES_VERSION_MINOR);
+ fprintf(fp, " Version : constant String := \"%d.%d\";\n",
+ NCURSES_VERSION_MAJOR, NCURSES_VERSION_MINOR);
- print_comment("Character non-color attributes from attr(3NCURSES)");
- printf(" -- attr_t and chtype may be signed in C.\n");
- printf(" type attr_t is mod 2 ** %lu;\n", (long unsigned)(8 * sizeof(attr_t)));
+ print_comment(fp, "Character non-color attributes from attr(3NCURSES)");
+ fprintf(fp, " -- attr_t and chtype may be signed in C.\n");
+ fprintf(fp, " type attr_t is mod 2 ** %lu;\n", (long unsigned)(8 * sizeof(attr_t)));
PRINT_NAMED_BITMASK(attr_t, A_CHARTEXT);
PRINT_NAMED_BITMASK(attr_t, A_COLOR);
PRINT_BITMASK(attr_t, "Attr", A_ATTRIBUTES & ~A_COLOR);
@@ -229,9 +272,9 @@ main(int argc, const char *argv[])
PRINT_NAMED_BITMASK(attr_t, A_RIGHT);
PRINT_NAMED_BITMASK(attr_t, A_TOP);
PRINT_NAMED_BITMASK(attr_t, A_VERTICAL);
- print_constant("chtype_Size", 8 * sizeof(chtype));
+ print_size_of(fp, "chtype_Size", 8 * sizeof(chtype));
- print_comment("predefined color numbers from color(3NCURSES)");
+ print_comment(fp, "predefined color numbers from color(3NCURSES)");
PRINT_NAMED_CONSTANT(COLOR_BLACK);
PRINT_NAMED_CONSTANT(COLOR_RED);
PRINT_NAMED_CONSTANT(COLOR_GREEN);
@@ -241,7 +284,7 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(COLOR_CYAN);
PRINT_NAMED_CONSTANT(COLOR_WHITE);
- print_comment("ETI return codes from ncurses.h");
+ print_comment(fp, "ETI return codes from ncurses.h");
PRINT_NAMED_CONSTANT(E_OK);
PRINT_NAMED_CONSTANT(E_SYSTEM_ERROR);
PRINT_NAMED_CONSTANT(E_BAD_ARGUMENT);
@@ -258,14 +301,14 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(E_INVALID_FIELD);
PRINT_NAMED_CONSTANT(E_CURRENT);
- print_comment("Input key codes not defined in any ncurses manpage");
+ print_comment(fp, "Input key codes not defined in any ncurses manpage");
PRINT_NAMED_CONSTANT(KEY_MIN);
PRINT_NAMED_CONSTANT(KEY_MAX);
#ifdef KEY_CODE_YES
PRINT_NAMED_CONSTANT(KEY_CODE_YES);
#endif
- print_comment("Input key codes from getch(3NCURSES)");
+ print_comment(fp, "Input key codes from getch(3NCURSES)");
PRINT_NAMED_CONSTANT(KEY_BREAK);
PRINT_NAMED_CONSTANT(KEY_DOWN);
PRINT_NAMED_CONSTANT(KEY_UP);
@@ -274,30 +317,31 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(KEY_HOME);
PRINT_NAMED_CONSTANT(KEY_BACKSPACE);
PRINT_NAMED_CONSTANT(KEY_F0);
- print_constant("KEY_F1", KEY_F(1));
- print_constant("KEY_F2", KEY_F(2));
- print_constant("KEY_F3", KEY_F(3));
- print_constant("KEY_F4", KEY_F(4));
- print_constant("KEY_F5", KEY_F(5));
- print_constant("KEY_F6", KEY_F(6));
- print_constant("KEY_F7", KEY_F(7));
- print_constant("KEY_F8", KEY_F(8));
- print_constant("KEY_F9", KEY_F(9));
- print_constant("KEY_F10", KEY_F(10));
- print_constant("KEY_F11", KEY_F(11));
- print_constant("KEY_F12", KEY_F(12));
- print_constant("KEY_F13", KEY_F(13));
- print_constant("KEY_F14", KEY_F(14));
- print_constant("KEY_F15", KEY_F(15));
- print_constant("KEY_F16", KEY_F(16));
- print_constant("KEY_F17", KEY_F(17));
- print_constant("KEY_F18", KEY_F(18));
- print_constant("KEY_F19", KEY_F(19));
- print_constant("KEY_F20", KEY_F(20));
- print_constant("KEY_F21", KEY_F(21));
- print_constant("KEY_F22", KEY_F(22));
- print_constant("KEY_F23", KEY_F(23));
- print_constant("KEY_F24", KEY_F(24));
+#define PRINT_NAMED_FUNC_KEY(name) print_constant(fp, "KEY_F"#name, KEY_F(name))
+ PRINT_NAMED_FUNC_KEY(1);
+ PRINT_NAMED_FUNC_KEY(2);
+ PRINT_NAMED_FUNC_KEY(3);
+ PRINT_NAMED_FUNC_KEY(4);
+ PRINT_NAMED_FUNC_KEY(5);
+ PRINT_NAMED_FUNC_KEY(6);
+ PRINT_NAMED_FUNC_KEY(7);
+ PRINT_NAMED_FUNC_KEY(8);
+ PRINT_NAMED_FUNC_KEY(9);
+ PRINT_NAMED_FUNC_KEY(10);
+ PRINT_NAMED_FUNC_KEY(11);
+ PRINT_NAMED_FUNC_KEY(12);
+ PRINT_NAMED_FUNC_KEY(13);
+ PRINT_NAMED_FUNC_KEY(14);
+ PRINT_NAMED_FUNC_KEY(15);
+ PRINT_NAMED_FUNC_KEY(16);
+ PRINT_NAMED_FUNC_KEY(17);
+ PRINT_NAMED_FUNC_KEY(18);
+ PRINT_NAMED_FUNC_KEY(19);
+ PRINT_NAMED_FUNC_KEY(20);
+ PRINT_NAMED_FUNC_KEY(21);
+ PRINT_NAMED_FUNC_KEY(22);
+ PRINT_NAMED_FUNC_KEY(23);
+ PRINT_NAMED_FUNC_KEY(24);
PRINT_NAMED_CONSTANT(KEY_DL);
PRINT_NAMED_CONSTANT(KEY_IL);
PRINT_NAMED_CONSTANT(KEY_DC);
@@ -382,8 +426,8 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(KEY_MOUSE);
PRINT_NAMED_CONSTANT(KEY_RESIZE);
- print_comment("alternate character codes (ACS) from addch(3NCURSES)");
-#define PRINT_ACS(name) print_constant (#name, &name - &acs_map[0])
+ print_comment(fp, "alternate character codes (ACS) from addch(3NCURSES)");
+#define PRINT_ACS(name) print_size_of (fp, #name, (size_t)(&name - &acs_map[0]))
PRINT_ACS(ACS_ULCORNER);
PRINT_ACS(ACS_LLCORNER);
PRINT_ACS(ACS_URCORNER);
@@ -417,20 +461,20 @@ main(int argc, const char *argv[])
PRINT_ACS(ACS_NEQUAL);
PRINT_ACS(ACS_STERLING);
- print_comment("Menu_Options from opts(3MENU)");
+ print_comment(fp, "Menu_Options from opts(3MENU)");
PRINT_NAMED_BITMASK(Menu_Options, O_ONEVALUE);
PRINT_NAMED_BITMASK(Menu_Options, O_SHOWDESC);
PRINT_NAMED_BITMASK(Menu_Options, O_ROWMAJOR);
PRINT_NAMED_BITMASK(Menu_Options, O_IGNORECASE);
PRINT_NAMED_BITMASK(Menu_Options, O_SHOWMATCH);
PRINT_NAMED_BITMASK(Menu_Options, O_NONCYCLIC);
- print_constant("Menu_Options_Size", 8 * sizeof(Menu_Options));
+ print_size_of(fp, "Menu_Options_Size", 8 * sizeof(Menu_Options));
- print_comment("Item_Options from menu_opts(3MENU)");
+ print_comment(fp, "Item_Options from menu_opts(3MENU)");
PRINT_NAMED_BITMASK(Item_Options, O_SELECTABLE);
- print_constant("Item_Options_Size", 8 * sizeof(Item_Options));
+ print_size_of(fp, "Item_Options_Size", 8 * sizeof(Item_Options));
- print_comment("Field_Options from field_opts(3FORM)");
+ print_comment(fp, "Field_Options from field_opts(3FORM)");
PRINT_NAMED_BITMASK(Field_Options, O_VISIBLE);
PRINT_NAMED_BITMASK(Field_Options, O_ACTIVE);
PRINT_NAMED_BITMASK(Field_Options, O_PUBLIC);
@@ -441,27 +485,27 @@ main(int argc, const char *argv[])
PRINT_NAMED_BITMASK(Field_Options, O_NULLOK);
PRINT_NAMED_BITMASK(Field_Options, O_PASSOK);
PRINT_NAMED_BITMASK(Field_Options, O_STATIC);
- print_constant("Field_Options_Size", 8 * sizeof(Field_Options));
+ print_size_of(fp, "Field_Options_Size", 8 * sizeof(Field_Options));
- print_comment("Field_Options from opts(3FORM)");
+ print_comment(fp, "Field_Options from opts(3FORM)");
PRINT_NAMED_BITMASK(Field_Options, O_NL_OVERLOAD);
PRINT_NAMED_BITMASK(Field_Options, O_BS_OVERLOAD);
/* Field_Options_Size is defined below */
- print_comment("MEVENT structure from mouse(3NCURSES)");
+ print_comment(fp, "MEVENT structure from mouse(3NCURSES)");
STRUCT_OFFSET(MEVENT, id);
STRUCT_OFFSET(MEVENT, x);
STRUCT_OFFSET(MEVENT, y);
STRUCT_OFFSET(MEVENT, z);
STRUCT_OFFSET(MEVENT, bstate);
- print_constant("MEVENT_Size", 8 * sizeof(MEVENT));
+ print_size_of(fp, "MEVENT_Size", 8 * sizeof(MEVENT));
- print_comment("mouse events from mouse(3NCURSES)");
+ print_comment(fp, "mouse events from mouse(3NCURSES)");
{
mmask_t all_events;
#define PRINT_MOUSE_EVENT(event) \
- print_constant (#event, event); \
+ print_constant (fp, #event, event); \
all_events |= event
all_events = 0;
@@ -473,7 +517,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON1_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON1_RESERVED_EVENT);
#endif
- print_constant("all_events_button_1", (long)all_events);
+ print_constant(fp, "all_events_button_1", (UINT) all_events);
all_events = 0;
PRINT_MOUSE_EVENT(BUTTON2_RELEASED);
@@ -484,7 +528,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON2_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON2_RESERVED_EVENT);
#endif
- print_constant("all_events_button_2", (long)all_events);
+ print_constant(fp, "all_events_button_2", (UINT) all_events);
all_events = 0;
PRINT_MOUSE_EVENT(BUTTON3_RELEASED);
@@ -495,7 +539,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON3_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON3_RESERVED_EVENT);
#endif
- print_constant("all_events_button_3", (long)all_events);
+ print_constant(fp, "all_events_button_3", (UINT) all_events);
all_events = 0;
PRINT_MOUSE_EVENT(BUTTON4_RELEASED);
@@ -506,7 +550,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON4_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON4_RESERVED_EVENT);
#endif
- print_constant("all_events_button_4", (long)all_events);
+ print_constant(fp, "all_events_button_4", (UINT) all_events);
}
PRINT_NAMED_CONSTANT(BUTTON_CTRL);
PRINT_NAMED_CONSTANT(BUTTON_SHIFT);
@@ -514,7 +558,7 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(REPORT_MOUSE_POSITION);
PRINT_NAMED_CONSTANT(ALL_MOUSE_EVENTS);
- print_comment("trace selection from trace(3NCURSES)");
+ print_comment(fp, "trace selection from trace(3NCURSES)");
PRINT_NAMED_BITMASK(UINT, TRACE_TIMES);
PRINT_NAMED_BITMASK(UINT, TRACE_TPUTS);
PRINT_NAMED_BITMASK(UINT, TRACE_UPDATE);
@@ -528,8 +572,8 @@ main(int argc, const char *argv[])
PRINT_NAMED_BITMASK(UINT, TRACE_CCALLS);
PRINT_NAMED_BITMASK(UINT, TRACE_DATABASE);
PRINT_NAMED_BITMASK(UINT, TRACE_ATTRS);
- print_constant("Trace_Size", 8 * sizeof(UINT));
+ print_size_of(fp, "Trace_Size", 8 * sizeof(UINT));
- printf("end Terminal_Interface.Curses_Constants;\n");
+ fprintf(fp, "end Terminal_Interface.Curses_Constants;\n");
exit(EXIT_SUCCESS);
}
diff --git a/Ada95/include/Makefile.in b/Ada95/include/Makefile.in
index 58713d1..89bb27d 100644
--- a/Ada95/include/Makefile.in
+++ b/Ada95/include/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.6 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.7 2021/07/03 15:45:33 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2010-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -60,9 +60,21 @@ AUTO_SRC = \
ncurses_def.h
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
libs \
-depend \
sources \
install :: $(AUTO_SRC)
diff --git a/Ada95/include/ncurses_defs b/Ada95/include/ncurses_defs
index 7a7059b..50da8e5 100644
--- a/Ada95/include/ncurses_defs
+++ b/Ada95/include/ncurses_defs
@@ -1,6 +1,6 @@
-# $Id: ncurses_defs,v 1.45 2020/02/02 23:34:34 tom Exp $
+# $Id: ncurses_defs,v 1.46 2021/06/17 21:20:30 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2008-2012,2013 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -44,7 +44,7 @@ GCC_UNUSED /* nothing */
HAVE_BIG_CORE
HAVE_BSD_CGETENT
HAVE_BSD_SIGNAL_H
-HAVE_BTOWC
+HAVE_BTOWC
HAVE_BUILTIN_H
HAVE_CHGAT 1
HAVE_COLOR_SET 1
@@ -101,7 +101,7 @@ HAVE_PANEL_H
HAVE_POLL
HAVE_POLL_H
HAVE_PURIFY
-HAVE_PUTWC
+HAVE_PUTWC
HAVE_PUTWIN 1
HAVE_REGEXPR_H_FUNCS
HAVE_REGEXP_H_FUNCS
@@ -156,7 +156,7 @@ HAVE_VSNPRINTF
HAVE_VSSCANF
HAVE_WCSRTOMBS
HAVE_WCSTOMBS
-HAVE_WCTOB
+HAVE_WCTOB
HAVE_WCTOMB
HAVE_WCTYPE_H
HAVE_WINSSTR 1
diff --git a/Ada95/make-tar.sh b/Ada95/make-tar.sh
index e88b312..e18ede7 100755
--- a/Ada95/make-tar.sh
+++ b/Ada95/make-tar.sh
@@ -1,7 +1,7 @@
#!/bin/sh
-# $Id: make-tar.sh,v 1.18 2020/02/02 23:34:34 tom Exp $
+# $Id: make-tar.sh,v 1.20 2021/10/12 21:11:33 tom Exp $
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2010-2015,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -37,14 +37,14 @@ export CDPATH
TARGET=`pwd`
-: ${ROOTNAME:=ncurses-Ada95}
-: ${PKG_NAME:=AdaCurses}
-: ${DESTDIR:=$TARGET}
-: ${TMPDIR:=/tmp}
+: "${ROOTNAME:=ncurses-Ada95}"
+: "${PKG_NAME:=AdaCurses}"
+: "${DESTDIR:=$TARGET}"
+: "${TMPDIR:=/tmp}"
grep_assign() {
- grep_assign=`egrep "^$2\>" "$1" | sed -e "s/^$2[ ]*=[ ]*//" -e 's/"//g'`
- eval $2=\"$grep_assign\"
+ grep_assign=`grep -E "^$2\>" "$1" | sed -e "s/^$2[ ]*=[ ]*//" -e 's/"//g'`
+ eval "$2"=\""$grep_assign"\"
}
grep_patchdate() {
@@ -59,25 +59,28 @@ edit_specfile() {
sed \
-e "s/\\<MAJOR\\>/$NCURSES_MAJOR/g" \
-e "s/\\<MINOR\\>/$NCURSES_MINOR/g" \
- -e "s/\\<YYYYMMDD\\>/$NCURSES_PATCH/g" $1 >$1.new
- chmod u+w $1
- mv $1.new $1
+ -e "s/\\<YYYYMMDD\\>/$NCURSES_PATCH/g" "$1" >"$1.new"
+ chmod u+w "$1"
+ mv "$1.new" "$1"
}
make_changelog() {
- test -f $1 && chmod u+w $1
- cat >$1 <<EOF
-`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_MAJOR.$NCURSES_MINOR+$NCURSES_PATCH) unstable; urgency=low
+ [ -f "$1" ] && chmod u+w "$1"
+ cat >"$1" <<EOF
+`echo $PKG_NAME|tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` ($NCURSES_MAJOR.$NCURSES_MINOR+$NCURSES_PATCH) unstable; urgency=low
* snapshot of ncurses subpackage for $PKG_NAME.
- -- `head -n 1 $HOME/.signature` `date -R`
+ -- `head -n 1 "$HOME"/.signature` `date -R`
EOF
}
# This can be run from either the subdirectory, or from the top-level
# source directory. We will put the tar file in the original directory.
-test -d ./Ada95 && cd ./Ada95
+if [ -d ./Ada95 ]
+then
+ cd ./Ada95 || exit
+fi
SOURCE=`cd ..;pwd`
BUILD=$TMPDIR/make-tar$$
@@ -92,30 +95,30 @@ fi
umask 022
mkdir $BUILD/$ROOTNAME
-cp -p -r * $BUILD/$ROOTNAME/ || exit
+cp -p -r ./* $BUILD/$ROOTNAME/ || exit
# Add the config.* utility scripts from the top-level directory.
for i in . ..
do
- for j in config.guess config.sub install-sh tar-copy.sh
+ for j in COPYING config.guess config.sub install-sh tar-copy.sh
do
- test -f $i/$j && cp -p $i/$j $BUILD/$ROOTNAME/
+ [ -f $i/$j ] && cp -p $i/$j $BUILD/$ROOTNAME/
done
done
# Make rpm and dpkg scripts for test-builds
grep_patchdate
-for spec in $BUILD/$ROOTNAME/package/*.spec
+for spec in "$BUILD/$ROOTNAME"/package/*.spec
do
- edit_specfile $spec
+ edit_specfile "$spec"
done
-for spec in $BUILD/$ROOTNAME/package/debian*
+for spec in "$BUILD/$ROOTNAME"/package/debian*
do
- make_changelog $spec/changelog
+ make_changelog "$spec"/changelog
done
cp -p ../man/MKada_config.in $BUILD/$ROOTNAME/doc/
-if test -z "$NO_HTML_DOCS"
+if [ -z "$NO_HTML_DOCS" ]
then
# Add the ada documentation.
cd ../doc/html || exit
@@ -124,14 +127,14 @@ then
cp -p -r ada $BUILD/$ROOTNAME/doc/
fi
-cp -p $SOURCE/NEWS $BUILD/$ROOTNAME
+cp -p "$SOURCE/NEWS" $BUILD/$ROOTNAME
# cleanup empty directories (an artifact of ncurses source archives)
-touch $BUILD/$ROOTNAME/MANIFEST
-( cd $BUILD/$ROOTNAME && find . -type f -print |$SOURCE/misc/csort >MANIFEST )
+touch $BUILD/$ROOTNAME/MANIFEST
+( cd $BUILD/$ROOTNAME && find . -type f -print | "$SOURCE/misc/csort" >MANIFEST )
-cd $BUILD || exit
+cd $BUILD || exit
# Remove build-artifacts.
find . -name RCS -exec rm -rf {} \;
@@ -148,8 +151,8 @@ find . -name "*.gz" -exec rm -rf {} \;
# Make the files writable...
chmod -R u+w .
-tar cf - $ROOTNAME | gzip >$DESTDIR/$ROOTNAME.tar.gz
-cd $DESTDIR
+tar cf - $ROOTNAME | gzip >"$DESTDIR/$ROOTNAME.tar.gz"
+cd "$DESTDIR" || exit
pwd
ls -l $ROOTNAME.tar.gz
diff --git a/Ada95/package/debian/compat b/Ada95/package/debian/compat
index ec63514..f599e28 100644
--- a/Ada95/package/debian/compat
+++ b/Ada95/package/debian/compat
@@ -1 +1 @@
-9
+10
diff --git a/Ada95/package/debian/copyright b/Ada95/package/debian/copyright
index d248d73..897961d 100644
--- a/Ada95/package/debian/copyright
+++ b/Ada95/package/debian/copyright
@@ -1,14 +1,15 @@
-Upstream source https://invisible-island.net/ncurses/ncurses-examples.html
+Upstream source https://invisible-island.net/ncurses/Ada95.html
Current ncurses maintainer: Thomas Dickey <dickey@invisible-island.net>
-------------------------------------------------------------------------------
Files: *
-Copyright: 1998-2019,2020 Free Software Foundation, Inc.
+Copyright: 2017-2020,2021 by Thomas E. Dickey
+Copyright: 1998-2016,2017 Free Software Foundation, Inc.
Licence: X11
Files: aclocal.m4 package
-Copyright: 2010-2019,2020 by Thomas E. Dickey
+Copyright: 2010-2020,2021 by Thomas E. Dickey
Licence: X11
Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/Ada95/package/debian/rules b/Ada95/package/debian/rules
index 708d3eb..47bbdc0 100755
--- a/Ada95/package/debian/rules
+++ b/Ada95/package/debian/rules
@@ -71,7 +71,7 @@ install-stamp: build-stamp
dh_installdirs
$(MAKE) install DESTDIR=$(TARGET_DIR)
-
+
# FIXME: it would be nice to make these into separate packages
( cd samples && $(MAKE) install.examples DESTDIR=$(TARGET_DIR) BINDIR=$(SAMPLE_DIR) )
( cd doc && $(MAKE) install.html DESTDIR=$(TARGET_DIR) )
diff --git a/Ada95/samples/Makefile.in b/Ada95/samples/Makefile.in
index 2556849..3731085 100644
--- a/Ada95/samples/Makefile.in
+++ b/Ada95/samples/Makefile.in
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -29,7 +29,7 @@
#
# Author: Juergen Pfeifer, 1996
#
-# $Id: Makefile.in,v 1.59 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.64 2021/07/03 15:45:33 tom Exp $
#
.SUFFIXES:
@@ -55,16 +55,16 @@ AWK = @AWK@
LN_S = @LN_S@
CC = @CC@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
CPPFLAGS = @ACPPFLAGS@ \
-DHAVE_CONFIG_H -I$(srcdir)
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -107,7 +107,23 @@ THISLIB = sample
CARGS = -cargs $(ADAFLAGS)
LARGS = -largs -L../lib -l@ADA_LIBNAME@ @TEST_ARG2@ $(LD_FLAGS) @TEST_LIBS2@
-PROGS = tour$x ncurses$x @USE_GNAT_SIGINT@ rain$x
+PROGS = tour$x ncurses$x @USE_GNAT_SIGINT@ rain$x
+
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.examples
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.examples
+@MAKE_PHONY@.PHONY : uninstall.libs
all :: $(PROGS)
@echo made $@
@@ -131,7 +147,7 @@ install.examples :: $(MY_DATADIR)
$(INSTALL_DATA) explain.txt $(MY_DATADIR)
uninstall.examples ::
- -cd $(BINDIR) && rm -f $(PROGS)
+ -( cd $(BINDIR) && rm -f $(PROGS) )
-rmdir $(BINDIR)
-rm -f $(MY_DATADIR)/explain.txt
-rmdir $(MY_DATADIR)
diff --git a/Ada95/samples/explain.txt b/Ada95/samples/explain.txt
index be2cba1..f05eede 100644
--- a/Ada95/samples/explain.txt
+++ b/Ada95/samples/explain.txt
@@ -27,15 +27,15 @@ In a menu you can use the following Keys in the whole application:
- Cursor Right Right one item
- END Key Go to last item
#FORMKEYS
- - CTRL-X eXit the form
+ - CTRL-X eXit the form
- CTRL-F Go forward to the next field
- CTRL-B Go backward to the previous field
- - CTRL-L Go to the field left of the current one
+ - CTRL-L Go to the field left of the current one
- CTRL-R Go to the field right of the current one
- - CTRL-U Go to the field above the current one
- - CTRL-D Go to the field below the current one
+ - CTRL-U Go to the field above the current one
+ - CTRL-D Go to the field below the current one
- - CTRL-W Go to the next word in the field
+ - CTRL-W Go to the next word in the field
- CTRL-T Go to the previous word in the field
- CTRL-A Go to the beginning of the field
@@ -43,13 +43,13 @@ In a menu you can use the following Keys in the whole application:
- CTRL-I Insert a blank character at the current position
- CTRL-O Insert a line
- - CTRL-V Delete a character
- - CTRL-H Delete previous character
- - CTRL-Y Delete a line
- - CTRL-G Delete a word
- - CTRL-K Clear to end of field
+ - CTRL-V Delete a character
+ - CTRL-H Delete previous character
+ - CTRL-Y Delete a line
+ - CTRL-G Delete a word
+ - CTRL-K Clear to end of field
- - CTRL-N Next choice in a choice field (Enumerations etc.)
+ - CTRL-N Next choice in a choice field (Enumerations etc.)
- CTRL-P Previous choice in a choice field.
#HELP
#HELPKEYS
@@ -61,8 +61,8 @@ You may leave the help with the Function Key labeled 'Quit'.
#MAIN
This is the main menu of the sample program for the ncurses Ada95
binding. The main intention of the demo is not to demonstrate or
-test all the features of ncurses and it's subsystems, but to provide
-to you some sample code how to use the binding with Ada95.
+test all the features of ncurses and its subsystems, but to provide
+to you some sample code how to use the binding with Ada95.
You may select this options:
@@ -71,7 +71,7 @@ You may select this options:
* Look at some features of the form subsystem
* Look at the output of the Ada.Text_IO like functions
for ncurses.
-
+
#MAINPAD
You may press at any place in this demo CTRL-C. This will give you a command
window. You can just type in the Label-String of a function key, then this
@@ -86,13 +86,13 @@ descriptions for the items, a marker and a padding character between
the item name and the description.
#MENU01
This is a demo of the some of the menu layout options. One of them
-is the spacing functionality. Just press the Key labeled "Flip" to
+is the spacing functionality. Just press the Key labeled "Flip" to
flip between the non-spaced and a spaced version of the menu. Please
-note that this functionality is unique for ncurses and is not found
-in the SVr4 menu implementation.
+note that this functionality is unique for ncurses and is not found
+in the SVr4 menu implementation.
-This is a menu that sometimes does not fit into it's window and
-therefore it becomes a scroll menu.
+This is a menu that sometimes does not fit into its window and
+therefore it becomes a scroll menu.
You can also see here very nicely the pattern matching functionality
of menus. Type for example a 'J' and you will be positioned to the
@@ -106,10 +106,10 @@ labeled "4x1", "4x2" or "4x3" to get a menu with that many rows
and columns.
With the Keys "O-Row" or "O-Col" (they occupy the same label and
-switch on selection) you can change the major order scheme for
+switch on selection) you can change the major order scheme for
the menu. If "O-Col" is visible, the menu is currently major
ordered by rows, you can switch to major column order by pressing
-the key. If "O-Row" is visible, it's just the reverse situation.
+the key. If "O-Row" is visible, it is just the reverse situation.
This Key is not visible in "4x1" layout mode, because in this case
the functionality makes no sense.
@@ -136,7 +136,7 @@ For more details press the Key labeled "Help".
This is a demo of the forms package.
#FORM-PAD00
Please note that this demo is far from being complete. It really shows
-only a small part of the functionality of the forms package. Let's hope
+only a small part of the functionality of the forms package. Let's hope
the next version will have a richer demo (You want to contribute ?).
#NOTIMPL
Sorry this functionality of the demo is not implemented at the moment.
@@ -148,7 +148,7 @@ This is a menu where you can select some different demos of the ncurses
functionality.
#CURSES-PAD00
Please note that this demo is far from being complete. It really shows
-only a small part of the functionality of the curses package. Let's hope
+only a small part of the functionality of the curses package. Let's hope
the next version will have a richer demo (You want to contribute ?).
#MOUSEKEYS
In this demo you may use this keys:
@@ -160,16 +160,16 @@ In this demo you may use this keys:
You may click the mouse buttons at any location at the screen and look
at the protocol window !
#MOUSE00
-A rather simple use of a mouse as demo. It's there just to test the
-code and to provide the sample source.
+A rather simple use of a mouse as demo. It is there just to test the
+code and to provide the sample source.
It might be of interest, that the output into the protocol window is
done by the (n)curses Text_IO subpackages. Especially the output of
-the button and state names is done by Ads's enumeration IO, which
+the button and state names is done by Ads's enumeration IO, which
allows you to print the names of enumeration literals. That's really
nice.
#MOUSE-PAD00
-This is a very simple demo of the mouse features of ncurses. It's there
+This is a very simple demo of the mouse features of ncurses. It is there
just to test whether or not the generated code for the binding really
works on the different architectures (seems so).
#ATTRIBDEMO
diff --git a/Ada95/samples/ncurses2-demo_forms.adb b/Ada95/samples/ncurses2-demo_forms.adb
index 5c86af7..b2d72ba 100644
--- a/Ada95/samples/ncurses2-demo_forms.adb
+++ b/Ada95/samples/ncurses2-demo_forms.adb
@@ -7,7 +7,7 @@
-- B O D Y --
-- --
------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 2000-2011,2014 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -36,8 +36,8 @@
------------------------------------------------------------------------------
-- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
-- Version Control
--- $Revision: 1.8 $
--- $Date: 2020/02/02 23:34:34 $
+-- $Revision: 1.9 $
+-- $Date: 2021/09/04 10:52:55 $
-- Binding Version 01.00
------------------------------------------------------------------------------
with ncurses2.util; use ncurses2.util;
@@ -381,7 +381,7 @@ procedure ncurses2.demo_forms is
Set_KeyPad_Mode (w, True);
end if;
- -- TODO if Post(f) /= Form_Ok then it's a procedure
+ -- TODO if Post(f) /= Form_Ok then it is a procedure
declare
begin
Post (f);
diff --git a/Ada95/samples/ncurses2-overlap_test.adb b/Ada95/samples/ncurses2-overlap_test.adb
index 11a2d0b..c0fd620 100644
--- a/Ada95/samples/ncurses2-overlap_test.adb
+++ b/Ada95/samples/ncurses2-overlap_test.adb
@@ -7,7 +7,7 @@
-- B O D Y --
-- --
------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 2000-2014,2015 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -36,8 +36,8 @@
------------------------------------------------------------------------------
-- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
-- Version Control
--- $Revision: 1.8 $
--- $Date: 2020/02/02 23:34:34 $
+-- $Revision: 1.9 $
+-- $Date: 2021/09/04 10:52:55 $
-- Binding Version 01.00
------------------------------------------------------------------------------
with ncurses2.util; use ncurses2.util;
@@ -130,9 +130,9 @@ begin
Refresh_Without_Update (win2);
Refresh_Without_Update (win1);
Update_Screen;
- when 'c' => -- fill window A so it's visible
+ when 'c' => -- fill window A so it is visible
fillwin (win1, 'A');
- when 'd' => -- fill window B so it's visible
+ when 'd' => -- fill window B so it is visible
fillwin (win2, 'B');
when 'e' => -- cross test pattern in window A
crosswin (win1, 'A');
diff --git a/Ada95/src/Makefile.in b/Ada95/src/Makefile.in
index 384fa3c..eb4489b 100644
--- a/Ada95/src/Makefile.in
+++ b/Ada95/src/Makefile.in
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1999-2016,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -29,7 +29,7 @@
#
# Author: Juergen Pfeifer, 1996
#
-# $Id: Makefile.in,v 1.89 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.96 2021/07/03 15:45:33 tom Exp $
#
.SUFFIXES:
@@ -64,16 +64,16 @@ AWK = @AWK@
LN_S = @LN_S@
CC = @CC@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
CPPFLAGS = @ACPPFLAGS@ @CPPFLAGS@ \
-DHAVE_CONFIG_H -I$(srcdir)
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -174,6 +174,20 @@ GENOBJS=$(ABASE)-menus-menu_user_data.o \
$(ABASE)-text_io-modular_io.o \
$(ABASE)-text_io-complex_io.o
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all :: $(BUILD_DIR_LIB)/$(STATIC_LIBNAME)
@echo done
@@ -184,7 +198,7 @@ $(BUILD_DIR_LIB) :
mkdir -p $@
$(GENERATED_SOURCES) :
- cd ../gen; $(MAKE) $(ADA_MFLAGS)
+ ( cd ../gen; $(MAKE) $(ADA_MFLAGS) )
sources : $(GENERATED_SOURCES)
@echo made $@
@@ -195,6 +209,7 @@ install.libs :: \
$(BUILD_DIR_LIB)/$(STATIC_LIBNAME)
@echo made $(STATIC_LIBNAME)
+#OLD:BEGIN
install \
install.libs :: \
$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) \
@@ -206,6 +221,7 @@ install.libs :: \
uninstall \
uninstall.libs ::
@rm -f $(ADA_OBJECTS)/$(STATIC_LIBNAME)
+#OLD:END
mostlyclean ::
rm -f *.o *.ali b_t*.* *.s $(PROGS) a.out core b_*_test.c *.xr[bs] *.a
@@ -273,23 +289,71 @@ STATIC_DIRS = \
@USE_GNAT_PROJECTS@ $(STATIC_DIRS)
@USE_GNAT_PROJECTS@ @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
@USE_GNAT_PROJECTS@ -rm -f $(GNAT_PROJECT)
-@USE_GNAT_PROJECTS@ $(SHELL) $(srcdir)/library-cfg.sh static $(srcdir)/library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
+@USE_GNAT_PROJECTS@ $(SHELL) $(srcdir)/library-cfg.sh static library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
@USE_GNAT_PROJECTS@ @echo "Using GNAT Project:"
-@USE_GNAT_PROJECTS@ @-$(SHELL) -c "diff -c $(srcdir)/library.gpr $(GNAT_PROJECT); exit 0"
-@USE_GNAT_PROJECTS@ $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static
-@USE_GNAT_PROJECTS@ $(AR) $(ARFLAGS) $@ $(STATIC_C_OBJS)
-@USE_GNAT_PROJECTS@ -rm -f $(GNAT_PROJECT)
-@USE_GNAT_PROJECTS@
+@USE_GNAT_MAKE_GPR@ @-$(SHELL) -c "diff -c $(srcdir)/library.gpr $(GNAT_PROJECT); exit 0"
+@USE_GNAT_MAKE_GPR@ $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static
+@USE_GNAT_MAKE_GPR@ $(AR) $(ARFLAGS) $@ $(STATIC_C_OBJS)
+@USE_GNAT_MAKE_GPR@ -rm -f $(GNAT_PROJECT)
+@USE_GNAT_GPRBUILD@ @-$(SHELL) -c "diff -c library.gpr $(GNAT_PROJECT); exit 0"
+@USE_GNAT_GPRBUILD@ gprbuild -p $(ADAMAKEFLAGS) -XLIB_KIND=static
+@USE_GNAT_GPRBUILD@ -rm -f $(GNAT_PROJECT)
+
+#OLD:BEGIN
@USE_GNAT_LIBRARIES@install \
@USE_GNAT_LIBRARIES@install.libs :: \
@USE_GNAT_LIBRARIES@ $(ADA_OBJECTS)
@USE_GNAT_LIBRARIES@ $(INSTALL_LIB) \
@USE_GNAT_LIBRARIES@ $(BUILD_DIR)/static-ali/*.ali \
@USE_GNAT_LIBRARIES@ $(ADA_OBJECTS)
-
+#OLD:END
+# While gprinstall is the "recommended" tool, it is rather brittle, with
+# hardcoded assumptions about the use of the install-name which prevent using
+# that tool to make the directory layout of older versions of the AdaCurses
+# package.
+#
+# In principle, one might just do
+# --install-name=""
+# and in dry-run mode, gprinstall pretends to handle it properly (trimming the
+# empty directory level), but without the dry-run option, it fails (tested
+# with gnat 10.1.1).
+#NEW:BEGIN
+#@USE_GNAT_LIBRARIES@install \
+#@USE_GNAT_LIBRARIES@install.libs ::
+#@USE_GNAT_LIBRARIES@ @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
+#@USE_GNAT_LIBRARIES@ -rm -f $(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@ $(SHELL) $(srcdir)/library-cfg.sh static library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@ @echo "Using GNAT Project:"
+#@USE_GNAT_LIBRARIES@ @-$(SHELL) -c "diff -c library.gpr $(GNAT_PROJECT); exit 0"
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@ gprinstall -m -v -f -p \
+#@USE_GNAT_LIBRARIES@ --prefix="$(DESTDIR)$(prefix)" \
+#@USE_GNAT_LIBRARIES@ $(ADAMAKEFLAGS) -XLIB_KIND=static \
+#@USE_GNAT_LIBRARIES@ --lib-subdir="$(DESTDIR)$(prefix)"/lib \
+#@USE_GNAT_LIBRARIES@ --ali-subdir="$(DESTDIR)$(prefix)"/lib/ada/adalib \
+#@USE_GNAT_LIBRARIES@ --sources-subdir="$(DESTDIR)$(prefix)"/share/ada/adainclude
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@ -rm -f $(GNAT_PROJECT)
+#NEW:END
+
+#OLD:BEGIN
uninstall \
uninstall.libs ::
@rm -f $(ADA_OBJECTS)/$(STATIC_LIBNAME)
+#OLD:END
+#NEW:BEGIN
+#@USE_GNAT_LIBRARIES@uninstall \
+#@USE_GNAT_LIBRARIES@uninstall.libs ::
+#@USE_GNAT_LIBRARIES@ @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
+#@USE_GNAT_LIBRARIES@ -rm -f $(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@ $(SHELL) $(srcdir)/library-cfg.sh static library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@ @echo "Using GNAT Project:"
+#@USE_GNAT_LIBRARIES@ @-$(SHELL) -c "diff -c library.gpr $(GNAT_PROJECT); exit 0"
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@ gprinstall -v -f --prefix="$(DESTDIR)$(prefix)" --uninstall $(ADAMAKEFLAGS) -XLIB_KIND=static
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@ -rm -f $(GNAT_PROJECT)
+#NEW:END
@USE_GNAT_LIBRARIES@uninstall \
@USE_GNAT_LIBRARIES@uninstall.libs ::
@@ -311,9 +375,9 @@ SHARED_DIRS = \
@MAKE_ADA_SHAREDLIB@ cp $(SHARED_OBJS) $(BUILD_DIR)/dynamic-obj/
@MAKE_ADA_SHAREDLIB@ @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
@MAKE_ADA_SHAREDLIB@ -rm -f $(GNAT_PROJECT)
-@MAKE_ADA_SHAREDLIB@ $(SHELL) $(srcdir)/library-cfg.sh dynamic $(srcdir)/library.gpr $(CFLAGS_SHARED) >$(GNAT_PROJECT)
+@MAKE_ADA_SHAREDLIB@ $(SHELL) $(srcdir)/library-cfg.sh dynamic library.gpr $(CFLAGS_SHARED) >$(GNAT_PROJECT)
@MAKE_ADA_SHAREDLIB@ @echo "Making Ada shared-lib:"
-@MAKE_ADA_SHAREDLIB@ @-$(SHELL) -c "diff -c $(srcdir)/library.gpr $(GNAT_PROJECT); exit 0"
+@MAKE_ADA_SHAREDLIB@ @-$(SHELL) -c "diff -c library.gpr $(GNAT_PROJECT); exit 0"
@MAKE_ADA_SHAREDLIB@ $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=dynamic
@MAKE_ADA_SHAREDLIB@ -rm -f $(GNAT_PROJECT)
@@ -341,7 +405,7 @@ uninstall.libs ::
@MAKE_ADA_SHAREDLIB@ $(INSTALL_LIB) \
@MAKE_ADA_SHAREDLIB@ $(BUILD_DIR_LIB)/$(SHARED_LIBNAME) \
@MAKE_ADA_SHAREDLIB@ $(LIBDIR)
-@MAKE_ADA_SHAREDLIB@ cd $(LIBDIR) && $(LN_S) $(SHARED_LIBNAME) $(SHARED_SYMLINK)
+@MAKE_ADA_SHAREDLIB@ ( cd $(LIBDIR) && $(LN_S) $(SHARED_LIBNAME) $(SHARED_SYMLINK) )
@MAKE_ADA_SHAREDLIB@
@MAKE_ADA_SHAREDLIB@uninstall \
@MAKE_ADA_SHAREDLIB@uninstall.libs ::
@@ -352,8 +416,13 @@ uninstall.libs ::
@MAKE_ADA_SHAREDLIB@ rm -f $(LIBDIR)/$(SHARED_SYMLINK)
@MAKE_ADA_SHAREDLIB@ rm -f $(LIBDIR)/$(SHARED_LIBNAME)
+#rm-docs :
+# gnatdoc --enable-build $(ADAMAKEFLAGS) -XLIB_KIND=static
+
clean ::
-rm -f default.cgpr
-rm -rf $(BUILD_DIR)/*-ali
-rm -rf $(BUILD_DIR)/*-obj
-rm -rf $(BUILD_DIR_LIB)
+#@USE_GNAT_PROJECTS@ gprclean $(ADAMAKEFLAGS) -XLIB_KIND=static
+#@MAKE_ADA_SHAREDLIB@ gprclean $(ADAMAKEFLAGS) -XLIB_KIND=dynamic
diff --git a/Ada95/src/library.gpr.in b/Ada95/src/library.gpr.in
index b0f0646..37cbb9d 100644
--- a/Ada95/src/library.gpr.in
+++ b/Ada95/src/library.gpr.in
@@ -25,7 +25,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
------------------------------------------------------------------------------
--- $Id: library.gpr.in,v 1.2 2020/02/02 23:34:34 tom Exp $
+-- $Id: library.gpr.in,v 1.3 2020/06/27 20:47:40 tom Exp $
-- http://gcc.gnu.org/onlinedocs/gnat_ugn_unw/Library-Projects.html
-- http://www.adaworld.com/debian/debian-ada-policy.html
project AdaCurses is
@@ -48,10 +48,24 @@ project AdaCurses is
for Default_Switches ("Ada") use
("-g",
"-O2",
+ "-Wall",
"-gnatafno",
"-gnatVa", -- All validity checks
"-gnatwa"); -- Activate all optional errors
-- for Default_Switches ("C") use (CFLAGS)
end Compiler;
for Languages use ("C", "Ada");
+ package Install is
+ for Install_Name use "adacurses";
+ -- for Artifacts ("share/doc/adacurses") use ("../doc/Ada95.html", "../doc/ada");
+ -- for Artifacts ("share/doc/adacurses/adacurses_rm") use ("../" & Kind & "-obj" & "/gnatdoc/*");
+ for Artifacts ("lib/ada/adalib") use
+ ("../src/*.ali");
+ for Artifacts ("share/ada/adainclude") use
+ ("../src/*.ad?");
+ -- for Artifacts ("share/examples/adacurses") use
+ -- ("../samples/*.ad?", "../samples/explain.txt", "../samples/Makefile", "../samples/README");
+ -- for Artifacts ("share/man/man1") use ("../doc/adacurses-config.1");
+ for Artifacts ("bin") use ("../gen/adacurses-config");
+ end Install;
end AdaCurses;
diff --git a/Ada95/src/terminal_interface-curses-mouse.adb b/Ada95/src/terminal_interface-curses-mouse.adb
index ed66249..a8efd34 100644
--- a/Ada95/src/terminal_interface-curses-mouse.adb
+++ b/Ada95/src/terminal_interface-curses-mouse.adb
@@ -36,8 +36,8 @@
------------------------------------------------------------------------------
-- Author: Juergen Pfeifer, 1996
-- Version Control:
--- $Revision: 1.27 $
--- $Date: 2020/02/02 23:34:34 $
+-- $Revision: 1.28 $
+-- $Date: 2020/06/27 18:50:44 $
-- Binding Version 01.00
------------------------------------------------------------------------------
with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
@@ -147,6 +147,7 @@ package body Terminal_Interface.Curses.Mouse is
Button := Button4;
end if;
if Button in Real_Buttons then
+ State := Released; -- preset to non real button;
L := 2 ** (6 * Mouse_Button'Pos (Button));
for I in Button_State'Range loop
if (Mask and L) /= 0 then
diff --git a/COPYING b/COPYING
index 8765898..3a22975 100644
--- a/COPYING
+++ b/COPYING
@@ -1,4 +1,4 @@
-Copyright 2018-2019,2020 Thomas E. Dickey
+Copyright 2018-2020,2021 Thomas E. Dickey
Copyright 1998-2017,2018 Free Software Foundation, Inc.
Permission is hereby granted, free of charge, to any person obtaining a
@@ -26,4 +26,4 @@ sale, use or other dealings in this Software without prior written
authorization.
-- vile:txtmode fc=72
--- $Id: COPYING,v 1.9 2020/02/08 13:34:12 tom Exp $
+-- $Id: COPYING,v 1.10 2021/01/01 09:54:30 tom Exp $
diff --git a/INSTALL b/INSTALL
index 69cf439..aacfd9a 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2018-2019,2020 Thomas E. Dickey --
+-- Copyright 2018-2020,2021 Thomas E. Dickey --
-- Copyright 1998-2017,2018 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: INSTALL,v 1.216 2020/02/02 23:34:34 tom Exp $
+-- $Id: INSTALL,v 1.235 2021/10/19 23:34:17 tom Exp $
---------------------------------------------------------------------
How to install Ncurses/Terminfo on your system
---------------------------------------------------------------------
@@ -41,7 +41,7 @@ including `c++', `form', `man', `menu', 'misc', `ncurses', `panel', `progs',
and `test'. See the README file for a roadmap to the package.
If you are a distribution integrator or packager, please read and act on the
-section titled IF YOU ARE A SYSTEM INTEGRATOR below.
+section titled FOR SYSTEM INTEGRATORS below.
If you are converting from BSD curses and do not have root access, be sure
to read the BSD CONVERSION NOTES section below.
@@ -49,11 +49,7 @@ to read the BSD CONVERSION NOTES section below.
If you are trying to build applications using gpm with ncurses,
read the USING NCURSES WITH GPM section below.
-If you are running over the Andrew File System see the note below on
-USING NCURSES WITH AFS.
-
-If you are cross-compiling, see the note below on BUILDING NCURSES WITH A
-CROSS-COMPILER.
+If you are cross-compiling, see the note below on BUILDING WITH A CROSS-COMPILER.
If you want to build the Ada95 binding, go to the Ada95 directory and
follow the instructions there. The Ada95 binding is not covered below.
@@ -270,8 +266,8 @@ INSTALLATION PROCEDURE:
YOU MAY NOT BE ABLE TO COMPILE (OR RUN) NCURSES APPLICATIONS WITH C++.
-SUMMARY OF CONFIGURE OPTIONS:
-----------------------------
+CONFIGURE OPTIONS:
+-----------------
The configure script provides a short list of its options when you type
@@ -439,6 +435,31 @@ SUMMARY OF CONFIGURE OPTIONS:
Without some special effort, it will either fail to compile at all,
or the compiler may find a different unctrl.h file.
+ In addition to the curses library, a system may provide its own
+ versions of the add-on libraries (form, menu, panel), which would
+ not be compatible with ncurses. These options allow you to rename
+ ncurses' add-on libraries to avoid conflicts when linking:
+
+ --with-form-libname=XXX
+ --with-menu-libname=XXX
+ --with-panel-libname=XXX
+
+ Rather than renaming them abitrarily, a prefix or suffix is
+ recommended. An "n" prefix provides consistency with ncurses versus
+ curses, i.e.,
+
+ --with-form-libname=nform
+ --with-menu-libname=nmenu
+ --with-panel-libname=npanel
+
+ --disable-pkg-ldflags
+ Omit options in $LDFLAGS and $EXTRA_LDFLAGS from the pkg-config ".pc"
+ and corresponding ncurses*-config script which normally are listed via
+ the "--libs" option. These options are normally used to facilitate
+ linking to ncurses when it was configured to use the rpath feature.
+
+ See also --enable-rpath and --disable-rpath-hack.
+
--disable-relink
If --enable-rpath is given, the generated makefiles normally will
rebuild shared libraries during install. Use this option to simply
@@ -454,6 +475,10 @@ SUMMARY OF CONFIGURE OPTIONS:
filesystems. This option adds a 1-second sleep to help those tools
avoid unnecessary relinking during the install process.
+ --disable-root-access
+ Compile with environment restriction, so most file-access is limited
+ when running via a setuid/setgid application.
+
--disable-root-environ
Compile with environment restriction, so certain environment variables
are not available when running as root, or via a setuid/setgid
@@ -491,26 +516,6 @@ SUMMARY OF CONFIGURE OPTIONS:
list documented in X/Open. ncurses provides varargs support for this
function. Use --disable-tparm-varargs to disable this support.
- --disable-wattr-macros
- The 6.0 ABI adds support for extended colors and for extended mouse.
- The former is a noticeable problem when developers inadvertently
- compile using the ncurses6 header files and link with an ncurses5
- library, because the wattr* macros use a new field in the WINDOW
- structure. These macros are used in several applications.
-
- Since ncurses provides an actual function for each of these macros,
- suppressing them from the curses.h header allows the ncurses5 libraries
- to be used in most applications.
-
- NOTE: The extended colors also are used in the cchar_t structure, but
- fewer applications use that.
-
- NOTE: This workaround does not help with mismatches in the ncurses
- mouse version. The extended mouse feature uses one less fewer bit for
- each button, so that only the first button will work as expected with
- a mismatch between header and library. Again, most applications will
- work, since most use only the first button.
-
--enable-assertions
For testing, compile-in assertion code. This is used only for a few
places where ncurses cannot easily recover by returning an error code.
@@ -561,6 +566,9 @@ SUMMARY OF CONFIGURE OPTIONS:
For testing, generate functions for certain macros to make them visible
as such to the debugger. See also the --disable-macros option.
+ --enable-exp-win32
+ When configuring for MinGW, use the experimental Windows 10 driver.
+
--enable-ext-colors
Extend the cchar_t structure to allow more than 16 colors to be
encoded. This applies only to the wide-character (--enable-widec)
@@ -587,6 +595,12 @@ SUMMARY OF CONFIGURE OPTIONS:
ncurses. This does not change the ABI (the binary interface seen by
calling applications).
+ --enable-fvisibility
+ Use the gcc "-fvisibility=hidden" option to make symbols which are not
+ explicitly exported, "hidden". Doing this may reduce the number of
+ symbols exported in the C++ binding; it should have less effect on the
+ C libraries when symbol-versioning is used.
+
--enable-getcap
Use the 4.4BSD getcap code if available, or a bundled version of it to
fetch termcap entries. Entries read in this way cannot use (make
@@ -698,6 +712,14 @@ SUMMARY OF CONFIGURE OPTIONS:
reducing the need for juggling the global SP value with set_term() and
delscreen().
+ --enable-stdnoreturn
+ When enabled, check if the <stdnoreturn.h> header exists, and if found
+ define GCC_NORETURN to _Noreturn rather than either the gcc-specific
+ __attribute__((noreturn)) or an empty token. Doing this may require
+ calling programs which use GCC_NORETURN in their own function
+ definitions to be modified, because _Noreturn is only accepted as
+ the first token in a declaration.
+
--enable-string-hacks
Controls whether strlcat and strlcpy may be used. The same issue
applies to OpenBSD's warnings about snprintf, noting that this function
@@ -736,6 +758,26 @@ SUMMARY OF CONFIGURE OPTIONS:
--enable-warnings
Turn on GCC compiler warnings. There should be only a few.
+ --enable-wattr-macros
+ The 6.0 ABI adds support for extended colors and for extended mouse.
+ The former is a noticeable problem when developers inadvertently
+ compile using the ncurses6 header files and link with an ncurses5
+ library, because the wattr* macros use a new field in the WINDOW
+ structure. These macros are used in several applications.
+
+ Since ncurses provides an actual function for each of these macros,
+ suppressing them from the curses.h header allows the ncurses5 libraries
+ to be used in most applications.
+
+ NOTE: The extended colors also are used in the cchar_t structure, but
+ fewer applications use that.
+
+ NOTE: This workaround does not help with mismatches in the ncurses
+ mouse version. The extended mouse feature uses one less fewer bit for
+ each button, so that only the first button will work as expected with
+ a mismatch between header and library. Again, most applications will
+ work, since most use only the first button.
+
--enable-weak-symbols
If the --with-pthread option is set, check if the compiler supports
weak-symbols. If it does, then name the thread-capable library without
@@ -864,6 +906,9 @@ SUMMARY OF CONFIGURE OPTIONS:
Specify a suffix for the ncursesw6-config file, etc., used to work
around conflicts with packages.
+ --with-cxx-libname=NAME
+ Override the basename of the ncurses++ library (default: "ncurses++")
+
--with-cxx-shared
When --with-shared is set, build libncurses++ as a shared library.
This implicitly relies upon building with gcc/g++, since other
@@ -909,6 +954,9 @@ SUMMARY OF CONFIGURE OPTIONS:
See also "--with-tic-path" and "--with-infocmp-path".
+ --with-form-libname=NAME
+ Override the basename of the form library (default: "form")
+
--with-gpm
use Alessandro Rubini's GPM library to provide mouse support on the
Linux console. Prior to ncurses 5.5, this introduced a dependency on
@@ -1043,6 +1091,9 @@ SUMMARY OF CONFIGURE OPTIONS:
by running them through tbl to generate tables understandable by
nroff.
+ --with-menu-libname=NAME
+ Override the basename of the menu library (default: "menu")
+
--with-mmask-t=TYPE
Override type of mmask_t, which stores the mouse mask. Prior to
ncurses 5.5, this was always unsigned long, but with ncurses 5.5, it
@@ -1070,6 +1121,9 @@ SUMMARY OF CONFIGURE OPTIONS:
those using termcap, do not use the higher speeds. Your application
(or system, in general) may or may not.
+ --with-panel-libname=NAME
+ Override the basename of the panel library (default: "panel")
+
--with-pc-suffix=SUFFIX
If ".pc" files are installed, optionally add a suffix to the files
and corresponding package names to separate unusual configurations.
@@ -1089,7 +1143,11 @@ SUMMARY OF CONFIGURE OPTIONS:
--with-pkg-config-libdir=[DIR]
If pkg-config was found, override the automatic check for its library
- path.
+ path. The configure script allows only a single directory, because
+ that is used as the directory in which to install ".pc" files.
+
+ The automatic check for the library path selects the first directory
+ which currently exists.
--with-profile
Generate profile-libraries These are named by adding "_p" to the root,
@@ -1328,8 +1386,8 @@ SUMMARY OF CONFIGURE OPTIONS:
X11R5 and X11R6 xterm.
-COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
---------------------------------------------
+COMPATIBILITY WITH OLDER RELEASES:
+---------------------------------
Because ncurses implements X/Open Curses, its interface is fairly stable.
That does not mean the interface does not change. Changes are made to the
@@ -1343,6 +1401,75 @@ COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
you may encounter when building a system with different versions of
ncurses:
+ 6.3 (Oct 21, 2021)
+ Interface changes:
+
+ + the definition of TERMTYPE2 is now internal, not visible in the ABI,
+ like the enclosing TERMINAL which was previously made opaque. This
+ was done to provide SCREEN-specific "static" variables in terminfo.
+
+ Added extensions:
+
+ + add sp-funcs for erasewchar, killwchar.
+
+ Added internal functions (other than "_sp" variants):
+
+ + _nc_safe_fopen and _nc_safe_open3 limit privileges if possible when
+ opening a file; otherwise disallow access for updating files.
+
+ + _nc_tiparm is a variant of tiparm which is used when all of the
+ parameters are known to be numbers rather than possibly strings.
+
+ + _nc_reset_tparm improves tic's checks by resetting the terminfo
+ "static variables" before calling functions which may update them.
+
+ Removed internal functions:
+
+ + none
+
+ Modified internal functions:
+
+ + _nc_trace_ttymode passes pointer to const data
+
+ + _nc_tparm_analyze passes pointer to int*, not int[]
+
+ 6.2 (Feb 12, 2020)
+ Interface changes:
+
+ + the terminal database must be compiled with ncurses 6.2 tic;
+ older versions of tic/infocmp will not work. Aside from that,
+ the compiled database will work with older applications.
+
+ + "*.pc" and "ncurses*-config" files give the same information.
+
+ + vwprintw and vwscanw are deprecated.
+
+ Added extensions:
+
+ + These make it simpler to substitute a debug-configuration of the
+ library for non-debug:
+ curses_trace
+ exit_curses
+ exit_terminfo
+
+ Added internal functions (other than "_sp" variants):
+
+ + These provide fast-lookup of common user-defined capabilities:
+ _nc_find_user_entry
+ _nc_get_userdefs_table
+ _nc_get_hash_user
+
+ + This is added to work around compiler-warnings:
+ _nc_fmt_funcptr
+
+ Removed internal functions:
+
+ + _nc_import_termtype
+
+ Modified internal functions:
+
+ + _nc_reserve_pairs no longer returns a value
+
6.1 (Jan 27, 2018)
Interface changes:
@@ -2016,8 +2143,8 @@ COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
incorrect color scheme.
-IF YOU ARE A SYSTEM INTEGRATOR:
-------------------------------
+FOR SYSTEM INTEGRATORS:
+----------------------
Configuration and Installation:
@@ -2076,7 +2203,7 @@ IF YOU ARE A SYSTEM INTEGRATOR:
Please pick a name unique to your console driver and set that up
in the /etc/inittab table or local equivalent. Send the entry to the
terminfo maintainer (listed in the misc/terminfo file) to be included
- in the terminfo file, if it's not already there. See the
+ in the terminfo file, if it is not already there. See the
term(7) manual page included with this distribution for more on
conventions for choosing type names.
@@ -2093,7 +2220,7 @@ IF YOU ARE A SYSTEM INTEGRATOR:
that will make users' lives easier rather than harder.
-RECENT XTERM VERSIONS:
+MODERN XTERM VERSIONS:
---------------------
The terminfo database file included with this distribution assumes you
@@ -2109,9 +2236,13 @@ CONFIGURING FALLBACK ENTRIES:
In order to support operation of ncurses programs before the terminfo
tree is accessible (that is, in single-user mode or at OS installation
time) the ncurses library can be compiled to include an array of
- pre-fetched fallback entries. This must be done on a machine which
- has ncurses' infocmp and terminfo database installed (as well as
- ncurses' tic and infocmp programs).
+ pre-fetched fallback entries.
+
+ NOTE: This must be done on a machine which has ncurses' infocmp and
+ terminfo database installed (as well as ncurses' tic and infocmp
+ programs). That is because the fallback sources are generated and
+ compiled into the library before the build-tree's copy of infocmp is
+ available.
These entries are checked by setupterm() only when the conventional
fetches from the terminfo tree and the termcap fallback (if configured)
@@ -2230,12 +2361,8 @@ terminfo directory directly.
------------------------------- CUT HERE --------------------------------
-USING NCURSES WITH AFS:
- AFS treats each directory as a separate logical filesystem, you
- can't hard-link across them. The --enable-symlinks option copes
- with this by making tic use symbolic links.
-
-USING NCURSES WITH GPM:
+USING GPM:
+---------
Ncurses 4.1 and up can be configured to use GPM (General Purpose Mouse)
which is used with Linux console. Be aware that GPM is commonly
installed as a shared library which contains a wrapper for the curses
@@ -2254,7 +2381,9 @@ USING NCURSES WITH GPM:
https://invisible-island.net/ncurses/ncurses.faq.html#using_gpm_lib
-BUILDING NCURSES WITH A CROSS-COMPILER
+
+BUILDING WITH A CROSS-COMPILER:
+------------------------------
Ncurses can be built with a cross-compiler. Some parts must be built
with the host's compiler since they are used for building programs
(e.g., ncurses/make_hash and ncurses/make_keys) that generate tables
@@ -2279,14 +2408,26 @@ BUILDING NCURSES WITH A CROSS-COMPILER
When ncurses has been successfully cross-compiled, you may want to use
"make install" (with a suitable target directory) to construct an
install tree. Note that in this case (as with the --with-fallbacks
- option), ncurses uses the development platform's tic to do the
- "make install.data" portion.
+ option), ncurses uses the development platform's tic to do the "make
+ install.data" portion.
The system's tic program is used to install the terminal database,
- even for cross-compiles. For best results, the tic program should
- be from the most current version of ncurses.
-
-BUGS:
+ even for cross-compiles. For best results, the tic program should be
+ from the most current version of ncurses.
+
+ NOTE: the system's tic program may use a different terminfo database
+ format than the target system. For instance, as described in term(5),
+ the conventional terminfo layout uses a directory hierarchy with one
+ letter names, while some platforms use two-letter names to work with
+ case-insensitive filesystems. The configure script searches for a tic
+ program using the AC_CHECK_TOOL macro, which will prefer programs
+ using the canonical host prefix in their name. You can use this fact
+ to provide a cross-compiler support utility tic, otherwise you can
+ override the configure script's choice using --with-tic-path
+
+
+BUG REPORTS:
+-----------
Send any feedback to the ncurses mailing list at
bug-ncurses@gnu.org. To subscribe send mail to
bug-ncurses-request@gnu.org with body that reads:
diff --git a/MANIFEST b/MANIFEST
index aa8603a..749138c 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -235,7 +235,6 @@
./config.sub
./configure
./configure.in
-./convert_configure.pl
./dist.mk
./doc/hackguide.doc
./doc/html/Ada95.html
@@ -547,18 +546,21 @@
./include/MKterm.h.awk.in
./include/Makefile.in
./include/capdefaults.c
+./include/curses.events
./include/curses.h.in
./include/curses.tail
./include/curses.wide
./include/edit_cfg.sh
./include/hashed_db.h
./include/headers
+./include/nc_access.h
./include/nc_alloc.h
./include/nc_mingw.h
./include/nc_panel.h
./include/nc_string.h
./include/nc_termios.h
./include/nc_tparm.h
+./include/nc_win32.h
./include/ncurses_cfg.hin
./include/ncurses_defs
./include/ncurses_dll.h.in
@@ -567,6 +569,7 @@
./include/termcap.h.in
./include/tic.h
./include/unctrl.h.in
+./include/win32_curses.h
./install-sh
./man/MKada_config.in
./man/MKncu_config.in
@@ -766,6 +769,7 @@
./misc/makellib
./misc/menu.def
./misc/menu.ref
+./misc/ncu2openbsd
./misc/ncurses-config.in
./misc/ncurses.def
./misc/ncurses.ref
@@ -897,6 +901,7 @@
./ncurses/new_pair.h
./ncurses/report_hashing.c
./ncurses/report_offsets.c
+./ncurses/term.priv.h
./ncurses/tinfo/MKcaptab.awk
./ncurses/tinfo/MKcaptab.sh
./ncurses/tinfo/MKcodes.awk
@@ -942,6 +947,8 @@
./ncurses/tinfo/lib_tparm.c
./ncurses/tinfo/lib_tputs.c
./ncurses/tinfo/lib_ttyflags.c
+./ncurses/tinfo/lib_win32con.c
+./ncurses/tinfo/lib_win32util.c
./ncurses/tinfo/make_hash.c
./ncurses/tinfo/make_keys.c
./ncurses/tinfo/name_match.c
@@ -998,6 +1005,7 @@
./ncurses/widechar/widechars.c
./ncurses/win32con/gettimeofday.c
./ncurses/win32con/wcwidth.c
+./ncurses/win32con/win32_driver.c
./ncurses/win32con/win_driver.c
./package/debian-mingw/changelog
./package/debian-mingw/compat
@@ -1089,6 +1097,7 @@
./test/Makefile.in
./test/README
./test/aclocal.m4
+./test/back_ground.c
./test/background.c
./test/blue.c
./test/bs.6
@@ -1123,6 +1132,7 @@
./test/dots_xcurses.c
./test/dump_window.c
./test/dump_window.h
+./test/dup_field.c
./test/echochar.c
./test/edit_field.c
./test/edit_field.h
@@ -1155,6 +1165,7 @@
./test/mini.xterm_48x48.xpm
./test/mk-test.awk
./test/modules
+./test/move_field.c
./test/movewindow.c
./test/ncurses.c
./test/ncurses_tst.hin
@@ -1212,6 +1223,7 @@
./test/test_setupterm.c
./test/test_sgr.c
./test/test_termattrs.c
+./test/test_tparm.c
./test/test_vid_puts.c
./test/test_vidputs.c
./test/testaddch.c
diff --git a/Makefile.in b/Makefile.in
index 7be6e76..f87c19f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.43 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.45 2021/08/07 22:06:59 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2014,2015 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -67,6 +67,19 @@ INSTALL_DATA = @INSTALL_DATA@
DIRS_TO_MAKE = @DIRS_TO_MAKE@
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : depend
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : preinstall
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : tags
+@MAKE_PHONY@.PHONY : uninstall
+
all :: $(DIRS_TO_MAKE)
$(DIRS_TO_MAKE) :
@@ -99,7 +112,7 @@ preinstall :
distclean \
realclean ::
-check:
+check :
@ echo The test-programs are interactive
diff --git a/Makefile.os2 b/Makefile.os2
index 960c2bd..bc3407d 100644
--- a/Makefile.os2
+++ b/Makefile.os2
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2000,2006 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -26,7 +26,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
################################################################################
-# $Id: Makefile.os2,v 1.12 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.os2,v 1.13 2021/06/17 21:20:30 tom Exp $
#
# Wrapper Makefile for ncurses library under OS/2.
# Author: Juan Jose Garcia Ripoll <worm@arrakis.es>.
@@ -70,7 +70,7 @@
# disappear are not essential.
#
# I first thought about killing '_nc_*' symbols, but it seems that some of
-# them --_nc_panel_hook, _nc_ada*, etc-- are needed outside ncurses.dll.
+# them --_nc_panel_hook, _nc_ada*, etc-- are needed outside ncurses.dll.
# However, the whole size of the export table will not be larger than 1k or
# so.
#
diff --git a/NEWS b/NEWS
index ccc1d43..57ef74c 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2018-2019,2020 Thomas E. Dickey --
+-- Copyright 2018-2020,2021 Thomas E. Dickey --
-- Copyright 1998-2017,2018 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3446 2020/02/12 02:21:21 tom Exp $
+-- $Id: NEWS,v 1.3732 2021/10/20 22:49:51 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@@ -46,6 +46,772 @@ See the AUTHORS file for the corresponding full names.
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20211021 6.3 release for upload to ftp.gnu.org
+ + update release notes
+ + add "ncu2openbsd" script, to illustrate how to update an OpenBSD
+ system to use a current ncurses release.
+
+20211018
+ + check for screen size-change in scr_init() and scr_restore(), in case
+ a screen dump does not match the current screen dimensions (report by
+ Frank Tkalcevic).
+
+20211017
+ + amend change for pkg-config to account for "none" being returned in
+ the libdir-path result rather than "no" (report by Gabriele Balducci).
+
+20211016
+ + build-fix for pmake with libtool.
+ + improve make-tar.sh scripts, adding COPYING to tar file, and clean up
+ shellcheck warnings.
+ + add link for "reset6" manpage in test-package ncurses6-doc
+ + revise configure option --with-pkg-config-libdir, using the actual
+ search path from pkg-config or pkgconf using the output from --debug
+ (report by Pascal Pignard).
+ + freeze ABI in ".map" files.
+
+20211009
+ + implement "+m" option in tabs program.
+ + fill in some details for infoton -TD
+ + fix spelling/consistency in several descriptions -TD
+ + use vt420+lrmm in vt420 -TD
+ + modify save_tty_settings() to avoid opening /dev/tty for cases other
+ than reset/init, e.g., for clear.
+ + modify output of "toe -as" to show first description found rather
+ than the last.
+ + improve tic checks for number of parameters of smglp, smgrp, smgtp,
+ and smgbp (cf: 20020525).
+ + correct off-by-one comparison in last_char(), which did not allow
+ special case of ":" in a terminfo description field (cf: 20120407).
+ + remove check in tic that assumes that none or both parameterized and
+ non-parameterized margin-setting capabilities are present
+ (cf: 20101002).
+
+20211002
+ + use return-value from vsnprintf to reallocate as needed to allow for
+ buffers larger than the screen size (report by "_RuRo_").
+ + modify tset "-q" option to refrain from modifying terminal modes, to
+ match the documentation.
+ + add section on margins to terminfo.5, adapted from X/Open Curses.
+ + make tput/tset warning messages consistently using alias names when
+ those are used, rather than the underlying program's name.
+ + improve tput usage message for aliases such as clear, by eliminating
+ tput-specific portions.
+ + add a check in toe to ensure that a "termcap file" is text rather
+ than binary.
+ + further build-fixes for OpenBSD 6.9, whose header files differ from
+ the other BSDs.
+
+20210925
+ + add kbeg to xterm+keypad to accommodate termcap applications -TD
+ + add smglp and smgrp to vt420+lrmm, to provide useful data for the
+ "tabs" +m option -TD
+ + build-fix for gcc 3.4.3 with Solaris10, which does not allow forward
+ reference of anonymous struct typedef.
+ + modify tput to allow multiple commands per line.
+ + minor fixes for tset manpage.
+
+20210911
+ + adjust ifdef in test_opaque.c to fix build with ncurses 5.7
+ + add testing note for xterm-{hp|sco|sun} -TD
+ + corrected description for ansi.sys-old -TD
+ + add xterm+nopcfkeys, to fill in keys for xterm-hp, xterm-sun -TD
+ + use hp+arrows in a few places -TD
+ + use hp+pfk-cr in a few places -TD
+
+20210905
+ + correct logic in filtering of redefinitions (report by Sven Joachim,
+ cf: 20210828).
+
+20210904
+ + modify linux3.0 entry to reflect default mapping of shift-tab by
+ kbd 1.14 (report by Jan Engelhardt) -TD
+ + add historical note to tput, curses-terminfo and curses-color
+ manpages based on source-code for SVr2, SVr3 and SVr4.
+ + minor grammatical fixes for "it's" vs "its" (report by Nick Black).
+ + amend fix for --disable-root-environ (report by Arnav Singh).
+ + build-fix for compiling link_test
+ + drop symbols GCC_PRINTF and GCC_SCANF from curses.h.in, to simplify
+ use (Debian #993179).
+
+20210828
+ + correct reversed check for --disable-root-environ (report/analysis
+ by Arnav Singh, cf: 20210626).
+ + apply gcc format attribute to prototypes which use a va_list
+ parameter rather than a "..." variable-length parameter list
+ (prompted by discussion in a tmux pull-request).
+ + modify configure scripts to filter out redefinitions of _XOPEN_SOURCE,
+ e.g., for NetBSD which generally supports 500, but 600 is needed for
+ ncursesw.
+ + improve documentation for tparm and static/dynamic variables.
+ + improve typography in terminfo.5 (patch by Branden Robinson).
+
+20210821
+ + improve tparm implementation of %P and %g, more closely matching
+ SVr4 terminfo.
+ + move internals of TERMINAL structure to new header term.priv.h
+ + add "check" rule for ncurses/Makefile
+ + corrected tsl capability for terminator -TD
+ + add check in tic to report instances where tparm would detect an
+ error in an expression (cf: 20201010).
+ + correct a few places where SP->_pair_limit was used rather than
+ SP->_pair_alloc (cf: 20170812).
+ + fix missing "%d" for setaf/setab code 8-15 in xterm+direct16 (report
+ by Florian Weimer) -TD
+ + fix some documentation errata from OpenBSD changes.
+ + update config.sub
+
+20210814
+ + add workaround for broken pcre2 package in Debian 10, from xterm #369.
+
+20210807
+ + ignore "--dynamic-linker" option in generated pkg/config files,
+ adapted from "distr1" patch.
+ + add CF_SHARED_OPTS case for Haiku, from patch in haikuports.
+
+20210731
+ + add extensions in xterm+tmux and ecma+strikeout to ms-terminal,
+ but cancel the non-working Cr and Ms capabilities -TD
+ + add foot and foot-direct -TD
+
+20210724
+ + add workaround for Windows Terminal's problems with CR/LF mapping to
+ ms-terminal (patch by Juergen Pfeifer).
+ + review/update current Windows Terminal vs ms-terminal -TD
+
+20210718
+ + correct typo in "vip" comments (report by Nick Black), reviewed this
+ against Glink manual -TD
+ + fill in some missing pieces for pccons, to make it comparable to the
+ vt220 entry -TD
+ + modify mk-1st.awk to account for extra-suffix configure option
+ (report by Juergen Pfeifer).
+ + change default for --disable-wattr-macros option to help packagers
+ who reuse wide ncursesw header file with non-wide ncurses library.
+ + build-fix for test/test_opaque.c, for configurations without opaque
+ curses structs.
+
+20210710
+ + improve history section for tset manpage based on the 1BSD tarball,
+ which preceded BSD's SCCS checkins by more than three years.
+ + improve CF_XOPEN_CURSES macro used in test/configure (report by Urs
+ Jansen).
+ + further improvement of libtool configuration, adding a dependency of
+ the install.tic rule, etc., on the library in the build-tree.
+ + update config.sub
+
+20210703
+ + amend libtool configuration to add dependency for install.tic, etc.,
+ in ncurses/Makefile on the lower-level libraries.
+ + modify configure script to support ".PHONY" make program feature.
+
+20210626
+ + add configure option --disable-root-access, which tells ncurses to
+ disallow most file-opens by setuid processes.
+ + use default colors in pccon "op" -TD
+ + correct rmacs/smacs in aaa+dec, aaa+rv -TD
+ + add hpterm-color2 and hp98550-color (Martin Trusler)
+ + regenerate man-html documentation.
+
+20210619
+ + improve configure-macro used for dependencies of --disable-leaks such
+ as --with-valgrind
+ + trim trailing blanks from files
+
+20210612
+ + fixes for scan-build, valgrind build/testing.
+ + update config.guess
+
+20210605
+ + add a summary of ncurses-specific preprocessor symbols to curses.h
+ (prompted by discussion with Peter Farley, Bill Gray).
+
+20210522
+ + regenerate configure scripts with autoconf 2.52.20210509 to eliminate
+ an unnecessary warning in config.log (report by Miroslav Lichvar).
+ + add a note in manual page to explain ungetch vs unget_wch (prompted
+ by discussion with Peter Farley).
+ + add sp-funcs for erasewchar, killwchar.
+ + modify wgetnstr, wgetn_wstr to improve compatibility with SVr4 curses
+ in its treatment of interrupt and quit characters (prompted by
+ report/testcase by Bill Gray)
+ + update config.guess, config.sub
+
+20210515
+ + improve manual pages for wgetnstr, newwin (prompted by
+ report/testcase by Bill Gray).
+
+20210508
+ + modify tputs' error check to allow it to be used without first
+ calling tgetent or setupterm, noting that terminfo initialization
+ is required for supporting the terminfo delay feature (report by
+ Sebastiano Vigna).
+ + fix several warnings from clang --analyze
+ + add null-pointer check in comp_parse.c, when a "use=" clause refers
+ to a nonexisting terminal description (report/patch by Miroslav
+ Lichvar, cf: 20210227).
+
+20210501
+ + add a special case in the configure script to work around one of the
+ build-time breakages reported for OpenBSD 6 here:
+ https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ There is no workaround for the other issue, a broken linker spec.
+ + modify configure check for libtool to prevent accidental use of an
+ OpenBSD program which uses the same name.
+ + update config.guess, config.sub
+
+20210424
+ + avoid using broken system macros for snprintf which interfere with
+ _nc_SLIMIT's conditionally adding a parameter when the string-hacks
+ configure option is enabled.
+ + add a "all::" rule before the new "check" rule in test/Makefile.in
+
+20210418
+ + improve CF_LINK_FUNCS by ensuring that the source-file is closed
+ before linking to the target.
+ + add "check" rules for headers in c++, progs and test-directories.
+ + build-fix for termsort module when configured with termcap (reports
+ by Rajeev V Pillai, Rudi Heitbaum).
+
+20210417
+ + extend --disable-pkg-ldflags option to also control whether $LDFLAGS
+ from the build is provided in -config and .pc files (Debian #986764).
+ + fix some cppcheck warnings, mostly style, in ncurses and c++
+ libraries and progs directory.
+ + fix off-by-one limit for tput's processing command-line arguments
+ (patch by Hadrien Lacour).
+
+20210403
+ + fix some cppcheck warnings, mostly style, in ncurses library and
+ progs directory.
+ + improve description of BSD-style padding in curs_termcap.3x
+ + improved CF_C11_NORETURN macro, from byacc changes.
+ + fix "--enable-leak" in CF_DISABLE_LEAKS to allow turning
+ leak-checking off later in a set of options.
+ + relax modification-time comparison in CF_LINK_FUNCS to allow it to
+ accept link() function with NFS filesystems which change the mtime
+ on the link target, e.g., several BSD systems.
+ + call delay_output_sp to handle BSD-style padding when tputs_sp is
+ called, whether directly or internally, to ensure that the SCREEN
+ pointer is passed correctly (reports by Henric Jungheim, Juraj
+ Lutter).
+
+20210327
+ + build-fixes for Solaris10 /bin/sh
+ + fix some cppcheck warnings, mostly style, in ncurses test-programs,
+ form and menu libraries.
+
+20210323
+ + add configure option --enable-stdnoreturn, making the _Noreturn
+ keyword optional to ease transition (prompted by report by
+ Rajeev V Pillai).
+
+20210320
+ + improve parameter-checking in tput by forcing it to analyze any
+ extended string capability, e.g., as used in the Cs and Ms
+ capabilities of the tmux description (report by Brad Town,
+ cf: 20200531).
+ + remove an incorrect free in the fallback (non-checking) version of
+ _nc_free_and_exit (report by Miroslav Lichvar).
+ + correct use-ordering in some xterm-direct flavors -TD
+ + add hterm, hterm-256color (Mike Frysinger)
+ + if the build-time compiler accepts c11's _Noreturn keyword, use that
+ rather than gcc's attribute.
+ + change configure-check for gcc's noreturn attribute to assume it is
+ a prefix rather than suffix, matching c11's _Noreturn convention.
+ + add "lint" rule to c++/Makefile, e.g., with cppcheck.
+
+20210313
+ + improve configure CF_LD_SEARCHPATH macro used for ncurses*-config and
+ ".pc" files, from dialog changes.
+ + reduce dependency of math-library in test programs.
+ + minor fixes for test_tparm.c (cf: 20210306)
+ + mention "ncurses" prefix in curses_version() manpage (report by
+ Michal Bielinski).
+
+20210306
+ + improved test/test_tparm.c, by limiting the tests to capabilities
+ that might have parameters or padding, and combined with tputs test.
+ + improve discussion of padding versus tparm and tputs in
+ man/curs_terminfo.3x
+ + update portability note for FreeBSD in man/tput.1
+
+20210227
+ + modify tic/infocmp to eliminate unnecessary "\" to escape ":" in
+ terminfo format.
+ + add check in tic for duplicate "use=" clauses.
+
+20210220
+ + improve tic warning when oc/op do not mention SGR 39/49 for xterm
+ compatible XT flag.
+ + revert change to lib_addch.c in waddch_literal() from 20210130, since
+ the followup fix in PutCharLR() actually corrects the problem while
+ this change causes too-early filling/wrapping (report by Johannes
+ Altmanninger).
+ + add/use vt220+pcedit and vt220+vtedit -TD
+ + add scrt/securecrt and absolute -TD
+ + add nel to xterm-new, though supported since X11R5 -TD
+ + add/use xterm+nofkeys -TD
+ + move use of ecma+italics from xterm-basic to xterm+nofkeys -TD
+
+20210213
+ + add test/back_ground.c, to exercise the wide-character background
+ functions.
+ + add a check in _nc_build_wch() in case the background character is a
+ wide-character, rather than a new part of a multibyte character.
+ + improve tracemunch's coverage of form/menu/panel libraries.
+ + improve tracemunch's checking/reporting the type for the first
+ parameter, e.g., "WINDOW*" rather than "#1".
+
+20210206
+ + provide for wide-characters as background character in wbkgrnd
+ (report/testcase by Anton Vidovic)
+ + add name for Fedora's pcre2 to configure check for "--with-pcre2"
+ option, from xterm #363 -TD
+ + modify adjustment in PutCharLR to restore the cursor position before
+ writing to the lower-right corner, rather than decrementing the
+ cursor column, in case it was a double-width character (cf: 20210130).
+
+20210130
+ + correct an off-by-one in comparison in waddch_literal() which caused
+ scrolling when a double-cell character would not fit at the lower
+ right corner of the screen (report by Benno Schulenberg).
+ + split-out att610+cvis, vt220+cvis, vt220+cvis8 -TD
+ + add vt220-base, for terminal emulators which generally have not
+ supported att610's blinking cursor control -TD
+ + use vt220+cvis in vt220, etc -TD
+ + use att610+cvis, xterm+tmux and ansi+enq in kitty -TD
+ + use vt220+cvis in st, terminology, termite since they ignore
+ blinking-cursor detail in att610+cvis -TD
+
+20210123
+ + modify package/config scripts to provide an explicit -L option for
+ cases when the loader search path has other directories preceding
+ the one in which ncurses is installed (report by Yuri Victorovich).
+ + minor build-fixes in configure script and makefiles to work around
+ quirks of pmake.
+
+20210116
+ + add comment for linux2.6 regarding CONFIG_CONSOLE_TRANSLATIONS
+ (report by Patrick McDermott) -TD
+ + make opts extension for getcchar work as documented for ncurses 6.1,
+ adding "-g" flag to test/demo_new_pair to illustrate.
+
+20210109
+ + fix errata in man/ncurses.3x from recent updates.
+ + improve quoting/escaping in configure script, uses some features of
+ autoconf 2.52.20210105
+
+20210102
+ + update man/curs_memleaks.3x, to include <term.h> which declares
+ exit_terminfo.
+ + clarify man/curs_terminfo.3x, to mention why the macro setterm is
+ defined in <curses.h>, and remove it from the list of prototypes
+ (prompted by patch by Graeme McCutcheon).
+ + amend man/curs_terminfo.3x, to note that <curses.h> is required
+ for certain functions, e.g., those using chtype or attr_t for
+ types, as well as mvcur (cf: 20201031).
+ + use parameter-names in prototypes in curs_sp_funcs.3x, for
+ consistency with other manpages.
+
+20201227
+ + update terminology entry to 1.8.1 -TD
+ + fix some compiler-warnings which gcc8 reports incorrectly.
+
+20201219
+ + suppress hyphenation in generated html for manpages, to address
+ regression in upgrade of groff 1.22.2 to 1.22.3.
+ + fix inconsistent sort-order in see-also sections of manpages (report
+ by Chris Bennett).
+
+20201212
+ + improve manual pages for form field-types.
+
+20201205
+ + amend build-fixes for gnat 10 to work with certain systems lacking
+ gprbuild (cf: 20200627).
+ + eliminate an additional strlen and wsclen.
+ + eliminate an unnecessary strlen in waddnstr() (suggested by Benjamin
+ Abendroth).
+ + modify inopts manpage, separating the items for nodelay and notimeout
+ (patch by Benno Schulenberg).
+ + correct mlterm3 kf1-kf4 (Debian #975322) -TD
+ + add flash to mlterm3 -TD
+
+20201128
+ + add Smulx to alacritty (Christian Duerr).
+ + add rep to PuTTY -TD
+ + add putty+keypad -TD
+ + add another fflush(stdout) in _nc_flush() to handle time-delays in
+ the middle of strings such as flash when the application uses
+ low-level calls rather than curses (cf: 20161217).
+ + modify configure check for c89/c99 aliases of clang to use its
+ -std option instead, because some platforms, in particular macOS,
+ do not provide workable c89/c99 aliases.
+
+20201121
+ + fix some compiler-warnings in experimental Windows-10 driver.
+ + add the definitions needed in recent configure-check for clang
+ (report by Steven Pitman).
+
+20201114
+ + fix some compiler-warnings in experimental Windows-10 driver.
+ + modify a check for parameters in terminfo capabilities to handle the
+ special case where short extended capability strings were not
+ converted from terminfo to termcap format.
+ + modify CF_MIXEDCASE_FILENAMES macro, adding darwin as special case
+ when cross-compiling (report by Eli Rykoff).
+
+20201107
+ + update kitty+common -TD
+ + add putty+screen and putty-screen (suggested by Alexandre Montaron).
+ + explain in ncurses.3x that functions in the tinfo library do not rely
+ upon wide-characters (prompted by discussion with Reuben Thomas).
+
+20201031
+ + modify MKterm.h.in so that it is not necessary to include <curses.h>
+ before <term.h> (prompted by discussion with Reuben Thomas).
+ + review/improve synopsis for curs_sp_funcs.3x (prompted by discussion
+ with Reuben Thomas).
+ + improve format of output in tic's check_infotocap() function, to
+ ensure that the messages contain only printable text.
+ + modify configure-check for clang to verify that -Qunused-arguments
+ is supported. IBM's xlclang does not support it (report by Steven
+ Pitman).
+
+20201024
+ + provide workaround configure-check for bool when cross-compiling.
+ + fix a potential indexing error in _nc_parse_entry(), seen with
+ Herlim's test data using address-sanitizer.
+ + change a null-pointer check in set_curterm to a valid-string check,
+ needed in to tic's use-resolution when pad_char is cancelled
+ (report/testcase by Robert Sebastian Herlim)
+ + improve tic's -c option to validate the number and type of parameters
+ and compare against expected number/type before deciding which set of
+ parameter-lists to use in tparm calls (report/testcase by Robert
+ Sebastian Herlim).
+ + fix a link for tabs.1 manpage in announce.html.in (report by Nick
+ Black), as well as some fixes via linklint.
+
+20201017
+ + improve manpage typography.
+ + improve discussion in curs_addch.3x of the use of unctrl to display
+ nonprintable characters.
+ + add a note in terminfo.5 explaining that no-parameter strings such
+ as sgr0 or cnorm should not be used with tparm.
+
+20201010
+ + correct sgr in aaa+rv (report by Florian Weimer) -TD
+ + fix some sgr inconsistencies in d230c, ibm6153, ibm6154,
+ ncrvt100an -TD
+ + improve tic's check for errors detected in tparm (prompted by
+ discussion with Florian Weimer).
+ + set output-mode to binary in experimental Windows-10 driver (Juergen
+ Pfeifer).
+
+20201003
+ + remove output-related checks for nl/nonl (report by Leon Winter).
+ + change tmux's kbs to ^? (report by Premysl Eric Janouch)
+ + simplify mlterm initialization with DECSTR -TD
+ + fix a typo in man/curs_terminfo.3 (Reuben Thomas).
+ + add tmux-direct (tmux #2370, Debian #895754)
+ + add user-defined capabilities from mintty to Caps-ncurses, for
+ checking consistency with tic.
+
+20200926
+ + correct configure-check for gnurx library.
+ + regenerate llib-* files.
+ + modify tracemunch and the panel library to show readable traces for
+ panel- and user-pointers.
+
+20200919
+ + update mlterm3 for 3.9.0 (report by Premysl Eric Janouch) -TD
+
+20200918
+ + corrected condition for appending curses.events to the generated
+ curses.h (report by Sven Joachim, Debian #970545).
+
+20200912
+ + add configure-check for systre/tre with mingw configuration, to get
+ the library-dependencies as seen in msys2 configuration for mingw64.
+ + build-fixes for the win32-driver configuration.
+ + use more defensive binary mode setting for Win32 (Juergen Pfeifer).
+
+20200907
+ + fix regression in setupterm validating non-empty $TERM (report by
+ Soren Tempel).
+
+20200906
+ + merge/adapt in-progress work by Juergen Pfeifer for new version of
+ win32-driver.
+ + correct description of vt330/vt340 (Ross Combs).
+
+20200831
+ + build-fix for awk-scripts modified for win32-driver (report by Werner
+ Fink).
+
+20200829
+ + remove a redundant NCURSES_EXPORT as a build-fix for "Maarten
+ Anonymous".
+ + merge/adapt in-progress work by Juergen Pfeifer for new version of
+ win32-driver.
+ + modify configure script, moving gcc -Werror options to EXTRA_CFLAGS
+ to avoid breaking configure-checks (adapted from ongoing work on
+ mawk and lynx).
+ > errata for terminfo.src (report by Florian Weimer):
+ + correct icl6404 csr
+ + correct ti916 cup
+ + improve ndr9500
+
+20200822
+ + improve version-number extraction in MKlib_gen.sh
+ + make the test-package for manpages installable by adjusting the
+ man_db.renames file.
+ + correct an off-by-one loop-limit in convert_strings function
+ (report by Yue Tai).
+ + add CF_SHARED_OPTS cases for HPE NonStop systems (Randall S Becker).
+ + modify CF_SHARED_OPTS case for NetBSD to use the same "-shared"
+ option for the non-rpath case as for the rpath case, to allow gcc to
+ provide suitable runtime initialization (report by Rajeev V Pillai).
+
+20200817
+ + reduce build-warnings by excluding ncurses-internals from deprecation
+ warnings.
+ + mark wgetch-events feature as deprecated.
+ + add definition for $(LIBS) to ncurses/Makefile.in, to simplify builds
+ using the string-hacks option.
+ + prevent KEY_EVENT from appearing in curses.h unless the configure
+ option --enable-wgetch-events is used (report by Werner Fink).
+
+20200816
+ + amend tic/infocmp check to allow for the respective tool's absence
+ (report by Steve Wills, cf: 20200808).
+ + improved some of the build-scripts with shellcheck
+ + filter out -MT/-MD/-MTd/-MDd options in script for Visual Studio C++
+ (discussion with "Maarten Anonymous").
+
+20200808
+ + improve discussion of the system's tic utility when used as part
+ of cross-compiling (discussion with Keith Marshall).
+ + modify configuration checks for build-time tic/infocmp to use
+ AC_CHECK_TOOL. That can still be overridden by --with-tic-path and
+ --with-infocmp-path when fallbacks are used, but even if not using
+ fallbacks, the improved check may help with cross-compiling
+ (discussion with Keith Marshall).
+ + other build-fixes for Ada95 with MinGW.
+ + modify Ada95 source-generation utility to write to a file given as
+ parameter rather than to the standard output, allowing builds with
+ MinGW.
+
+20200801
+ + remove remaining parts of checks for ISC Unix (cf: 20121006).
+ + add user32.lib to LDFLAGS for Visual Studio C++ configuration
+ (discussion with "Maarten Anonymous").
+ + modify MKkey_defs.sh to hide ncurses' definition of KEY_EVENTS to
+ reduce Visual Studio C++ redefinition warnings.
+ + improve/update checks for external functions in test/configure
+
+20200725
+ + set LINK_TESTS in CF_SHARED_OPTS for msvc (patch by
+ "Maarten Anonymous")
+ + improved workaround for redefinition-warnings for KEY_EVENT.
+ + improve man/term.5 section on legacy storage format (report by
+ Florian Weimer).
+
+20200718
+ + reduce redefinition-warnings for KEY_EVENT when building with Visual
+ Studio C++.
+ + define NCURSES_STATIC when compiling programs to link with static
+ libraries, to work with MinGW vs Visual Studio C++.
+ > additional changes for building with Visual Studio C++ and msys2
+ (reports/patches by "Maarten Anonymous")
+ + modify c++/Makefile.in to set the current directory while compiling
+ the main program, so the linker can find related objects.
+ + several changes to allow the c++/demo program to compile/link.
+ + change an ifdef in test-directory, to use VC++ wide-character funcs.
+
+20200711
+ + fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
+ Bruckl).
+ + additional changes for building with Visual Studio C++ and msys2
+ (reports/patches by "Maarten Anonymous")
+ + build-improvements for Windows 10 and MinGW (patch by Juergen
+ Pfeifer).
+ + fix a typo in curs_printw.3x (patch by William Pursell).
+ + fix two errors in infotocap which allowed indexing outside the
+ buffer (report/testcases by Zhang Gan).
+ + update length of strings in infocmp's usage function to restore a
+ trailing null on the longest string (report/testcase by Zhang Gen).
+
+20200704
+ + modify version-check with Ada generics to use the same pattern as in
+ the check for supported gnat versions (report by Pascal Pignard).
+ > additional changes for building with Visual Studio C++ and msys2
+ (patches by "Maarten Anonymous"):
+ + adjust headers/declarations to provide for "dllimport" vs "dllexport"
+ declarations when constructing DLLs, to worko with Visual Studio C++.
+
+20200627
+ + build-fixes for gnat 10.1.1, whose gnatmake drops integration with
+ gprbuild.
+ + correct buffer-length in test/color_name.h
+
+20200613
+ + update list of functions in ncurses.3x
+ + move dlclose() call from lib_mouse.c to delscreen() to avoid a case
+ in the former which could be called from SIGTSTP handler (Debian
+ #961097).
+
+20200606
+ + add xterm+256color2, xterm+88color2, to deprecate nonstandard usage
+ in xterm+256color, xterm+88color -TD
+ + add shifted Linux console keys in linux+sfkeys entry for
+ screen.linux (report by Alexandre Montaron).
+ + use vt100+enq in screen (report by Alexandre Montaron).
+ + add screen.linux-s alias (suggested by Alexandre Montaron).
+
+20200531
+ + correct configure version-check/warnng for g++ to allow for 10.x
+ + re-enable "bel" in konsole-base (report by Nia Huang)
+ + add linux-s entry (patch by Alexandre Montaron).
+ + drop long-obsolete convert_configure.pl
+ + add test/test_tparm.c, for checking tparm changes.
+ + improve parameter-checking for tparm, adding function _nc_tiparm() to
+ handle the most-used case, which accepts only numeric parameters
+ (report/testcase by "puppet-meteor").
+ + use a more conservative estimate of the buffer-size in lib_tparm.c's
+ save_text() and save_number(), in case the sprintf() function
+ passes-through unexpected characters from a format specifier
+ (report/testcase by "puppet-meteor").
+ + add a check for end-of-string in cvtchar to handle a malformed
+ string in infotocap (report/testcase by "puppet-meteor").
+
+20200523
+ + update version-check for gnat to allow for gnat 10.x to 99.x
+ + fix an uninitialized variable in lib_mouse.c changes (cf: 20200502)
+ + add a check in EmitRange to guard against repeat_char emitting digits
+ which could be interpreted as BSD-style padding when --enable-bsdpad
+ is configured (report/patch by Hiltjo Posthuma).
+ + add --disable-pkg-ldflags to suppress EXTRA_LDFLAGS from the
+ generated pkg-config and ncurses*-config files, to simplify
+ configuring in the case where rpath is used but the packager wants
+ to hide the feature (report by Michael Stapelberg).
+ > fixes for building with Visual Studio C++ and msys2 (patches by
+ "Maarten Anonymous"):
+ + modify CF_SHARED_OPTS to generate a script which translates linker
+ options into Visual Studio's dialect.
+ + omit parentheses around function-names in generated lib_gen.c to
+ work around a Visual Studio C++ limitation.
+
+20200516
+ + add notes on termcap.h header in curs_termcap.3x
+ + update notes on vscode / xterm.js -TD
+
+20200509
+ + add "-r" option to the dots test-programs, to help with scripting
+ a performance comparison.
+ + build-fix test/move_field.c for NetBSD curses, whose form headers
+ use different names than SVr4 or ncurses.
+
+20200502
+ + add details on the change to Linux SGR 21 in 2018 -TD
+ + add xterm-direct16 and xterm-direct256 -TD
+ + modify lib_mouse.c to check for out-of-range button numbers, convert
+ those to position reports.
+
+20200425
+ + use vt100+fnkeys in putty -TD
+ + fix a typo in tput.1; "columns" should be "cols".
+
+20200418
+ + improve tracemunch logic for "RUN" compaction.
+ + fix a special case in wresize() where copying the old text did not
+ check if the last cell on a row was the beginning of a fullwidth
+ character (adapted from patch by Benno Schulenberg).
+ + use vt52+keypad in xterm-vt52, from xterm #354 -TD
+ + improve see-also section of user_caps.5
+
+20200411
+ + fix find_pair(), overlooked when refactoring for _nc_reserve_pairs()
+ (report/testcase by Brad Town, cf: 20170812).
+ + add a trailing null for magic-string in putwin, flagged by gcc 10
+ + update check for gcc version versus gnat to work with gcc 10.x
+
+20200404
+ + modify -fvisibility check to work with g++
+ > fixes for building with Visual Studio C++ and msys2 (patches by
+ "Maarten Anonymous"):
+ + add configure option and check for gcc -fvisibility=hidden feature
+ + define NCURSES_NOMACROS in lib_gen.c to work around Visual Studio
+ C++ preprocessor limitations.
+ + modify some of the configure-macros, as well as mk-1st.awk to work
+ with Visual Studio C++ default filenaming.
+
+20200328
+ + correct length of buffer copied in dup_field().
+ + remove "$(srcdir)/" from path of library.gpr, needed for out-of-tree
+ builds of Ada95 (patch by Adam Van Ymeren).
+
+20200321
+ + improve configure-checks to reduce warnings about unused variables.
+ + improve description of error-returns in waddch and waddnstr manual
+ pages (prompted by patch by Benno Schulenberg).
+ + add test/move_field.c to demonstrate move_field(), and a stub for
+ a corresponding demo of dup_field().
+
+20200314
+ + add history note to curs_scanw.3x for <stdarg.h> and <varargs.h>
+ + add history note to curs_printw.3x for <stdarg.h> and <varargs.h>
+ + add portability note to ncurses.3x regarding <stdarg.h>
+
+20200308
+ + update copyright notices in test-packages.
+ + modify tracemunch to guard against errors in its known_p1 table.
+ + add several --with-xxx-libname options, to help with pkgsrc (prompted
+ by discussion with Thomas Klausner).
+
+20200301
+ + modify wbkgd() and wbkgrnd() to avoid storing a null in the
+ background character, because it may be used in cases where the
+ corresponding 0x80 is not treated as a null (report by Marc Rechte,
+ cf: 20181208).
+
+20200229
+ + modify CF_NCURSES_CONFIG to work around xcode's c99 "-W" option,
+ which conflicts with conventional use for passing linker options.
+ > fixes for building with Visual Studio C++ and msys2 (patches by
+ "Maarten Anonymous"):
+ + check for pcre2posix.h instead of pcre2-posix.h
+ + add case in CF_SHARED_OPTS for msys2 + msvc
+ + add fallback definition for STDIN_FILENO in progs.priv.h
+ + modify win_driver.c to use _alloca() rather than gcc's variable
+ length array feature.
+ + add NCURSES_IMPEXP to ncurses wrapped-variable declarations
+ + remove NCURSES_IMPEXP from class variables in c++/cursslk.h
+ + remove fallback prototype for exit() from c++/etip.h.in
+ + use configured check for <sys/time.h> in a couple of places
+ + conditionally include winsock.h in ncurses/win32con/gettimeofday.c,
+ because Visual Studio needs this for the timestruct declaration.
+ + adjust syntax in a couple of files using the NCURSES_API symbol.
+
+20200222
+ + expanded note in ncurses.3x regarding automatically-included headers
+ + improve vt50h and vt52 based on DECScope manual -TD
+ + add/use vt52+keypad and vt52-basic -TD
+ + check/workaround for line-too-long in Ada95 generate utility when
+ building out-of-tree.
+ + improve/update HEADER_DEPS in */Makefile.in
+ + add "check" rule to include/Makefile, to demonstrate that the headers
+ include all of the required headers for the types used.
+
+20200215
+ + improve manual page for panel library, extending the portability
+ section as well as documenting error-returns.
+ + show tic's version when installing terminal database in run_tic.sh
+ + correct check for gcc vs other compilers used in ncurses 6.0, from
+ FreeBSD patch by Kyle Evans (cf: 20150725).
+ + add notes for 6.2 to INSTALL.
+
20200212 6.2 release for upload to ftp.gnu.org
+ update release notes
+ minor build-fixes, mostly to test-package scripts
@@ -212,7 +978,7 @@ it is not possible to add this information.
+ build-fixes for Ada95 configure-script and corresponding test package
20190907
- + add --with-ada-libname option and modify Ada95 configuration to
+ + add --with-ada-libname option and modify Ada95 configuration to
allow renaming the "AdaCurses" library (prompted by proposed changes
by Pascal Pignard).
+ modify configure script to distinguish gcc from icc and clang when
diff --git a/README b/README
index a48e3f6..84998f2 100644
--- a/README
+++ b/README
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-2012,2018 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README,v 1.28 2020/02/02 23:34:34 tom Exp $
+-- $Id: README,v 1.29 2021/06/17 21:20:30 tom Exp $
-------------------------------------------------------------------------------
README file for the ncurses package
@@ -37,7 +37,7 @@ See the file TO-DO for things that still need doing, including known bugs.
Browse the file misc/ncurses-intro.html for narrative descriptions of how
to use ncurses and the panel, menu, and form libraries.
-
+
Browse the file doc/html/hackguide.html for a tour of the package internals.
ROADMAP AND PACKAGE OVERVIEW:
@@ -45,7 +45,7 @@ ROADMAP AND PACKAGE OVERVIEW:
You should be reading this file in a directory called: ncurses-d.d, where d.d
is the current version number (see the dist.mk file in this directory for
that). There should be a number of subdirectories, including `c++', `form',
-`man', `menu', `misc', `ncurses', `panel', `progs', `test', 'tack' and `Ada95'.
+`man', `menu', `misc', `ncurses', `panel', `progs', `test', 'tack' and `Ada95'.
(The 'tack' program may be distributed separately).
A full build/install of this package typically installs several libraries, a
@@ -149,7 +149,7 @@ help you systematically exercise the library functions.
AUTHORS:
-Pavel Curtis:
+Pavel Curtis:
wrote the original ncurses
Zeyd M. Ben-Halim:
diff --git a/README.MinGW b/README.MinGW
index 56a2bca..3add2e7 100644
--- a/README.MinGW
+++ b/README.MinGW
@@ -26,114 +26,123 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README.MinGW,v 1.10 2020/02/02 23:34:34 tom Exp $
+-- $Id: README.MinGW,v 1.14 2020/09/06 22:22:44 tom Exp $
-- Author: Juergen Pfeifer
-------------------------------------------------------------------------------
-This is work in progress, but it's in an state where one can see it
+This is work in progress, but it is in an state where one can see it
works at least on the Windows Console.
-You should install the MSYS package, so that you've a shell environment that
-allows you to run the scripts, especially configure etc. You can get that
-from http://www.mingw.org
+You should install the MSYS2 package, so that you have a shell environment that
+allows you to run scripts, especially configure, etc. You can get that
+from
+ https://www.msys2.org/
-To build ncurses for native Windows, you need the MinGW toolchain. The
-original MinGW toolchain from the above site is only for 32-Bit Windows. As
-Windows Server - and also regular workstations - are moving to 64-Bit, it
-seems to be reasonable to have a toolchain that supports both architectures.
-I recommend to use the TDM gcc toolchain which you can find at
-http://tdm-gcc.tdragon.net/download. Go to the download section and select
-the bundle installer for tdm64 (MinGW-w64). This installs a multilib version
-of the gcc toolchain that can compile for native 32- and 64-Bit Windows
-versions. It also comes with a working pthread implementation.
+or the individual packages from
-The latest config and build scripts we use for MinGW have only been tested
-for the gcc-4.6.1 compiler toolchain (or better).
+ https://sourceforge.net/projects/msys2/files/
-Using MinGW is a pragmatic decision, it's the easiest way to port this
+You may also use a hosted MinGW cross-compile toolchain, e.g., on Ubuntu or
+ArchLinux to build the libraries and tools.
+
+To build ncurses for native Windows with support for the new Windows 10 Virtual
+Terminal and PseudoConsole support, you should install at least version 8.0 of
+the mingw-w64-x86_64-headers package as it appears to have support for the
+required Windows SDK level. Please note that some of the Linux distributions
+are a bit behind with respect to the required MinGW header versions and you may
+not be able to properly build the libraries for current Windows 10 using these
+toolchains. Although it is a bit slow, MSYS2 on Windows 10 64-Bit is the
+authoritative build environment for the MinGW version of ncurses.
+
+Using MinGW is a pragmatic decision, it is the easiest way to port this
heavily UNIX based sourcebase to native Windows. The goal is of course
to provide the includes, libraries and DLLs to be used with the more
common traditional development environments on Windows, mainly with
Microsoft Visual Studio.
-The TERM environment variable must be set specially to active the Windows
+The TERM environment variable must be set especially to activate the Windows
console-driver. The driver checks if TERM is set to "#win32con" (explicit
use) or if TERM is unset or empty (implicit).
-Please also make sure that MSYS links to the correct directory containing
-your MinGW toolchain. For TDM this is usually C:\MinGW64. In your Windows
-CMD.EXE command shell go to the MSYS root directory (most probably
-C:\MSYS or C:\MSYS\1.0) and verify, that there is a junction point mingw
-that points to the MinGW toolchain directory. If not, delete the mingw
-directory and use the mklink command (or the linkd.exe utility on older
-Windows) to create the junction point.
+Beginning with build 17763 (Fall 2018 update), Windows 10 supports ANSI escape
+sequences (Virtual Terminal support). If ncurses detects this or a later
+Windows 10 version, the interpretation of the implicit TERM setting (which
+means: TERM is not set or empty) changes. In this case, TERM is to be assumed
+to be "ms-terminal" and ncurses acts using the regular terminfo based driver,
+thus acting like a regular Terminal we all know from UNIX like environments.
+
+This code requires WindowsNT 6.0 or better, which means on the client
+Windows Vista or better, on the server Windows Server 2008 or better.
-This code requires WindowsNT 5.1 or better, which means on the client
-Windows XP or better, on the server Windows Server 2003 or better.
+If running on Windows 10 Build 17763 or later is detected, any program
+spawning a subprocess running a ncurses program should use the new
+PseudoConsole support, which provides what we know as pty from the UNIX
+world also for Windows. Using the CreatePseudoConsole API
+(see https://docs.microsoft.com/en-us/windows/console/createpseudoconsole)
+in the calling process, it is guaranteed that the called ncurses program has
+a console that is required by its implementation, even if the calling program
+is NOT a console program, e.g., MSYS2's own mintty Terminal emulator.
-I recommend using libtool to build ncurses on MinGW, because libtool
-knows exactly how to build dll's on Windows for use with MinGW.
+In the current MSYS2/minGW setup, building MinGW shared libraries with
+libtool for ncurses seems to be broken, so I recommend NOT to use libtool.
To build a modern but still small footprint ncurses that provides
hooks for interop, I recommend using these options:
- --with-libtool
- --disable-home-terminfo
- --enable-database
- --disable-termcap
- --enable-sp-funcs
- --enable-term-driver
- --enable-interop
+ --without-libtool
+ --disable-home-terminfo
+ --enable-database
+ --disable-termcap
+ --enable-sp-funcs
+ --enable-term-driver
+ --enable-interop
-This is the configuration commandline as I'm using it at the moment (assuming
-environment variable MINGW_ROOT to hold the root directory name of your MinGW
-build):
+This is the configuration command line which I am using at the moment
+(assuming environment variable MINGW_ROOT holds the root directory name of
+your MinGW build):
./configure \
- --prefix=$MINGW_ROOT \
- --with-cxx \
+ --prefix=/mingw64 \
+ --without-cxx \
--without-ada \
--enable-warnings \
--enable-assertions \
+ --enable-exp-win32 \
+ --enable-ext-funcs \
--disable-home-terminfo \
+ --disable-echo \
+ --disable-getcap \
+ --disable-hard-tabs \
+ --disable-leaks \
+ --disable-macros \
+ --disable-overwrite \
+ --enable-opaque-curses \
+ --enable-opaque-panel \
+ --enable-opaque-menu \
+ --enable-opaque-form \
--enable-database \
--enable-sp-funcs \
--enable-term-driver \
--enable-interop \
--disable-termcap \
+ --enable-database \
--with-progs \
- --with-libtool \
+ --without-libtool \
--enable-pc-files \
- --mandir=$MINGW_ROOT/share/man
+ --with-shared \
+ --with-normal \
+ --without-debug \
+ --with-fallbacks=ms-terminal \
+ --without-manpages
Please note that it is also necessary to set this environment variable:
export PATH_SEPARATOR=";"
in order to parse the terminfo paths correctly. Terminfo paths should
-always be separated by a seeeemicolon,even when running under MSYS.
-
-To support regular expressions properly, ncurses under MinGW should be
-linked against the gnurx regex library, which must be built separately
-under MinGW. See
-
- ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/libgnurx-src-2.5.zip
+always be separated by a semicolon, even when running under MSYS2.
All the options above are - like the whole Windows support -
experimental.
-A lot is still TODO, e.g.:
-
- - Wide Character support (display is workable, but input untested)
- The Win32Con driver should actually only use Unicode in the
- future.
- - Thread support (locking). If using TDM toolchain this is done by
- configuring pthreads.
- - A GUI console driver
- - Support for Terminals attached via a serial port (via terminfo)
- - Support for networked Terminal connections (via terminfo)
- - Workarounds for MinGW's filesystem access are necessary to make infocmp
- work (though tic works).
-
-To support terminfo, we would need to have an ioctl() simulation for the
-serial and networked terminals.
+-- vile:txtmode
diff --git a/README.emx b/README.emx
index c48b312..666eaec 100644
--- a/README.emx
+++ b/README.emx
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-2006,2018 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README.emx,v 1.11 2020/02/02 23:34:34 tom Exp $
+-- $Id: README.emx,v 1.12 2021/06/17 21:20:30 tom Exp $
-- Author: Thomas Dickey
-------------------------------------------------------------------------------
@@ -34,7 +34,7 @@ You can build ncurses on OS/2 in the EMX environment. But you must build and
acquire tools. Not all of the tools distributed with EMX work properly, and
some additional ones are required.
-First, the configure script distributed with ncurses will not run as-is in EMX.
+First, the configure script distributed with ncurses will not run as-is in EMX.
You can generate a new one if you have autoconf built for EMX. You will need
the EMX development tools, of course. Get these programs to start:
@@ -65,7 +65,7 @@ may fix these problems:
+ I also built from sources (because the distributed binaries did not
work) the cmp, diff programs.
-
+
Other required utilities such as ar, cat, chmod, cp, gawk, grep, mv,
ls, rm, mkdir, sed, sort and tr worked.
diff --git a/VERSION b/VERSION
index d443029..3162fab 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:10 6.2 20200212
+5:0:10 6.3 20211021
diff --git a/aclocal.m4 b/aclocal.m4
index c27cc36..96cae09 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,5 +1,5 @@
dnl***************************************************************************
-dnl Copyright 2018-2019,2020 Thomas E. Dickey *
+dnl Copyright 2018-2020,2021 Thomas E. Dickey *
dnl Copyright 1998-2017,2018 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: aclocal.m4,v 1.896 2020/02/08 21:01:07 tom Exp $
+dnl $Id: aclocal.m4,v 1.981 2021/10/17 15:14:04 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
@@ -42,7 +42,7 @@ dnl https://invisible-island.net/autoconf/my-autoconf.html
dnl
dnl ---------------------------------------------------------------------------
dnl ---------------------------------------------------------------------------
-dnl AM_LANGINFO_CODESET version: 4 updated: 2015/04/18 08:56:57
+dnl AM_LANGINFO_CODESET version: 6 updated: 2021/01/01 16:53:59
dnl -------------------
dnl Inserted as requested by gettext 0.10.40
dnl File from /usr/share/aclocal
@@ -55,11 +55,11 @@ AC_DEFUN([AM_LANGINFO_CODESET],
[
AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
[AC_TRY_LINK([#include <langinfo.h>],
- [char* cs = nl_langinfo(CODESET);],
+ [char* cs = nl_langinfo(CODESET); (void)cs],
am_cv_langinfo_codeset=yes,
am_cv_langinfo_codeset=no)
])
- if test $am_cv_langinfo_codeset = yes; then
+ if test "$am_cv_langinfo_codeset" = yes; then
AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
[Define if you have <langinfo.h> and nl_langinfo(CODESET).])
fi
@@ -158,10 +158,11 @@ AC_DEFUN([CF_ADD_ADAFLAGS],[
AC_SUBST(ADAFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_CFLAGS version: 13 updated: 2017/02/25 18:57:40
+dnl CF_ADD_CFLAGS version: 15 updated: 2020/12/31 10:54:15
dnl -------------
dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
-dnl The second parameter if given makes this macro verbose.
+dnl $1 = flags to add
+dnl $2 = if given makes this macro verbose.
dnl
dnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS,
dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easily
@@ -175,19 +176,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $1
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
continue
elif test "${cf_tst_cflags}" = "\"'" ; then
@@ -200,7 +201,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,$cf_tst_cppflags)
@@ -218,7 +219,7 @@ case $cf_fix_cppflags in
(yes)
CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[[^"]]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -246,9 +247,26 @@ AC_SUBST(EXTRA_CPPFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_INCDIR version: 15 updated: 2018/06/20 20:23:13
+dnl CF_ADD_CXXFLAGS version: 1 updated: 2020/04/04 16:16:13
+dnl ---------------
+dnl Copy non-preprocessor flags to $CXXFLAGS, preprocessor flags to $CPPFLAGS
+dnl The second parameter if given makes this macro verbose.
+dnl
+dnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS,
+dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easily
+dnl confused by the quotes (which require backslashes to keep them usable).
+AC_DEFUN([CF_ADD_CXXFLAGS],
+[
+cf_save_CXXFLAGS="$CFLAGS"
+CFLAGS="$CXXFLAGS"
+CF_ADD_CFLAGS($1 ifelse($2,,,[,$2]))
+CXXFLAGS="$CFLAGS"
+CFLAGS="$cf_save_CXXFLAGS"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_INCDIR version: 17 updated: 2021/09/04 06:35:04
dnl -------------
-dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it's
+dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it is
dnl redundant. We don't normally need to add -I/usr/local/include for gcc,
dnl but old versions (and some misinstalled ones) need that. To make things
dnl worse, gcc 3.x may give error messages if -I/usr/local/include is added to
@@ -258,9 +276,9 @@ AC_DEFUN([CF_ADD_INCDIR],
if test -n "$1" ; then
for cf_add_incdir in $1
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -291,7 +309,7 @@ if test -n "$1" ; then
CF_VERBOSE(adding $cf_add_incdir to include-path)
ifelse([$2],,CPPFLAGS,[$2])="$ifelse([$2],,CPPFLAGS,[$2]) -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -313,7 +331,7 @@ dnl $1 = library to add, without the "-l"
dnl $2 = variable to update (default $LIBS)
AC_DEFUN([CF_ADD_LIB],[CF_ADD_LIBS(-l$1,ifelse($2,,LIBS,[$2]))])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_LIBDIR version: 10 updated: 2015/04/18 08:56:57
+dnl CF_ADD_LIBDIR version: 11 updated: 2020/12/31 20:19:42
dnl -------------
dnl Adds to the library-path
dnl
@@ -327,9 +345,9 @@ AC_DEFUN([CF_ADD_LIBDIR],
if test -n "$1" ; then
for cf_add_libdir in $1
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -375,7 +393,7 @@ done
ifelse($2,,LIBS,[$2])="$cf_add_libs"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05
+dnl CF_ADD_SUBDIR_PATH version: 5 updated: 2020/12/31 20:19:42
dnl ------------------
dnl Append to a search-list for a nonstandard header/lib-file
dnl $1 = the variable to return as result
@@ -387,16 +405,35 @@ AC_DEFUN([CF_ADD_SUBDIR_PATH],
[
test "x$4" != "x$5" && \
test -d "$4" && \
-ifelse([$5],NONE,,[(test -z "$5" || test x$5 = xNONE || test "x$4" != "x$5") &&]) {
+ifelse([$5],NONE,,[{ test -z "$5" || test "x$5" = xNONE || test "x$4" != "x$5"; } &&]) {
test -n "$verbose" && echo " ... testing for $3-directories under $4"
- test -d $4/$3 && $1="[$]$1 $4/$3"
- test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2"
- test -d $4/$3/$2/$3 && $1="[$]$1 $4/$3/$2/$3"
- test -d $4/$2/$3 && $1="[$]$1 $4/$2/$3"
- test -d $4/$2/$3/$2 && $1="[$]$1 $4/$2/$3/$2"
+ test -d "$4/$3" && $1="[$]$1 $4/$3"
+ test -d "$4/$3/$2" && $1="[$]$1 $4/$3/$2"
+ test -d "$4/$3/$2/$3" && $1="[$]$1 $4/$3/$2/$3"
+ test -d "$4/$2/$3" && $1="[$]$1 $4/$2/$3"
+ test -d "$4/$2/$3/$2" && $1="[$]$1 $4/$2/$3/$2"
}
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_APPEND_CFLAGS version: 3 updated: 2021/09/05 17:25:40
+dnl ----------------
+dnl Use CF_ADD_CFLAGS after first checking for potential redefinitions.
+dnl $1 = flags to add
+dnl $2 = if given makes this macro verbose.
+define([CF_APPEND_CFLAGS],
+[
+for cf_add_cflags in $1
+do
+ case "x$cf_add_cflags" in
+ (x-[[DU]]*)
+ CF_REMOVE_CFLAGS($cf_add_cflags,CFLAGS,[$2])
+ CF_REMOVE_CFLAGS($cf_add_cflags,CPPFLAGS,[$2])
+ ;;
+ esac
+ CF_ADD_CFLAGS([$cf_add_cflags],[$2])
+done
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_APPEND_TEXT version: 1 updated: 2017/02/25 18:58:55
dnl --------------
dnl use this macro for appending text without introducing an extra blank at
@@ -442,7 +479,7 @@ ifelse([$3],,[ :]dnl
])dnl
])])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_AR_FLAGS version: 6 updated: 2015/10/10 15:25:05
+dnl CF_AR_FLAGS version: 9 updated: 2021/01/01 13:31:04
dnl -----------
dnl Check for suitable "ar" (archiver) options for updating an archive.
dnl
@@ -453,39 +490,55 @@ AC_DEFUN([CF_AR_FLAGS],[
AC_REQUIRE([CF_PROG_AR])
AC_CACHE_CHECK(for options to update archives, cf_cv_ar_flags,[
- cf_cv_ar_flags=unknown
- for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
- do
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_cv_ar_flags=''
+ cat >mk_static_lib.sh <<-EOF
+ #!$SHELL
+ MSVC_BIN="[$]AR"
+ out="\[$]1"
+ shift
+ exec \[$]MSVC_BIN -out:"\[$]out" \[$]@
+ EOF
+ chmod +x mk_static_lib.sh
+ AR=`pwd`/mk_static_lib.sh
+ ;;
+ (*)
+ cf_cv_ar_flags=unknown
+ for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
+ do
- # check if $ARFLAGS already contains this choice
- if test "x$ARFLAGS" != "x" ; then
- cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
- if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
- cf_cv_ar_flags=
- break
+ # check if $ARFLAGS already contains this choice
+ if test "x$ARFLAGS" != "x" ; then
+ cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
+ if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
+ cf_cv_ar_flags=
+ break
+ fi
fi
- fi
- rm -f conftest.$ac_cv_objext
- rm -f conftest.a
+ rm -f "conftest.$ac_cv_objext"
+ rm -f conftest.a
- cat >conftest.$ac_ext <<EOF
+ cat >"conftest.$ac_ext" <<EOF
#line __oline__ "configure"
int testdata[[3]] = { 123, 456, 789 };
EOF
- if AC_TRY_EVAL(ac_compile) ; then
- echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&AC_FD_CC
- $AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&AC_FD_CC 1>/dev/null
- if test -f conftest.a ; then
- cf_cv_ar_flags=$cf_ar_flags
+ if AC_TRY_EVAL(ac_compile) ; then
+ echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&AC_FD_CC
+ $AR $ARFLAGS "$cf_ar_flags" conftest.a "conftest.$ac_cv_objext" 2>&AC_FD_CC 1>/dev/null
+ if test -f conftest.a ; then
+ cf_cv_ar_flags="$cf_ar_flags"
+ break
+ fi
+ else
+ CF_VERBOSE(cannot compile test-program)
break
fi
- else
- CF_VERBOSE(cannot compile test-program)
- break
- fi
- done
- rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
+ done
+ rm -f conftest.a "conftest.$ac_ext" "conftest.$ac_cv_objext"
+ ;;
+ esac
])
if test -n "$ARFLAGS" ; then
@@ -570,17 +623,39 @@ else AC_MSG_RESULT(no)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_BOOL_SIZE version: 15 updated: 2017/01/21 11:06:25
+dnl CF_BOOL_SIZE version: 18 updated: 2021/09/04 06:35:04
dnl ------------
dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type).
-dnl Don't bother looking for bool.h, since it's been deprecated.
+dnl Don't bother looking for bool.h, since it has been deprecated.
dnl
dnl If the current compiler is C rather than C++, we get the bool definition
dnl from <stdbool.h>.
AC_DEFUN([CF_BOOL_SIZE],
[
-AC_MSG_CHECKING([for size of bool])
-AC_CACHE_VAL(cf_cv_type_of_bool,[
+AC_CHECK_SIZEOF(bool,,[
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+])
+
+AC_CACHE_CHECK(for type of bool, cf_cv_type_of_bool,[
rm -f cf_test.out
AC_TRY_RUN([
#include <stdlib.h>
@@ -625,10 +700,18 @@ int main(void)
cf_cv_type_of_bool=unknown
fi],
[cf_cv_type_of_bool=unknown],
- [cf_cv_type_of_bool=unknown])
- ])
+ [
+ case x$ac_cv_sizeof_bool in
+ (x1) cf_cv_type_of_bool="unsigned char";;
+ (x2) cf_cv_type_of_bool="unsigned short";;
+ (x4) cf_cv_type_of_bool="unsigned int";;
+ (x8) cf_cv_type_of_bool="unsigned long";;
+ (*) cf_cv_type_of_bool=unknown;;
+ esac
+ ])
rm -f cf_test.out
-AC_MSG_RESULT($cf_cv_type_of_bool)
+])
+
if test "$cf_cv_type_of_bool" = unknown ; then
case .$NCURSES_BOOL in
(.auto|.) NCURSES_BOOL=unsigned;;
@@ -638,7 +721,7 @@ if test "$cf_cv_type_of_bool" = unknown ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_BUILD_CC version: 8 updated: 2018/01/04 20:31:04
+dnl CF_BUILD_CC version: 9 updated: 2021/01/02 09:31:20
dnl -----------
dnl If we're cross-compiling, allow the user to override the tools and their
dnl options. The configure script is oriented toward identifying the host
@@ -704,7 +787,7 @@ if test "$cross_compiling" = yes ; then
: ${BUILD_CC:='${CC}'}
- if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
+ if { test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}'; } ; then
AC_MSG_ERROR([Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler.])
fi
@@ -730,7 +813,46 @@ AC_SUBST(BUILD_EXEEXT)
AC_SUBST(BUILD_OBJEXT)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CC_ENV_FLAGS version: 9 updated: 2018/07/29 18:03:26
+dnl CF_C11_NORETURN version: 3 updated: 2021/03/28 11:36:23
+dnl ---------------
+AC_DEFUN([CF_C11_NORETURN],
+[
+AC_MSG_CHECKING(if you want to use C11 _Noreturn feature)
+CF_ARG_ENABLE(stdnoreturn,
+ [ --enable-stdnoreturn enable C11 _Noreturn feature for diagnostics],
+ [enable_stdnoreturn=yes],
+ [enable_stdnoreturn=no])
+AC_MSG_RESULT($enable_stdnoreturn)
+
+if test $enable_stdnoreturn = yes; then
+AC_CACHE_CHECK([for C11 _Noreturn feature], cf_cv_c11_noreturn,
+ [AC_TRY_COMPILE([
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdnoreturn.h>
+static _Noreturn void giveup(void) { exit(0); }
+ ],
+ [if (feof(stdin)) giveup()],
+ cf_cv_c11_noreturn=yes,
+ cf_cv_c11_noreturn=no)
+ ])
+else
+ cf_cv_c11_noreturn=no,
+fi
+
+if test "$cf_cv_c11_noreturn" = yes; then
+ AC_DEFINE(HAVE_STDNORETURN_H, 1,[Define if <stdnoreturn.h> header is available and working])
+ AC_DEFINE_UNQUOTED(STDC_NORETURN,_Noreturn,[Define if C11 _Noreturn keyword is supported])
+ HAVE_STDNORETURN_H=1
+else
+ HAVE_STDNORETURN_H=0
+fi
+
+AC_SUBST(HAVE_STDNORETURN_H)
+AC_SUBST(STDC_NORETURN)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CC_ENV_FLAGS version: 10 updated: 2020/12/31 18:40:20
dnl ---------------
dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content
dnl into CC. This will not help with broken scripts that wrap the compiler
@@ -745,7 +867,7 @@ dnl outweighs that limitation.
AC_DEFUN([CF_CC_ENV_FLAGS],
[
# This should have been defined by AC_PROG_CC
-: ${CC:=cc}
+: "${CC:=cc}"
AC_MSG_CHECKING(\$CFLAGS variable)
case "x$CFLAGS" in
@@ -794,7 +916,7 @@ case "$CC" in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CFG_DEFAULTS version: 11 updated: 2015/04/17 21:13:04
+dnl CF_CFG_DEFAULTS version: 16 updated: 2021/01/04 19:33:05
dnl ---------------
dnl Determine the default configuration into which we'll install ncurses. This
dnl can be overridden by the user's command-line options. There's two items to
@@ -807,7 +929,8 @@ dnl We don't use AC_PREFIX_DEFAULT, because it gets evaluated too soon, and
dnl we don't use AC_PREFIX_PROGRAM, because we cannot distinguish ncurses's
dnl programs from a vendor's.
AC_DEFUN([CF_CFG_DEFAULTS],
-[
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+
AC_MSG_CHECKING(for prefix)
if test "x$prefix" = "xNONE" ; then
case "$cf_cv_system_name" in
@@ -825,20 +948,20 @@ if test "x$prefix" = "xNONE" ; then
AC_MSG_CHECKING(for default include-directory)
test -n "$verbose" && echo 1>&AC_FD_MSG
for cf_symbol in \
- $includedir \
- $includedir/ncurses \
- $prefix/include \
- $prefix/include/ncurses \
+ "$includedir" \
+ "$includedir/ncurses" \
+ "$prefix/include" \
+ "$prefix/include/ncurses" \
/usr/local/include \
/usr/local/include/ncurses \
/usr/include \
/usr/include/ncurses
do
- cf_dir=`eval echo $cf_symbol`
- if test -f $cf_dir/curses.h ; then
- if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then
+ cf_dir=`eval echo "$cf_symbol"`
+ if test -f "$cf_dir/curses.h" ; then
+ if ( ${FGREP-fgrep} NCURSES_VERSION "$cf_dir/curses.h" >/dev/null 2>&1 ) ; then
includedir="$cf_symbol"
- test -n "$verbose" && echo $ac_n " found " 1>&AC_FD_MSG
+ test -n "$verbose" && echo $ECHO_N " found " 1>&AC_FD_MSG
break
fi
fi
@@ -893,7 +1016,7 @@ AC_TRY_LINK([
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03
+dnl CF_CHECK_CACHE version: 13 updated: 2020/12/31 10:54:15
dnl --------------
dnl Check if we're accidentally using a cache from a different machine.
dnl Derive the system name, as a check for reusing the autoconf cache.
@@ -907,7 +1030,7 @@ dnl Note: we would use $ac_config_sub, but that is one of the places where
dnl autoconf 2.5x broke compatibility with autoconf 2.13
AC_DEFUN([CF_CHECK_CACHE],
[
-if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
+if test -f "$srcdir/config.guess" || test -f "$ac_aux_dir/config.guess" ; then
ifelse([$1],,[AC_CANONICAL_HOST],[$1])
system_name="$host_os"
else
@@ -957,7 +1080,7 @@ fi
CF_CHECK_EXTERN_DATA($1,ifelse([$2],,int,[$2]))
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_ERRNO version: 12 updated: 2015/04/18 08:56:57
+dnl CF_CHECK_ERRNO version: 13 updated: 2020/03/10 18:53:47
dnl --------------
dnl Check for data that is usually declared in <stdio.h> or <errno.h>, e.g.,
dnl the 'errno' variable. Define a DECL_xxx symbol if we must declare it
@@ -975,7 +1098,7 @@ AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
#include <stdio.h>
#include <sys/types.h>
#include <errno.h> ],
- ifelse([$2],,int,[$2]) x = (ifelse([$2],,int,[$2])) $1,
+ ifelse([$2],,int,[$2]) x = (ifelse([$2],,int,[$2])) $1; (void)x,
[cf_cv_dcl_$1=yes],
[cf_cv_dcl_$1=no])
])
@@ -989,10 +1112,10 @@ fi
CF_CHECK_EXTERN_DATA($1,ifelse([$2],,int,[$2]))
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_EXTERN_DATA version: 4 updated: 2015/04/18 08:56:57
+dnl CF_CHECK_EXTERN_DATA version: 5 updated: 2021/09/04 06:35:04
dnl --------------------
dnl Check for existence of external data in the current set of libraries. If
-dnl we can modify it, it's real enough.
+dnl we can modify it, it is real enough.
dnl $1 = the name to check
dnl $2 = its type
AC_DEFUN([CF_CHECK_EXTERN_DATA],
@@ -1014,7 +1137,29 @@ fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_GETENV version: 1 updated: 2019/06/23 15:28:15
+dnl CF_CHECK_FVISIBILITY version: 2 updated: 2020/04/04 16:16:13
+dnl --------------------
+dnl Check whether the compiler understands -fvisibility=hidden
+dnl
+dnl $1 = compiler
+dnl $2 = compiler-flags variable name
+dnl $3 = cache variable to set
+AC_DEFUN([CF_CHECK_FVISIBILITY],[
+AC_CACHE_CHECK(if $1 -fvisibility=hidden option works,$3,[
+ cf_save_cflags="[$]$2"
+ $2="[$]$2 -fvisibility=hidden"
+ AC_TRY_LINK([
+__attribute__ ((visibility("default"))) int somefunc() {return 42;}
+ ],[
+ if (somefunc()) return 1;
+],
+ [$3=yes],
+ [$3=no])
+ $2=$cf_save_cflags
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_GETENV version: 2 updated: 2021/01/02 17:09:14
dnl ---------------
dnl Check if repeated getenv calls return the same pointer, e.g., it does not
dnl discard the previous pointer when returning a new one.
@@ -1071,7 +1216,7 @@ int main(void)
mynames[j] = str_alloc(environ[j]);
equals = strchr(mynames[j], '=');
if (equals != 0) {
- *equals++ = '\0';
+ *equals++ = '\\0';
myvalues[j] = str_alloc(equals);
} else {
myvalues[j] = str_alloc("");
@@ -1105,13 +1250,13 @@ int main(void)
char *value = getenv(mynames[j]);
if (pass) {
if (value == 0) {
- fprintf(stderr, "getenv returned null for %s\n", mynames[j]);
+ fprintf(stderr, "getenv returned null for %s\\n", mynames[j]);
${cf_cv_main_return:-return}(1);
} else if (value != mypointer[j]) {
- fprintf(stderr, "getenv returned different pointer for %s\n", mynames[j]);
+ fprintf(stderr, "getenv returned different pointer for %s\\n", mynames[j]);
${cf_cv_main_return:-return}(1);
} else if (strcmp(value, myvalues[j])) {
- fprintf(stderr, "getenv returned different value for %s\n", mynames[j]);
+ fprintf(stderr, "getenv returned different value for %s\\n", mynames[j]);
${cf_cv_main_return:-return}(1);
}
} else {
@@ -1119,7 +1264,7 @@ int main(void)
mypointer[j] = value;
for (k = 0; k < j; ++k) {
if (mypointer[j] == mypointer[k]) {
- fprintf(stderr, "getenv returned same pointer for %s and %s\n", mynames[j], mynames[k]);
+ fprintf(stderr, "getenv returned same pointer for %s and %s\\n", mynames[j], mynames[k]);
${cf_cv_main_return:-return}(1);
}
}
@@ -1140,13 +1285,13 @@ then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_GNAT_VERSION version: 2 updated: 2019/12/31 08:53:54
+dnl CF_CHECK_GNAT_VERSION version: 4 updated: 2021/01/01 13:31:04
dnl ---------------------
AC_DEFUN([CF_CHECK_GNAT_VERSION],
[
AC_REQUIRE([CF_GNAT_VERSION])
-case $cf_cv_gnat_version in
-(3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|20[[0-9]][[0-9]])
+case "$cf_cv_gnat_version" in
+(3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|[[1-9]][[0-9]].[[0-9]]*|20[[0-9]][[0-9]])
cf_cv_prog_gnat_correct=yes
;;
(*)
@@ -1156,12 +1301,14 @@ case $cf_cv_gnat_version in
esac
])
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_GPM_WGETCH version: 3 updated: 2017/01/21 11:06:25
+dnl CF_CHECK_GPM_WGETCH version: 6 updated: 2021/01/04 18:48:01
dnl -------------------
dnl Check if GPM is already linked with curses. If so - and if the linkage
dnl is not "weak" - warn about this because it can create problems linking
dnl applications with ncurses.
AC_DEFUN([CF_CHECK_GPM_WGETCH],[
+AC_REQUIRE([AC_PROG_EGREP])dnl
+
AC_CHECK_LIB(gpm,Gpm_Wgetch,[
AC_CACHE_CHECK(if GPM is weakly bound to curses library, cf_cv_check_gpm_wgetch,[
@@ -1185,12 +1332,12 @@ CF_EOF
LIBS="-static -lgpm -dynamic $LIBS"
if AC_TRY_EVAL(ac_compile) ; then
if AC_TRY_EVAL(ac_link) ; then
- cf_cv_check_gpm_wgetch=`nm conftest$ac_exeext | egrep '\<wgetch\>' | egrep '\<[[vVwW]]\>'`
+ cf_cv_check_gpm_wgetch="`nm \"conftest$ac_exeext\" | ${EGREP-egrep} '\<wgetch\>' | ${EGREP-egrep} '\<[[vVwW]]\>'`"
test -n "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=yes
test -z "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=no
fi
fi
- rm -rf conftest*
+ rm -rf ./conftest*
LIBS="$cf_save_LIBS"
fi
])
@@ -1200,28 +1347,41 @@ if test "$cf_cv_check_gpm_wgetch" != yes ; then
fi
])])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_LIBTOOL_VERSION version: 1 updated: 2013/04/06 18:03:09
+dnl CF_CHECK_LIBTOOL_VERSION version: 2 updated: 2021/05/01 16:24:34
dnl ------------------------
dnl Show the version of libtool
dnl
dnl Save the version in a cache variable - this is not entirely a good thing,
dnl but the version string from libtool is very ugly, and for bug reports it
dnl might be useful to have the original string.
+dnl
+dnl There is an imitation in OpenBSD, which has no apparent use other than to
+dnl deny that it is GNU libtool. Just ignore it.
AC_DEFUN([CF_CHECK_LIBTOOL_VERSION],[
if test -n "$LIBTOOL" && test "$LIBTOOL" != none
then
AC_MSG_CHECKING(version of $LIBTOOL)
CF_LIBTOOL_VERSION
AC_MSG_RESULT($cf_cv_libtool_version)
- if test -z "$cf_cv_libtool_version" ; then
- AC_MSG_ERROR(This is not GNU libtool)
+ if test -n "$cf_cv_libtool_version"
+ then
+ cf_check_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' -e 's,[[()]],...,g' -e 's,[[ ]],-,g' -e '2,$d'`
+ case "x$cf_check_libtool_version" in
+ (*...GNU-libtool...*)
+ ;;
+ (*)
+ AC_MSG_ERROR(This is not GNU libtool)
+ ;;
+ esac
+ else
+ AC_MSG_ERROR(No version found for $LIBTOOL)
fi
else
AC_MSG_ERROR(GNU libtool has not been found)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_WCHAR_H version: 2 updated: 2017/01/21 11:06:25
+dnl CF_CHECK_WCHAR_H version: 3 updated: 2021/01/01 13:31:04
dnl ----------------
dnl Check if wchar.h can be used, i.e., without defining _XOPEN_SOURCE_EXTENDED
AC_DEFUN([CF_CHECK_WCHAR_H],[
@@ -1245,13 +1405,13 @@ AC_TRY_COMPILE(
[cf_cv_wchar_h_okay=yes],
[cf_cv_wchar_h_okay=no])])
-if test $cf_cv_wchar_h_okay = no
+if test "$cf_cv_wchar_h_okay" = no
then
CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_WCWIDTH_GRAPHICS version: 1 updated: 2015/12/19 17:47:56
+dnl CF_CHECK_WCWIDTH_GRAPHICS version: 2 updated: 2021/01/02 17:09:14
dnl -------------------------
dnl Most "modern" terminal emulators are based to some degree on VT100, and
dnl should support line-drawing. Even with Unicode. There is a problem.
@@ -1372,19 +1532,19 @@ main(void)
if ((fp = fopen("conftest.in", "r")) != 0) {
while (fgets(buffer, MY_LEN, fp) != 0) {
if (*buffer == '-') {
- fprintf(stderr, "\t%s", buffer);
+ fprintf(stderr, "\\t%s", buffer);
} else if (sscanf(buffer, "%x %s", &value, notes) == 2) {
++totals;
if (wcwidth(value) == 1)
++passed;
- fprintf(stderr, "%d\t%s", wcwidth(value), buffer);
+ fprintf(stderr, "%d\\t%s", wcwidth(value), buffer);
} else {
- fprintf(stderr, "?\t%s", buffer);
+ fprintf(stderr, "?\\t%s", buffer);
}
}
}
}
- fprintf(stderr, "%d/%d passed wcwidth/graphics check\n", passed, totals);
+ fprintf(stderr, "%d/%d passed wcwidth/graphics check\\n", passed, totals);
return (totals == passed) ? 0 : 1;
}
],
@@ -1394,7 +1554,7 @@ main(void)
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35
+dnl CF_CLANG_COMPILER version: 8 updated: 2021/01/01 13:31:04
dnl -----------------
dnl Check if the given compiler is really clang. clang's C driver defines
dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does
@@ -1413,21 +1573,56 @@ ifelse([$2],,CLANG_COMPILER,[$2])=no
if test "$ifelse([$1],,[$1],GCC)" = yes ; then
AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler)
cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
- ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments"
AC_TRY_COMPILE([],[
#ifdef __clang__
#else
make an error
#endif
],[ifelse([$2],,CLANG_COMPILER,[$2])=yes
-cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
],[])
ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2]))
fi
+
+CLANG_VERSION=none
+
+if test "x$ifelse([$2],,CLANG_COMPILER,[$2])" = "xyes" ; then
+ case "$CC" in
+ (c[[1-9]][[0-9]]|*/c[[1-9]][[0-9]])
+ AC_MSG_WARN(replacing broken compiler alias $CC)
+ CFLAGS="$CFLAGS -std=`echo "$CC" | sed -e 's%.*/%%'`"
+ CC=clang
+ ;;
+ esac
+
+ AC_MSG_CHECKING(version of $CC)
+ CLANG_VERSION="`$CC --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(CLANG[[^)]]*) //' -e 's/^.*(Debian[[^)]]*) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
+ test -z "$CLANG_VERSION" && CLANG_VERSION=unknown
+ AC_MSG_RESULT($CLANG_VERSION)
+
+ for cf_clang_opt in \
+ -Qunused-arguments \
+ -Wno-error=implicit-function-declaration
+ do
+ AC_MSG_CHECKING(if option $cf_clang_opt works)
+ cf_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $cf_clang_opt"
+ AC_TRY_LINK([
+ #include <stdio.h>],[
+ printf("hello!\\n");],[
+ cf_clang_optok=yes],[
+ cf_clang_optok=no])
+ AC_MSG_RESULT($cf_clang_optok)
+ CFLAGS="$cf_save_CFLAGS"
+ if test "$cf_clang_optok" = yes; then
+ CF_VERBOSE(adding option $cf_clang_opt)
+ CF_APPEND_TEXT(CFLAGS,$cf_clang_opt)
+ fi
+ done
+fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_CONST_X_STRING version: 3 updated: 2020/01/11 18:39:22
+dnl CF_CONST_X_STRING version: 7 updated: 2021/06/07 17:39:17
dnl -----------------
dnl The X11R4-X11R6 Xt specification uses an ambiguous String type for most
dnl character-strings.
@@ -1439,7 +1634,7 @@ dnl did not take into account the use of const for telling the compiler that
dnl string literals would be in readonly memory.
dnl
dnl As a workaround, one could (starting with X11R5) define XTSTRINGDEFINES, to
-dnl let the compiler decide how to represent Xt's strings which were #define'd.
+dnl let the compiler decide how to represent Xt's strings which were #define'd.
dnl That does not solve the problem of using the block of Xt's strings which
dnl are compiled into the library (and is less efficient than one might want).
dnl
@@ -1457,7 +1652,7 @@ AC_TRY_COMPILE(
#include <stdlib.h>
#include <X11/Intrinsic.h>
],
-[String foo = malloc(1)],[
+[String foo = malloc(1); free((void*)foo)],[
AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
AC_TRY_COMPILE(
@@ -1475,7 +1670,7 @@ AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
CF_RESTORE_XTRA_FLAGS([CF_CONST_X_STRING])
-case $cf_cv_const_x_string in
+case "$cf_cv_const_x_string" in
(no)
CF_APPEND_TEXT(CPPFLAGS,-DXTSTRINGDEFINES)
;;
@@ -1578,13 +1773,13 @@ fi
test "$cf_cv_cpp_static_cast" = yes && AC_DEFINE(CPP_HAS_STATIC_CAST,1,[Define to 1 if C++ has static_cast])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CXX_AR_FLAGS version: 2 updated: 2015/04/17 21:13:04
+dnl CF_CXX_AR_FLAGS version: 3 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Setup special archiver flags for given compilers.
AC_DEFUN([CF_CXX_AR_FLAGS],[
CXX_AR='$(AR)'
CXX_ARFLAGS='$(ARFLAGS)'
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GXX" != yes ; then
CXX_AR='$(CXX)'
@@ -1662,12 +1857,12 @@ fi
AC_SUBST($1)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52
+dnl CF_DIRNAME version: 5 updated: 2020/12/31 20:19:42
dnl ----------
dnl "dirname" is not portable, so we fake it with a shell script.
-AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
+AC_DEFUN([CF_DIRNAME],[$1=`echo "$2" | sed -e 's%/[[^/]]*$%%'`])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DIRS_TO_MAKE version: 3 updated: 2002/02/23 20:38:31
+dnl CF_DIRS_TO_MAKE version: 4 updated: 2021/01/01 13:31:04
dnl ---------------
AC_DEFUN([CF_DIRS_TO_MAKE],
[
@@ -1677,20 +1872,20 @@ do
CF_OBJ_SUBDIR($cf_item,cf_subdir)
for cf_item2 in $DIRS_TO_MAKE
do
- test $cf_item2 = $cf_subdir && break
+ test "$cf_item2" = "$cf_subdir" && break
done
test ".$cf_item2" != ".$cf_subdir" && DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir"
done
for cf_dir in $DIRS_TO_MAKE
do
- test ! -d $cf_dir && mkdir $cf_dir
+ test ! -d "$cf_dir" && mkdir "$cf_dir"
done
AC_SUBST(DIRS_TO_MAKE)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_ECHO version: 13 updated: 2015/04/18 08:56:57
+dnl CF_DISABLE_ECHO version: 14 updated: 2021/09/04 06:35:04
dnl ---------------
-dnl You can always use "make -n" to see the actual options, but it's hard to
+dnl You can always use "make -n" to see the actual options, but it is hard to
dnl pick out/analyze warning messages when the compile-line is long.
dnl
dnl Sets:
@@ -1736,7 +1931,7 @@ CF_ARG_DISABLE(gnat-projects,
AC_MSG_RESULT($enable_gnat_projects)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_LEAKS version: 7 updated: 2012/10/02 20:55:03
+dnl CF_DISABLE_LEAKS version: 9 updated: 2021/04/03 16:41:50
dnl ----------------
dnl Combine no-leak checks with the libraries or tools that are used for the
dnl checks.
@@ -1749,11 +1944,13 @@ AC_REQUIRE([CF_WITH_VALGRIND])
AC_MSG_CHECKING(if you want to perform memory-leak testing)
AC_ARG_ENABLE(leaks,
[ --disable-leaks test: free permanent memory, analyze leaks],
- [if test "x$enableval" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi],
- : ${with_no_leaks:=no})
+ [enable_leaks=$enableval],
+ [enable_leaks=yes])
+dnl with_no_leaks is more readable...
+if test "x$enable_leaks" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi
AC_MSG_RESULT($with_no_leaks)
-if test "$with_no_leaks" = yes ; then
+if test "$enable_leaks" = no ; then
AC_DEFINE(NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.])
AC_DEFINE(YY_NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.])
fi
@@ -1800,7 +1997,7 @@ AC_SUBST(ABI_VERSION)
AC_SUBST(LIBTOOL_VERSION)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_RPATH_HACK version: 2 updated: 2011/02/13 13:31:33
+dnl CF_DISABLE_RPATH_HACK version: 3 updated: 2021/01/05 20:14:44
dnl ---------------------
dnl The rpath-hack makes it simpler to build programs, particularly with the
dnl *BSD ports which may have essential libraries in unusual places. But it
@@ -1811,15 +2008,18 @@ AC_DEFUN([CF_DISABLE_RPATH_HACK],
AC_MSG_CHECKING(if rpath-hack should be disabled)
CF_ARG_DISABLE(rpath-hack,
[ --disable-rpath-hack don't add rpath options for additional libraries],
- [cf_disable_rpath_hack=yes],
- [cf_disable_rpath_hack=no])
+ [enable_rpath_hack=no],
+ [enable_rpath_hack=yes])
+dnl TODO - drop cf_disable_rpath_hack
+if test "x$enable_rpath_hack" = xno; then cf_disable_rpath_hack=yes; else cf_disable_rpath_hack=no; fi
AC_MSG_RESULT($cf_disable_rpath_hack)
-if test "$cf_disable_rpath_hack" = no ; then
+
+if test "$enable_rpath_hack" = yes ; then
CF_RPATH_HACK
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_BROKEN_LINKER version: 1 updated: 2020/02/08 15:59:30
+dnl CF_ENABLE_BROKEN_LINKER version: 2 updated: 2021/01/02 17:09:14
dnl -----------------------
dnl Some linkers cannot reference a data-only object. Cygwin used to be one.
dnl This usually follows CF_LINK_DATAONLY, but is not required in case we need
@@ -1833,7 +2033,7 @@ AC_ARG_ENABLE(broken_linker,
[with_broken_linker=no])
AC_MSG_RESULT($with_broken_linker)
-: ${BROKEN_LINKER:=0}
+: "${BROKEN_LINKER:=0}"
if test "x$with_broken_linker" = xyes ; then
AC_DEFINE(BROKEN_LINKER,1,[Define to 1 to work around linkers which cannot link data-only modules])
BROKEN_LINKER=1
@@ -1841,7 +2041,7 @@ fi
AC_SUBST(BROKEN_LINKER)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_PC_FILES version: 13 updated: 2015/11/01 05:27:39
+dnl CF_ENABLE_PC_FILES version: 14 updated: 2021/10/17 11:12:47
dnl ------------------
dnl This is the "--enable-pc-files" option, which is available if there is a
dnl pkg-config configuration on the local machine.
@@ -1866,7 +2066,7 @@ if test "x$enable_pc_files" != xno
then
MAKE_PC_FILES=
case "x$PKG_CONFIG_LIBDIR" in
- (xno|xyes)
+ (xno|xnone|xyes)
AC_MSG_WARN(no PKG_CONFIG_LIBDIR was found)
;;
(*)
@@ -1893,7 +2093,7 @@ AC_ARG_ENABLE(rpath,
AC_MSG_RESULT($cf_cv_enable_rpath)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_STRING_HACKS version: 5 updated: 2016/10/08 17:34:11
+dnl CF_ENABLE_STRING_HACKS version: 6 updated: 2021/01/05 19:23:48
dnl ----------------------
dnl On a few platforms, the compiler and/or loader nags with untruthful
dnl comments stating that "most" uses of strcat/strcpy/sprintf are incorrect,
@@ -1913,11 +2113,11 @@ AC_DEFUN([CF_ENABLE_STRING_HACKS],
AC_MSG_CHECKING(if you want to work around bogus compiler/loader warnings)
AC_ARG_ENABLE(string-hacks,
[ --enable-string-hacks work around bogus compiler/loader warnings],
- [with_string_hacks=$enableval],
- [with_string_hacks=no])
-AC_MSG_RESULT($with_string_hacks)
+ [enable_string_hacks=$enableval],
+ [enable_string_hacks=no])
+AC_MSG_RESULT($enable_string_hacks)
-if test "x$with_string_hacks" = "xyes"; then
+if test "x$enable_string_hacks" = "xyes"; then
AC_DEFINE(USE_STRING_HACKS,1,[Define to 1 to work around bogus compiler/loader warnings])
AC_MSG_WARN(enabling string-hacks to work around bogus compiler/loader warnings)
AC_CHECK_FUNC(strlcat,[
@@ -1933,6 +2133,36 @@ if test "x$with_string_hacks" = "xyes"; then
fi
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_ENABLE_WARNINGS version: 9 updated: 2021/01/05 19:40:50
+dnl ------------------
+dnl Configure-option to enable gcc warnings
+dnl
+dnl $1 = extra options to add, if supported
+dnl $2 = option for checking attributes. By default, this is done when
+dnl warnings are enabled. For other values:
+dnl yes: always do this, e.g., to use in generated library-headers
+dnl no: never do this
+AC_DEFUN([CF_ENABLE_WARNINGS],[
+if test "$GCC" = yes || test "$GXX" = yes
+then
+CF_FIX_WARNINGS(CFLAGS)
+CF_FIX_WARNINGS(CPPFLAGS)
+CF_FIX_WARNINGS(LDFLAGS)
+AC_MSG_CHECKING(if you want to turn on gcc warnings)
+CF_ARG_ENABLE(warnings,
+ [ --enable-warnings test: turn on gcc compiler warnings],
+ [enable_warnings=yes],
+ [enable_warnings=no])
+AC_MSG_RESULT($enable_warnings)
+if test "$enable_warnings" = "yes"
+then
+ ifelse($2,,[CF_GCC_ATTRIBUTES])
+ CF_GCC_WARNINGS($1)
+fi
+ifelse($2,yes,[CF_GCC_ATTRIBUTES])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39
dnl --------
dnl Check if 'errno' is declared in <errno.h>
@@ -1941,7 +2171,7 @@ AC_DEFUN([CF_ERRNO],
CF_CHECK_ERRNO(errno)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ETIP_DEFINES version: 5 updated: 2012/02/18 17:51:07
+dnl CF_ETIP_DEFINES version: 6 updated: 2021/01/02 17:09:14
dnl ---------------
dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between
dnl math.h and builtin.h, only for ncurses
@@ -1954,7 +2184,7 @@ cf_result="none"
# etip.h includes ncurses.h which includes ncurses_dll.h
# But ncurses_dll.h is generated - fix here.
test -d include || mkdir include
-test -f include/ncurses_dll.h || sed -e 's/@NCURSES_WRAP_PREFIX@/'$NCURSES_WRAP_PREFIX'/g' ${srcdir}/include/ncurses_dll.h.in >include/ncurses_dll.h
+test -f include/ncurses_dll.h || sed -e 's/@NCURSES_WRAP_PREFIX@/'$NCURSES_WRAP_PREFIX'/g' "${srcdir}/include/ncurses_dll.h.in" >include/ncurses_dll.h
for cf_math in "" MATH_H
do
@@ -1977,7 +2207,7 @@ AC_MSG_RESULT($cf_result)
CXXFLAGS="$cf_save_CXXFLAGS"
])
dnl ---------------------------------------------------------------------------
-dnl CF_FIND_LINKAGE version: 21 updated: 2018/06/20 20:23:13
+dnl CF_FIND_LINKAGE version: 22 updated: 2020/12/31 20:19:42
dnl ---------------
dnl Find a library (specifically the linkage used in the code fragment),
dnl searching for it if it is not already in the library path.
@@ -2034,7 +2264,7 @@ AC_TRY_LINK([$1],[$2],[
CF_HEADER_PATH(cf_search,ifelse([$6],,[$3],[$6]))
for cf_cv_header_path_$3 in $cf_search
do
- if test -d $cf_cv_header_path_$3 ; then
+ if test -d "$cf_cv_header_path_$3" ; then
CF_VERBOSE(... testing $cf_cv_header_path_$3)
CPPFLAGS="$cf_save_CPPFLAGS"
CF_APPEND_TEXT(CPPFLAGS,-I$cf_cv_header_path_$3)
@@ -2069,7 +2299,7 @@ AC_TRY_LINK([$1],[$2],[
CF_LIBRARY_PATH(cf_search,$3)
for cf_cv_library_path_$3 in $cf_search
do
- if test -d $cf_cv_library_path_$3 ; then
+ if test -d "$cf_cv_library_path_$3" ; then
CF_VERBOSE(... testing $cf_cv_library_path_$3)
CPPFLAGS="$cf_test_CPPFLAGS"
LIBS="-l$3 $7 $cf_save_LIBS"
@@ -2108,7 +2338,7 @@ ifelse([$5],,AC_MSG_WARN(Cannot find $3 library),[$5])
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FIND_SUB_INCDIR version: 2 updated: 2015/04/17 21:13:04
+dnl CF_FIND_SUB_INCDIR version: 3 updated: 2021/01/01 13:31:04
dnl ------------------
dnl Find an include-directory with the given leaf-name. This is useful for
dnl example with FreeBSD ports, which use this convention to distinguish
@@ -2117,7 +2347,7 @@ AC_DEFUN([CF_FIND_SUB_INCDIR],[
CF_SUBDIR_PATH(cf_search,$1,include)
for cf_item in $cf_search
do
- case $cf_item in
+ case "$cf_item" in
(*/$1)
CF_ADD_INCDIR($cf_item)
;;
@@ -2125,7 +2355,7 @@ AC_DEFUN([CF_FIND_SUB_INCDIR],[
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FIND_SUB_LIBDIR version: 2 updated: 2015/04/17 21:13:04
+dnl CF_FIND_SUB_LIBDIR version: 3 updated: 2021/01/01 13:31:04
dnl ------------------
dnl Find a library-directory with the given leaf-name. This is useful for
dnl example with FreeBSD ports, which use this convention to distinguish
@@ -2134,7 +2364,7 @@ AC_DEFUN([CF_FIND_SUB_LIBDIR],[
CF_SUBDIR_PATH(cf_search,$1,lib)
for cf_item in $cf_search
do
- case $cf_item in
+ case "$cf_item" in
(*/$1)
CF_ADD_LIBDIR($cf_item)
;;
@@ -2161,6 +2391,40 @@ AC_DEFUN([CF_FIXUP_ADAFLAGS],[
AC_MSG_RESULT($ADAFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_FIX_WARNINGS version: 3 updated: 2020/12/31 18:40:20
+dnl ---------------
+dnl Warning flags do not belong in CFLAGS, CPPFLAGS, etc. Any of gcc's
+dnl "-Werror" flags can interfere with configure-checks. Those go into
+dnl EXTRA_CFLAGS.
+dnl
+dnl $1 = variable name to repair
+define([CF_FIX_WARNINGS],[
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case [$]$1 in
+ (*-Werror=*)
+ CF_VERBOSE(repairing $1: [$]$1)
+ cf_temp_flags=
+ for cf_temp_scan in [$]$1
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+ CF_APPEND_TEXT(EXTRA_CFLAGS,$cf_temp_scan)
+ ;;
+ (*)
+ CF_APPEND_TEXT(cf_temp_flags,$cf_temp_scan)
+ ;;
+ esac
+ done
+ $1="$cf_temp_flags"
+ CF_VERBOSE(... fixed [$]$1)
+ CF_VERBOSE(... extra $EXTRA_CFLAGS)
+ ;;
+ esac
+fi
+AC_SUBST(EXTRA_CFLAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_FOPEN_BIN_R version: 2 updated: 2019/12/31 08:53:54
dnl --------------
dnl Check if fopen works when the "b" (binary) flag is added to the mode
@@ -2313,7 +2577,7 @@ int main(void) {
test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP,1,[Define to 1 if we have nanosleep()])
])
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_OPENPTY version: 5 updated: 2015/09/12 14:46:50
+dnl CF_FUNC_OPENPTY version: 6 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Check for openpty() function, along with <pty.h> header. It may need the
dnl "util" library as well.
@@ -2322,7 +2586,7 @@ AC_DEFUN([CF_FUNC_OPENPTY],
AC_CHECK_LIB(util,openpty,cf_cv_lib_util=yes,cf_cv_lib_util=no)
AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
cf_save_LIBS="$LIBS"
- test $cf_cv_lib_util = yes && { CF_ADD_LIB(util) }
+ test "$cf_cv_lib_util" = yes && { CF_ADD_LIB(util) }
for cf_header in pty.h libutil.h util.h
do
AC_TRY_LINK([
@@ -2341,12 +2605,12 @@ AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_POLL version: 9 updated: 2015/10/10 13:27:32
+dnl CF_FUNC_POLL version: 10 updated: 2021/01/04 19:13:57
dnl ------------
dnl See if the poll function really works. Some platforms have poll(), but
dnl it does not work for terminals or files.
AC_DEFUN([CF_FUNC_POLL],[
-tty 2>&1 >/dev/null || { AC_CHECK_FUNCS(posix_openpt) }
+tty >/dev/null 2>&1 || { AC_CHECK_FUNCS(posix_openpt) }
AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[
AC_TRY_RUN([
#include <stdlib.h>
@@ -2431,7 +2695,7 @@ tcgetattr(1, &foo);],
test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR,1,[Define to 1 if we have tcgetattr])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_VSSCANF version: 6 updated: 2015/04/18 08:56:57
+dnl CF_FUNC_VSSCANF version: 7 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Check for vsscanf() function, which is in c9x but generally not in earlier
dnl versions of C. It is in the GNU C library, and can often be simulated by
@@ -2468,7 +2732,7 @@ AC_TRY_LINK([
return (_doscan(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=_doscan],[
cf_cv_func_vsscanf=no])])])])
-case $cf_cv_func_vsscanf in
+case "$cf_cv_func_vsscanf" in
(vsscanf) AC_DEFINE(HAVE_VSSCANF,1,[Define to 1 if we have vsscanf]);;
(vfscanf) AC_DEFINE(HAVE_VFSCANF,1,[Define to 1 if we have vfscanf]);;
(_doscan) AC_DEFINE(HAVE__DOSCAN,1,[Define to 1 if we have _doscan]);;
@@ -2476,14 +2740,16 @@ esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_ATTRIBUTES version: 17 updated: 2015/04/12 15:39:00
+dnl CF_GCC_ATTRIBUTES version: 24 updated: 2021/03/20 12:00:25
dnl -----------------
dnl Test for availability of useful gcc __attribute__ directives to quiet
dnl compiler warnings. Though useful, not all are supported -- and contrary
dnl to documentation, unrecognized directives cause older compilers to barf.
AC_DEFUN([CF_GCC_ATTRIBUTES],
-[
-if test "$GCC" = yes
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+AC_REQUIRE([CF_C11_NORETURN])dnl
+
+if test "$GCC" = yes || test "$GXX" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -2502,7 +2768,7 @@ EOF
if test "$GCC" = yes
then
AC_CHECKING([for $CC __attribute__ directives])
-cat > conftest.$ac_ext <<EOF
+cat > "conftest.$ac_ext" <<EOF
#line __oline__ "${as_me:-configure}"
#include "confdefs.h"
#include "conftest.h"
@@ -2518,9 +2784,9 @@ cat > conftest.$ac_ext <<EOF
#define GCC_SCANFLIKE(fmt,var) /*nothing*/
#endif
extern void wow(char *,...) GCC_SCANFLIKE(1,2);
-extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
-extern void foo(void) GCC_NORETURN;
-int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { return 0; }
+extern GCC_NORETURN void oops(char *,...) GCC_PRINTFLIKE(1,2);
+extern GCC_NORETURN void foo(void);
+int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { (void)argc; (void)argv; return 0; }
EOF
cf_printf_attribute=no
cf_scanf_attribute=no
@@ -2530,7 +2796,7 @@ EOF
cf_directive="__attribute__(($cf_attribute))"
echo "checking for $CC $cf_directive" 1>&AC_FD_CC
- case $cf_attribute in
+ case "$cf_attribute" in
(printf)
cf_printf_attribute=yes
cat >conftest.h <<EOF
@@ -2553,7 +2819,7 @@ EOF
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
cat conftest.h >>confdefs.h
- case $cf_attribute in
+ case "$cf_attribute" in
(noreturn)
AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc])
;;
@@ -2580,9 +2846,9 @@ EOF
fi
done
else
- fgrep define conftest.i >>confdefs.h
+ ${FGREP-fgrep} define conftest.i >>confdefs.h
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
])dnl
dnl ---------------------------------------------------------------------------
@@ -2603,7 +2869,7 @@ CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_WARNINGS version: 37 updated: 2020/01/05 20:04:12
+dnl CF_GCC_WARNINGS version: 41 updated: 2021/01/01 16:53:59
dnl ---------------
dnl Check if the compiler supports useful warning options. There's a few that
dnl we don't use, simply because they're too noisy:
@@ -2627,7 +2893,7 @@ AC_DEFUN([CF_GCC_WARNINGS],
[
AC_REQUIRE([CF_GCC_VERSION])
if test "x$have_x" = xyes; then CF_CONST_X_STRING fi
-cat > conftest.$ac_ext <<EOF
+cat > "conftest.$ac_ext" <<EOF
#line __oline__ "${as_me:-configure}"
int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
EOF
@@ -2646,7 +2912,7 @@ then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wall"
for cf_opt in \
wd1419 \
wd1683 \
@@ -2669,7 +2935,6 @@ elif test "$GCC" = yes && test "$GCC_VERSION" != "unknown"
then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS=
cf_warn_CONST=""
test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
@@ -2692,16 +2957,16 @@ then
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
- case $cf_opt in
+ case "$cf_opt" in
(Winline)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([[34]].*)
CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
continue;;
esac
;;
(Wpointer-arith)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([[12]].*)
CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
continue;;
@@ -2713,12 +2978,12 @@ then
done
CFLAGS="$cf_save_CFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
AC_SUBST(EXTRA_CFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GETOPT_HEADER version: 6 updated: 2014/07/22 14:45:54
+dnl CF_GETOPT_HEADER version: 8 updated: 2021/06/19 19:16:16
dnl ----------------
dnl Check for getopt's variables which are commonly defined in stdlib.h,
dnl unistd.h or (nonstandard) in getopt.h
@@ -2731,15 +2996,15 @@ for cf_header in stdio.h stdlib.h unistd.h getopt.h
do
AC_TRY_COMPILE([
#include <$cf_header>],
-[int x = optind; char *y = optarg],
+[int x = optind; char *y = optarg; (void)x; (void)y],
[cf_cv_getopt_header=$cf_header
break])
done
])
-if test $cf_cv_getopt_header != none ; then
+if test "$cf_cv_getopt_header" != none ; then
AC_DEFINE(HAVE_GETOPT_HEADER,1,[Define to 1 if getopt variables are declared in header])
fi
-if test $cf_cv_getopt_header = getopt.h ; then
+if test "$cf_cv_getopt_header" = getopt.h ; then
AC_DEFINE(NEED_GETOPT_H,1,[Define to 1 if we must include getopt.h])
fi
])dnl
@@ -2755,15 +3020,15 @@ test "$cf_cv_gnatprep_opt_t" = yes && GNATPREP_OPTS="-T $GNATPREP_OPTS"
AC_SUBST(GNATPREP_OPTS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_GENERICS version: 4 updated: 2019/12/31 08:53:54
+dnl CF_GNAT_GENERICS version: 7 updated: 2021/01/01 13:31:04
dnl ----------------
AC_DEFUN([CF_GNAT_GENERICS],
[
AC_REQUIRE([CF_GNAT_VERSION])
AC_MSG_CHECKING(if GNAT supports generics)
-case $cf_cv_gnat_version in
-(3.[[1-9]]*|[[4-9]].*)
+case "$cf_cv_gnat_version" in
+(3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|[[1-9]][[0-9]].[[0-9]]*|20[[0-9]][[0-9]])
cf_gnat_generics=yes
;;
(*)
@@ -2785,7 +3050,7 @@ AC_SUBST(cf_compile_generics)
AC_SUBST(cf_generic_objects)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_PROJECTS version: 10 updated: 2019/12/31 08:53:54
+dnl CF_GNAT_PROJECTS version: 13 updated: 2021/01/02 17:09:14
dnl ----------------
dnl GNAT projects are configured with ".gpr" project files.
dnl GNAT libraries are a further development, using the project feature.
@@ -2799,19 +3064,19 @@ cf_gnat_projects=no
if test "$enable_gnat_projects" != no ; then
AC_MSG_CHECKING(if GNAT supports project files)
-case $cf_cv_gnat_version in
+case "$cf_cv_gnat_version" in
(3.[[0-9]]*)
;;
(*)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin*|msys*)
;;
(*)
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src conftest.bin conftest.lib
then
cd conftest.src
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
cat >>library.gpr <<CF_EOF
project Library is
Kind := External ("LIB_KIND");
@@ -2840,11 +3105,11 @@ package body ConfPackage is
end conftest;
end ConfPackage;
CF_EOF
- if ( $cf_ada_make $ADAFLAGS \
+ if ( "$cf_ada_make" $ADAFLAGS \
-Plibrary.gpr \
- -XBUILD_DIR=`cd ../conftest.bin;pwd` \
- -XLIBRARY_DIR=`cd ../conftest.lib;pwd` \
- -XSOURCE_DIR=`pwd` \
+ -XBUILD_DIR="`cd ../conftest.bin;pwd`" \
+ -XLIBRARY_DIR="`cd ../conftest.lib;pwd`" \
+ -XSOURCE_DIR="`pwd`" \
-XSONAME=libConfTest.so.1 \
-XLIB_KIND=static 1>&AC_FD_CC 2>&1 ) ; then
cf_gnat_projects=yes
@@ -2855,7 +3120,7 @@ CF_EOF
then
cf_gnat_libraries=yes
fi
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
;;
esac
;;
@@ -2863,19 +3128,30 @@ esac
AC_MSG_RESULT($cf_gnat_projects)
fi # enable_gnat_projects
-if test $cf_gnat_projects = yes
+if test "$cf_gnat_projects" = yes
then
AC_MSG_CHECKING(if GNAT supports libraries)
AC_MSG_RESULT($cf_gnat_libraries)
fi
+USE_OLD_MAKERULES=""
+USE_GNAT_PROJECTS="#"
+USE_GNAT_MAKE_GPR="#"
+USE_GNAT_GPRBUILD="#"
+
if test "$cf_gnat_projects" = yes
then
USE_OLD_MAKERULES="#"
USE_GNAT_PROJECTS=""
-else
- USE_OLD_MAKERULES=""
- USE_GNAT_PROJECTS="#"
+ if test "$cf_cv_VERSION_GPRBUILD" != no
+ then
+ USE_GNAT_GPRBUILD=""
+ elif test "$cf_cv_VERSION_GNATMAKE" != no
+ then
+ USE_GNAT_MAKE_GPR=""
+ else
+ AC_MSG_WARN(use old makefile rules since tools are missing)
+ fi
fi
if test "$cf_gnat_libraries" = yes
@@ -2888,9 +3164,11 @@ fi
AC_SUBST(USE_OLD_MAKERULES)
AC_SUBST(USE_GNAT_PROJECTS)
AC_SUBST(USE_GNAT_LIBRARIES)
+AC_SUBST(USE_GNAT_MAKE_GPR)
+AC_SUBST(USE_GNAT_GPRBUILD)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_SIGINT version: 1 updated: 2011/03/27 20:07:59
+dnl CF_GNAT_SIGINT version: 2 updated: 2021/01/01 13:31:04
dnl --------------
dnl Check if gnat supports SIGINT, and presumably tasking. For the latter, it
dnl is noted that gnat may compile a tasking unit even for configurations which
@@ -2929,7 +3207,7 @@ end ConfTest;],
[cf_cv_gnat_sigint=yes],
[cf_cv_gnat_sigint=no])])
-if test $cf_cv_gnat_sigint = yes ; then
+if test "$cf_cv_gnat_sigint" = yes ; then
USE_GNAT_SIGINT=""
else
USE_GNAT_SIGINT="#"
@@ -2937,7 +3215,7 @@ fi
AC_SUBST(USE_GNAT_SIGINT)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_TRY_LINK version: 3 updated: 2011/03/19 14:47:45
+dnl CF_GNAT_TRY_LINK version: 4 updated: 2021/01/01 13:31:04
dnl ----------------
dnl Verify that a test program compiles/links with GNAT.
dnl $cf_ada_make is set to the program that compiles/links
@@ -2949,22 +3227,22 @@ dnl $3 is the shell command to execute if successful
dnl $4 is the shell command to execute if not successful
AC_DEFUN([CF_GNAT_TRY_LINK],
[
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
$1
CF_EOF
cat >>conftest.adb <<CF_EOF
$2
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
ifelse($3,, :,[ $3])
ifelse($4,,,[else
$4])
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_TRY_RUN version: 5 updated: 2011/03/19 14:47:45
+dnl CF_GNAT_TRY_RUN version: 6 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Verify that a test program compiles and runs with GNAT
dnl $cf_ada_make is set to the program that compiles/links
@@ -2976,14 +3254,14 @@ dnl $3 is the shell command to execute if successful
dnl $4 is the shell command to execute if not successful
AC_DEFUN([CF_GNAT_TRY_RUN],
[
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
$1
CF_EOF
cat >>conftest.adb <<CF_EOF
$2
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
if ( ./conftest 1>&AC_FD_CC 2>&1 ) ; then
ifelse($3,, :,[ $3])
ifelse($4,,,[ else
@@ -2992,7 +3270,7 @@ ifelse($4,,,[ else
ifelse($4,,,[else
$4])
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_GNAT_VERSION version: 22 updated: 2019/12/31 08:53:54
@@ -3122,7 +3400,7 @@ if test x$cf_cv_gnu_library = xyes; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GPP_LIBRARY version: 12 updated: 2015/04/17 21:13:04
+dnl CF_GPP_LIBRARY version: 13 updated: 2021/01/01 13:31:04
dnl --------------
dnl If we're trying to use g++, test if libg++ is installed (a rather common
dnl problem :-). If we have the compiler but no library, we'll be able to
@@ -3130,7 +3408,7 @@ dnl configure, but won't be able to build the c++ demo program.
AC_DEFUN([CF_GPP_LIBRARY],
[
cf_cxx_library=unknown
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(os2*)
cf_gpp_libname=gpp
;;
@@ -3184,7 +3462,7 @@ if test "$GXX" = yes; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GXX_WARNINGS version: 9 updated: 2015/04/17 21:13:04
+dnl CF_GXX_WARNINGS version: 11 updated: 2021/01/08 16:50:55
dnl ---------------
dnl Check if the compiler supports useful warning options.
dnl
@@ -3263,7 +3541,7 @@ then
EXTRA_CXXFLAGS="-W -Wall"
cf_gxx_extra_warnings=""
test "$with_ext_const" = yes && cf_gxx_extra_warnings="Wwrite-strings"
- case "$GCC_VERSION" in
+ case "$GXX_VERSION" in
([[1-2]].*)
;;
(*)
@@ -3297,7 +3575,7 @@ then
CXXFLAGS="$cf_save_CXXFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
AC_LANG_RESTORE
AC_SUBST(EXTRA_CXXFLAGS)
])dnl
@@ -3347,7 +3625,7 @@ fi
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_HASHED_DB_LIBS version: 9 updated: 2010/05/29 16:31:02
+dnl CF_HASHED_DB_LIBS version: 10 updated: 2021/01/02 17:09:14
dnl -----------------
dnl Given that we have the header and version for hashed database, find the
dnl library information.
@@ -3361,7 +3639,7 @@ do
if test -n "$cf_db_libs"; then
CF_ADD_LIB($cf_db_libs)
fi
- CF_MSG_LOG(checking for library "$cf_db_libs")
+ CF_MSG_LOG(checking for library $cf_db_libs)
AC_TRY_LINK([
$ac_includes_default
#include <db.h>
@@ -3457,7 +3735,7 @@ done
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_HEADER_PATH version: 13 updated: 2015/04/15 19:08:48
+dnl CF_HEADER_PATH version: 15 updated: 2021/01/01 13:31:04
dnl --------------
dnl Construct a search-list of directories for a nonstandard header-file
dnl
@@ -3473,7 +3751,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
CF_ADD_SUBDIR_PATH($1,$2,include,$cf_header_path,NONE)
@@ -3489,15 +3767,15 @@ CF_SUBDIR_PATH($1,$2,include)
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && $1="[$]$1 $includedir"
- test -d $includedir/$2 && $1="[$]$1 $includedir/$2"
+ test -d "$includedir" && $1="[$]$1 $includedir"
+ test -d "$includedir/$2" && $1="[$]$1 $includedir/$2"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && $1="[$]$1 $oldincludedir"
- test -d $oldincludedir/$2 && $1="[$]$1 $oldincludedir/$2"
+ test -d "$oldincludedir" && $1="[$]$1 $oldincludedir"
+ test -d "$oldincludedir/$2" && $1="[$]$1 $oldincludedir/$2"
}
$1="[$]$1 $cf_header_path_list"
@@ -3538,7 +3816,7 @@ CF_INSTALL_OPT_P
CF_INSTALL_OPT_O
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_O version: 2 updated: 2015/05/15 19:45:35
+dnl CF_INSTALL_OPT_O version: 3 updated: 2020/12/31 20:19:42
dnl ----------------
dnl Almost all "install" programs default to the current user's ownership.
dnl Almost - MINIX is an exception.
@@ -3557,7 +3835,7 @@ esac
AC_MSG_RESULT($with_install_o)
if test "x$with_install_o" = xyes
then
- INSTALL_OPT_O=`id root|sed -e 's/uid=[[0-9]]*(/ -o /' -e 's/gid=[[0-9]]*(/ -g /' -e 's/ [[^=[:space:]]][[^=[:space:]]]*=.*/ /' -e 's/)//g'`
+ INSTALL_OPT_O="`id root|sed -e 's/uid=[[0-9]]*(/ -o /' -e 's/gid=[[0-9]]*(/ -g /' -e 's/ [[^=[:space:]]][[^=[:space:]]]*=.*/ /' -e 's/)//g'`"
else
INSTALL_OPT_O=
fi
@@ -3565,16 +3843,16 @@ fi
AC_SUBST(INSTALL_OPT_O)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_P version: 1 updated: 2018/08/18 12:19:21
+dnl CF_INSTALL_OPT_P version: 3 updated: 2021/01/01 13:31:04
dnl ----------------
dnl Some install-programs accept a "-p" option to preserve file modification
dnl timestamps. That can be useful as an install option, as well as a way to
dnl avoid the need for ranlib after copying a static archive.
AC_DEFUN([CF_INSTALL_OPT_P],
[
-: ${INSTALL:=install}
+: "${INSTALL:=install}"
AC_CACHE_CHECK(if install accepts -p option, cf_cv_install_p,[
- rm -rf conftest*
+ rm -rf ./conftest*
date >conftest.in
mkdir conftest.out
sleep 3
@@ -3596,11 +3874,11 @@ AC_CACHE_CHECK(if install accepts -p option, cf_cv_install_p,[
else
cf_cv_install_p=no
fi
- rm -rf conftest*
+ rm -rf ./conftest*
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_S version: 2 updated: 2018/08/18 12:19:21
+dnl CF_INSTALL_OPT_S version: 3 updated: 2021/01/05 19:23:48
dnl ----------------
dnl By default, we should strip executables which are installed, but leave the
dnl ability to suppress that for unit-testing.
@@ -3609,11 +3887,11 @@ AC_DEFUN([CF_INSTALL_OPT_S],
AC_MSG_CHECKING(if you want to install stripped executables)
CF_ARG_DISABLE(stripping,
[ --disable-stripping do not strip (debug info) installed executables],
- [with_stripping=no],
- [with_stripping=yes])
-AC_MSG_RESULT($with_stripping)
+ [enable_stripping=no],
+ [enable_stripping=yes])
+AC_MSG_RESULT($enable_stripping)
-if test "$with_stripping" = yes
+if test "$enable_stripping" = yes
then
INSTALL_OPT_S="-s"
else
@@ -3622,7 +3900,7 @@ fi
AC_SUBST(INSTALL_OPT_S)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INTEL_COMPILER version: 7 updated: 2015/04/12 15:39:00
+dnl CF_INTEL_COMPILER version: 8 updated: 2021/01/01 16:53:59
dnl -----------------
dnl Check if the given compiler is really the Intel compiler for Linux. It
dnl tries to imitate gcc, but does not return an error when it finds a mismatch
@@ -3640,7 +3918,7 @@ AC_REQUIRE([AC_CANONICAL_HOST])
ifelse([$2],,INTEL_COMPILER,[$2])=no
if test "$ifelse([$1],,[$1],GCC)" = yes ; then
- case $host_os in
+ case "$host_os" in
(linux*|gnu*)
AC_MSG_CHECKING(if this is really Intel ifelse([$1],GXX,C++,C) compiler)
cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
@@ -3675,7 +3953,7 @@ AC_MSG_RESULT($cf_cv_have_isascii)
test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII,1,[Define to 1 if we have isascii()])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LARGEFILE version: 11 updated: 2018/06/20 20:23:13
+dnl CF_LARGEFILE version: 12 updated: 2020/03/19 20:23:48
dnl ------------
dnl Add checks for large file support.
AC_DEFUN([CF_LARGEFILE],[
@@ -3715,6 +3993,7 @@ ifdef([AC_FUNC_FSEEKO],[
struct dirent64 *x = readdir((DIR *)0);
struct dirent *y = readdir((DIR *)0);
int z = x - y;
+ (void)z;
],
[cf_cv_struct_dirent64=yes],
[cf_cv_struct_dirent64=no])
@@ -3724,7 +4003,7 @@ ifdef([AC_FUNC_FSEEKO],[
])
])
dnl ---------------------------------------------------------------------------
-dnl CF_LDFLAGS_STATIC version: 12 updated: 2015/04/18 08:56:57
+dnl CF_LDFLAGS_STATIC version: 14 updated: 2021/01/02 17:09:14
dnl -----------------
dnl Check for compiler/linker flags used to temporarily force usage of static
dnl libraries. This depends on the compiler and platform. Use this to help
@@ -3733,7 +4012,7 @@ dnl the list of linker options and libraries.
AC_DEFUN([CF_LDFLAGS_STATIC],[
if test "$GCC" = yes ; then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(OS/2*|os2*|aix[[4]]*|solaris2.1[[0-9]]|darwin*)
LDFLAGS_STATIC=
LDFLAGS_SHARED=
@@ -3744,7 +4023,7 @@ if test "$GCC" = yes ; then
;;
esac
else
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[[4-7]]*) # from ld manpage
LDFLAGS_STATIC=-bstatic
LDFLAGS_SHARED=-bdynamic
@@ -3797,7 +4076,7 @@ int cf_ldflags_static(FILE *fp);
return cf_ldflags_static(stdin);
],[
# some linkers simply ignore the -dynamic
- case x`file conftest$ac_exeext 2>/dev/null` in
+ case x`file "conftest$ac_exeext" 2>/dev/null` in
(*static*)
cf_ldflags_static=no
;;
@@ -3812,7 +4091,7 @@ int cf_ldflags_static(FILE *fp);
AC_MSG_RESULT($cf_ldflags_static)
- if test $cf_ldflags_static != yes
+ if test "$cf_ldflags_static" != yes
then
LDFLAGS_STATIC=
LDFLAGS_SHARED=
@@ -3826,7 +4105,7 @@ AC_SUBST(LDFLAGS_STATIC)
AC_SUBST(LDFLAGS_SHARED)
])
dnl ---------------------------------------------------------------------------
-dnl CF_LD_RPATH_OPT version: 8 updated: 2018/08/18 16:36:35
+dnl CF_LD_RPATH_OPT version: 9 updated: 2021/01/01 13:31:04
dnl ---------------
dnl For the given system and compiler, find the compiler flags to pass to the
dnl loader to use the "rpath" feature.
@@ -3838,7 +4117,7 @@ LD_RPATH_OPT=
if test "x$cf_cv_enable_rpath" != xno
then
AC_MSG_CHECKING(for an rpath option)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GCC" = yes; then
LD_RPATH_OPT="-Wl,-rpath,"
@@ -3883,7 +4162,7 @@ then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LD_SEARCHPATH version: 2 updated: 2019/09/26 20:34:14
+dnl CF_LD_SEARCHPATH version: 3 updated: 2021/03/05 19:13:35
dnl ----------------
dnl Try to obtain the linker's search-path, for use in scripts.
dnl
@@ -3899,14 +4178,14 @@ cf_pathlist=`ld --verbose 2>/dev/null | grep SEARCH_DIR | sed -e 's,SEARCH_DIR[[
# The -NX options tell newer versions of Linux ldconfig to not attempt to
# update the cache, which makes it run faster.
test -z "$cf_pathlist" && \
- cf_pathlist=`ldconfig -NX -v 2>/dev/null | sed -e '/^[[ ]]/d' -e 's/:$//' | sort -u`
+ cf_pathlist=`(ldconfig -NX -v) 2>/dev/null | sed -e '/^[[ ]]/d' -e 's/:$//' | sort -u`
test -z "$cf_pathlist" &&
- cf_pathlist=`ldconfig -v 2>/dev/null | sed -n -e '/^[[ ]]/d' -e 's/:$//p' | sort -u`
+ cf_pathlist=`(ldconfig -v) 2>/dev/null | sed -n -e '/^[[ ]]/d' -e 's/:$//p' | sort -u`
# This works with OpenBSD 6.5, which lists only filenames
test -z "$cf_pathlist" &&
- cf_pathlist=`ldconfig -v 2>/dev/null | sed -n -e 's,^Adding \(.*\)/.*[$],\1,p' | sort -u`
+ cf_pathlist=`(ldconfig -v) 2>/dev/null | sed -n -e 's,^Adding \(.*\)/.*[$],\1,p' | sort -u`
if test -z "$cf_pathlist"
then
@@ -3921,13 +4200,37 @@ fi
if test -z "$cf_pathlist"
then
- # Solaris is hardcoded
- if test -d /opt/SUNWspro/lib
+ # Solaris is "SunOS"
+ if test -f /usr/bin/isainfo && test "x`uname -s`" = xSunOS
then
- cf_pathlist="/opt/SUNWspro/lib /usr/ccs/lib /usr/lib"
- elif test -d /usr/ccs/lib
+ case x`(isainfo -b)` in
+ (x64)
+ cf_pathlist="$cf_pathlist /lib/64 /usr/lib/64"
+ ;;
+ (x32)
+ test -d /usr/ccs/lib && cf_pathlist="$cf_pathlist /usr/ccs/lib"
+ cf_pathlist="$cf_pathlist /lib /usr/lib"
+ ;;
+ (*)
+ AC_MSG_WARN(problem with Solaris architecture)
+ ;;
+ esac
+ fi
+fi
+
+if test -z "$cf_pathlist"
+then
+ # HP-UX
+ if test x"`uname -s`" = xHP-UX
then
- cf_pathlist="/usr/ccs/lib /usr/lib"
+ case x`getconf LONG_BIT` in
+ (x64)
+ cf_pathlist="/usr/lib/hpux64"
+ ;;
+ (x*)
+ cf_pathlist="/usr/lib/hpux32"
+ ;;
+ esac
fi
fi
@@ -3953,7 +4256,7 @@ LD_SEARCHPATH=`echo "$cf_cv_ld_searchpath"|sed -e 's/ /|/g'`
AC_SUBST(LD_SEARCHPATH)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIBRARY_PATH version: 10 updated: 2015/04/15 19:08:48
+dnl CF_LIBRARY_PATH version: 11 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Construct a search-list of directories for a nonstandard library-file
dnl
@@ -3967,7 +4270,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
CF_ADD_SUBDIR_PATH($1,$2,lib,$cf_library_path,NONE)
@@ -3994,13 +4297,13 @@ fi
test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_PREFIX version: 12 updated: 2015/10/17 19:03:33
+dnl CF_LIB_PREFIX version: 14 updated: 2021/01/01 13:31:04
dnl -------------
dnl Compute the library-prefix for the given host system
dnl $1 = variable to set
define([CF_LIB_PREFIX],
[
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(OS/2*|os2*)
if test "$DFT_LWR_MODEL" = libtool; then
LIB_PREFIX='lib'
@@ -4008,6 +4311,9 @@ define([CF_LIB_PREFIX],
LIB_PREFIX=''
fi
;;
+ (*-msvc*)
+ LIB_PREFIX=''
+ ;;
(*) LIB_PREFIX='lib'
;;
esac
@@ -4015,7 +4321,7 @@ ifelse($1,,,[$1=$LIB_PREFIX])
AC_SUBST(LIB_PREFIX)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_RULES version: 88 updated: 2018/08/18 12:19:21
+dnl CF_LIB_RULES version: 97 updated: 2021/07/17 13:10:54
dnl ------------
dnl Append definitions and rules for the given models to the subdirectory
dnl Makefiles, and the recursion rule for the top-level Makefile. If the
@@ -4031,39 +4337,41 @@ dnl lib<name>.so.<maj>.<minor>
dnl
dnl Note: Libs_To_Make is mixed case, since it is not a pure autoconf variable.
AC_DEFUN([CF_LIB_RULES],
-[
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+AC_REQUIRE([CF_MAKE_PHONY])dnl
+
cf_prefix=$LIB_PREFIX
AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
-case $cf_cv_shlib_version in
-(cygdll|msysdll|mingw)
+case "$cf_cv_shlib_version" in
+(cygdll|msysdll|mingw|msvcdll)
TINFO_NAME=$TINFO_ARG_SUFFIX
TINFO_SUFFIX=.dll
;;
esac
if test -n "$TINFO_SUFFIX" ; then
- case $TINFO_SUFFIX in
+ case "$TINFO_SUFFIX" in
(tw*)
TINFO_NAME="${TINFO_NAME}tw${EXTRA_SUFFIX}"
- TINFO_SUFFIX=`echo $TINFO_SUFFIX | sed 's/^tw'$EXTRA_SUFFIX'//'`
+ TINFO_SUFFIX=`echo "$TINFO_SUFFIX" | sed 's/^tw'$EXTRA_SUFFIX'//'`
;;
(t*)
TINFO_NAME="${TINFO_NAME}t${EXTRA_SUFFIX}"
- TINFO_SUFFIX=`echo $TINFO_SUFFIX | sed 's/^t'$EXTRA_SUFFIX'//'`
+ TINFO_SUFFIX=`echo "$TINFO_SUFFIX" | sed 's/^t'$EXTRA_SUFFIX'//'`
;;
(w*)
TINFO_NAME="${TINFO_NAME}w${EXTRA_SUFFIX}"
- TINFO_SUFFIX=`echo $TINFO_SUFFIX | sed 's/^w'$EXTRA_SUFFIX'//'`
+ TINFO_SUFFIX=`echo "$TINFO_SUFFIX" | sed 's/^w'$EXTRA_SUFFIX'//'`
;;
esac
fi
for cf_dir in $SRC_SUBDIRS
do
- if test ! -d $srcdir/$cf_dir ; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
- elif test -f $srcdir/$cf_dir/modules; then
+ elif test -f "$srcdir/$cf_dir/modules" ; then
SHARED_LIB=
Libs_To_Make=
@@ -4093,7 +4401,7 @@ resulting.map: $UNALTERED_SYMS
$cf_awk_program \
{ if ( last != "" && ( skip == 0 || \[$]\[$]0 !~ /}/ ) ) { print last; }\
skip = 0; last = \[$]\[$]0; } \
-END { print last; }' < $UNALTERED_SYMS >\[$]@
+END { print last; }' < "$UNALTERED_SYMS" >\[$]@
distclean::
rm -f resulting.map
@@ -4103,9 +4411,14 @@ CF_EOF
for cf_item in $cf_LIST_MODELS
do
CF_LIB_SUFFIX($cf_item,cf_suffix,cf_depsuf)
- cf_libname=$cf_dir
- test "$cf_dir" = c++ && cf_libname=ncurses++
- if test $cf_item = shared ; then
+ if test "$cf_dir" = "c++"
+ then
+ CF_MAP_LIB_BASENAME(cf_libname,cxx)
+ else
+ CF_MAP_LIB_BASENAME(cf_libname,$cf_dir)
+ fi
+ test -z "$cf_libname" && cf_libname="$cf_dir"
+ if test "$cf_item" = shared ; then
if test -n "${LIB_SUFFIX}"
then
cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${USE_LIB_SUFFIX}"'//'`
@@ -4146,7 +4459,7 @@ CF_EOF
# cygwin needs import library, and has unique naming convention
# use autodetected ${cf_prefix} for import lib and static lib, but
# use 'cyg' prefix for shared lib.
- case $cf_cv_shlib_version in
+ case "$cf_cv_shlib_version" in
(cygdll)
cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
cf_add_lib="../lib/cyg${cf_libname}${cf_cygsuf}"
@@ -4159,6 +4472,10 @@ CF_EOF
cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
cf_add_lib="../lib/lib${cf_libname}${cf_cygsuf}"
;;
+ (msvcdll)
+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
+ cf_add_lib="../lib/${cf_libname}${cf_cygsuf}"
+ ;;
(*)
cf_add_lib=
;;
@@ -4173,7 +4490,7 @@ CF_EOF
Libs_To_Make="$Libs_To_Make $cf_add_lib"
done
- if test $cf_dir = ncurses ; then
+ if test "$cf_dir" = ncurses ; then
cf_subsets="$LIB_SUBSETS"
cf_r_parts="$cf_subsets"
cf_liblist="$Libs_To_Make"
@@ -4184,12 +4501,12 @@ CF_EOF
cf_r_parts=`echo "$cf_r_parts" |sed -e 's/^[[^ ]]* //'`
if test "$cf_l_parts" != "$cf_r_parts" ; then
cf_add_lib=
- case $cf_l_parts in
+ case "$cf_l_parts" in
(*termlib*)
- cf_add_lib=`echo $cf_liblist |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TINFO_LIB_SUFFIX}%g`
+ cf_add_lib=`echo "$cf_liblist" |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TINFO_LIB_SUFFIX}%g`
;;
(*ticlib*)
- cf_add_lib=`echo $cf_liblist |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TICS_LIB_SUFFIX}%g`
+ cf_add_lib=`echo "$cf_liblist" |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TICS_LIB_SUFFIX}%g`
;;
(*)
break
@@ -4206,12 +4523,12 @@ CF_EOF
cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'`
fi
- if test $cf_dir = c++; then
+ if test "$cf_dir" = c++; then
if test "x$with_shared_cxx" != xyes && test -n "$cf_shared_suffix"; then
cf_list=
for cf_item in $Libs_To_Make
do
- case $cf_item in
+ case "$cf_item" in
(*.a)
;;
(*)
@@ -4235,12 +4552,12 @@ CF_EOF
sed -e "s%@Libs_To_Make@%$Libs_To_Make%" \
-e "s%@SHARED_LIB@%$SHARED_LIB%" \
- $cf_dir/Makefile >$cf_dir/Makefile.out
- mv $cf_dir/Makefile.out $cf_dir/Makefile
+ "$cf_dir/Makefile" >$cf_dir/Makefile.out
+ mv "$cf_dir/Makefile.out" "$cf_dir/Makefile"
- $AWK -f $srcdir/mk-0th.awk \
+ $AWK -f "$srcdir/mk-0th.awk" \
libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" ticlib="$TICS_LIB_SUFFIX" termlib="$TINFO_LIB_SUFFIX" \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/modules" >>$cf_dir/Makefile
for cf_subset in $cf_subsets
do
@@ -4253,8 +4570,8 @@ CF_EOF
CXX_MODEL=$cf_ITEM
if test "$CXX_MODEL" = SHARED; then
- case $cf_cv_shlib_version in
- (cygdll|msysdll|mingw)
+ case "$cf_cv_shlib_version" in
+ (cygdll|msysdll|mingw|msvcdll)
test "x$with_shared_cxx" = xno && CF_VERBOSE(overriding CXX_MODEL to SHARED)
with_shared_cxx=yes
;;
@@ -4269,8 +4586,8 @@ CF_EOF
# Test for case where we build libtinfo with a different name.
cf_libname=$cf_dir
- if test $cf_dir = ncurses ; then
- case $cf_subset in
+ if test "$cf_dir" = ncurses ; then
+ case "$cf_subset" in
(*base*)
cf_libname=${cf_libname}$USE_LIB_SUFFIX
;;
@@ -4281,14 +4598,16 @@ CF_EOF
cf_libname=$TICS_LIB_SUFFIX
;;
esac
- elif test $cf_dir = c++ ; then
- cf_libname=ncurses++$USE_LIB_SUFFIX
+ elif test "$cf_dir" = c++ ; then
+ CF_MAP_LIB_BASENAME(cf_libname,cxx)
+ cf_libname=${cf_libname}$USE_LIB_SUFFIX
else
+ CF_MAP_LIB_BASENAME(cf_libname,$cf_dir)
cf_libname=${cf_libname}$USE_LIB_SUFFIX
fi
if test -n "${USE_ARG_SUFFIX}" ; then
# undo $USE_LIB_SUFFIX add-on in CF_LIB_SUFFIX
- cf_suffix=`echo $cf_suffix |sed -e "s%^${USE_LIB_SUFFIX}%%"`
+ cf_suffix=`echo "$cf_suffix" |sed -e "s%^${USE_LIB_SUFFIX}%%"`
fi
# These dependencies really are for development, not
@@ -4300,9 +4619,9 @@ CF_EOF
cf_reldir="\${srcdir}"
fi
- if test -f $srcdir/$cf_dir/$cf_dir.priv.h; then
+ if test -f "$srcdir/$cf_dir/$cf_dir.priv.h" ; then
cf_depend="$cf_depend $cf_reldir/$cf_dir.priv.h"
- elif test -f $srcdir/$cf_dir/curses.priv.h; then
+ elif test -f "$srcdir/$cf_dir/curses.priv.h" ; then
cf_depend="$cf_depend $cf_reldir/curses.priv.h"
fi
@@ -4310,36 +4629,39 @@ CF_EOF
old_cf_suffix="$cf_suffix"
if test "$cf_cv_shlib_version_infix" = yes ; then
if test -n "$USE_LIB_SUFFIX" ; then
- case $USE_LIB_SUFFIX in
+ case "$USE_LIB_SUFFIX" in
(tw*)
- cf_libname=`echo $cf_libname | sed 's/tw'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^tw'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/tw'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^tw'$EXTRA_SUFFIX'//'`
cf_dir_suffix=tw$EXTRA_SUFFIX
;;
(t*)
- cf_libname=`echo $cf_libname | sed 's/t'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^t'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/t'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^t'$EXTRA_SUFFIX'//'`
cf_dir_suffix=t$EXTRA_SUFFIX
;;
(w*)
- cf_libname=`echo $cf_libname | sed 's/w'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^w'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/w'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^w'$EXTRA_SUFFIX'//'`
cf_dir_suffix=w$EXTRA_SUFFIX
;;
(*)
- cf_libname=`echo $cf_libname | sed 's/'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^'$EXTRA_SUFFIX'//'`
cf_dir_suffix=$EXTRA_SUFFIX
;;
esac
fi
fi
- $AWK -f $srcdir/mk-1st.awk \
+ $AWK -f "$srcdir/mk-1st.awk" \
name=${cf_libname}${cf_dir_suffix} \
traces=$LIB_TRACING \
MODEL=$cf_ITEM \
CXX_MODEL=$CXX_MODEL \
+ LIB_SUFFIX=$LIB_SUFFIX \
+ USE_LIB_SUFFIX=$USE_LIB_SUFFIX \
+ make_phony="${cf_cv_make_PHONY:-no}" \
model=$cf_subdir \
prefix=$cf_prefix \
suffix=$cf_suffix \
@@ -4359,16 +4681,16 @@ CF_EOF
depend="$cf_depend" \
host="$host" \
libtool_version="$LIBTOOL_VERSION" \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/modules" >>$cf_dir/Makefile
cf_suffix="$old_cf_suffix"
for cf_subdir2 in $cf_subdirs lib
do
- test $cf_subdir = $cf_subdir2 && break
+ test "$cf_subdir" = "$cf_subdir2" && break
done
test "${cf_subset}.${cf_subdir2}" != "${cf_subset}.${cf_subdir}" && \
- $AWK -f $srcdir/mk-2nd.awk \
+ $AWK -f "$srcdir/mk-2nd.awk" \
name=$cf_dir \
traces=$LIB_TRACING \
MODEL=$cf_ITEM \
@@ -4378,53 +4700,76 @@ CF_EOF
echo=$WITH_ECHO \
crenames=$cf_cv_prog_CC_c_o \
cxxrenames=$cf_cv_prog_CXX_c_o \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/modules" >>$cf_dir/Makefile
cf_subdirs="$cf_subdirs $cf_subdir"
done
done
fi
- echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@' >>Makefile
+ echo ' ( cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@ )' >>Makefile
done
+echo >> Makefile
+echo '# generated by CF_LIB_RULES' >> Makefile
+
+if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : libs
+ .PHONY : lintlib
+ .PHONY : install.includes
+ .PHONY : uninstall.includes
+ .PHONY : install.libs
+ .PHONY : uninstall.libs
+CF_EOF
+fi
+
for cf_dir in $SRC_SUBDIRS
do
- if test ! -d $srcdir/$cf_dir ; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
fi
- if test -f $cf_dir/Makefile ; then
+ if test -f "$cf_dir/Makefile" ; then
case "$cf_dir" in
(Ada95)
echo 'libs \' >> Makefile
echo 'install.libs \' >> Makefile
echo 'uninstall.libs ::' >> Makefile
- echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@' >> Makefile
+ echo ' ( cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@ )' >> Makefile
;;
esac
fi
- if test -f $srcdir/$cf_dir/modules; then
+ if test -f "$srcdir/$cf_dir/modules" ; then
+
+ if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : install.$cf_dir
+ .PHONY : uninstall.$cf_dir
+CF_EOF
+ fi
+
echo >> Makefile
- if test -f $srcdir/$cf_dir/headers; then
+ if test -f "$srcdir/$cf_dir/headers" ; then
cat >> Makefile <<CF_EOF
install.includes \\
uninstall.includes \\
CF_EOF
fi
-if test "$cf_dir" != "c++" ; then
-echo 'lint \' >> Makefile
-fi
+
cat >> Makefile <<CF_EOF
+lint \\
libs \\
lintlib \\
install.libs \\
uninstall.libs \\
install.$cf_dir \\
uninstall.$cf_dir ::
- cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \[$]@
+ ( cd "$cf_dir" && \${MAKE} \${TOP_MFLAGS} \[$]@ )
CF_EOF
- elif test -f $srcdir/$cf_dir/headers; then
+ elif test -f "$srcdir/$cf_dir/headers" ; then
cat >> Makefile <<CF_EOF
libs \\
@@ -4432,32 +4777,49 @@ install.libs \\
uninstall.libs \\
install.includes \\
uninstall.includes ::
- cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \[$]@
+ ( cd "$cf_dir" && \${MAKE} \${TOP_MFLAGS} \[$]@ )
CF_EOF
fi
done
+if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : install.data
+ .PHONY : uninstall.data
+CF_EOF
+fi
+
if test "x$cf_with_db_install" = xyes; then
cat >> Makefile <<CF_EOF
install.libs uninstall.libs \\
install.data uninstall.data ::
-$MAKE_TERMINFO cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@
+$MAKE_TERMINFO ( cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@ )
CF_EOF
else
cat >> Makefile <<CF_EOF
install.libs uninstall.libs ::
- cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@
+ ( cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@ )
CF_EOF
fi
if test "x$cf_with_manpages" = xyes; then
+
+if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : install.man
+ .PHONY : uninstall.man
+CF_EOF
+fi
+
cat >> Makefile <<CF_EOF
install.man \\
uninstall.man ::
- cd man && \${MAKE} \${TOP_MFLAGS} \[$]@
+ ( cd man && \${MAKE} \${TOP_MFLAGS} \[$]@ )
CF_EOF
fi
@@ -4477,7 +4839,7 @@ cat >> Makefile <<CF_EOF
install.man \\
uninstall.man ::
- cd tack && \${MAKE} \${TOP_MFLAGS} \[$]@
+ ( cd tack && \${MAKE} \${TOP_MFLAGS} \[$]@ )
CF_EOF
fi
fi
@@ -4511,12 +4873,12 @@ TMPSED=\${TMPDIR:-/tmp}/headers.sed\$\$
echo installing \$SRC in \$DST
CF_EOF
-if test $WITH_CURSES_H = yes; then
+if test "$WITH_CURSES_H" = yes; then
cat >>headers.sh <<CF_EOF
case \$DST in
(/*/include/*)
END=\`basename \$DST\`
- for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
+ for i in \`cat \$REF/../*/headers |${FGREP-fgrep} -v "#"\`
do
NAME=\`basename \$i\`
echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED
@@ -4533,7 +4895,7 @@ else
case \$DST in
(/*/include/*)
END=\`basename \$DST\`
- for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
+ for i in \`cat \$REF/../*/headers |${FGREP-fgrep} -v "#"\`
do
NAME=\`basename \$i\`
if test "\$NAME" = "curses.h"
@@ -4555,7 +4917,7 @@ rm -f \$TMPSRC
sed -f \$TMPSED \$SRC > \$TMPSRC
NAME=\`basename \$SRC\`
CF_EOF
-if test $WITH_CURSES_H != yes; then
+if test "$WITH_CURSES_H" != yes; then
cat >>headers.sh <<CF_EOF
test "\$NAME" = "curses.h" && NAME=ncurses.h
CF_EOF
@@ -4572,19 +4934,26 @@ chmod 0755 headers.sh
for cf_dir in $SRC_SUBDIRS
do
- if test ! -d $srcdir/$cf_dir ; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
fi
- if test -f $srcdir/$cf_dir/headers; then
- $AWK -f $srcdir/mk-hdr.awk \
+ if test -f "$srcdir/$cf_dir/headers" ; then
+ $AWK -f "$srcdir/mk-hdr.awk" \
subset="$LIB_SUBSETS" \
compat="$WITH_CURSES_H" \
- $srcdir/$cf_dir/headers >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/headers" >>$cf_dir/Makefile
fi
- if test -f $srcdir/$cf_dir/modules; then
+ if test -f "$srcdir/$cf_dir/modules" ; then
if test "$cf_dir" != "c++" ; then
+ if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> $cf_dir/Makefile <<-CF_EOF
+
+ .PHONY : depend
+CF_EOF
+ fi
+
cat >>$cf_dir/Makefile <<"CF_EOF"
depend : ${AUTO_SRC}
makedepend -- ${CPPFLAGS} -- ${C_SRC}
@@ -4597,7 +4966,7 @@ done
AC_SUBST(Libs_To_Make)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_SONAME version: 6 updated: 2017/01/21 11:06:25
+dnl CF_LIB_SONAME version: 9 updated: 2021/01/04 18:48:01
dnl -------------
dnl Find the and soname for the given shared library. Set the cache variable
dnl cf_cv_$3_soname to this, unless it is not found. Then set the cache
@@ -4607,7 +4976,8 @@ dnl $1 = headers
dnl $2 = code
dnl $3 = library name
AC_DEFUN([CF_LIB_SONAME],
-[
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+
AC_CACHE_CHECK(for soname of $3 library,cf_cv_$3_soname,[
cf_cv_$3_soname=unknown
@@ -4624,17 +4994,17 @@ cf_save_LIBS="$LIBS"
CF_ADD_LIB($3)
if AC_TRY_EVAL(ac_compile) ; then
if AC_TRY_EVAL(ac_link) ; then
- cf_cv_$3_soname=`ldd conftest$ac_exeext 2>/dev/null | sed -e 's,^.*/,,' -e 's, .*$,,' | fgrep lib$3.`
+ cf_cv_$3_soname="`ldd \"conftest$ac_exeext\" 2>/dev/null | sed -e 's,^.*/,,' -e 's, .*$,,' | ${FGREP-fgrep} lib$3.`"
test -z "$cf_cv_$3_soname" && cf_cv_$3_soname=unknown
fi
fi
-rm -rf conftest*
+rm -rf ./conftest*
LIBS="$cf_save_LIBS"
fi
])
])
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_SUFFIX version: 25 updated: 2015/04/17 21:13:04
+dnl CF_LIB_SUFFIX version: 28 updated: 2021/01/01 16:53:59
dnl -------------
dnl Compute the library file-suffix from the given model name
dnl $1 = model name
@@ -4649,19 +5019,37 @@ AC_DEFUN([CF_LIB_SUFFIX],
$3=[$]$2
;;
(Xdebug)
- $2='_g.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ $2='_g.lib'
+ ;;
+ (*)
+ $2='_g.a'
+ ;;
+ esac
$3=[$]$2
;;
(Xprofile)
- $2='_p.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ $2='_p.lib'
+ ;;
+ (*)
+ $2='_p.a'
+ ;;
+ esac
$3=[$]$2
;;
(Xshared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[[5-7]]*)
$2='.so'
$3=[$]$2
;;
+ (*-msvc*)
+ $2='.dll'
+ $3='.dll.lib'
+ ;;
(cygwin*|msys*|mingw*)
$2='.dll'
$3='.dll.a'
@@ -4671,7 +5059,7 @@ AC_DEFUN([CF_LIB_SUFFIX],
$3=[$]$2
;;
(hpux*)
- case $target in
+ case "$target" in
(ia64*)
$2='.so'
$3=[$]$2
@@ -4689,7 +5077,14 @@ AC_DEFUN([CF_LIB_SUFFIX],
esac
;;
(*)
- $2='.a'
+ case "$target" in
+ (*-msvc*)
+ $2='.lib'
+ ;;
+ (*)
+ $2='.a'
+ ;;
+ esac
$3=[$]$2
;;
esac
@@ -4782,11 +5177,14 @@ AC_SUBST(BROKEN_LINKER)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LINK_FUNCS version: 9 updated: 2017/01/21 11:11:02
+dnl CF_LINK_FUNCS version: 11 updated: 2021/04/18 14:08:47
dnl -------------
dnl Most Unix systems have both link and symlink, a few don't have symlink.
dnl A few non-Unix systems implement symlink, but not link.
dnl A few non-systems implement neither (or have nonfunctional versions).
+dnl
+dnl This allows for a 2-second difference in modification times to allow for
+dnl some marginal NFS implementations.
AC_DEFUN([CF_LINK_FUNCS],
[
AC_CHECK_HEADERS( \
@@ -4805,6 +5203,7 @@ else
cf_cv_link_funcs=
for cf_func in link symlink ; do
AC_TRY_RUN([
+#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#ifdef HAVE_UNISTD_H
@@ -4813,19 +5212,26 @@ else
int main(void)
{
int fail = 0;
- char *src = "config.log";
+ char *src = "conftest.tmp";
char *dst = "conftest.chk";
- struct stat src_sb;
- struct stat dst_sb;
-
- stat(src, &src_sb);
- fail = ($cf_func("config.log", "conftest.chk") < 0)
- || (stat(dst, &dst_sb) < 0)
- || (dst_sb.st_mtime != src_sb.st_mtime);
+ struct stat src_sb, dst_sb;
+ FILE *fp = fopen(src, "w");
+ if (fp == 0) { fail = 3; } else {
+ fclose(fp); stat(src, &src_sb);
+ if ($cf_func(src, dst) < 0) {
+ fail = 1;
+ } else if (stat(dst, &dst_sb) < 0) {
+ fail = 2;
+ } else {
+ long diff = (dst_sb.st_mtime - src_sb.st_mtime);
+ if (diff < 0) diff = -diff;
+ if (diff > 2) fail = 3;
+ }
+ }
#ifdef HAVE_UNLINK
- unlink(dst);
+ unlink(dst); unlink(src);
#else
- remove(dst);
+ remove(dst); remove(src);
#endif
${cf_cv_main_return:-return} (fail);
}
@@ -4842,14 +5248,15 @@ int main(void)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MAKEFLAGS version: 18 updated: 2018/02/21 21:26:03
+dnl CF_MAKEFLAGS version: 21 updated: 2021/09/04 06:47:34
dnl ------------
dnl Some 'make' programs support ${MAKEFLAGS}, some ${MFLAGS}, to pass 'make'
-dnl options to lower-levels. It's very useful for "make -n" -- if we have it.
+dnl options to lower-levels. It is very useful for "make -n" -- if we have it.
dnl (GNU 'make' does both, something POSIX 'make', which happens to make the
dnl ${MAKEFLAGS} variable incompatible because it adds the assignments :-)
AC_DEFUN([CF_MAKEFLAGS],
-[
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+
AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[
cf_cv_makeflags=''
for cf_option in '-${MAKEFLAGS}' '${MFLAGS}'
@@ -4859,10 +5266,10 @@ SHELL = $SHELL
all :
@ echo '.$cf_option'
CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[[ ]]*$,,'`
+ cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | ${FGREP-fgrep} -v "ing directory" | sed -e 's,[[ ]]*$,,'`
case "$cf_result" in
(.*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
+ cf_result="`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`"
case "$cf_result" in
(.*CC=*) cf_cv_makeflags=
;;
@@ -4884,6 +5291,89 @@ CF_EOF
AC_SUBST(cf_cv_makeflags)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_MAKE_PHONY version: 3 updated: 2021/01/08 16:08:21
+dnl -------------
+dnl Check if the make-program handles a ".PHONY" target, e.g,. a target which
+dnl acts as a placeholder.
+dnl
+dnl The ".PHONY" feature was proposed in 2011 here
+dnl https://www.austingroupbugs.net/view.php?id=523
+dnl and is scheduled for release in P1003.1 Issue 8 (late 2022).
+dnl
+dnl This is not supported by SVr4 make (or SunOS 4, 4.3SD, etc), but works with
+dnl a few others (i.e., GNU make and the non-POSIX "BSD" make):
+dnl
+dnl + This is a GNU make feature (since April 1988, but in turn from binutils,
+dnl date unspecified).
+dnl
+dnl + It was adopted in NetBSD make in June 1995.
+dnl
+dnl + The other BSD make programs are derived from the NetBSD make (and for
+dnl that reason are not actually different "implementations").
+dnl
+dnl + Some features of NetBSD make were actually adapted from pmake, which
+dnl began as a modified GNU make starting in 1993.
+dnl
+dnl + Version 3.8 of the dmake program in January 1992 also implemented this
+dnl GNU make extension, but is less well known than the BSD make.
+AC_DEFUN([CF_MAKE_PHONY],[
+AC_CACHE_CHECK(for \".PHONY\" make-support, cf_cv_make_PHONY,[
+ rm -rf conftest*
+ (
+ mkdir conftest || exit 1
+ cd conftest
+ cat >makefile <<'CF_EOF'
+.PHONY: always
+DATA=0
+always: always.out
+ @echo "** making [$]@ [$](DATA)"
+once: once.out
+ @echo "** making [$]@ [$](DATA)"
+always.out:
+ @echo "** making [$]@ [$](DATA)"
+ echo [$](DATA) > [$]@
+once.out:
+ @echo "** making [$]@ [$](DATA)"
+ echo [$](DATA) > [$]@
+CF_EOF
+ for cf_data in 1 2 3
+ do
+ ${MAKE:-make} always DATA=$cf_data
+ ${MAKE:-make} once DATA=$cf_data
+ ${MAKE:-make} -t always once
+ if test -f always ; then
+ echo "no (case 1)" > ../conftest.tmp
+ elif test ! -f always.out ; then
+ echo "no (case 2)" > ../conftest.tmp
+ elif test ! -f once.out ; then
+ echo "no (case 3)" > ../conftest.tmp
+ elif ! cmp -s always.out once.out ; then
+ echo "no (case 4)" > ../conftest.tmp
+ diff always.out once.out
+ else
+ cf_check="`cat always.out`"
+ if test "x$cf_check" != "x$cf_data" ; then
+ echo "no (case 5)" > ../conftest.tmp
+ else
+ echo yes > ../conftest.tmp
+ rm -f ./*.out
+ continue
+ fi
+ fi
+ break
+ done
+ ) >&AC_FD_CC 2>&1
+ cf_cv_make_PHONY="`cat conftest.tmp`"
+ rm -rf conftest*
+])
+MAKE_NO_PHONY="#"
+MAKE_PHONY="#"
+test "x$cf_cv_make_PHONY" = xyes && MAKE_PHONY=
+test "x$cf_cv_make_PHONY" != xyes && MAKE_NO_PHONY=
+AC_SUBST(MAKE_NO_PHONY)
+AC_SUBST(MAKE_PHONY)
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_MAKE_TAGS version: 6 updated: 2010/10/23 15:52:32
dnl ------------
dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have
@@ -4921,7 +5411,7 @@ AC_SUBST(MAKE_UPPER_TAGS)
AC_SUBST(MAKE_LOWER_TAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MANPAGE_FORMAT version: 11 updated: 2015/04/18 08:56:57
+dnl CF_MANPAGE_FORMAT version: 15 updated: 2021/09/04 06:35:04
dnl -----------------
dnl Option to allow user to override automatic configuration of manpage format.
dnl There are several special cases:
@@ -4951,24 +5441,24 @@ MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'`
cf_unknown=
-case $MANPAGE_FORMAT in
+case "$MANPAGE_FORMAT" in
(unknown)
if test -z "$MANPATH" ; then
MANPATH="/usr/man:/usr/share/man"
fi
- # look for the 'date' man-page (it's most likely to be installed!)
+ # look for the 'date' man-page (it is most likely to be installed!)
MANPAGE_FORMAT=
- cf_preform=no
- cf_catonly=yes
- cf_example=date
+ cf_preform="no"
+ cf_catonly="yes"
+ cf_example="date"
IFS="${IFS:- }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
for cf_dir in $MANPATH; do
test -z "$cf_dir" && cf_dir=/usr/man
for cf_name in $cf_dir/man*/$cf_example.[[01]]* $cf_dir/cat*/$cf_example.[[01]]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example
do
- cf_test=`echo $cf_name | sed -e 's/*//'`
+ cf_test=`echo "$cf_name" | sed -e 's/*//'`
if test "x$cf_test" = "x$cf_name" ; then
case "$cf_name" in
@@ -4999,7 +5489,7 @@ case $MANPAGE_FORMAT in
cf_found=yes
;;
esac
- test $cf_found=yes && break
+ test "$cf_found" = yes && break
fi
done
# only check the first directory in $MANPATH where we find manpages
@@ -5013,7 +5503,7 @@ case $MANPAGE_FORMAT in
;;
(*)
for cf_option in $MANPAGE_FORMAT; do
- case $cf_option in
+ case "$cf_option" in
(gzip|compress|BSDI|normal|formatted|catonly)
;;
(*)
@@ -5030,7 +5520,7 @@ if test -n "$cf_unknown" ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MANPAGE_RENAMES version: 10 updated: 2015/08/05 20:44:28
+dnl CF_MANPAGE_RENAMES version: 12 updated: 2021/01/01 16:53:59
dnl ------------------
dnl The Debian people have their own naming convention for manpages. This
dnl option lets us override the name of the file containing renaming, or
@@ -5050,7 +5540,7 @@ case ".$MANPAGE_RENAMES" in
(.|.yes)
# Debian 'man' program?
if test -f /etc/debian_version ; then
- MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames
+ MANPAGE_RENAMES=`cd "$srcdir" && pwd`/man/man_db.renames
else
MANPAGE_RENAMES=no
fi
@@ -5058,9 +5548,9 @@ case ".$MANPAGE_RENAMES" in
esac
if test "$MANPAGE_RENAMES" != no ; then
- if test -f $srcdir/man/$MANPAGE_RENAMES ; then
- MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES
- elif test ! -f $MANPAGE_RENAMES ; then
+ if test -f "$srcdir/man/$MANPAGE_RENAMES" ; then
+ MANPAGE_RENAMES=`cd "$srcdir/man" && pwd`/$MANPAGE_RENAMES
+ elif test ! -f "$MANPAGE_RENAMES" ; then
AC_MSG_ERROR(not a filename: $MANPAGE_RENAMES)
fi
@@ -5069,7 +5559,7 @@ if test "$MANPAGE_RENAMES" != no ; then
# Construct a sed-script to perform renaming within man-pages
if test -n "$MANPAGE_RENAMES" ; then
test ! -d man && mkdir man
- $SHELL $srcdir/man/make_sed.sh $MANPAGE_RENAMES >./edit_man.sed
+ $SHELL "$srcdir/man/make_sed.sh" "$MANPAGE_RENAMES" >./edit_man.sed
fi
fi
@@ -5139,7 +5629,7 @@ AC_ARG_WITH(manpage-tbl,
AC_MSG_RESULT($MANPAGE_TBL)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MAN_PAGES version: 47 updated: 2017/08/12 07:58:51
+dnl CF_MAN_PAGES version: 51 updated: 2021/01/05 16:29:19
dnl ------------
dnl Try to determine if the man-pages on the system are compressed, and if
dnl so, what format is used. Use this information to construct a script that
@@ -5230,7 +5720,7 @@ shift || exit 1
if test "\$form" = normal ; then
if test "$cf_format" = yes ; then
if test "$cf_inboth" = no ; then
- $SHELL \[$]0 format \$verb \$mandir \$srcdir \[$]*
+ $SHELL "\[$]0" format "\$verb" "\$mandir" "\$srcdir" "\[$]@"
exit $?
fi
fi
@@ -5242,19 +5732,19 @@ else
fi
# process the list of source-files
-for i in \[$]* ; do
+for i in "\[$]@" ; do
case \$i in
(*.orig|*.rej) ;;
(*.[[0-9]]*)
section=\`expr "\$i" : '.*\\.\\([[0-9]]\\)[[xm]]*'\`;
- if test \$verb = installing ; then
- if test ! -d \$cf_subdir\${section} ; then
- mkdir -p \$cf_subdir\$section
+ if test "\$verb" = installing ; then
+ if test ! -d "\$cf_subdir\${section}" ; then
+ mkdir -p "\$cf_subdir\$section"
fi
fi
# replace variables in man page
- if test ! -f $cf_man_alias ; then
+ if test ! -f "$cf_man_alias" ; then
cat >>$cf_man_alias <<-CF_EOF2
s,@DATADIR@,\$datadir,g
s,@TERMINFO@,\${TERMINFO:="no default value"},g
@@ -5268,7 +5758,7 @@ CF_EOF
for cf_name in $1
do
cf_NAME=`echo "$cf_name" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
- cf_name=`echo $cf_name|sed "$program_transform_name"`
+ cf_name=`echo "$cf_name" | sed "$program_transform_name"`
cat >>$cf_edit_man <<-CF_EOF
s,@$cf_NAME@,$cf_name,g
CF_EOF
@@ -5280,11 +5770,11 @@ CF_EOF2
fi
aliases=
- cf_source=\`basename \$i\`
+ cf_source=\`basename "\$i"\`
inalias=\$cf_source
- test ! -f \$inalias && inalias="\$srcdir/\$inalias"
- if test ! -f \$inalias ; then
- echo .. skipped \$cf_source
+ test ! -f "\$inalias" && inalias="\$srcdir/\$inalias"
+ if test ! -f "\$inalias" ; then
+ echo ".. skipped \$cf_source"
continue
fi
CF_EOF
@@ -5292,8 +5782,8 @@ CF_EOF
if test "$MANPAGE_ALIASES" != no ; then
cat >>$cf_edit_man <<CF_EOF
nCurses=ignore.3x
- test $with_curses_h = yes && nCurses=ncurses.3x
- aliases=\`sed -f \$top_srcdir/man/manlinks.sed \$inalias |sed -f $cf_man_alias | sort -u; test \$inalias = \$nCurses && echo curses\`
+ test "$with_curses_h" = yes && nCurses=ncurses.3x
+ aliases=\`sed -f "\$top_srcdir/man/manlinks.sed" "\$inalias" |sed -f "$cf_man_alias" | sort -u; test "\$inalias" = "\$nCurses" && echo curses\`
CF_EOF
fi
@@ -5310,7 +5800,7 @@ else
cat >>$cf_edit_man <<CF_EOF
cf_target=\`grep "^\$cf_source" $MANPAGE_RENAMES | $AWK '{print \[$]2}'\`
if test -z "\$cf_target" ; then
- echo '? missing rename for '\$cf_source
+ echo "? missing rename for \$cf_source"
cf_target="\$cf_source"
fi
cf_target="\$cf_subdir\${section}/\${cf_target}"
@@ -5319,16 +5809,16 @@ CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
- sed -f $cf_man_alias \\
+ sed -f "$cf_man_alias" \\
CF_EOF
-if test -f $MANPAGE_RENAMES ; then
+if test -f "$MANPAGE_RENAMES" ; then
cat >>$cf_edit_man <<CF_EOF
- < \$i | sed -f `pwd`/edit_man.sed >\$TMP
+ < "\$i" | sed -f `pwd`/edit_man.sed >\$TMP
CF_EOF
else
cat >>$cf_edit_man <<CF_EOF
- < \$i >\$TMP
+ < "\$i" >\$TMP
CF_EOF
fi
@@ -5339,22 +5829,22 @@ if test \$cf_tables = yes ; then
fi
CF_EOF
-if test $with_overwrite != yes ; then
+if test "$with_overwrite" != yes ; then
cat >>$cf_edit_man <<CF_EOF
- sed -e "/\#[ ]*include/s,<curses.h,<ncurses$LIB_SUFFIX/curses.h," < \$TMP >\$TMP.out
+ sed -e "/\\#[ ]*include/s,<curses.h,<ncurses$LIB_SUFFIX/curses.h," < \$TMP >\$TMP.out
mv \$TMP.out \$TMP
CF_EOF
fi
-if test $with_curses_h != yes ; then
+if test "$with_curses_h" != yes ; then
cat >>$cf_edit_man <<CF_EOF
- sed -e "/\#[ ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
+ sed -e "/\\#[ ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
mv \$TMP.out \$TMP
CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
- if test \$form = format ; then
+ if test "\$form" = format ; then
nroff -man \$TMP >\$TMP.out
mv \$TMP.out \$TMP
fi
@@ -5362,8 +5852,8 @@ CF_EOF
if test -n "$cf_compress" ; then
cat >>$cf_edit_man <<CF_EOF
- if test \$verb = installing ; then
- if ( $cf_compress -f \$TMP )
+ if test "\$verb" = installing ; then
+ if ( "$cf_compress" -f \$TMP )
then
mv \$TMP.$cf_so_strip \$TMP
fi
@@ -5375,50 +5865,50 @@ fi
case "$MANPAGE_FORMAT" in
(*BSDI*)
cat >>$cf_edit_man <<CF_EOF
- if test \$form = format ; then
+ if test "\$form" = format ; then
# BSDI installs only .0 suffixes in the cat directories
- cf_target="\`echo \$cf_target|sed -e 's/\.[[1-9]]\+[[a-z]]*/.0/'\`"
+ cf_target="\`echo \$cf_target|sed -e 's/\\.[[1-9]]\\+[[a-z]]*/.0/'\`"
fi
CF_EOF
;;
esac
cat >>$cf_edit_man <<CF_EOF
- suffix=\`basename \$cf_target | sed -e 's%^[[^.]]*%%'\`
- if test \$verb = installing ; then
- echo \$verb \$cf_target
- \$INSTALL_DATA \$TMP \$cf_target
- test -d \$cf_subdir\${section} &&
+ suffix=\`basename "\$cf_target" | sed -e 's%^[[^.]]*%%'\`
+ if test "\$verb" = installing ; then
+ echo "\$verb \$cf_target"
+ \$INSTALL_DATA \$TMP "\$cf_target"
+ test -d "\$cf_subdir\${section}" &&
test -n "\$aliases" && (
- cd \$cf_subdir\${section} && (
- cf_source=\`echo \$cf_target |sed -e 's%^.*/\([[^/]][[^/]]*/[[^/]][[^/]]*$\)%\1%'\`
- test -n "$cf_so_strip" && cf_source=\`echo \$cf_source |sed -e 's%\.$cf_so_strip\$%%'\`
- cf_target=\`basename \$cf_target\`
+ cd "\$cf_subdir\${section}" && (
+ cf_source=\`echo "\$cf_target" |sed -e 's%^.*/\\([[^/]][[^/]]*/[[^/]][[^/]]*$\\)%\\1%'\`
+ test -n "$cf_so_strip" && cf_source=\`echo "\$cf_source" |sed -e 's%\\.$cf_so_strip\$%%'\`
+ cf_target=\`basename "\$cf_target"\`
for cf_alias in \$aliases
do
- if test \$section = 1 ; then
- cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+ if test "\$section" = 1 ; then
+ cf_alias=\`echo "\$cf_alias" |sed "\${transform}"\`
fi
if test "$MANPAGE_SYMLINKS" = yes ; then
- if test -f \$cf_alias\${suffix} ; then
- if ( cmp -s \$cf_target \$cf_alias\${suffix} )
+ if test -f "\$cf_alias\${suffix}" ; then
+ if ( cmp -s "\$cf_target" "\$cf_alias\${suffix}" )
then
continue
fi
fi
- echo .. \$verb alias \$cf_alias\${suffix}
+ echo ".. \$verb alias \$cf_alias\${suffix}"
CF_EOF
case "x$LN_S" in
(*-f)
cat >>$cf_edit_man <<CF_EOF
- $LN_S \$cf_target \$cf_alias\${suffix}
+ $LN_S "\$cf_target" "\$cf_alias\${suffix}"
CF_EOF
;;
(*)
cat >>$cf_edit_man <<CF_EOF
- rm -f \$cf_alias\${suffix}
- $LN_S \$cf_target \$cf_alias\${suffix}
+ rm -f "\$cf_alias\${suffix}"
+ $LN_S "\$cf_target" "\$cf_alias\${suffix}"
CF_EOF
;;
esac
@@ -5429,35 +5919,35 @@ CF_EOF
if test -n "$cf_compress" ; then
cat >>$cf_edit_man <<CF_EOF
if test -n "$cf_so_strip" ; then
- $cf_compress -f \$TMP
+ "$cf_compress" -f \$TMP
mv \$TMP.$cf_so_strip \$TMP
fi
CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
- echo .. \$verb alias \$cf_alias\${suffix}
- rm -f \$cf_alias\${suffix}
- \$INSTALL_DATA \$TMP \$cf_alias\${suffix}
+ echo ".. \$verb alias \$cf_alias\${suffix}"
+ rm -f "\$cf_alias\${suffix}"
+ \$INSTALL_DATA \$TMP "\$cf_alias\${suffix}"
fi
done
)
)
- elif test \$verb = removing ; then
- test -f \$cf_target && (
- echo \$verb \$cf_target
- rm -f \$cf_target
+ elif test "\$verb" = removing ; then
+ test -f "\$cf_target" && (
+ echo "\$verb \$cf_target"
+ rm -f "\$cf_target"
)
- test -d \$cf_subdir\${section} &&
+ test -d "\$cf_subdir\${section}" &&
test -n "\$aliases" && (
- cd \$cf_subdir\${section} && (
+ cd "\$cf_subdir\${section}" && (
for cf_alias in \$aliases
do
- if test \$section = 1 ; then
- cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+ if test "\$section" = 1 ; then
+ cf_alias=\`echo "\$cf_alias" |sed "\${transform}"\`
fi
- echo .. \$verb alias \$cf_alias\${suffix}
- rm -f \$cf_alias\${suffix}
+ echo ".. \$verb alias \$cf_alias\${suffix}"
+ rm -f "\$cf_alias\${suffix}"
done
)
)
@@ -5469,19 +5959,30 @@ cat >>$cf_edit_man <<CF_EOF
esac
done
-if test $cf_inboth = yes ; then
-if test \$form != format ; then
- $SHELL \[$]0 format \$verb \$mandir \$srcdir \[$]*
+if test "$cf_inboth" = yes ; then
+if test "\$form" != format ; then
+ $SHELL "\[$]0" format "\$verb" "\$mandir" "\$srcdir" "\[$]@"
fi
fi
exit 0
CF_EOF
-chmod 755 $cf_edit_man
+chmod 755 "$cf_edit_man"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MATH_LIB version: 9 updated: 2017/01/21 11:06:25
+dnl CF_MAP_LIB_BASENAME version: 2 updated: 2021/01/02 17:09:14
+dnl -------------------
+dnl Convert a default-libname to the actual one used via CF_WITH_LIB_BASENAME.
+dnl
+dnl $1 = variable to set
+dnl $2 = default-libname
+AC_DEFUN([CF_MAP_LIB_BASENAME],[
+CF_UPPER(cf_map_lib_basename,$2)
+eval $1="\$${cf_map_lib_basename}_NAME"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_MATH_LIB version: 10 updated: 2020/12/31 18:40:20
dnl -----------
dnl Checks for libraries. At least one UNIX system, Apple Macintosh
dnl Rhapsody 5.5, does not have -lm. We cannot use the simpler
@@ -5495,7 +5996,7 @@ AC_CACHE_CHECK(if -lm needed for math functions,
#include <stdlib.h>
#include <math.h>
],
- [double x = rand(); printf("result = %g\n", ]ifelse([$2],,sin(x),$2)[)],
+ [double x = rand(); printf("result = %g\\n", ]ifelse([$2],,sin(x),$2)[)],
[cf_cv_need_libm=no],
[cf_cv_need_libm=yes])])
if test "$cf_cv_need_libm" = yes
@@ -5506,7 +6007,7 @@ ifelse($1,,[
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_MIXEDCASE_FILENAMES version: 7 updated: 2015/04/12 15:39:00
+dnl CF_MIXEDCASE_FILENAMES version: 9 updated: 2021/01/01 16:53:59
dnl ----------------------
dnl Check if the file-system supports mixed-case filenames. If we're able to
dnl create a lowercase name and see it as uppercase, it doesn't support that.
@@ -5514,8 +6015,8 @@ AC_DEFUN([CF_MIXEDCASE_FILENAMES],
[
AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
if test "$cross_compiling" = yes ; then
- case $target_alias in
- (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*)
+ case "$target_alias" in
+ (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*|darwin*)
cf_cv_mixedcase=no
;;
(*)
@@ -5536,7 +6037,7 @@ fi
test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if filesystem supports mixed-case filenames.])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MKSTEMP version: 10 updated: 2017/01/21 11:12:16
+dnl CF_MKSTEMP version: 11 updated: 2021/01/01 13:31:04
dnl ----------
dnl Check for a working mkstemp. This creates two files, checks that they are
dnl successfully created and distinct (AmigaOS apparently fails on the last).
@@ -5545,7 +6046,7 @@ AC_CHECK_HEADERS( \
unistd.h \
)
AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[
-rm -rf conftest*
+rm -rf ./conftest*
AC_TRY_RUN([
#include <sys/types.h>
#ifdef HAVE_UNISTD_H
@@ -5602,13 +6103,13 @@ AC_DEFUN([CF_MSG_LOG],[
echo "${as_me:-configure}:__oline__: testing $* ..." 1>&AC_FD_CC
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_ABI_6 version: 3 updated: 2015/06/06 16:10:11
+dnl CF_NCURSES_ABI_6 version: 4 updated: 2021/01/01 13:31:04
dnl ----------------
dnl Set ncurses' ABI to 6 unless overridden by explicit configure option, and
dnl warn about this.
AC_DEFUN([CF_NCURSES_ABI_6],[
if test "${with_abi_version+set}" != set; then
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=6.0
cf_cv_abi_version=6
@@ -5618,7 +6119,7 @@ if test "${with_abi_version+set}" != set; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_WITH_ABI_VERSION version: 2 updated: 2015/12/19 17:51:52
+dnl CF_NCURSES_WITH_ABI_VERSION version: 3 updated: 2021/01/01 13:31:04
dnl ---------------------------
dnl Allow ncurses's ABI to be overridden. Generally this happens when a
dnl packager has incremented the ABI past that used in the original package,
@@ -5630,7 +6131,7 @@ AC_DEFUN([CF_NCURSES_WITH_ABI_VERSION],[
CF_WITH_ABI_VERSION($1)
if test "x$cf_cv_abi_version" != "x$with_abi_version"
then
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=$with_abi_version.0
;;
@@ -5638,23 +6139,33 @@ then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NO_LEAKS_OPTION version: 6 updated: 2015/04/12 15:39:00
+dnl CF_NO_LEAKS_OPTION version: 9 updated: 2021/06/13 19:45:41
dnl ------------------
dnl see CF_WITH_NO_LEAKS
+dnl
+dnl $1 = option/name
+dnl $2 = help-text
+dnl $3 = symbol to define if the option is set
+dnl $4 = additional actions to take if the option is set
AC_DEFUN([CF_NO_LEAKS_OPTION],[
AC_MSG_CHECKING(if you want to use $1 for testing)
AC_ARG_WITH($1,
[$2],
- [AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[
+ [case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_$1=yes
+ AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[
$4
])
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_$1=yes],
+ ;;
+ esac],
[with_$1=])
AC_MSG_RESULT(${with_$1:-no})
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -5686,7 +6197,7 @@ else
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_OBJ_SUBDIR version: 7 updated: 2015/04/17 21:13:04
+dnl CF_OBJ_SUBDIR version: 8 updated: 2021/01/01 13:31:04
dnl -------------
dnl Compute the object-directory name from the given model name
AC_DEFUN([CF_OBJ_SUBDIR],
@@ -5697,7 +6208,7 @@ AC_DEFUN([CF_OBJ_SUBDIR],
(debug) $2='obj_g' ;;
(profile) $2='obj_p' ;;
(shared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin|msys)
$2='objects' ;;
(*)
@@ -5706,14 +6217,14 @@ AC_DEFUN([CF_OBJ_SUBDIR],
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PATHSEP version: 7 updated: 2015/04/12 15:39:00
+dnl CF_PATHSEP version: 8 updated: 2021/01/01 13:31:04
dnl ----------
dnl Provide a value for the $PATH and similar separator (or amend the value
dnl as provided in autoconf 2.5x).
AC_DEFUN([CF_PATHSEP],
[
AC_MSG_CHECKING(for PATH separator)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(os2*) PATH_SEPARATOR=';' ;;
(*) ${PATH_SEPARATOR:=':'} ;;
esac
@@ -5722,7 +6233,7 @@ ifelse([$1],,,[$1=$PATH_SEPARATOR])
AC_MSG_RESULT($PATH_SEPARATOR)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PATH_PROG version: 10 updated: 2019/06/30 19:44:43
+dnl CF_PATH_PROG version: 12 updated: 2021/01/02 09:31:20
dnl ------------
dnl Check for a given program, defining corresponding symbol.
dnl $1 = environment variable, which is suffixed by "_PATH" in the #define.
@@ -5737,7 +6248,7 @@ dnl FIXME: we should allow this to be overridden by environment variables
dnl
AC_DEFUN([CF_PATH_PROG],[
AC_REQUIRE([CF_PATHSEP])
-test -z "[$]$1" && $1=$2
+test -z "[$]$1" && $1="$2"
AC_PATH_PROGS($1,[$]$1 $2 ifelse($3,,,$3),[$]$1, ifelse($4,,,$4))
cf_path_prog=""
@@ -5750,7 +6261,7 @@ do
CF_PATH_SYNTAX(cf_temp,break)
cf_path_prog="$cf_temp"
else
- cf_path_prog="`basename $cf_temp`"
+ cf_path_prog="`basename "$cf_temp"`"
fi
elif test -z "$cf_path_args" ; then
cf_path_args="$cf_temp"
@@ -5767,7 +6278,7 @@ if test -n "$cf_path_prog" ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PATH_SYNTAX version: 16 updated: 2015/04/18 08:56:57
+dnl CF_PATH_SYNTAX version: 18 updated: 2020/12/31 18:40:20
dnl --------------
dnl Check the argument to see that it looks like a pathname. Rewrite it if it
dnl begins with one of the prefix/exec_prefix variables, and then again if the
@@ -5787,16 +6298,16 @@ case ".[$]$1" in
;;
(.[[a-zA-Z]]:[[\\/]]*) # OS/2 EMX
;;
-(.\[$]{*prefix}*|.\[$]{*dir}*)
+(.\[$]\{*prefix\}*|.\[$]\{*dir\}*)
eval $1="[$]$1"
case ".[$]$1" in
(.NONE/*)
- $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+ $1=`echo "[$]$1" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+ $1=`echo "[$]$1" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
ifelse([$2],,[AC_MSG_ERROR([expected a pathname, not \"[$]$1\"])],$2)
@@ -5804,9 +6315,11 @@ case ".[$]$1" in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PKG_CONFIG version: 10 updated: 2015/04/26 18:06:58
+dnl CF_PKG_CONFIG version: 12 updated: 2021/10/10 20:18:09
dnl -------------
dnl Check for the package-config program, unless disabled by command-line.
+dnl
+dnl Sets $PKG_CONFIG to the pathname of the pkg-config program.
AC_DEFUN([CF_PKG_CONFIG],
[
AC_MSG_CHECKING(if you want to use pkg-config)
@@ -5816,7 +6329,7 @@ AC_ARG_WITH(pkg-config,
[cf_pkg_config=yes])
AC_MSG_RESULT($cf_pkg_config)
-case $cf_pkg_config in
+case "$cf_pkg_config" in
(no)
PKG_CONFIG=none
;;
@@ -5979,7 +6492,7 @@ make an error
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PRG_RULES version: 1 updated: 2006/06/03 11:45:08
+dnl CF_PRG_RULES version: 2 updated: 2021/01/01 13:31:04
dnl ------------
dnl Append definitions and rules for the given programs to the subdirectory
dnl Makefiles, and the recursion rule for the top-level Makefile.
@@ -5994,10 +6507,10 @@ AC_DEFUN([CF_PRG_RULES],
[
for cf_dir in $2
do
- if test ! -d $srcdir/$cf_dir; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
- elif test -f $srcdir/$cf_dir/programs; then
- $AWK -f $1 $srcdir/$cf_dir/programs >>$cf_dir/Makefile
+ elif test -f "$srcdir/$cf_dir/programs" ; then
+ $AWK -f $1 "$srcdir/$cf_dir/programs" >>$cf_dir/Makefile
fi
done
@@ -6036,7 +6549,7 @@ CF_ACVERSION_CHECK(2.52,
CF_CC_ENV_FLAGS
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_CC_C_O version: 5 updated: 2017/01/21 11:06:25
+dnl CF_PROG_CC_C_O version: 6 updated: 2021/01/01 13:31:04
dnl --------------
dnl Analogous to AC_PROG_CC_C_O, but more useful: tests only $CC, ensures that
dnl the output file can be renamed, and allows for a shell variable that can
@@ -6068,31 +6581,16 @@ then
else
eval cf_cv_prog_$1_c_o=no
fi
-rm -rf conftest*
+rm -rf ./conftest*
])dnl
-if test $cf_cv_prog_$1_c_o = yes; then
+if test "$cf_cv_prog_$1_c_o" = yes; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_EGREP version: 2 updated: 2015/04/18 08:56:57
-dnl -------------
-dnl AC_PROG_EGREP was introduced in autoconf 2.53.
-dnl This macro adds a check to ensure the script found something.
-AC_DEFUN([CF_PROG_EGREP],
-[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep],
- [if echo a | (grep -E '(a|b)') >/dev/null 2>&1
- then ac_cv_prog_egrep='grep -E'
- else ac_cv_prog_egrep='egrep'
- fi])
- EGREP=$ac_cv_prog_egrep
- AC_SUBST([EGREP])
- test -z "$EGREP" && AC_MSG_ERROR(No egrep program found)
-])dnl
-dnl ---------------------------------------------------------------------------
-dnl CF_PROG_GNAT version: 10 updated: 2019/12/31 08:53:54
+dnl CF_PROG_GNAT version: 12 updated: 2021/01/02 17:09:14
dnl ------------
dnl Check for gnat/gnatmake/etc, ensure that the toolset is complete.
AC_DEFUN([CF_PROG_GNAT],[
@@ -6103,14 +6601,14 @@ do
unset ac_cv_path_cf_TEMP_gnat
unset cf_TEMP_gnat
AC_PATH_PROG(cf_TEMP_gnat,$cf_prog_gnat,no)
- eval cf_cv_PATH_$cf_upper_prog_gnat=[$]ac_cv_path_cf_TEMP_gnat
+ eval "cf_cv_PATH_$cf_upper_prog_gnat=[$]ac_cv_path_cf_TEMP_gnat"
if test "x$cf_TEMP_gnat" != xno; then
unset cf_cv_gnat_version
unset cf_TEMP_gnat
CF_GNAT_VERSION(cf_TEMP_gnat,$cf_prog_gnat)
fi
- eval cf_cv_VERSION_$cf_upper_prog_gnat=[$]cf_TEMP_gnat
+ eval "cf_cv_VERSION_$cf_upper_prog_gnat=[$]cf_TEMP_gnat"
unset cf_TEMP_gnat
unset cf_cv_gnat_version
@@ -6126,7 +6624,7 @@ else
# gprconfig is newer than gnatmake; we can continue...
cf_ada_config="##"
else
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src
then
cf_ada_config=""
@@ -6134,12 +6632,12 @@ else
for cf_gprconfig in Ada C
do
AC_MSG_CHECKING(for gprconfig name for $cf_gprconfig)
- if test $cf_gprconfig = C
+ if test "$cf_gprconfig" = C
then
for cf_gprconfig_param in \
- $cf_gprconfig,,,,GNATGCC \
- $cf_gprconfig,,,,GCC \
- $cf_gprconfig
+ "$cf_gprconfig,,,,GNATGCC" \
+ "$cf_gprconfig,,,,GCC" \
+ "$cf_gprconfig"
do
cf_gprconfig_value=`echo s| gprconfig --config=$cf_gprconfig_param 2>&AC_FD_CC | ${AWK:-awk} '/^\*/{print [$]3;}' | head -n 1`
test -n "$cf_gprconfig_value" && break
@@ -6150,7 +6648,7 @@ else
fi
if test -n "$cf_gprconfig_value"
then
- eval cf_ada_config_[$]cf_gprconfig=[$]cf_gprconfig_value
+ eval "cf_ada_config_[$]cf_gprconfig=[$]cf_gprconfig_value"
AC_MSG_RESULT($cf_gprconfig_value)
else
AC_MSG_RESULT(missing)
@@ -6159,7 +6657,7 @@ else
fi
done
cd ..
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
fi
fi
if test "x$cf_ada_config" != "x#"
@@ -6197,7 +6695,7 @@ AC_SUBST(cf_ada_config_Ada)
AC_SUBST(cf_ada_config_C)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_INSTALL version: 7 updated: 2015/04/18 08:56:57
+dnl CF_PROG_INSTALL version: 10 updated: 2021/01/04 19:33:05
dnl ---------------
dnl Force $INSTALL to be an absolute-path. Otherwise, edit_man.sh and the
dnl misc/tabset install won't work properly. Usually this happens only when
@@ -6210,7 +6708,7 @@ case $INSTALL in
(*)
CF_DIRNAME(cf_dir,$INSTALL)
test -z "$cf_dir" && cf_dir=.
- INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
+ INSTALL="`cd \"$cf_dir\" && pwd`"/"`echo "$INSTALL" | sed -e 's%^.*/%%'`"
;;
esac
])dnl
@@ -6270,7 +6768,7 @@ AC_MSG_RESULT($cf_prog_ln_sf)
test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_REGEX version: 12 updated: 2015/04/18 08:56:57
+dnl CF_REGEX version: 18 updated: 2021/01/01 16:53:59
dnl --------
dnl Attempt to determine if we've got one of the flavors of regular-expression
dnl code that we can support.
@@ -6278,24 +6776,36 @@ AC_DEFUN([CF_REGEX],
[
cf_regex_func=no
-
-cf_regex_libs="regex re"
-case $host_os in
+cf_regex_libs=
+case "$host_os" in
(mingw*)
- cf_regex_libs="gnurx $cf_regex_libs"
+ # -lsystre -ltre -lintl -liconv
+ AC_CHECK_LIB(systre,regcomp,[
+ AC_CHECK_LIB(iconv,libiconv_open,[CF_ADD_LIB(iconv)])
+ AC_CHECK_LIB(intl,libintl_gettext,[CF_ADD_LIB(intl)])
+ AC_CHECK_LIB(tre,tre_regcomp,[CF_ADD_LIB(tre)])
+ CF_ADD_LIB(systre)
+ cf_regex_func=regcomp
+ ],[
+ AC_CHECK_LIB(gnurx,regcomp,[
+ CF_ADD_LIB(gnurx)
+ cf_regex_func=regcomp])
+ ])
+ ;;
+(*)
+ cf_regex_libs="regex re"
+ AC_CHECK_FUNC(regcomp,[cf_regex_func=regcomp],[
+ for cf_regex_lib in $cf_regex_libs
+ do
+ AC_CHECK_LIB($cf_regex_lib,regcomp,[
+ CF_ADD_LIB($cf_regex_lib)
+ cf_regex_func=regcomp
+ break])
+ done
+ ])
;;
esac
-AC_CHECK_FUNC(regcomp,[cf_regex_func=regcomp],[
- for cf_regex_lib in $cf_regex_libs
- do
- AC_CHECK_LIB($cf_regex_lib,regcomp,[
- CF_ADD_LIB($cf_regex_lib)
- cf_regex_func=regcomp
- break])
- done
-])
-
if test "$cf_regex_func" = no ; then
AC_CHECK_FUNC(compile,[cf_regex_func=compile],[
AC_CHECK_LIB(gen,compile,[
@@ -6310,13 +6820,15 @@ fi
AC_CACHE_CHECK(for regular-expression headers,cf_cv_regex_hdrs,[
cf_cv_regex_hdrs=no
-case $cf_regex_func in
+case "$cf_regex_func" in
(compile)
for cf_regex_hdr in regexp.h regexpr.h
do
AC_TRY_LINK([#include <$cf_regex_hdr>],[
char *p = compile("", "", "", 0);
int x = step("", "");
+ (void)p;
+ (void)x;
],[
cf_cv_regex_hdrs=$cf_regex_hdr
break
@@ -6328,9 +6840,11 @@ case $cf_regex_func in
do
AC_TRY_LINK([#include <sys/types.h>
#include <$cf_regex_hdr>],[
- regex_t *p;
+ regex_t *p = 0;
int x = regcomp(p, "", 0);
int y = regexec(p, "", 0, 0, 0);
+ (void)x;
+ (void)y;
regfree(p);
],[
cf_cv_regex_hdrs=$cf_regex_hdr
@@ -6342,7 +6856,7 @@ esac
])
-case $cf_cv_regex_hdrs in
+case "$cf_cv_regex_hdrs" in
(no) AC_MSG_WARN(no regular expression header found) ;;
(regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS,1,[Define to 1 to include regex.h for regular expressions]) ;;
(regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS,1,[Define to 1 to include regexp.h for regular expressions]) ;;
@@ -6350,6 +6864,24 @@ case $cf_cv_regex_hdrs in
esac
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_REMOVE_CFLAGS version: 3 updated: 2021/09/05 17:25:40
+dnl ----------------
+dnl Remove a given option from CFLAGS/CPPFLAGS
+dnl $1 = option to remove
+dnl $2 = variable to update
+dnl $3 = nonempty to allow verbose message
+define([CF_REMOVE_CFLAGS],
+[
+cf_tmp_cflag=`echo "x$1" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x[$]$2" | sed -e 's/^.//' -e 's/[[ ]][[ ]]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[[^ ]][[^ ]]*\\)\?%%" -e 's/^[[ ]]*//' -e 's%[[ ]][[ ]]*-D% -D%g' -e 's%[[ ]][[ ]]*-I% -I%g'`
+ test "[$]$2" != "$cf_old_cflag" || break
+ ifelse([$3],,,[CF_VERBOSE(removing old option $1 from $2)])
+ $2="$cf_old_cflag"
+done
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_REMOVE_DEFINE version: 3 updated: 2010/01/09 11:05:50
dnl ----------------
dnl Remove all -U and -D options that refer to the given symbol from a list
@@ -6391,11 +6923,12 @@ CFLAGS="$cf_save_CFLAGS_$1"
CPPFLAGS="$cf_save_CPPFLAGS_$1"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_RPATH_HACK version: 11 updated: 2013/09/01 13:02:00
+dnl CF_RPATH_HACK version: 13 updated: 2021/01/03 18:30:50
dnl -------------
AC_DEFUN([CF_RPATH_HACK],
-[
-AC_REQUIRE([CF_LD_RPATH_OPT])
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+AC_REQUIRE([CF_LD_RPATH_OPT])dnl
+
AC_MSG_CHECKING(for updated LDFLAGS)
if test -n "$LD_RPATH_OPT" ; then
AC_MSG_RESULT(maybe)
@@ -6408,8 +6941,8 @@ if test -n "$LD_RPATH_OPT" ; then
AC_TRY_LINK([#include <stdio.h>],
[printf("Hello");],
- [cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort | uniq`])
+ [cf_rpath_oops=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
+ cf_rpath_list=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort | uniq`])
# If we passed the link-test, but get a "not found" on a given library,
# this could be due to inept reconfiguration of gcc to make it only
@@ -6425,7 +6958,7 @@ AC_TRY_LINK([#include <stdio.h>],
/usr/pkg \
/opt/sfw
do
- if test -f $cf_rpath_dir/lib/$cf_rpath_src
+ if test -f "$cf_rpath_dir/lib/$cf_rpath_src"
then
CF_VERBOSE(...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src)
LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
@@ -6448,7 +6981,7 @@ fi
AC_SUBST(EXTRA_LDFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_RPATH_HACK_2 version: 7 updated: 2015/04/12 15:39:00
+dnl CF_RPATH_HACK_2 version: 8 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Do one set of substitutions for CF_RPATH_HACK, adding an rpath option to
dnl EXTRA_LDFLAGS for each -L option found.
@@ -6464,7 +6997,7 @@ CF_VERBOSE(...checking $1 [$]$1)
cf_rpath_dst=
for cf_rpath_src in [$]$1
do
- case $cf_rpath_src in
+ case "$cf_rpath_src" in
(-L*)
# check if this refers to a directory which we will ignore
@@ -6533,7 +7066,7 @@ do
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SHARED_OPTS version: 93 updated: 2018/08/18 16:36:35
+dnl CF_SHARED_OPTS version: 107 updated: 2021/09/04 06:47:34
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
@@ -6557,7 +7090,7 @@ dnl The variable 'cf_cv_shlib_version_infix' controls whether shared library
dnl version numbers are infix (ex: libncurses.<ver>.dylib) or postfix
dnl (ex: libncurses.so.<ver>).
dnl
-dnl Some loaders leave 'so_locations' lying around. It's nice to clean up.
+dnl Some loaders leave 'so_locations' lying around. It is nice to clean up.
AC_DEFUN([CF_SHARED_OPTS],
[
AC_REQUIRE([CF_LD_RPATH_OPT])
@@ -6583,7 +7116,7 @@ AC_DEFUN([CF_SHARED_OPTS],
AC_ARG_WITH(shlib-version,
[ --with-shlib-version=X Specify rel or abi version for shared libs],
[test -z "$withval" && withval=auto
- case $withval in
+ case "$withval" in
(yes)
cf_cv_shlib_version=auto
;;
@@ -6609,7 +7142,7 @@ AC_DEFUN([CF_SHARED_OPTS],
then
cf_try_fPIC=yes
else
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(*linux*) # e.g., PGI compiler
cf_try_fPIC=yes
;;
@@ -6631,7 +7164,7 @@ AC_DEFUN([CF_SHARED_OPTS],
cf_cv_shlib_version_infix=no
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix4.[3-9]*|aix[[5-7]]*)
if test "$GCC" = yes; then
CC_SHARED_OPTS='-Wl,-brtl'
@@ -6700,10 +7233,14 @@ CF_EOF
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
AC_TRY_LINK(, [int i;], cf_cv_ldflags_search_paths_first=yes, cf_cv_ldflags_search_paths_first=no)
LDFLAGS=$cf_save_LDFLAGS])
- if test $cf_cv_ldflags_search_paths_first = yes; then
+ if test "$cf_cv_ldflags_search_paths_first" = yes; then
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
fi
;;
+ (haiku*)
+ CF_SHARED_SONAME
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
+ ;;
(hpux[[7-8]]*)
# HP-UX 8.07 ld lacks "+b" option used for libdir search-list
if test "$GCC" != yes; then
@@ -6759,6 +7296,112 @@ CF_EOF
CF_SHARED_SONAME
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
;;
+ (mingw*msvc*)
+ cf_cv_shlib_version=msvcdll
+ cf_cv_shlib_version_infix=msvcdll
+ shlibdir=$bindir
+ MAKE_DLLS=
+ if test "$DFT_LWR_MODEL" = "shared" ; then
+ LOCAL_LDFLAGS="-link -dll"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ EXTRA_LDFLAGS="-link -dll $EXTRA_LDFLAGS"
+ fi
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh [$]@ ${LD} [$]{CFLAGS}'
+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.lib"
+ cat >mk_shared_lib.sh <<-CF_EOF
+ #!$SHELL
+ SHARED_LIB=\[$]1
+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/[[0-9]]*\.dll[$]/.dll.lib/'\`
+ shift
+ my_ld=\[$]1
+ shift
+ cat <<-EOF
+ Linking shared library
+ ** SHARED LIB \$SHARED_LIB
+ ** IMPORT_LIB \$IMPORT_LIB
+EOF
+ args=\$(echo \[$]* | sed -E "s#-l(\w*)#\1.dll.lib#g" | sed -E "s#-L(\w*)#-LIBPATH:\1#g")
+ exec \$my_ld -DLL -IMPLIB:"\${IMPORT_LIB}" -OUT:"\${SHARED_LIB}" ${LDFLAGS} \$args
+ mv "\${IMPORT_LIB}" "\${IMPORT_LIB}"
+CF_EOF
+ chmod +x mk_shared_lib.sh
+ cat >mk_prog.sh <<-CF_EOF
+ #!$SHELL
+ shift
+ # Ignore first argument (compiler) and use LD (link.exe) unconditionally
+ LD="[$]LD"
+ clopts=()
+ ldopts=("/subsystem:console")
+ libs=()
+ isdll=0
+ while test \[$]# -gt 0; do
+ case "\[$]1" in
+ -link)
+ # ignore -link argument
+ ;;
+ -M[[TD]] | -M[[TD]]d)
+ # ignore runtime-library option
+ ;;
+ -dll)
+ isdll=1
+ ;;
+ -W* | -w*)
+ # ignore warnings
+ ;;
+ -D*)
+ clopts+=("\[$]1")
+ ;;
+ -I*)
+ clopts+=("\[$]1")
+ ;;
+ -l*)
+ libs+=("\`echo \"\[$]1\" | sed \"s/^-l//\"\`")
+ ;;
+ -L*)
+ ldopts+=("\`echo \"\[$]1\" | sed \"s/^-L/-LIBPATH:/\"\`")
+ ;;
+ *.obj | *.o)
+ ldopts+=("\[$]1")
+ ;;
+ -Wl,*)
+ for linkarg in \`echo '\[$]1' | sed -e 's/-Wl,//' -e 's/,/ /'\`; do
+ ldopts+=("\[$]{linkarg}")
+ done
+ ;;
+ *.lib)
+ ldopts+=("\[$]1")
+ ;;
+ -o)
+ shift
+ ldopts+=("-out:\[$]1")
+ ;;
+ *)
+ clopts+=("\[$]1")
+ ldopts+=("\[$]1")
+ ;;
+ esac
+ shift
+ done
+ if [[ "\$isdll" -ne 0 ]]; then
+ for lib in \[$]{libs[[*]]}; do
+ ldopts+=("\[$]lib.dll.lib")
+ done
+ else
+ for lib in \[$]{libs[[*]]}; do
+ ldopts+=("\[$]lib.lib")
+ done
+ fi
+ cat <<-EOF
+ Creating program
+ ** ld options: "\[$]{ldopts[[@]]}"
+EOF
+ exec \[$]LD \[$]{ldopts[[@]]}
+CF_EOF
+ chmod +x mk_prog.sh
+ LINK_PROGS="$SHELL ${rel_builddir}/mk_prog.sh"
+ LINK_TESTS="$SHELL ${rel_builddir}/mk_prog.sh"
+ ;;
(mingw*)
cf_cv_shlib_version=mingw
cf_cv_shlib_version_infix=mingw
@@ -6798,6 +7441,14 @@ CF_EOF
CF_SHARED_SONAME
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-Bshareable,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
;;
+ (nskJ*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Weld=-export_all -o $[@]'
+ ;;
+ (nskL*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Wxld=-export_all -o $[@]'
+ ;;
(nto-qnx*|openbsd*|freebsd[[12]].*)
CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
MK_SHARED_LIB='${LD} ${LDFLAGS} -Bshareable -o $[@]'
@@ -6829,7 +7480,7 @@ CF_EOF
CF_SHARED_SONAME
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]'
else
- MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -Wl,-shared -Wl,-Bshareable -o $[@]'
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -o $[@]'
fi
;;
(osf*|mls+*)
@@ -6837,7 +7488,7 @@ CF_EOF
# tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't
# link with shared libs).
MK_SHARED_LIB='${LD} ${LDFLAGS} -set_version ${REL_VERSION}:${ABI_VERSION} -expect_unresolved "*" -shared -soname `basename $[@]`'
- case $host_os in
+ case "$host_os" in
(osf4*)
MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
;;
@@ -6887,7 +7538,7 @@ CF_EOF
for cf_shared_opts in -xcode=pic32 -xcode=pic13 -KPIC -Kpic -O
do
CFLAGS="$cf_shared_opts $cf_save_CFLAGS"
- AC_TRY_COMPILE([#include <stdio.h>],[printf("Hello\n");],[break])
+ AC_TRY_COMPILE([#include <stdio.h>],[printf("Hello\\n");],[break])
done
CFLAGS="$cf_save_CFLAGS"
CC_SHARED_OPTS=$cf_shared_opts
@@ -6930,7 +7581,7 @@ cat > conftest.$ac_ext <<EOF
#include <stdio.h>
int main(int argc, char *argv[[]])
{
- printf("hello\n");
+ printf("hello\\n");
return (argv[[argc-1]] == 0) ;
}
EOF
@@ -6954,7 +7605,7 @@ EOF
test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}"
test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}"
- test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
+ test "$cf_cv_rm_so_locs" = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
CF_VERBOSE(CC_SHARED_OPTS: $CC_SHARED_OPTS)
CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB)
@@ -6994,7 +7645,7 @@ define([CF_SHARED_SONAME],
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_SIGWINCH version: 2 updated: 2019/03/23 19:54:44
+dnl CF_SIGWINCH version: 6 updated: 2021/01/01 13:31:04
dnl -----------
dnl Use this macro after CF_XOPEN_SOURCE, but do not require it (not all
dnl programs need this test).
@@ -7009,7 +7660,7 @@ AC_CACHE_CHECK(if SIGWINCH is defined,cf_cv_define_sigwinch,[
AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/signal.h>
-],[int x = SIGWINCH],
+],[int x = SIGWINCH; (void)x],
[cf_cv_define_sigwinch=yes],
[AC_TRY_COMPILE([
#undef _XOPEN_SOURCE
@@ -7017,7 +7668,7 @@ AC_CACHE_CHECK(if SIGWINCH is defined,cf_cv_define_sigwinch,[
#undef _POSIX_C_SOURCE
#include <sys/types.h>
#include <sys/signal.h>
-],[int x = SIGWINCH],
+],[int x = SIGWINCH; (void)x],
[cf_cv_define_sigwinch=maybe],
[cf_cv_define_sigwinch=no])
])
@@ -7027,7 +7678,7 @@ if test "$cf_cv_define_sigwinch" = maybe ; then
AC_CACHE_CHECK(for actual SIGWINCH definition,cf_cv_fixup_sigwinch,[
cf_cv_fixup_sigwinch=unknown
cf_sigwinch=32
-while test $cf_sigwinch != 1
+while test "$cf_sigwinch" != 1
do
AC_TRY_COMPILE([
#undef _XOPEN_SOURCE
@@ -7039,11 +7690,11 @@ do
#if SIGWINCH != $cf_sigwinch
make an error
#endif
-int x = SIGWINCH],
+int x = SIGWINCH; (void)x],
[cf_cv_fixup_sigwinch=$cf_sigwinch
break])
-cf_sigwinch=`expr $cf_sigwinch - 1`
+cf_sigwinch="`expr "$cf_sigwinch" - 1`"
done
])
@@ -7053,7 +7704,7 @@ done
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SIG_ATOMIC_T version: 4 updated: 2020/01/18 12:30:44
+dnl CF_SIG_ATOMIC_T version: 5 updated: 2020/03/10 18:53:47
dnl ---------------
dnl signal handler, but there are some gcc dependencies in that recommendation.
dnl Try anyway.
@@ -7075,6 +7726,7 @@ extern $cf_type x;
$cf_type x;
static void handler(int sig)
{
+ (void)sig;
x = 5;
}],
[signal(SIGINT, handler);
@@ -7088,7 +7740,7 @@ AC_MSG_RESULT($cf_cv_sig_atomic_t)
test "$cf_cv_sig_atomic_t" != no && AC_DEFINE_UNQUOTED(SIG_ATOMIC_T, $cf_cv_sig_atomic_t,[Define to signal global datatype])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SIZECHANGE version: 14 updated: 2018/06/20 20:23:13
+dnl CF_SIZECHANGE version: 18 updated: 2021/09/04 06:35:04
dnl -------------
dnl Check for definitions & structures needed for window size-changing
dnl
@@ -7119,7 +7771,7 @@ do
#ifdef NEED_PTEM_H
/* This is a workaround for SCO: they neglected to define struct winsize in
- * termios.h -- it's only in termio.h and ptem.h
+ * termios.h -- it is only in termio.h and ptem.h
*/
#include <sys/stream.h>
#include <sys/ptem.h>
@@ -7131,13 +7783,17 @@ do
],[
#ifdef TIOCGSIZE
struct ttysize win; /* SunOS 3.0... */
- int y = win.ts_lines;
- int x = win.ts_cols;
+ int y = win.ts_lines = 2;
+ int x = win.ts_cols = 1;
+ (void)y;
+ (void)x;
#else
#ifdef TIOCGWINSZ
struct winsize win; /* everything else */
- int y = win.ws_row;
- int x = win.ws_col;
+ int y = win.ws_row = 2;
+ int x = win.ws_col = 1;
+ (void)y;
+ (void)x;
#else
no TIOCGSIZE or TIOCGWINSZ
#endif /* TIOCGWINSZ */
@@ -7156,7 +7812,7 @@ done
])
if test "$cf_cv_sizechange" != no ; then
AC_DEFINE(HAVE_SIZECHANGE,1,[Define to 1 if sizechange declarations are provided])
- case $cf_cv_sizechange in
+ case "$cf_cv_sizechange" in
(NEED*)
AC_DEFINE_UNQUOTED($cf_cv_sizechange )
;;
@@ -7164,7 +7820,7 @@ if test "$cf_cv_sizechange" != no ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SRC_MODULES version: 31 updated: 2019/09/21 18:08:42
+dnl CF_SRC_MODULES version: 33 updated: 2021/01/01 13:31:04
dnl --------------
dnl For each parameter, test if the source-directory exists, and if it contains
dnl a 'modules' file. If so, add to the list $cf_cv_src_modules which we'll
@@ -7192,11 +7848,11 @@ PC_MODULES_TO_MAKE="ncurses${USE_ARG_SUFFIX}"
cf_cv_src_modules=
for cf_dir in $1
do
- if test -f $srcdir/$cf_dir/modules; then
+ if test -f "$srcdir/$cf_dir/modules" ; then
# We may/may not have tack in the distribution, though the
# makefile is.
- if test $cf_dir = tack ; then
+ if test "$cf_dir" = tack ; then
if test "x$cf_with_tack" != "xyes"; then
continue
fi
@@ -7212,20 +7868,21 @@ do
# well. These are header files that are the same name as their
# directory. Ncurses is the only library that does not follow
# that pattern.
- if test $cf_dir = tack ; then
+ if test "$cf_dir" = tack ; then
continue
- elif test -f $srcdir/${cf_dir}/${cf_dir}.h; then
+ elif test -f "$srcdir/${cf_dir}/${cf_dir}.h" ; then
CF_UPPER(cf_have_include,$cf_dir)
AC_DEFINE_UNQUOTED(HAVE_${cf_have_include}_H)
AC_DEFINE_UNQUOTED(HAVE_LIB${cf_have_include})
- TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEPS"
- TEST_DEP2="${LIB_2ND}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEP2"
+ CF_MAP_LIB_BASENAME(TEST_ROOT,$cf_dir)
+ TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${TEST_ROOT}${DFT_DEP_SUFFIX} $TEST_DEPS"
+ TEST_DEP2="${LIB_2ND}/${LIB_PREFIX}${TEST_ROOT}${DFT_DEP_SUFFIX} $TEST_DEP2"
if test "$DFT_LWR_MODEL" = "libtool"; then
TEST_ARGS="${TEST_DEPS}"
TEST_ARG2="${TEST_DEP2}"
else
- TEST_ARGS="-l${cf_dir}${USE_ARG_SUFFIX} $TEST_ARGS"
- TEST_ARG2="-l${cf_dir}${USE_ARG_SUFFIX} $TEST_ARG2"
+ TEST_ARGS="-l${TEST_ROOT}${USE_ARG_SUFFIX} $TEST_ARGS"
+ TEST_ARG2="-l${TEST_ROOT}${USE_ARG_SUFFIX} $TEST_ARG2"
fi
PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ${cf_dir}${USE_ARG_SUFFIX}"
fi
@@ -7267,7 +7924,7 @@ test "x$with_ticlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TICS_ARG
AC_SUBST(PC_MODULES_TO_MAKE)
ADA_SUBDIRS=
-if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = xyes && test -f $srcdir/Ada95/Makefile.in; then
+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = xyes && test -f "$srcdir/Ada95/Makefile.in" ; then
SRC_SUBDIRS="$SRC_SUBDIRS Ada95"
ADA_SUBDIRS="gen src"
if test "x$cf_with_tests" != "xno" ; then
@@ -7290,7 +7947,7 @@ if test -n "$ADA_SUBDIRS"; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_STDCPP_LIBRARY version: 11 updated: 2015/10/17 19:03:33
+dnl CF_STDCPP_LIBRARY version: 12 updated: 2021/01/01 13:31:04
dnl -----------------
dnl Check for -lstdc++, which is GNU's standard C++ library.
dnl If $CXXLIBS is set, add that to the libraries used for test-linking.
@@ -7311,9 +7968,9 @@ if test -n "$GXX" ; then
AC_MSG_RESULT($cf_have_libstdcpp)
LIBS="$cf_save"
- if test $cf_have_libstdcpp != yes
+ if test "$cf_have_libstdcpp" != yes
then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(os2*)
if test -z "`g++ -dM -E - < /dev/null | grep __KLIBC__`"; then
cf_stdcpp_libname=stdcpp
@@ -7342,11 +7999,11 @@ if test -n "$GXX" ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_STRIP_G_OPT version: 3 updated: 2002/12/21 19:25:52
+dnl CF_STRIP_G_OPT version: 4 updated: 2021/01/02 09:31:20
dnl --------------
dnl Remove "-g" option from the compiler options
AC_DEFUN([CF_STRIP_G_OPT],
-[$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl
+[$1=`echo "${$1}" | CF__SED_TRIMBLANKS(-e 's%-g %%' -e 's%-g$%%')`])dnl
dnl ---------------------------------------------------------------------------
dnl CF_STRUCT_SIGACTION version: 5 updated: 2012/10/06 17:56:13
dnl -------------------
@@ -7375,7 +8032,7 @@ AC_MSG_RESULT($sigact_bad)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_STRUCT_TERMIOS version: 9 updated: 2018/06/08 21:57:23
+dnl CF_STRUCT_TERMIOS version: 11 updated: 2020/03/19 20:46:13
dnl -----------------
dnl Some machines require _POSIX_SOURCE to completely define struct termios.
AC_DEFUN([CF_STRUCT_TERMIOS],[
@@ -7398,12 +8055,12 @@ if test "$ac_cv_header_termios_h" = yes ; then
if test "$termios_bad" = maybe ; then
AC_MSG_CHECKING(whether termios.h needs _POSIX_SOURCE)
AC_TRY_COMPILE([#include <termios.h>],
- [struct termios foo; int x = foo.c_iflag],
+ [struct termios foo; int x = foo.c_iflag = 1; (void)x],
termios_bad=no, [
AC_TRY_COMPILE([
#define _POSIX_SOURCE
#include <termios.h>],
- [struct termios foo; int x = foo.c_iflag],
+ [struct termios foo; int x = foo.c_iflag = 2; (void)x],
termios_bad=unknown,
termios_bad=yes AC_DEFINE(_POSIX_SOURCE,1,[Define to 1 if we must define _POSIX_SOURCE]))
])
@@ -7455,15 +8112,15 @@ fi
AC_SUBST($2)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SUBST_NCURSES_VERSION version: 8 updated: 2006/09/16 11:40:59
+dnl CF_SUBST_NCURSES_VERSION version: 10 updated: 2021/01/04 18:48:01
dnl ------------------------
dnl Get the version-number for use in shared-library naming, etc.
AC_DEFUN([CF_SUBST_NCURSES_VERSION],
-[
-AC_REQUIRE([CF_PROG_EGREP])
-NCURSES_MAJOR="`$ac_cv_prog_egrep '^NCURSES_MAJOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`"
-NCURSES_MINOR="`$ac_cv_prog_egrep '^NCURSES_MINOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`"
-NCURSES_PATCH="`$ac_cv_prog_egrep '^NCURSES_PATCH[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`"
+[AC_REQUIRE([AC_PROG_EGREP])dnl
+
+NCURSES_MAJOR="`${EGREP-egrep} '^NCURSES_MAJOR[[ ]]*=' "$srcdir/dist.mk" | sed -e 's/^[[^0-9]]*//'`"
+NCURSES_MINOR="`${EGREP-egrep} '^NCURSES_MINOR[[ ]]*=' "$srcdir/dist.mk" | sed -e 's/^[[^0-9]]*//'`"
+NCURSES_PATCH="`${EGREP-egrep} '^NCURSES_PATCH[[ ]]*=' "$srcdir/dist.mk" | sed -e 's/^[[^0-9]]*//'`"
cf_cv_abi_version=${NCURSES_MAJOR}
cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
dnl Show the computed version, for logging
@@ -7513,21 +8170,21 @@ top_builddir=ifelse($1,,`pwd`,$1)
AC_SUBST(top_builddir)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_TRY_PKG_CONFIG version: 5 updated: 2013/07/06 21:27:06
+dnl CF_TRY_PKG_CONFIG version: 6 updated: 2020/12/31 10:54:15
dnl -----------------
dnl This is a simple wrapper to use for pkg-config, for libraries which may be
dnl available in that form.
dnl
-dnl $1 = package name
+dnl $1 = package name, which may be a shell variable
dnl $2 = extra logic to use, if any, after updating CFLAGS and LIBS
dnl $3 = logic to use if pkg-config does not have the package
AC_DEFUN([CF_TRY_PKG_CONFIG],[
AC_REQUIRE([CF_PKG_CONFIG])
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $1; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "$1"; then
CF_VERBOSE(found package $1)
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags $1 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs $1 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "$1" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "$1" 2>/dev/null`"
CF_VERBOSE(package $1 CFLAGS: $cf_pkgconfig_incs)
CF_VERBOSE(package $1 LIBS: $cf_pkgconfig_libs)
CF_ADD_CFLAGS($cf_pkgconfig_incs)
@@ -7540,7 +8197,7 @@ else
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_TRY_XOPEN_SOURCE version: 2 updated: 2018/06/20 20:23:13
+dnl CF_TRY_XOPEN_SOURCE version: 3 updated: 2021/08/28 15:20:37
dnl -------------------
dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
dnl can define it successfully.
@@ -7575,7 +8232,7 @@ if test "$cf_cv_xopen_source" != no ; then
CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
- CF_ADD_CFLAGS($cf_temp_xopen_source)
+ CF_APPEND_CFLAGS($cf_temp_xopen_source)
fi
])
dnl ---------------------------------------------------------------------------
@@ -7671,15 +8328,21 @@ AC_DEFUN([CF_UPPER],
$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51
+dnl CF_UTF8_LIB version: 9 updated: 2021/05/19 19:35:25
dnl -----------
dnl Check for multibyte support, and if not found, utf8 compatibility library
AC_DEFUN([CF_UTF8_LIB],
[
+AC_HAVE_HEADERS(wchar.h)
AC_CACHE_CHECK(for multibyte character support,cf_cv_utf8_lib,[
cf_save_LIBS="$LIBS"
AC_TRY_LINK([
-#include <stdlib.h>],[putwc(0,0);],
+#include <stdlib.h>
+#include <stdio.h>
+#ifdef HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+],[putwc(0,0);],
[cf_cv_utf8_lib=yes],
[CF_FIND_LINKAGE([
#include <libutf8.h>],[putwc(0,0);],utf8,
@@ -7790,7 +8453,7 @@ AC_DEFUN([CF_VERBOSE],
CF_MSG_LOG([$1])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_VERSION_INFO version: 7 updated: 2015/04/17 21:13:04
+dnl CF_VERSION_INFO version: 8 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Define several useful symbols derived from the VERSION file. A separate
dnl file is preferred to embedding the version numbers in various scripts.
@@ -7818,13 +8481,13 @@ dnl $1 = internal name for package
dnl $2 = external name for package
AC_DEFUN([CF_VERSION_INFO],
[
-if test -f $srcdir/VERSION ; then
+if test -f "$srcdir/VERSION" ; then
AC_MSG_CHECKING(for package version)
# if there are not enough fields, cut returns the last one...
- cf_field1=`sed -e '2,$d' $srcdir/VERSION|cut -f1`
- cf_field2=`sed -e '2,$d' $srcdir/VERSION|cut -f2`
- cf_field3=`sed -e '2,$d' $srcdir/VERSION|cut -f3`
+ cf_field1=`sed -e '2,$d' "$srcdir/VERSION" |cut -f1`
+ cf_field2=`sed -e '2,$d' "$srcdir/VERSION" |cut -f2`
+ cf_field3=`sed -e '2,$d' "$srcdir/VERSION" |cut -f3`
# this is how CF_BUNDLED_INTL uses $VERSION:
VERSION="$cf_field1"
@@ -7954,7 +8617,7 @@ weak_symbol(fopen);
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_ABI_VERSION version: 3 updated: 2015/06/06 16:10:11
+dnl CF_WITH_ABI_VERSION version: 4 updated: 2021/01/01 13:31:04
dnl -------------------
dnl Allow library's ABI to be overridden. Generally this happens when a
dnl packager has incremented the ABI past that used in the original package,
@@ -7969,7 +8632,7 @@ AC_ARG_WITH(abi-version,
if test "x$cf_cv_abi_version" != "x$withval"
then
AC_MSG_WARN(overriding ABI version $cf_cv_abi_version to $withval)
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=$withval.0
;;
@@ -8179,7 +8842,7 @@ if test "$with_gpm" != no ; then
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_LIBTOOL version: 35 updated: 2017/08/12 07:58:51
+dnl CF_WITH_LIBTOOL version: 36 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Provide a configure option to incorporate libtool. Define several useful
dnl symbols for the makefile rules.
@@ -8284,7 +8947,7 @@ ifdef([AC_PROG_LIBTOOL],[
AC_SUBST([LT_UNDEF])
# special hack to add --tag option for C++ compiler
- case $cf_cv_libtool_version in
+ case "$cf_cv_libtool_version" in
(1.[[5-9]]*|[[2-9]].[[0-9.a-z]]*)
LIBTOOL_CXX="$LIBTOOL --tag=CXX"
LIBTOOL="$LIBTOOL --tag=CC"
@@ -8343,7 +9006,36 @@ esac
AC_SUBST(LIBTOOL_OPTS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_LIB_PREFIX version: 1 updated: 2012/01/21 19:28:10
+dnl CF_WITH_LIB_BASENAME version: 1 updated: 2020/03/07 20:05:14
+dnl --------------------
+dnl Allow for overriding the basename of a library, i.e., the part to which
+dnl prefixes/suffixes are attached.
+dnl
+dnl $1 = variable to set
+dnl $2 = option name
+dnl $3 = default basename for library, if omitted use $2
+AC_DEFUN([CF_WITH_LIB_BASENAME],
+[
+AC_MSG_CHECKING(for desired basename for $2 library)
+AC_ARG_WITH($2-libname,
+ [ --with-$2-libname=XXX override ifelse($3,,$2,$3) basename of library],
+ [with_lib_basename=$withval],
+ [with_lib_basename=ifelse($3,,$2,$3)])
+$1="$with_lib_basename"
+
+case "x[$]$1" in
+(x|xno|xnone|xyes)
+ $1=ifelse($3,,$2,$3)
+ ;;
+(*)
+ ;;
+esac
+
+AC_MSG_RESULT([$]$1)
+AC_SUBST($1)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_LIB_PREFIX version: 2 updated: 2021/01/01 16:53:59
dnl ------------------
dnl Allow the library-prefix to be overridden. OS/2 EMX originally had no
dnl "lib" prefix, e.g., because it used the dll naming convention.
@@ -8358,10 +9050,10 @@ AC_ARG_WITH(lib-prefix,
[with_lib_prefix=auto])
AC_MSG_RESULT($with_lib_prefix)
-if test $with_lib_prefix = auto
+if test "$with_lib_prefix" = auto
then
CF_LIB_PREFIX($1)
-elif test $with_lib_prefix = no
+elif test "$with_lib_prefix" = no
then
LIB_PREFIX=
else
@@ -8369,7 +9061,7 @@ else
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PATH version: 11 updated: 2012/09/29 15:04:19
+dnl CF_WITH_PATH version: 12 updated: 2021/09/04 06:35:04
dnl ------------
dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
dnl defaulting to yes/no.
@@ -8378,7 +9070,7 @@ dnl $1 = option name
dnl $2 = help-text
dnl $3 = environment variable to set
dnl $4 = default value, shown in the help-message, must be a constant
-dnl $5 = default value, if it's an expression & cannot be in the help-message
+dnl $5 = default value, if it is an expression & cannot be in the help-message
dnl
AC_DEFUN([CF_WITH_PATH],
[AC_ARG_WITH($1,[$2 ](default: ifelse([$4],,empty,[$4])),,
@@ -8390,7 +9082,7 @@ eval $3="$withval"
AC_SUBST($3)dnl
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PATHLIST version: 10 updated: 2015/04/17 21:13:04
+dnl CF_WITH_PATHLIST version: 13 updated: 2021/09/04 06:35:04
dnl ----------------
dnl Process an option specifying a list of colon-separated paths.
dnl
@@ -8398,7 +9090,7 @@ dnl $1 = option name
dnl $2 = help-text
dnl $3 = environment variable to set
dnl $4 = default value, shown in the help-message, must be a constant
-dnl $5 = default value, if it's an expression & cannot be in the help-message
+dnl $5 = default value, if it is an expression & cannot be in the help-message
dnl $6 = flag to tell if we want to define or substitute
dnl
AC_DEFUN([CF_WITH_PATHLIST],[
@@ -8419,9 +9111,9 @@ IFS="$ac_save_ifs"
ifelse($6,define,[
# Strip single quotes from the value, e.g., when it was supplied as a literal
# for $4 or $5.
-case $cf_dst_path in
+case "$cf_dst_path" in
(\'*)
- cf_dst_path=`echo $cf_dst_path |sed -e s/\'// -e s/\'\$//`
+ cf_dst_path="`echo "$cf_dst_path" |sed -e s/\'// -e s/\'\$//`"
;;
esac
cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'`
@@ -8468,7 +9160,7 @@ AC_ARG_WITH($2-path,
])
])
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PCRE2 version: 2 updated: 2018/07/14 16:47:56
+dnl CF_WITH_PCRE2 version: 6 updated: 2021/08/11 20:35:34
dnl -------------
dnl Add PCRE2 (Perl-compatible regular expressions v2) to the build if it is
dnl available and the user requests it. Assume the application will otherwise
@@ -8486,14 +9178,17 @@ test -z "$with_pcre2" && with_pcre2=no
AC_MSG_RESULT($with_pcre2)
if test "x$with_pcre2" != xno ; then
- CF_TRY_PKG_CONFIG(libpcre2,,[
- CF_TRY_PKG_CONFIG(libpcre,,[
- AC_MSG_ERROR(Cannot find PCRE2 library)])])
+ cf_with_pcre2_ok=no
+ for cf_with_pcre2 in libpcre2 libpcre2-posix libpcre
+ do
+ CF_TRY_PKG_CONFIG($cf_with_pcre2,[cf_with_pcre2_ok=yes; break])
+ done
+ cf_with_pcre2_ok=yes || AC_MSG_ERROR(Cannot find PCRE2 library)
AC_DEFINE(HAVE_LIB_PCRE2,1,[Define to 1 if we can/should compile with the PCRE2 library])
# if pkgconfig gave no results, look for the libraries directly
- case $LIBS in
+ case "$LIBS" in
(*pcre2-posix*|*pcreposix*)
;;
(*)
@@ -8506,16 +9201,26 @@ if test "x$with_pcre2" != xno ; then
esac
# either way, check for the library header files
- AC_CHECK_HEADERS(pcre2-posix.h pcreposix.h)
+ AC_CHECK_HEADERS(pcre2posix.h pcreposix.h)
+ AC_CHECK_FUNCS(PCRE2regcomp)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PKG_CONFIG_LIBDIR version: 10 updated: 2015/08/22 17:10:56
+dnl CF_WITH_PKG_CONFIG_LIBDIR version: 13 updated: 2021/10/17 11:12:47
dnl -------------------------
dnl Allow the choice of the pkg-config library directory to be overridden.
+dnl
+dnl pkg-config uses a search-list built from these colon-separated lists of
+dnl directories:
+dnl a) $PKG_CONFIG_PATH (tested first, added if set)
+dnl b) $PKG_CONFIG_LIBDIR (tested second, added if set)
+dnl c) builtin-list (added if $PKG_CONFIG_LIBDIR is not set)
+dnl
+dnl pkgconf (used with some systems such as FreeBSD in place of pkg-config)
+dnl optionally ignores $PKG_CONFIG_LIBDIR.
AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[
-case $PKG_CONFIG in
+case "$PKG_CONFIG" in
(no|none|yes)
AC_MSG_CHECKING(for pkg-config library directory)
;;
@@ -8524,68 +9229,98 @@ case $PKG_CONFIG in
;;
esac
-PKG_CONFIG_LIBDIR=no
+cf_search_path=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/:/ /g' -e 's,^[[ ]]*,,'`
AC_ARG_WITH(pkg-config-libdir,
[ --with-pkg-config-libdir=XXX use given directory for installing pc-files],
- [PKG_CONFIG_LIBDIR=$withval],
- [test "x$PKG_CONFIG" != xnone && PKG_CONFIG_LIBDIR=yes])
+ [cf_search_path=$withval],
+ [test "x$PKG_CONFIG" != xnone && cf_search_path=yes])
-case x$PKG_CONFIG_LIBDIR in
+case x$cf_search_path in
(x/*)
;;
(xyes)
+ cf_search_path=
+ CF_VERBOSE(auto...)
# Look for the library directory using the same prefix as the executable
+ AC_MSG_CHECKING(for search-list)
if test "x$PKG_CONFIG" = xnone
then
cf_path=$prefix
else
cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`
+ cf_search_path=`
+ "$PKG_CONFIG" --debug --exists no-such-package 2>&1 | awk "\
+/^Scanning directory #[1-9][0-9]* '.*'$/{ \
+ sub(\"^[[^']]*'\",\"\"); \
+ sub(\"'.*\",\"\"); \
+ printf \" %s\", \\[$]0; } \
+/trying path:/{
+ sub(\"^.* trying path: \",\"\");
+ sub(\" for no-such-package.*$\",\"\");
+ printf \" %s\", \\[$]0;
+}
+{ next; } \
+"`
fi
- # If you don't like using the default architecture, you have to specify the
- # intended library directory and corresponding compiler/linker options.
- #
- # This case allows for Debian's 2014-flavor of multiarch, along with the
- # most common variations before that point. Some other variants spell the
- # directory differently, e.g., "pkg-config", and put it in unusual places.
- # pkg-config has always been poorly standardized, which is ironic...
- case x`(arch) 2>/dev/null` in
- (*64)
- cf_search_path="\
- $cf_path/lib/*64-linux-gnu \
- $cf_path/share \
- $cf_path/lib64 \
- $cf_path/lib32 \
- $cf_path/lib"
- ;;
- (*)
- cf_search_path="\
- $cf_path/lib/*-linux-gnu \
- $cf_path/share \
- $cf_path/lib32 \
- $cf_path/lib \
- $cf_path/libdata"
- ;;
- esac
+ if test -z "$cf_search_path"
+ then
+ # If you don't like using the default architecture, you have to specify
+ # the intended library directory and corresponding compiler/linker
+ # options.
+ #
+ # This case allows for Debian's 2014-flavor of multiarch, along with
+ # the most common variations before that point. Some other variants
+ # spell the directory differently, e.g., "pkg-config", and put it in
+ # unusual places.
+ #
+ # pkg-config has always been poorly standardized, which is ironic...
+ case x`(arch) 2>/dev/null` in
+ (*64)
+ cf_test_path="\
+ $cf_path/lib/*64-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib64 \
+ $cf_path/lib32 \
+ $cf_path/lib"
+ ;;
+ (*)
+ cf_test_path="\
+ $cf_path/lib/*-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib32 \
+ $cf_path/lib \
+ $cf_path/libdata"
+ ;;
+ esac
+ for cf_config in $cf_test_path
+ do
+ test -d "$cf_config/pkgconfig" && cf_search_path="$cf_search_path $cf_config/pkgconfig"
+ done
+ fi
+
+ AC_MSG_RESULT($cf_search_path)
- CF_VERBOSE(list...)
- for cf_config in $cf_search_path
- do
- CF_VERBOSE(checking $cf_config/pkgconfig)
- if test -d $cf_config/pkgconfig
- then
- PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
- AC_MSG_CHECKING(done)
- break
- fi
- done
;;
(*)
;;
esac
-if test "x$PKG_CONFIG_LIBDIR" != xno ; then
- AC_MSG_RESULT($PKG_CONFIG_LIBDIR)
+AC_MSG_CHECKING(for first directory)
+cf_pkg_config_path=none
+for cf_config in $cf_search_path
+do
+ if test -d "$cf_config"
+ then
+ cf_pkg_config_path=$cf_config
+ break
+ fi
+done
+AC_MSG_RESULT($cf_pkg_config_path)
+
+if test "x$cf_pkg_config_path" != xnone ; then
+ # limit this to the first directory found
+ PKG_CONFIG_LIBDIR="$cf_pkg_config_path"
fi
AC_SUBST(PKG_CONFIG_LIBDIR)
@@ -8716,7 +9451,7 @@ CF_NO_LEAKS_OPTION(valgrind,
[USE_VALGRIND])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_VERSIONED_SYMS version: 8 updated: 2018/10/20 20:24:34
+dnl CF_WITH_VERSIONED_SYMS version: 10 updated: 2021/01/04 18:48:01
dnl ----------------------
dnl Use this when building shared library with ELF, to markup symbols with the
dnl version identifier from the given input file. Generally that identifier is
@@ -8724,7 +9459,9 @@ dnl the same as the SONAME at which the symbol was first introduced.
dnl
dnl $1 = basename of the ".map" file (default $PACKAGE)
AC_DEFUN([CF_WITH_VERSIONED_SYMS],
-[
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+AC_REQUIRE([AC_PROG_EGREP])dnl
+
AC_MSG_CHECKING(if versioned-symbols file should be used)
AC_ARG_WITH(versioned-syms,
[ --with-versioned-syms=X markup versioned symbols using ld],
@@ -8841,7 +9578,7 @@ EOF
if make -f conftest.mk 2>&AC_FD_CC >/dev/null
then
# test for missing symbol in either Data or Text section
- cf_missing=`nm -P conftest.so 2>&AC_FD_CC |fgrep _ismissing | egrep '[[ ]][[DT]][[ ]]'`
+ cf_missing="`nm -P conftest.so 2>&AC_FD_CC |${FGREP-fgrep} _ismissing | ${EGREP-egrep} '[[ ]][[DT]][[ ]]'`"
test -n "$cf_missing" && WILDCARD_SYMS=yes
fi
AC_MSG_RESULT($WILDCARD_SYMS)
@@ -8939,7 +9676,7 @@ fi
AC_SUBST(no_x11_rgb)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 55 updated: 2018/12/31 20:46:17
+dnl CF_XOPEN_SOURCE version: 59 updated: 2021/08/28 15:20:37
dnl ---------------
dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
dnl or adapt to the vendor's definitions to get equivalent functionality,
@@ -8958,7 +9695,7 @@ cf_XOPEN_SOURCE=ifelse([$1],,500,[$1])
cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2])
cf_xopen_source=
-case $host_os in
+case "$host_os" in
(aix[[4-7]]*)
cf_xopen_source="-D_ALL_SOURCE"
;;
@@ -9004,7 +9741,15 @@ case $host_os in
(netbsd*)
cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
;;
-(openbsd[[4-9]]*)
+(openbsd[[6-9]]*)
+ # OpenBSD 6.x has broken locale support, both compile-time and runtime.
+ # see https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ # Abusing the conformance level is a workaround.
+ AC_MSG_WARN(this system does not provide usable locale support)
+ cf_xopen_source="-D_BSD_SOURCE"
+ cf_XOPEN_SOURCE=700
+ ;;
+(openbsd[[4-5]]*)
# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
cf_xopen_source="-D_BSD_SOURCE"
cf_XOPEN_SOURCE=600
@@ -9036,7 +9781,7 @@ case $host_os in
esac
if test -n "$cf_xopen_source" ; then
- CF_ADD_CFLAGS($cf_xopen_source,true)
+ CF_APPEND_CFLAGS($cf_xopen_source,true)
fi
dnl In anything but the default case, we may have system-specific setting
@@ -9051,7 +9796,7 @@ make an error
[cf_XOPEN_SOURCE_set=yes],
[cf_XOPEN_SOURCE_set=no])
AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
- if test $cf_XOPEN_SOURCE_set = yes
+ if test "$cf_XOPEN_SOURCE_set" = yes
then
AC_TRY_COMPILE([#include <stdlib.h>],[
#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
@@ -9059,7 +9804,7 @@ make an error
#endif],
[cf_XOPEN_SOURCE_set_ok=yes],
[cf_XOPEN_SOURCE_set_ok=no])
- if test $cf_XOPEN_SOURCE_set_ok = no
+ if test "$cf_XOPEN_SOURCE_set_ok" = no
then
AC_MSG_WARN(_XOPEN_SOURCE is lower than requested)
fi
@@ -9069,3 +9814,9 @@ make an error
fi
fi # cf_cv_posix_visible
])
+dnl ---------------------------------------------------------------------------
+dnl CF__SED_TRIMBLANKS version: 1 updated: 2021/01/02 09:31:20
+dnl ------------------
+dnl Trim something using sed, then trim extra whitespace
+dnl $1 = extra parameters, e.g., in CF_STRIP_G_OPT
+define([CF__SED_TRIMBLANKS],[sed ifelse($1,,,[$1] )-e 's%[[ ]]% %g' -e 's% [[ ]]*% %g' -e 's%^ %%' -e 's% [$]%%'])dnl
diff --git a/announce.html.in b/announce.html.in
index 2ac7d7d..caaa289 100644
--- a/announce.html.in
+++ b/announce.html.in
@@ -1,7 +1,7 @@
<!--
- $Id: announce.html.in,v 1.96 2020/02/09 21:50:48 tom Exp $
+ $Id: announce.html.in,v 1.102 2021/10/20 22:41:55 tom Exp $
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
@@ -29,12 +29,10 @@
****************************************************************************
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-
<html>
<head>
<meta name="generator" content=
- "HTML Tidy for HTML5 for Linux version 5.2.0">
-
+ "HTML Tidy for HTML5 for Linux version 5.6.0">
<title>Announcing ncurses @VERSION@</title>
<link rel="author" href="mailto:bug-ncurses@gnu.org">
<meta http-equiv="Content-Type" content=
@@ -57,7 +55,6 @@
}
</style>
</head>
-
<body>
<h1 class="no-header">Announcing ncurses @VERSION@</h1>
@@ -158,10 +155,10 @@
Notes</a></h2>
<p>These notes are for <span class="main-name">ncurses</span>
- @VERSION@, released <strong>February 12, 2020</strong>.</p>
+ @VERSION@, released <strong>October 21, 2021</strong>.</p>
<p>This release is designed to be source-compatible with
- <span class="main-name">ncurses</span> 5.0 through 6.1; providing
+ <span class="main-name">ncurses</span> 5.0 through 6.2; providing
extensions to the application binary interface (ABI). Although
the source can still be configured to support the <span class=
"main-name">ncurses</span> 5 ABI, the reason for the release is
@@ -173,45 +170,28 @@
this announcement.</p>
<p>The most <a href="#h3-bug-fixes">important
- bug-fixes/improvements</a> dealt with user-defined capabilities
- in terminal descriptions. The release notes also mention some
- other bug-fixes, but are focused on new features and improvements
- to existing features since <span class="main-name">ncurses</span>
- 6.1 release.</p>
+ bug-fixes/improvements</a> dealt with portability issues. The
+ release notes also mention some other bug-fixes, but are focused
+ on new features and improvements to existing features since
+ <span class="main-name">ncurses</span> 6.2 release.</p>
<h3><a name="h3-library" id="h3-library">Library improvements</a></h3>
<h4><a name="h4-new-library" id="h4-new-library">New features</a></h4>
- <p>There are several new features:</p>
+ <p>There are a few new features:</p>
<ul>
<li>
- <p><a href=
- "@HOMEPAGE@/man/form_field_opts.3x.html">O_EDGE_INSERT_STAY</a>
- tells the form library to optionally delay cursor movement on
- a field edge/boundary</p>
+ <p>A new (experimental) driver, for the Windows Terminal
+ configuration is provided.</p>
</li>
<li>
- <p><a href=
- "@HOMEPAGE@/man/form_field_opts.3x.html">O_INPUT_FIELD</a>
- extension to form library allows a dynamic field to shrink if
- the new limit is smaller than the current field size.</p>
- </li>
-
- <li>
- <p>added <a href=
- "@HOMEPAGE@/man/curs_memleaks.3x.html">exit_curses</a> and
- <a href=
- "@HOMEPAGE@/man/curs_memleaks.3x.html">exit_terminfo</a> to
- replace internal symbols for leak-checking.</p>
- </li>
-
- <li>
- <p>added <a href=
- "@HOMEPAGE@/man/curs_trace.3x.html#h3-Functions">curses_trace</a>,
- to replace trace().</p>
+ <p>A script is provided which enables <a href=
+ "@HOMEPAGE@/ncurses-openbsd.html">OpenBSD</a> users to
+ upgrade their system to use ncurses 6.3 (OpenBSD developers
+ are also invited to do this).</p>
</li>
</ul>
@@ -220,71 +200,16 @@
<ul>
<li>
- <p>mouse decoding now handles shift/control/alt logic when
- decoding xterm's 1006 mode</p>
- </li>
-
- <li>
- <p>ncurses now defines a limit for <a href=
- "@HOMEPAGE@/man/curs_getstr.3x.html">wgetnstr</a>, <a href=
- "@HOMEPAGE@/man/curs_get_wstr.3x.html">wgetn_wstr</a> when
- length is negative or &ldquo;too large&rdquo;.</p>
- </li>
-
- <li>reordered loop-limit checks in <a href=
- "@HOMEPAGE@/man/curs_insstr.3x.html">winsnstr</a> in case the
- string has no terminating null and only the number of
- characters is used.</li>
-
- <li>
- <p>there is now no buffer-size limit when reading the
- <a href="@HOMEPAGE@/man/ncurses.3x.html#h3-TERMCAP"><tt>$TERMCAP</tt></a>
- variable.</p>
- </li>
-
- <li>
- <p>the <a href=
- "@HOMEPAGE@/man/ncurses.3x.html#h3-TERMCAP"><tt>$TERMCAP</tt></a>
- variable may be interpreted as a fallback to a terminfo
- entry</p>
- </li>
-
- <li>
- <p><a href=
- "@HOMEPAGE@/man/curs_terminfo.3x.html#h3-Output-Functions"><tt>
- mvcur</tt></a> now decides whether to use hard-tabs, using
- <strong><tt>xt</tt></strong>, <strong><tt>tbc</tt></strong>
- and <strong><tt>hts</tt></strong> as clues.</p>
- </li>
-
- <li>
- <p>extended colors are improved by modifying an internal call
- to <a href=
- "@HOMEPAGE@/man/curs_terminfo.3x.html#h3-Output-Functions"><tt>
- vid_puts</tt></a> to pass extended color pairs e.g., from
- <tt>tty_update.c</tt> and <tt>lib_mvcur.c</tt></p>
+ <p>modify lib_mouse.c to check for out-of-range button
+ numbers, convert those to position reports.</p>
</li>
<li>
- <p id="getenv-fixes">the initialization functions now avoid
- relying upon persistent data for the result from <a href=
- "#getenv-check"><tt>getenv</tt></a></p>
- </li>
-
- <li>
- <p>scrolling is improved:</p>
-
- <ul>
- <li>a limit check in <tt>newline_forces_scroll</tt> handles
- the case where the row is inside scroll-margins, but not at
- the end.</li>
-
- <li>
- <p>improved loop limits in <tt>_nc_scroll_window</tt>
- handle a case where the scrolled data is a pad which is
- taller than the window.</p>
- </li>
- </ul>
+ <p>add sp-funcs for <a href=
+ "@HOMEPAGE@/man/curs_termattrs.3x.html#h3-erasechar_-erasewchar">
+ erasewchar</a>, <a href=
+ "@HOMEPAGE@/man/curs_termattrs.3x.html#h3-killchar_-killwchar">
+ killwchar</a>.</p>
</li>
</ul>
@@ -294,70 +219,35 @@
<p>These are revised features:</p>
<ul>
- <li>
- <p>used &ldquo;<tt>const</tt>&rdquo; in some prototypes
- rather than <tt>NCURSES_CONST</tt> where X/Open Curses was
- updated to do this, e.g., <tt>wscanw</tt>, <tt>newterm</tt>,
- the terminfo interface. Also use &ldquo;<tt>const</tt>&rdquo;
- for consistency in the termcap interface, which was withdrawn
- by X/Open Curses in Issue 5 (2007). As of Issue 7, X/Open
- Curses still lacks &ldquo;<tt>const</tt>&rdquo; for certain
- return values, e.g., <a href=
- "@HOMEPAGE@/man/curs_util.3x.html#h3-keyname_key_name">keyname</a>.</p>
- </li>
-
- <li>
- <p>modified <a href=
- "@HOMEPAGE@/man/curs_bkgd.3x.html#h3-bkgd"><tt>wbkgd</tt></a>
- and <a href=
- "@HOMEPAGE@/man/curs_bkgrnd.3x.html#h3-bkgrnd"><tt>wbkgrnd</tt></a>
- to improve compatibility with SVr4 curses, changing the way
- the window rendition is updated when the background character
- is modified</p>
- </li>
-
- <li>
- <p>improved terminfo write/read by modifying the fourth item
- of the extended header to denote the number of valid strings
- in the extended string table (see <a href=
- "@HOMEPAGE@/man/term.5.html#h3-EXTENDED-STORAGE-FORMAT">term(5)</a>).</p>
- </li>
-
- <li>
- <p>modified the initialization checks for mouse so that the
- <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sm_1006"><tt>xterm+sm+1006</tt></a>
- block will work with terminal descriptions not mentioning
- <em>xterm</em>.</p>
- </li>
+ <li>modify wgetnstr, wgetn_wstr to improve compatibility with
+ SVr4 curses in its treatment of interrupt and quit
+ characters</li>
</ul>
<p>These were done to limit or ultimately deprecate features:</p>
<ul>
<li>
- <p>deprecated <a href=
- "@HOMEPAGE@/NEWS.html#t970831">safe-sprintf</a>, since the
- <tt>vsnprintf</tt> function, which does what was needed, was
- standardized long ago.</p>
- </li>
+ <p>mark wgetch-events feature as deprecated.</p>
- <li>
- <p>marked <a href=
- "@HOMEPAGE@/man/curs_printw.3x.html#h3-PORTABILITY"><tt>vwprintw</tt></a>
- and <tt>vwscanw</tt> as deprecated; recommend using <a href=
- "@HOMEPAGE@/man/curs_printw.3x.html"><tt>vw_printw</tt></a>
- and <tt>vw_scanw</tt>, respectively.</p>
- </li>
+ <ul>
+ <li>
+ <p>prevent <tt>KEY_EVENT</tt> from appearing in
+ <tt>curses.h</tt> unless the configure option
+ <code>--enable-wgetch-events</code> is used.</p>
+ </li>
- <li>
- <p>added deprecation warnings for internal functions called
- by older versions of <a href=
- "@HOMEPAGE@/tack.html">tack</a>.</p>
+ <li>
+ <p>modify <tt>MKkey_defs.sh</tt> to hide ncurses'
+ definition of <tt>KEY_EVENTS</tt> to reduce <em>Visual
+ Studio C++</em> redefinition warnings.</p>
+ </li>
+ </ul>
</li>
<li>
- <p>removed unused <tt>_nc_import_termtype2</tt> function.</p>
+ <p>reduce build-warnings by excluding ncurses-internals from
+ deprecation warnings.</p>
</li>
</ul>
@@ -365,100 +255,42 @@
<ul>
<li>
- <p>check parameter of <a href=
- "@HOMEPAGE@/man/curs_threads.3x.html">set_escdelay</a>,
- return ERR if negative.</p>
- </li>
-
- <li>
- <p>check parameter of <a href=
- "@HOMEPAGE@/man/curs_threads.3x.html">set_tabsize</a>, return
- ERR if not greater than zero</p>
- </li>
-
- <li>
- <p>correct a status-check in _nc_read_tic_entry() so that if
- reading a hex/b64 <a href=
- "@HOMEPAGE@/man/ncurses.3x.html#h3-TERMINFO"><tt>$TERMINFO</tt></a>,
- and the <a href=
- "@HOMEPAGE@/man/ncurses.3x.html#h3-TERM"><tt>$TERM</tt></a>
- does not match, fall-through to the compiled-in search
- list.</p>
- </li>
-
- <li>
- <p>amend check for <a href=
- "@HOMEPAGE@/man/terminfo.5.html#h3-Predefined-Capabilities"><tt>
- repeat_char</tt></a> to handle a case where setlocale() was
- called after <a href=
- "@HOMEPAGE@/man/curs_initscr.3x.html"><tt>initscr</tt></a></p>
- </li>
-
- <li>
- <p>move macro for <a href=
- "@HOMEPAGE@/man/curs_touch.3x.html"><tt>is_linetouched</tt></a>
- inside <strong><tt>NCURSES_NOMACROS</tt></strong>
- <em><tt>ifndef</tt></em>.</p>
- </li>
-
- <li>
- <p>use <tt>_nc_copy_termtype2</tt> rather than direct
- assignment in <a href=
- "@HOMEPAGE@/man/curs_terminfo.3x.html#h3-Initialization">setupterm</a>,
- in case it is called repeatedly using fallback terminfo
- descriptions</p>
+ <p>drop symbols <em>GCC_PRINTF</em> and <em>GCC_SCANF</em>
+ from &lt;curses.h&gt;, to simplify use.</p>
</li>
<li>
- <p>improve workaround for Solaris wcwidth versus line-drawing
- characters</p>
+ <p>apply gcc format attribute to prototypes which use a
+ va_list parameter rather than a &ldquo;<tt>...</tt>&rdquo;
+ variable-length parameter list.</p>
</li>
<li>
- <p>add checks in <a href=
- "@HOMEPAGE@/man/resizeterm.3x.html"><tt>repair_subwindows</tt></a>
- to keep the current position and scroll-margins inside the
- resized subwindow.</p>
+ <p>modify &lt;term.h&gt; so that it is not necessary to
+ include &lt;curses.h&gt; before &lt;term.h&gt;.</p>
</li>
<li>
- <p>correct a buffer-limit in <tt>write_entry.c</tt> for
- systems that use caseless filenames.</p>
- </li>
-
- <li>
- <p>improved build-time utility <em>report_offsets</em>:</p>
-
- <ul>
- <li>
- <p>add categories, e.g., "w" for wide-character, "t" for
- threads to make the report more readable. Reorganized the
- structures reported to make the categories more
- apparent.</p>
- </li>
-
- <li>
- <p>add <tt>NCURSES_GLOBALS</tt> and
- <tt>NCURSES_PRESCREEN</tt> to report to show how similar
- the different <em>libtinfo</em> configurations are.</p>
- </li>
- </ul>
+ <p>provide for wide-characters as background character in
+ wbkgrnd</p>
</li>
<li>
- <p>modified some header files to ensure that those include
- necessary files except for the previously-documented
- cases</p>
+ <p>improve parameter-checking for tparm, adding function
+ _nc_tiparm() to handle the most-used case, which accepts only
+ numeric parameters.</p>
</li>
<li>
- <p>added some traces in initialization to show whether a
- fallback entry is used.</p>
+ <p>use return-value from <em>vsnprintf</em> to reallocate as
+ needed to allow for buffers larger than the screen size.</p>
</li>
<li>
- <p>made minor optimization to reduce calls to
- _nc_reserve_pairs</p>
+ <p>add another <em>fflush(stdout)</em> in <em>_nc_flush</em>
+ to handle time-delays in the middle of strings such as flash
+ when the application uses low-level calls rather than
+ curses.</p>
</li>
</ul>
@@ -466,165 +298,158 @@
<ul>
<li>
- <p>fix a special case in <tt>PutAttrChar</tt> where a cell is
- marked as alternate-character set, but the terminal does not
- actually support the given graphic character. This would
- happen in an older terminal such as <em>vt52</em>, which
- lacks most line-drawing capability.</p>
- </li>
-
- <li>
- <p>corrected flag for "seq" method of db 1.8.5 interface,
- needed by toe on some of the BSDs.</p>
- </li>
-
- <li>
- <p>modify comparison in make_hash.c to correct a special case
- in collision handling for Caps-hpux11</p>
- </li>
-
- <li>
- <p>add extended_slk_color{,_sp} symbols to the appropriate
- package/*.{map,sym} files</p>
- </li>
-
- <li>
- <p>modify lib_setup to avoid calling pthread_self() without
- first verifying that the address is valid, i.e., for weak
- symbols</p>
+ <p>add a check to guard against <em>repeat_char</em> emitting
+ digits which could be interpreted as BSD-style padding when
+ <tt>--enable-bsdpad</tt> is configured.</p>
</li>
<li>
- <p>add a couple of broken-linker symbols to the list of
- versioned symbols to help with link-time optimization versus
- weak symbols.</p>
+ <p>check for screen size-change in <a href=
+ "@HOMEPAGE@/man/curs_scr_dump.3x.html">scr_init</a> and
+ <a href=
+ "@HOMEPAGE@/man/curs_scr_dump.3x.html">scr_restore</a>, in
+ case a screen dump does not match the current screen
+ dimensions</p>
</li>
</ul>
<h3><a name="h3-programs" id="h3-programs">Program
improvements</a></h3>
- <p>Several improvements were made to the utility programs:</p>
+ <p id="h4-utilities">Several improvements were made to the
+ utility programs:</p>
<dl>
- <dt><span class="part-name">clear</span>
+ <dt><span class="part-name"><a href=
+ "@HOMEPAGE@/man/tabs.1.html">tabs</a></span>
</dt>
<dd>
<ul>
- <li>improved logic for clearing with the <em>E3</em>
- extension, in case the terminal scrolls content onto its
- saved-lines before actually clearing the display, by
- clearing the saved-lines after clearing the display</li>
+ <li>
+ <p>implement &ldquo;<tt>+m</tt>&rdquo; option</p>
+ </li>
</ul>
</dd>
- <dt><span class="part-name">infocmp</span>
+ <dt><span class="part-name"><a href=
+ "@HOMEPAGE@/man/tic.1m.html">tic</a></span>
</dt>
<dd>
<ul>
- <li>omit filtering of &ldquo;<tt>OTxx</tt>&rdquo; names
- which are used for obsolete capabilities, when the output
- is sorted by long-names. This change helps when making a
- table of the short/long capability names.</li>
- </ul>
- </dd>
+ <li>
+ <p>add check for duplicate &ldquo;<tt>use=</tt>&rdquo;
+ clauses.</p>
+ </li>
- <dt><span class="part-name">tic</span>
- </dt>
+ <li>
+ <p>add check to report instances where <tt>tparm</tt>
+ would detect an error in an expression.</p>
+ </li>
- <dd>
- <ul>
- <li>added check for consistent alternate character set
- capabilities.</li>
+ <li>
+ <p>add user-defined capabilities from <em>mintty</em> to
+ <tt>Caps-ncurses</tt>, for checking consistency.</p>
+ </li>
- <li>added check for paired <tt>indn</tt>/<tt>rin</tt>.</li>
+ <li>
+ <p>improve warning when oc/op do not mention SGR 39/49
+ for <em>xterm</em> compatible <code>XT</code> flag.</p>
+ </li>
- <li>added check for terminals with <tt>parm_dch</tt> vs
- <tt>parm_ich</tt>.</li>
+ <li>
+ <p>improve checks for number of parameters of
+ <code>smglp</code>, <code>smgrp</code>,
+ <code>smgtp</code>, and <code>smgbp</code>.</p>
+ </li>
- <li>added check for the case where
- <tt>setf</tt>/<tt>setb</tt> are given using different
- strings, but provide identical results to
- <tt>setaf</tt>/<tt>setab</tt>.</li>
+ <li>
+ <p>improve &ldquo;<tt>-c</tt>&rdquo; option to validate
+ the number and type of parameters and compare against
+ expected number/type before deciding which set of
+ parameter-lists to use in tparm calls.</p>
+ </li>
- <li>corrected check for <tt>ich1</tt>.</li>
+ <li>
+ <p>improve check for errors detected in
+ <code>tparm</code>.</p>
+ </li>
- <li>changed a too-large terminal entry from a fatal error
- to a warning.</li>
- </ul>
- </dd>
+ <li>
+ <p>improve format of output, to ensure that the messages
+ contain only printable text.</p>
+ </li>
- <dt><span class="part-name">toe</span>
- </dt>
+ <li>
+ <p>modify to eliminate unnecessary
+ &ldquo;<code>\</code>&rdquo; to escape
+ &ldquo;<code>:</code>&rdquo; in terminfo format.</p>
+ </li>
- <dd>
- <ul>
- <li>ignores any hex/b64 <tt>$TERMINFO</tt> value in the
- list of terminfo databases.</li>
+ <li>
+ <p>remove check that assumes that none or both
+ parameterized and non-parameterized margin-setting
+ capabilities are present.</p>
+ </li>
</ul>
</dd>
- <dt><span class="part-name">tset</span>
+ <dt><span class="part-name"><a href=
+ "@HOMEPAGE@/man/toe.1m.html">toe</a></span>
</dt>
<dd>
<ul>
- <li>replace check in <span class="part-name">reset</span>
- command for obsolete &ldquo;<tt>pt</tt>&rdquo; capability
- using <tt>tbc</tt> and <tt>hts</tt> capabilities as
- clues</li>
-
- <li>modify <span class="part-name">reset</span> to allow
- for tabstops at intervals other than 8.</li>
-
- <li>change <span class="part-name">reset</span>'s behavior
- for margins to simply clear soft-margins if possible,
- rather than clearing and then setting them according to the
- terminal's width.</li>
+ <li>
+ <p>modify output of &ldquo;<tt>toe -as</tt>&rdquo; to
+ show first description found rather than the last.</p>
+ </li>
+
+ <li>
+ <p>add a check to ensure that a &ldquo;termcap
+ file&rdquo; is text rather than binary.</p>
+ </li>
</ul>
</dd>
- <dt><span class="part-name">tput</span>
+ <dt><span class="part-name"><a href=
+ "@HOMEPAGE@/man/tput.1.html">tput</a></span>
</dt>
<dd>
<ul>
- <li>add &ldquo;<tt>x</tt>&rdquo; to <tt>getopt</tt> string
- so that &ldquo;<tt>tput&nbsp;-x&nbsp;clear</tt>&rdquo;
- works.</li>
- </ul>
- </dd>
- </dl>
-
- <p>Several changes were made to the generated ncurses*config
- scripts and the analogous &ldquo;<tt>.pc</tt>&rdquo; files to
- reduce differences between the configurations they report:</p>
+ <li>
+ <p>modify to allow multiple commands per line.</p>
+ </li>
- <ul>
- <li>
- <p>modified the ncurse*-config and pc-files to more closely
- match for the <tt>-I</tt> and <tt>-l</tt> options.</p>
- </li>
+ <li>
+ <p>improve parameter-checking by analyzing all extended
+ string capabilities, e.g., as used in the <code>Cs</code>
+ and <code>Ms</code> capabilities of the <em>tmux</em>
+ description.</p>
+ </li>
- <li>
- <p>filtered out linker-specs from the <tt>--libs</tt>
- report.</p>
- </li>
+ <li>
+ <p>make warning messages consistently using alias names
+ when those are used, rather than the underlying program's
+ name.</p>
+ </li>
- <li>
- <p>amended the ncurses*-config and pc-files to take into
- account the rpath hack which differed between those
- files.</p>
- </li>
+ <li>
+ <p>improve usage message for aliases such as
+ <em>clear</em>, by eliminating <em>tput</em>-specific
+ portions.</p>
+ </li>
- <li>
- <p>modified generated ncurses*config and ncurses.pc,
- ncursesw.pc, etc., to list helper libraries such as gpm for
- static linking.</p>
- </li>
- </ul>
+ <li>
+ <p>modify initialization to avoid opening
+ <tt>/dev/tty</tt> for cases other than
+ <em>reset/init</em>, e.g., for <em>clear</em>.</p>
+ </li>
+ </ul>
+ </dd>
+ </dl>
<h4><a name="h4-examples" id="h4-examples">Examples</a></h4>
@@ -638,38 +463,35 @@
<ul>
<li>
- <p>improve recovery from error when reading command-character
- in <tt>test/ncurses.c</tt>, showing the relevant error
- message and not exiting on EINTR.</p>
+ <p>add &ldquo;<tt>-r</tt>&rdquo; option to the <em>dots</em>
+ test-programs, to help with scripting a performance
+ comparison.</p>
</li>
<li>
- <p>improve <em>tracemunch</em>, by keeping track of
- <tt>TERMINAL*</tt> values, and if tracing was first turned on
- after initialization, attempt to show distinct screen, window
- and terminal names anyway.</p>
+ <p>build-fix for <em>test_opaque</em>, for configurations
+ without opaque curses structs, e.g., ncurses 5.7.</p>
</li>
<li>
- <p>modify <em>tracemunch</em> to accept filename parameters
- in addition to use as a pipe/filter.</p>
+ <p>improve <em>tracemunch</em> logic for "RUN"
+ compaction.</p>
</li>
<li>
- <p>update <em>tracemunch</em> to work with <em>perl
- 5.26.2</em>, which changed the rules for escaping regular
- expressions.</p>
+ <p>improve <em>tracemunch</em>'s coverage of form/menu/panel
+ libraries.</p>
</li>
<li>
- <p>add some checks in <em>tracemunch</em> for undefined
- variables.</p>
+ <p>improve <em>tracemunch</em>'s checking/reporting the type
+ for the first parameter, e.g., "WINDOW*" rather than
+ "#1".</p>
</li>
<li>
- <p>modify <tt>TurnOn</tt>/<tt>TurnOff</tt> macros (in
- lib_vidattr.c and lib_vid_attr.c) to avoid expansion of
- &ldquo;<tt>CUR</tt>&rdquo; in trace.</p>
+ <p>modify <em>tracemunch</em> and the panel library to show
+ readable traces for panel- and user-pointers.</p>
</li>
</ul>
@@ -677,135 +499,131 @@
examples:</p>
<dl>
- <dt><span class="part-name">color_content</span>
- </dt>
-
- <dd>Demonstrate the <tt>color_content</tt> and
- <tt>extended_color_content</tt> functions.</dd>
-
- <dt><span class="part-name">demo_tabs</span>
- </dt>
-
- <dd>A simple demo of tabs in curses.</dd>
-
- <dt><span class="part-name">dump_window</span>
- </dt>
-
- <dd>A portable curses screen-dump, used to compare ncurses
- screen contents with Solaris.</dd>
-
- <dt><span class="part-name">pair_content</span>
+ <dt><span class="part-name"><em>back_ground</em></span>
</dt>
- <dd>Demonstrate the <tt>pair_content</tt> and
- <tt>extended_pair_content</tt> functions.</dd>
+ <dd>to exercise the wide-character background functions.</dd>
- <dt><span class="part-name">report_hashing</span>
+ <dt><span class="part-name"><em>move_field</em></span>
</dt>
- <dd>Check hash-tables used for terminfo and termcap names.</dd>
+ <dd>to demonstrate <a href=
+ "@HOMEPAGE@/man/form_field.3x.html">move_field</a>, and a stub
+ for a corresponding demo of <a href=
+ "@HOMEPAGE@/man/form_field_new.3x.html">dup_field</a>.</dd>
- <dt><span class="part-name">parse_rgb</span>
+ <dt><span class="part-name"><em>test_tparm</em></span>
</dt>
- <dd>Sample implementation of the ncurses RGB extension from
- <a href="@HOMEPAGE@/man/user_caps.5.html">user_caps.5</a>, used
- in <em>picsmap</em> and <em>savescreen</em> programs.</dd>
+ <dd>for checking <em>tparm</em> changes.</dd>
</dl>
- <p>A variety of improvements were made to existing programs, both
- new features as well as options added to make the set of programs
- more consistent.</p>
-
- <ul>
- <li>
- <p>add &ldquo;<tt>-l</tt>&rdquo; option to test/background,
- to dump screen contents in a form that lets different curses
- implementations be compared.</p>
- </li>
-
- <li>
- <p>add &ldquo;<tt>@</tt>&rdquo; command to test/ncurses
- F-test, to allow rapid jump to different character pages.</p>
- </li>
-
- <li>
- <p>added enum, regex examples to test/demo_forms</p>
- </li>
-
- <li>
- <p>amend Scaled256() macro in test/picsmap.c to cover the
- full range 0..1000</p>
- </li>
-
- <li>
- <p>corrected pathname used in Ada95 sample programs for
- <tt>explain.txt</tt>, to work with test-packages, and used an
- awk script to split the resulting pathname when it would be
- too long for a single line.</p>
- </li>
-
- <li>
- <p>ignore interrupted system-call in test/ncurses's
- command-line, e.g., if the terminal were resized.</p>
- </li>
-
- <li>
- <p>improved ifdef's for <tt>TABSIZE</tt> variable, to help
- with AIX/HPUX ports.</p>
- </li>
- </ul>
-
<h3><a name="h3-database" id="h3-database">Terminal database</a></h3>
<p>There are several new terminal descriptions:</p>
<blockquote style="word-break:keep-all">
- <p><tt>alacritty</tt>, <tt>domterm</tt>, <tt>kitty</tt>,
- <tt>mintty</tt>, <tt>mintty-direct</tt>, <tt>ms-terminal</tt>,
- <tt>n7900</tt>, <tt>nsterm-build309</tt>,
- <tt>nsterm-direct</tt>, <tt>screen5</tt>, <tt>ti703</tt>,
- <tt>ti707</tt>, <tt>ti703-w</tt>, <tt>ti707-w</tt>
- <tt>vscode</tt>, <tt>vscode-direct</tt>, <tt>xterm-mono</tt>,
- <tt>xterm.js</tt></p>
+ <p><tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-absolute">absolute</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-att610_cvis">att610+cvis</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-foot">foot</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-foot-direct">foot-direct</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-hp98550-color">hp98550-color</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-hpterm-color2">hpterm-color2</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-hterm">hterm</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-hterm-256color">hterm-256color</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-linux-s">linux-s</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-putty_keypad">putty+keypad</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-putty_screen">putty+screen</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-putty-screen">putty-screen</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-screen.linux-s">screen.linux-s</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-scrt/securecrt">scrt/securecrt</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-tmux-direct">tmux-direct</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt220_cvis">vt220+cvis</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt220_cvis8">vt220+cvis8</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt220_pcedit">vt220+pcedit</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt220_vtedit">vt220+vtedit</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt220-base">vt220-base</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt52_keypad">vt52+keypad</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm_256color2">xterm+256color2</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm_88color2">xterm+88color2</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm-direct16">xterm-direct16</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm-direct256">xterm-direct256</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm_nofkeys">xterm+nofkeys</a></tt>,
+ and <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm_nopcfkeys">xterm+nopcfkeys</a></tt>.</p>
</blockquote>
<p>There are many changes to existing terminal descriptions. Some
were updates to several descriptions:</p>
<ul>
- <li>use <a href=
- "/ncurses/terminfo.src.html#tic-ansi_rep"><tt>ansi+rep</tt></a>
- in a dozen places</li>
-
- <li>add rs1 to konsole, mlterm</li>
-
- <li>improve several flash capabilities with trailing mandatory
- delays</li>
+ <li>correct use-ordering in some <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm-direct">xterm-direct</a>
+ flavors</li>
+
+ <li>fix some sgr inconsistencies in <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-d230c">d230c</a>, <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-ibm6153">ibm6153</a>,
+ <a href="@HOMEPAGE@/terminfo.src.html#tic-ibm6154">ibm6154</a>,
+ <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-ncrvt100an">ncrvt100an</a></li>
- <li>drop <tt>ich1</tt> from <tt>rxvt-basic</tt>, <tt>Eterm</tt>
- and <tt>mlterm</tt> to improve compatibility with old
- non-curses programs</li>
+ <li>improve <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt50h">vt50h</a> and <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt52">vt52</a> based on
+ DECScope manual</li>
- <li>add/use <a href=
- "/ncurses/terminfo.src.html#tic-xterm_keypad"><tt>xterm+keypad</tt></a>
- in <tt>xterm-new</tt></li>
+ <li>use <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-hp_arrows">hp+arrows</a> in a
+ few places</li>
<li>use <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sl-twm"><tt>xterm+sl-twm</tt></a>
- for consistency, nine places</li>
+ "@HOMEPAGE@/terminfo.src.html#tic-hp_pfk-cr">hp+pfk-cr</a> in a
+ few places</li>
- <li>improve <em>xm</em> example in <a href=
- "/ncurses/terminfo.src.html#tic-xterm_x11mouse">xterm+x11mouse</a>
- and <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sm_1006">xterm+sm_1006</a>.</li>
+ <li>use <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-vt220_cvis">vt220+cvis</a> in
+ <tt>st</tt>, <tt>terminology</tt>, <tt>termite</tt> since they
+ ignore blinking-cursor detail in <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-att610_cvis">att610+cvis</a></li>
</ul>
<p>while others affected specific descriptions. These were
retested, to take into account changes by their developers:</p>
<blockquote>
- <p><tt>terminator</tt>, <tt>st</tt></p>
+ <p><tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-kitty_common">kitty+common</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-mlterm3">mlterm3</a></tt>,
+ <tt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-ms-terminal">ms-terminal</a></tt></p>
</blockquote>
<p>while these are specific fixes based on reviewing
@@ -814,156 +632,133 @@
<dl>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-adds200">adds200</a>:</dt>
+ "@HOMEPAGE@/terminfo.src.html#tic-aaa_dec">aaa+dec</a>,
+ aaa+rv</dt>
- <dd>
- <ul>
- <li>fix typo</li>
- </ul>
- </dd>
+ <dd>correct rmacs/smacs</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-gnome-256color">gnome-256color</a>
+ "@HOMEPAGE@/terminfo.src.html#tic-aaa_rv">aaa+rv</a>
</dt>
- <dd>
- <ul>
- <li>base entry on "gnome", not "vte", for consistency</li>
- </ul>
- </dd>
+ <dd>correct sgr</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-interix">interix</a>
+ "@HOMEPAGE@/terminfo.src.html#tic-icl6404">icl6404</a>
</dt>
- <dd>
- <ul>
- <li>trim unnecessary setf/setb</li>
- </ul>
- </dd>
+ <dd>correct csr</dd>
+
+ <dt><a href="@HOMEPAGE@/terminfo.src.html#tic-kitty">kitty</a>
+ </dt>
+
+ <dd>use att610+cvis, xterm+tmux and ansi+enq</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-linux-16color">linux-16color</a>
+ "@HOMEPAGE@/terminfo.src.html#tic-konsole-base">konsole-base</a>
</dt>
- <dd>
- <ul>
- <li>accommodate <a href=
- "https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00061.html">
- Linux console driver</a> incompatibility introduced in
- early 2018</li>
- </ul>
- </dd>
+ <dd>re-enable "bel"</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-nsterm-256color">nsterm-256color</a>:</dt>
+ "@HOMEPAGE@/terminfo.src.html#tic-linux2.6">linux2.6</a>
+ </dt>
- <dd>
- <ul>
- <li>add nsterm-build309 to replace nsterm-256color,
- assigning the latter as an alias of nsterm, to make mouse
- work with nsterm-256color</li>
- </ul>
- </dd>
+ <dd>fix pound-sign mapping in acsc</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-regent40">regent40</a>:</dt>
+ "@HOMEPAGE@/terminfo.src.html#tic-linux3.0">linux3.0</a>
+ </dt>
- <dd>
- <ul>
- <li>renumber function-keys to match manual</li>
- </ul>
- </dd>
+ <dd>modify to reflect default mapping of shift-tab by kbd
+ 1.14</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-regent60">regent60</a>:</dt>
+ "@HOMEPAGE@/terminfo.src.html#tic-pccons">pccons</a>
+ </dt>
- <dd>
- <ul>
- <li>add cd (clr_eos)</li>
+ <dd>fill in some missing pieces, to make it comparable to the
+ vt220 entry</dd>
- <li>corrected acsc</li>
+ <dt><a href="@HOMEPAGE@/terminfo.src.html#tic-putty">putty</a>
+ </dt>
- <li>add shifted function-keys</li>
- </ul>
- </dd>
+ <dd>use vt100+fnkeys, add rep</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-tvi950">tvi950</a>:</dt>
+ "@HOMEPAGE@/terminfo.src.html#tic-screen">screen</a>
+ </dt>
- <dd>
- <ul>
- <li>added function-key definitions to agree with Televideo
- 950 manual</li>
+ <dd>use vt100+enq</dd>
- <li>corrected acsc</li>
+ <dt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-terminator">terminator</a>
+ </dt>
- <li>remove bogus kf0</li>
+ <dd>corrected tsl capability</dd>
- <li>add bel</li>
- </ul>
- </dd>
+ <dt><a href="@HOMEPAGE@/terminfo.src.html#tic-ti916">ti916</a>
+ </dt>
- <dt><a href=
- "/ncurses/terminfo.src.html#tic-tvi955">tvi955</a>:</dt>
+ <dd>correct cup</dd>
- <dd>
- <ul>
- <li>fix typo</li>
- </ul>
- </dd>
+ <dt><a href="@HOMEPAGE@/terminfo.src.html#tic-tmux">tmux</a>
+ </dt>
- <dt><a href=
- "/ncurses/terminfo.src.html#tic-vi200">vi200</a>:</dt>
+ <dd>change kbs to ^?</dd>
- <dd>
- <ul>
- <li>add acsc string, including right/down-arrow</li>
- </ul>
- </dd>
+ <dt><a href="@HOMEPAGE@/terminfo.src.html#tic-vt220">vt220</a>
+ </dt>
+
+ <dd>use vt220+cvis</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-wy50">wy50</a>:</dt>
+ "@HOMEPAGE@/terminfo.src.html#tic-vt420_lrmm">vt420+lrmm</a>
+ </dt>
- <dd>
- <ul>
- <li>corrected acsc</li>
- </ul>
- </dd>
+ <dd>add smglp and smgrp</dd>
- <dt><a href="/ncurses/terminfo.src.html#tic-wy50">wy50</a> and
- <a href="/ncurses/terminfo.src.html#tic-wy60">wy60</a>:</dt>
+ <dt><a href="@HOMEPAGE@/terminfo.src.html#tic-vt420">vt420</a>
+ </dt>
- <dd>
- <ul>
- <li>add shifted function-keys as kF1 to kF16</li>
- </ul>
- </dd>
+ <dd>use vt420+lrmm</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-xterm_x11hilite">xterm+x11hilite</a>:</dt>
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm-new">xterm-new</a>
+ </dt>
- <dd>
- <ul>
- <li>eliminate unused <em>p5</em> parameter.</li>
- </ul>
- </dd>
+ <dd>add nel</dd>
+
+ <dt><a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm-vt52">xterm-vt52</a>
+ </dt>
+
+ <dd>use vt52+keypad</dd>
</dl>
<p>A few entries use extensions (user-defined terminal
capabilities):</p>
<ul>
- <li>use <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sm_1006"><tt>xterm+sm+1006</tt></a>
- (aka &ldquo;SGR 1006 mouse&rdquo;) for konsole-base and
- putty</li>
+ <li>add shifted Linux console keys in <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-linux_sfkeys">linux+sfkeys</a>
+ entry for <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-screen.linux">screen.linux</a></li>
- <li>add <em><tt>Smol/Rmol</tt></em> user-defined capability to
- <tt>tmux</tt> and <tt>vte-2018</tt></li>
+ <li>add Smulx to <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-alacritty">alacritty</a></li>
- <li>add <em><tt>Smulx</tt></em> user-defined capability to
- <tt>tmux</tt>, <tt>vte-2018</tt></li>
+ <li>add kbeg to <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm_keypad">xterm+keypad</a>
+ to accommodate termcap applications</li>
+
+ <li>add extensions in <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-xterm_tmux">xterm+tmux</a>
+ and <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-ecma_strikeout">ecma+strikeout</a>
+ to <a href=
+ "@HOMEPAGE@/terminfo.src.html#tic-ms-terminal">ms-terminal</a>,
+ but cancel the non-working Cr and Ms capabilities</li>
</ul>
<h3><a name="h3-documentation" id=
@@ -997,88 +792,67 @@
<p>Corrections:</p>
<ul>
- <li>correct error-returns listed in manual pages for a few
- form functions</li>
-
- <li>corrected prototypes in several manpages using script
- to extract those in compilable form.</li>
+ <li>
+ <p>make <em>opts</em> extension for <a href=
+ "@HOMEPAGE@/man/curs_getcchar.3x.html#h3-getcchar"><tt>getcchar</tt></a>
+ work as documented for <a href=
+ "@HOMEPAGE@/announce-6.1.htmll#h4-new-library">ncurses
+ 6.1</a>, adding &ldquo;<tt>-g</tt>&rdquo; flag to
+ <em>demo_new_pair</em> to illustrate.</p>
+ </li>
- <li>fix typo in <a href=
- "@HOMEPAGE@/man/term.5.html#h3-EXTENDED-NUMBER-FORMAT">term.5</a>,
- improve explanation of format</li>
+ <li>
+ <p>modify <a href="@HOMEPAGE@/man/tset.1.html">tset</a>
+ &ldquo;-q&rdquo; option to refrain from modifying
+ terminal modes, to match the documentation.</p>
+ </li>
</ul>
</li>
<li>
- <p>Clarify in manual pages that <a href=
- "@HOMEPAGE@/man/curs_printw.3x.html#h2-PORTABILITY">vwprintw</a>
- and <a href=
- "@HOMEPAGE@/man/curs_scanw.3x.html#h2-PORTABILITY">vwscanw</a>
- are obsolete.<br>
- They have not been part of X/Open Curses since 2007.</p>
- </li>
-
- <li>
<p>New/improved history and portability sections:</p>
<ul>
- <li><a href=
- "@HOMEPAGE@/man/curs_addch.3x.html#h3-ACS-Symbols">curs_addch.3x</a>
- gives some background for ACS symbols.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_getcchar.3x.html#h2-PORTABILITY">curs_getcchar.3x</a>
- explains a difference between ncurses and X/Open
- Curses.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_getstr.3x.html#h2-PORTABILITY">curs_getstr.3x</a>
- gives historical/portability background for the length
- parameter of <tt>wgetnstr</tt>.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_slk.3x.html">curs_slk.3x</a> lists a
- few differences between SVr4 curses and X/Open Curses for
- soft-keys.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_terminfo.3x.html">curs_terminfo.3x</a>
- explains that the initial implementation of terminfo in
- SVr2 was mostly replaced by other developers in SVr3.</li>
-
- <li><a href="@HOMEPAGE@/man/infocmp.1m.html">infocmp.1</a>
- explains that the initial version of terminfo had no tool
- for decompiling descriptions. That came later, with SVr3,
- with a different developer.</li>
-
- <li><a href="@HOMEPAGE@/man/tabs.1">tabs.1</a> tells more
- than you wanted to know about the tool.</li>
-
- <li><a href="@HOMEPAGE@/man/tic.1m.html">tic.1</a> explains
- that the initial version of terminfo had a rudimentary tool
- (based on termcap) for compiling entries. The tool used
- with Unix was developed by others for SVr3.</li>
-
- <li><a href="@HOMEPAGE@/man/toe.1m.html">toe.1</a> explains
- the origin of this tool.</li>
- </ul>
- </li>
+ <li>
+ <p>improve documentation for <a href=
+ "@HOMEPAGE@/man/terminfo.5.html#h3-Parameterized-Strings">
+ tparm</a> and static/dynamic variables.</p>
+ </li>
- <li>
- <p>Improvements for <a href=
- "@HOMEPAGE@/man/user_caps.5.html">user_caps.5</a>:</p>
+ <li>
+ <p>add history note to <a href=
+ "@HOMEPAGE@/man/curs_scanw.3x.html#h2-HISTORY">curs_scanw.3x</a>
+ for &lt;stdarg.h&gt; and &lt;varargs.h&gt;</p>
+ </li>
- <ul>
- <li>mention <tt>meml</tt>, <tt>memu</tt> and
- <tt>box1</tt></li>
+ <li>
+ <p>add history note to <a href=
+ "@HOMEPAGE@/man/curs_printw.3x.html#h2-HISTORY">curs_printw.3x</a>
+ for &lt;stdarg.h&gt; and &lt;varargs.h&gt;</p>
+ </li>
- <li>expanded description of <tt>XM</tt></li>
+ <li>
+ <p>add portability note to <a href=
+ "@HOMEPAGE@/man/ncurses.3x.html#h3-Header-files">ncurses.3x</a>
+ regarding &lt;stdarg.h&gt;</p>
+ </li>
- <li>add a clarification regarding the <tt>RGB</tt>
- capability.</li>
+ <li>
+ <p>add historical notes to <a href=
+ "@HOMEPAGE@/man/tput.1.html#h2-HISTORY">tput</a>,
+ <a href="@HOMEPAGE@/man/curs_terminfo.3x.html#h2-HISTORY">
+ curses-terminfo</a> and <a href=
+ "@HOMEPAGE@/man/curs_color.3x.html#h2-HISTORY">curses-color</a>
+ manpages based on source-code for SVr2, SVr3 and
+ SVr4.</p>
+ </li>
- <li>mention user_caps.5 in the tic and infocmp manual
- pages.</li>
+ <li>
+ <p>improve history section for <a href=
+ "@HOMEPAGE@/man/tset.1.html#h2-HISTORY">tset</a> manpage
+ based on the 1BSD tarball, which preceded BSD's SCCS
+ checkins by more than three years.</p>
+ </li>
</ul>
</li>
@@ -1086,49 +860,66 @@
<p>Other improvements:</p>
<ul>
- <li><a href=
- "@HOMEPAGE@/man/curs_add_wch.3x.html#h3-Line-Graphics">curs_add_wch.3x</a>
- adds note about Unicode terminology for the line-drawing
- characters.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_color.3x.html#h3-RETURN-VALUE">curs_color.3x</a>
- improves discussion of error returns and extensions.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_mouse.3x.html">curs_mouse.3x</a>
- explains how the <tt>kmous</tt> and <tt>XM</tt>
- capabilities are used for xterm-mouse input.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_refresh.3x.html#h3-wnoutrefresh_doupdate">
- curs_refresh.3x</a> improves documentation regarding the
- virtual and physical screens.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_util.3x.html">curs_util.3x</a>
- mentions a difference between SVr4 and X/Open Curses for
- <tt>unctrl.h</tt></li>
-
- <li><a href=
- "@HOMEPAGE@/man/curs_variables.3x.html#h2-PORTABILITY">curs_variables.3x</a>
- improves description of the <em>init_tabs</em> capability
- and <tt>TABSIZE</tt> variable.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/ncurses.3x.html#h2-ALTERNATE-CONFIGURATIONS">
- ncurses.3x</a> improves documentation regarding
- feature-test macros in curses.h</li>
-
- <li><a href=
- "@HOMEPAGE@/man/resizeterm.3x.html#h3-resize_term">resizeterm.3x</a>
- about top-level windows which touch the screen's
- borders.</li>
-
- <li><a href=
- "@HOMEPAGE@/man/tput.1.html#h3-Terminal-Size">tput.1</a>
- clarifies how <em>tput</em> determines the terminal
- size.</li>
+ <li>
+ <p>explain in <a href=
+ "@HOMEPAGE@/man/ncurses.3x.html#h2-ALTERNATE-CONFIGURATIONS">
+ ncurses.3x</a> that functions in the tinfo library do not
+ rely upon wide-characters.</p>
+ </li>
+
+ <li>
+ <p>improve manual page for <a href=
+ "@HOMEPAGE@/man/panel.3x.html#h2-PORTABILITY">panel</a>
+ library, extending the portability section as well as
+ documenting error-returns.</p>
+ </li>
+
+ <li>
+ <p>add section on margins to <a href=
+ "@HOMEPAGE@/man/terminfo.5.html#h3-Margins">terminfo.5</a>,
+ adapted from X/Open Curses.</p>
+ </li>
+
+ <li>
+ <p>improve <a href=
+ "@HOMEPAGE@/man/term.5.html#h3-LEGACY-STORAGE-FORMAT">man/term.5</a>
+ section on legacy storage format.</p>
+ </li>
+
+ <li>
+ <p>add a note in <a href=
+ "@HOMEPAGE@/man/terminfo.5.html#h3-Predefined-Capabilities">
+ terminfo.5</a> explaining that no-parameter strings such
+ as <em><tt>sgr0</tt></em> or <em><tt>cnorm</tt></em>
+ should not be used with tparm.</p>
+ </li>
+
+ <li>
+ <p>improve description of BSD-style padding in <a href=
+ "@HOMEPAGE@/man/curs_termcap.3x.html#h2-BUGS">curs_termcap.3x</a></p>
+ </li>
+
+ <li>
+ <p>improve discussion of padding versus <tt>tparm</tt>
+ and <tt>tputs</tt> in <a href=
+ "@HOMEPAGE@/man/curs_terminfo.3x.html#h3-Formatting-Output">
+ man/curs_terminfo.3x</a></p>
+ </li>
+
+ <li>
+ <p>add a note in manual page to explain <a href=
+ "@HOMEPAGE@/man/curs_getch.3x.html#h3-Ungetting-characters">
+ ungetch</a> vs <a href=
+ "@HOMEPAGE@/man/curs_get_wch.3x.html#h3-unget_wch">unget_wch</a>.</p>
+ </li>
+
+ <li>
+ <p>improve description of error-returns in <a href=
+ "@HOMEPAGE@/man/curs_addch.3x.html#h2-RETURN-VALUE">waddch</a>
+ and <a href=
+ "@HOMEPAGE@/man/curs_addstr.3x.html#h2-RETURN-VALUE">waddnstr</a>
+ manual pages.</p>
+ </li>
</ul>
</li>
</ul>
@@ -1137,184 +928,63 @@
are to existing pages).</p>
<p>Some of the improvements are more subtle, relating to the way
- the information is presented. For instance, the generated
- terminfo.5 file uses a different table layout, allowing it to use
- space on wide terminals more effectively.</p>
+ the information is presented. For instance, hyphenation is
+ suppressed in the HTML files generated from manual pages because
+ an upgrade to <em>groff</em> gave noticeably poorer results,
+ interfering with the process of creating links between the
+ resulting webpages.</p>
<h3><a name="h3-bug-fixes" id="h3-bug-fixes">Interesting
bug-fixes</a></h3>
<p>While there were many bugs fixed during development of ncurses
- 6.2, only a few (the reason for this release) were both important
+ 6.3, only a few (the reason for this release) were both important
and interesting. Most of the bug-fixes were for local issues
which did not affect compatibility across releases. Since those
- are detailed in the NEWS file no elaboration is needed here.</p>
+ are detailed in the <a href=
+ "@HOMEPAGE@/NEWS.html#t20211018">NEWS</a> file no elaboration is
+ needed here.</p>
- <p>The interesting bugs were in tic/infocmp's handling of
- user-defined capabilities. These were not recent bugs. Initially
- it was a simple problem:</p>
+ <p>The interesting bugs were:</p>
<ul>
- <li>The user-defined capabilities can be any type (boolean,
- number or string), but once given a type all uses of the name
- must conform to that type&mdash;unless some special support for
- a particular multi-typed name is built into ncurses.</li>
-
<li>
- <p>One of simpleterm's contributors copied some definitions
- for using <em>tmux</em>'s user-defined capabilities in
+ <p>modify <a href=
+ "@HOMEPAGE@/man/curs_bkgd.3x.html#h3-bkgd">wbkgd</a> and
<a href=
- "https://git.suckless.org/st/commit/06f8cf8ca87a81db15816658c40b2afcd1ad5332.html">
- late in 2016</a>.</p>
-
- <blockquote>
- <pre class="demo-name">
-diff --git a/st.info b/st.info
-@@ -185,7 +185,10 @@ st| simpleterm,
- tsl=\E]0;,
- xenl,
- vpa=\E[%i%p1%dd,
--
-+# Tmux unofficial extensions, see TERMINFO EXTENSIONS in tmux(1)
-+ Se,
-+ Ss,
-+ Tc,
-
- st-256color| simpleterm with 256 colors,
- use=st,
-</pre>
- </blockquote>
- </li>
-
- <li>
- <p>Later, in (referring to a version from <a href=
- "https://git.suckless.org/st/commit/c0882f2ed1d7a2dd0fa2efa52157e6fc6fde3652.html">
- mid-2017</a>), a user asked to have it updated in
- ncurses.</p>
- </li>
+ "@HOMEPAGE@/man/curs_bkgrnd.3x.html#h3-bkgrnd">wbkgrnd</a> to
+ avoid storing a null in the background character, because it
+ may be used in cases where the corresponding 0x80 is not
+ treated as a null.</p>
- <li>
- <p>However, it had an error from the change in late 2016. The
- terminal description made what <em>tmux</em> expected to be
- <strong>string</strong> actually a
- <strong>boolean</strong>.</p>
-
- <p>Over the years, there were problems with each of
- simpleterm's terminal descriptions. I repaired those, and
- usually dealt with the problem.</p>
+ <p>This was a regression introduced in ncurses 6.2 (<a href=
+ "https://lists.gnu.org/archive/html/bug-ncurses/2020-03/msg00000.html">reported</a>
+ on the mailing list), for which the workaround was to specify
+ a blank for the background character.</p>
</li>
<li>
- <p>The difference in this case was that when compiling the
- terminal database, <em>tic</em> may have in memory the
- definitions for more than one terminal description (so that
- it can resolve &ldquo;<tt>use=</tt>&rdquo; clauses). Seeing
- two different types for the same name, in certain situations
- it would incorrectly merge the symbol tables for the two
- terminal descriptions.</p>
- </li>
-
- <li>
- <p>On simpleterm's side, their bug was finally fixed in
+ <p>remove output-related checks for <a href=
+ "@HOMEPAGE@/man/curs_outopts.3x.html">nl/nonl</a> (also
<a href=
- "https://git.suckless.org/st/commit/83866428de031300eab03fbb116bcf7d2b1d4f60.html">
- late 2019</a>, three years after the bug was created.</p>
- </li>
- </ul>
-
- <p>For ncurses, the elapsed time to fix this bug was less than
- three years. Someone reported a problem with the terminal
- description a few weeks after releasing ncurses 6.1 (in <a href=
- "https://github.com/tmux/tmux/issues/1264">tmux #1264</a>), and
- the terminal description was updated that week (ncurses patch
- <a href="@HOMEPAGE@/NEWS.html#t20180224">20180224</a>):</p>
-
- <blockquote>
- <pre class="demo-name">
-20180224
- + modify _nc_resolve_uses2() to detect incompatible types when merging
- a "use=" clause of extended capabilities. The problem was seen in a
- defective terminfo integrated from simpleterm sources in 20171111,
- compounded by repair in 20180121.
- + correct Ss/Ms interchange in st-0.7 entry (tmux #1264) -TD
-</pre>
- </blockquote>
-
- <p>The larger part of that change added a check to prevent a
- simple merge of terminal descriptions where the same user-defined
- name was used with different types. But it raised some
- questions:</p>
-
- <ul>
- <li>
- <p>Was there a reliable way to manage terminal descriptions
- which used the same extended name in different ways?</p>
+ "https://lists.gnu.org/archive/html/bug-ncurses/2020-09/msg00018.html">
+ reported</a> on the mailing list).</p>
</li>
<li>
- <p>Should ncurses provide a registry of well-known extended
- names, with their types?</p>
- </li>
- </ul>
+ <p>improve tparm implementation of <tt>%P</tt> and
+ <tt>%g</tt>, more closely matching SVr4 terminfo. Those
+ denote <em>static</em> and <em>dynamic</em> variables in
+ terminfo expressions.</p>
- <p>Since the correction to <a href=
- "@HOMEPAGE@/ncurses.html#download_database"><tt>terminfo.src</tt></a>
- could have been readily adopted by packagers, there was nothing
- more to be done from ncurses' standpoint on that part. But
- improving ncurses to prevent issues like that is the reason for
- making a release.</p>
-
- <p>Nothing more (constructive) was mentioned with regard to
- simpleterm. But a few problems were found in the handling of
- user-defined capabilities:</p>
-
- <ul>
- <li>
- <p>Forward-references to user-defined capabilities in a
- &ldquo;<tt>use=</tt>&rdquo; clause did not allocate new data
- for each use. In <em>tic</em>, successive compilation of
- terminal entries could add user-defined capabilities to the
- wrong terminal entry.</p>
-
- <p>This was not noticed before, since xterm's terminal
- descriptions were the main users of the feature, and almost
- all of the uses of the building-blocks which contained
- user-defined capabilities were backward-references.</p>
- </li>
-
- <li>
- <p>There is one (documented) case where ncurses 6.1 supports
- a user-defined capability that could be any type (i.e.,
- &ldquo;RGB&rdquo;). The check added in February 2018 to guard
- against mismatches did not handle all of the combinations
- needed.</p>
+ <p>Exactly what those terms meant was never documented before
+ in any implementation of curses, aside from source code.
+ Unlike the other two fixes, the problem was discovered while
+ studying OpenBSD's version of <a href=
+ "@HOMEPAGE@/ncurses-openbsd.html#issue_tput">tset</a>.</p>
</li>
</ul>
- <p>Both of these issues dated from the original implementation of
- user-defined capabilities. Fixing them does not change the
- terminal database, but a older <em>tic</em> without the fixes
- will not be able to handle terminfo sources which rely upon those
- fixes. Starting in June 2019, the download link for the terminfo
- source file was capped at that date. The development sources have
- an up-to-date copy of the file, for people with a legitimate need
- for it.</p>
-
- <p>The &ldquo;<tt>-c</tt>&rdquo; (check) option of <em>tic</em>
- is not very useful if it cannot offer advice on parameters needed
- for user-defined capabilities. The various <em>Caps</em> files
- were reorganized to reduce redundancy, and in the common portion
- (<a href=
- "https://github.com/ThomasDickey/ncurses-snapshots/blob/master/include/Caps-ncurses">Caps-ncurses</a>),
- a registry of user-defined capabilities is provided for use by
- <em>tic</em>. While users can still define their own custom
- capabilities, <em>tic</em> will not offer any advice when their
- parameters do not match.</p>
-
- <p>In ncurses 6.2, <em>tic</em> makes a special check to allow
- any type for <em>RGB</em>, but its being able to do this relies
- upon fixes made in the ncurses library in mid-2019.</p>
-
<h3><a name="h3-config-config" id=
"h3-config-config">Configuration changes</a></h3>
@@ -1332,52 +1002,73 @@ diff --git a/st.info b/st.info
<p>There are a few new/modified configure options:</p>
<dl>
- <dt><tt>--with-config-suffix</tt>
+ <dt><tt>--enable-fvisibility</tt>
</dt>
<dd>
- <p>helps work around a filename conflict with Debian packages
- versus test-packages.</p>
+ <p>new configure option and check for <em>gcc</em>
+ <tt>-fvisibility=hidden</tt> feature</p>
</dd>
- <dt><tt>--with-ada-libname</tt>
+ <dt><tt>--enable-leaks</tt>
</dt>
<dd>
- <p>allows one to rename the &ldquo;AdaCurses&rdquo; library
- (at least one packager prefers a lowercase name).</p>
+ <p>corrected to allow turning leak-checking off later in a
+ set of options.</p>
</dd>
- <dt><tt>--with-fallbacks</tt>
+ <dt><tt>--enable-stdnoreturn</tt>
</dt>
<dd>
- <p>now ensures there is a value, and adds the fallback
- information to top-level Makefile summary.</p>
+ <p>new configure option makes the <code>_Noreturn</code>
+ keyword optional to ease transition.</p>
</dd>
- <dt><tt>--with-pcre2</tt>
+ <dt><tt>--disable-pkg-ldflags</tt>
</dt>
<dd>
- <p>check for pcre-posix library to help with MinGW port.</p>
+ <p>revised option also controls whether <code>$LDFLAGS</code>
+ from the build is provided in &ldquo;<tt>-config</tt>&rdquo;
+ and &ldquo;<tt>.pc</tt>&rdquo; files.</p>
</dd>
- <dt><tt>--with-tic-path</tt> and<br></dt>
+ <dt><tt>--disable-root-access</tt>
+ </dt>
+
+ <dd>
+ <p>add configure option which tells ncurses to disallow most
+ file-opens by setuid processes.</p>
+ </dd>
- <dt><tt>--with-infocmp-path</tt>
+ <dt><tt>--disable-wattr-macros</tt>
</dt>
<dd>
- <p>help work around problems building fallback source using
- pre-6.0 tic/infocmp.</p>
+ <p>changed default to help packagers who reuse wide ncursesw
+ header file with non-wide ncurses library.</p>
</dd>
- <dt><tt>--with-versioned-syms</tt>
+ <dt><tt>--with-pkg-config-libdir</tt>
</dt>
<dd>
- <p>option value can now be a relative pathname.</p>
+ <p>revised option uses the actual search path from
+ <em>pkg-config</em> or <em>pkgconf</em> using the output from
+ <tt>--debug</tt>.</p>
+ </dd>
+
+ <dt><tt>--with-ada-libname</tt><br>
+ <tt>--with-form-libname</tt><br>
+ <tt>--with-menu-libname</tt><br>
+ <tt>--with-panel-libname</tt>
+ </dt>
+
+ <dd>
+ <p>new several <tt>--with-<em>xxx</em>-libname</tt> options,
+ to help with pkgsrc</p>
</dd>
</dl>
@@ -1388,148 +1079,107 @@ diff --git a/st.info b/st.info
<ul>
<li>
- <p>ignore <a href=
- "/ncurses/man/ncurses.3x.html#h3-TERMINFO"><tt>$TERMINFO</tt></a>
- as a default value in configure script if it came from the
- <tt>infocmp</tt> <strong><tt>-Q</tt></strong> option.</p>
+ <p>add a special case in the configure script to work around
+ one of the build-time breakages reported for <a href=
+ "@HOMEPAGE@/ncurses-openbsd.html">OpenBSD 6</a> here:</p>
+
+ <blockquote>
+ <p><a href=
+ "https://www.mail-archive.com/bugs@openbsd.org/msg13200.html">
+ https://www.mail-archive.com/bugs@openbsd.org/msg13200.html</a></p>
+ </blockquote>
</li>
<li>
- <p>distinguish gcc from icc and clang when the
- <tt>--enable-warnings</tt> option is not used, to avoid
- unnecessary warnings about unrecognized inline options</p>
+ <p>modify configure check for <em>libtool</em> to prevent
+ accidental use of an OpenBSD program which uses the same
+ name.</p>
</li>
<li>
- <p>consistently prepend new libraries as they are found
- during configuration, rather than relying upon the linker to
- resolve order dependencies of libraries.</p>
+ <p>modify configuration checks for build-time tic/infocmp to
+ use <em>AC_CHECK_TOOL</em>. That can still be overridden by
+ <tt>--with-tic-path</tt> and <tt>--with-infocmp-path</tt>
+ when fallbacks are used, but even if not using fallbacks, the
+ improved check may help with cross-compiling.</p>
</li>
<li>
- <p>modified configure scripts to reduce relinking/ranlib
- during library install :</p>
-
- <ul>
- <li>use &ldquo;<tt>install -p</tt>&rdquo; when available,
- to avoid need for ranlib of static libraries.</li>
-
- <li>scripts which use
- &ldquo;<tt>--disable-relink</tt>;&rdquo; add a 1-second
- sleep to work around tools which use whole-second
- timestamps, e.g., in <tt>utime</tt> rather than the actual
- file system resolution.</li>
- </ul>
+ <p>relax modification-time comparison in
+ <em>CF_LINK_FUNCS</em> to allow it to accept link() function
+ with NFS filesystems which change the mtime on the link
+ target, e.g., several BSD systems.</p>
</li>
<li>
- <p id="getenv-check">add configure check for <a href=
- "#getenv-fixes"><tt>getenv</tt></a> to work around
- implementation shown in Emscripten which overwrites the
- previous return value on each call.</p>
-
- <p>Use that to optionally suppress <tt>START_TRACE</tt>
- macro, whose call to <tt>getenv</tt> may not work
- properly</p>
+ <p>modify configure check for c89/c99 aliases of
+ <em>clang</em> to use its <tt>-std</tt> option instead,
+ because some platforms, in particular macOS, do not provide
+ workable c89/c99 aliases.</p>
</li>
<li>
- <p>change target configure level for <tt>_XOPEN_SOURCE</tt>
- to 600 to address use of <tt>vsscanf</tt> and
- <tt>setenv</tt>.</p>
+ <p>modify <em>CF_NCURSES_CONFIG</em> to work around
+ <em>Xcode</em>'s c99 "-W" option, which conflicts with
+ conventional use for passing linker options.</p>
</li>
<li>
- <p>reduce use of <tt>_GNU_SOURCE</tt> for current glibc where
- <tt>_DEFAULT_SOURCE</tt> combines with
- <tt>_XOPEN_SOURCE</tt></p>
+ <p>modify configure scripts to filter out redefinitions of
+ _XOPEN_SOURCE, e.g., for NetBSD which generally supports 500,
+ but 600 is needed for ncursesw.</p>
+ </li>
+ </ul>
- <p>Allow for Cygwin's newlib when checking for the
- _DEFAULT_SOURCE symbol.</p>
+ <p>Here are some of the other portability fixes:</p>
- <p>MidnightBSD is now checked for the
- <tt>_XOPEN_SOURCE</tt>-related definitions.</p>
+ <ul>
+ <li>
+ <p>change configure-check and source-code for gcc's noreturn
+ attribute to assume it is a prefix rather than suffix,
+ matching c11's _Noreturn convention.</p>
</li>
<li>
- <p>If the check for <tt>va_copy</tt> or <tt>__va_copy</tt>
- fails,</p>
-
- <ul>
- <li>configure now tries copying the pointers for
- <tt>va_list</tt>, or as an array.</li>
-
- <li>alternatively, it checks for
- <tt>__builtin_va_copy</tt>(), which could be used with AIX
- <tt>xlc</tt> in <em>c89</em> mode.</li>
- </ul>
+ <p>modify mk-1st.awk to account for extra-suffix configure
+ option.</p>
</li>
<li>
- <p>several changes to support a port to Ultrix 3.1:</p>
-
- <ul>
- <li>check if "b" binary feature of fopen works</li>
-
- <li>check for missing feature of locale.h</li>
-
- <li>add fallback for strstr() in test-programs</li>
-
- <li>add fallback for STDOUT_FILENO in test-programs</li>
- </ul>
+ <p>build-fix for termsort module when configured with
+ termcap.</p>
</li>
<li>
- <p>The <em>test/configure</em> script (used for <a href=
- "/ncurses/ncurses-examples.html"><em>ncurses-examples</em></a>)
- is improved:</p>
-
- <ul>
- <li>work around non-ncurses termcap.h file, e.g., in
- Slackware.</li>
-
- <li>check for <a href=
- "/ncurses/man/curs_variables.3x.html#h3-TABSIZE"><tt>TABSIZE</tt></a>
- variable.</li>
-
- <li>checks for the X11/Intrinsic.h header, accommodate
- recent MacOS changes which largely emptied
- <tt>/usr/include</tt>.</li>
- </ul>
+ <p>modify configure script and makefiles to support ".PHONY"
+ make program feature.</p>
</li>
- </ul>
- <p>Here are some of the other portability fixes:</p>
-
- <ul>
<li>
- <p>added dummy "check" rule in top-level and test-Makefile to
- simplify building test-packages for ArchLinux.</p>
+ <p>amend <em>libtool</em> configuration to add dependency for
+ install.tic, etc., in ncurses/Makefile on the lower-level
+ libraries.</p>
</li>
<li>
- <p>dropped library-dependency on psapi for MinGW port, since
- win_driver.c defines <tt>PSAPI_VERSION</tt> to 2, making it
- use <tt>GetProcessImageFileName</tt> from kernel32.dll</p>
+ <p>modify Ada95 source-generation utility to write to a file
+ given as parameter rather than to the standard output,
+ allowing builds with MinGW.</p>
</li>
<li>
- <p>made build-fixes for configuration using --program-suffix
- with Ada95, noticed with MacOS but applicable to other
- platforms without libpanelw, etc.</p>
+ <p>amend tic/infocmp check to allow for the respective tool's
+ absence.</p>
</li>
<li>
- <p>modified ncurses/Makefile.in to fix a case where
- Debian/testing changes to the ld --as-needed configuration
- broke ncurses-examples test packages.</p>
+ <p>build-fixes for gnat 10.1.1, whose gnatmake drops
+ integration with gprbuild.</p>
</li>
<li>
- <p>used <tt>_WIN32</tt>/<tt>_WIN64</tt> in preference to
- <tt>__MINGW32__</tt>/<tt>__MINGW64__</tt> symbols to simplify
- building with Microsoft Visual C++, since the former are
- defined in both compiler configurations.</p>
+ <p>correct configure version-check/warning for g++ to allow
+ for 10.x</p>
</li>
</ul>
@@ -1605,7 +1255,7 @@ diff --git a/st.info b/st.info
<p>The <span class="main-name">ncurses</span> utilities have
options to allow you to filter terminfo entries for use with
less capable <em>curses</em>/<em>terminfo</em> versions such
- as the HP/UX and AIX ports.</p>
+ as the HP-UX and AIX ports.</p>
</li>
</ul>
@@ -1616,10 +1266,10 @@ diff --git a/st.info b/st.info
<li>
<p>The API is 8-bit clean and base-level conformant with the
X/OPEN curses specification, XSI curses (that is, it
- implements all BASE level features, and most EXTENDED
- features). It includes many function calls not supported
- under SVr4 curses (but portability of all calls is documented
- so you can use the SVr4 subset only).</p>
+ implements all <em>BASE</em> level features, and most
+ <em>EXTENDED</em> features). It includes many function calls
+ not supported under SVr4 curses (but portability of all calls
+ is documented so you can use the SVr4 subset only).</p>
</li>
<li>
@@ -1662,6 +1312,11 @@ diff --git a/st.info b/st.info
</li>
<li>
+ <p>Support for direct-color terminals, such as modern
+ xterm.</p>
+ </li>
+
+ <li>
<p>Support for 256-color terminals, such as modern xterm.</p>
</li>
@@ -1752,7 +1407,7 @@ diff --git a/st.info b/st.info
<li>
<p>The library meets the XSI requirement that every macro
- entry point have a corresponding function which may be linked
+ entry point has a corresponding function which may be linked
(and will be prototype-checked) if the macro definition is
disabled with <code>#undef</code>.</p>
</li>
@@ -1913,8 +1568,7 @@ diff --git a/st.info b/st.info
<dd>
<p>a replacement for <code>ssh</code>.</p>
- <p><a href=
- "https://mosh.mit.edu/">https://mosh.mit.edu/</a></p>
+ <p><a href="https://mosh.org/">https://mosh.org/</a></p>
</dd>
<dt><span class="part-name">tack</span>
@@ -2005,7 +1659,7 @@ diff --git a/st.info b/st.info
<p>Ongoing development work is done by <a href=
"mailto:dickey@invisible-island.net">Thomas E. Dickey</a>. Thomas
E. Dickey has acted as the maintainer for the Free Software
- Foundation, which holds a <a href=
+ Foundation, which held a <a href=
"@HOMEPAGE@/ncurses-license.html">copyright on ncurses</a> for
releases 4.2 through 6.1. Following the release of ncurses 6.1,
effective as of release 6.2, copyright for ncurses reverted to
@@ -2026,7 +1680,6 @@ diff --git a/st.info b/st.info
"mailto:bug-ncurses-request@gnu.org">bug-ncurses-request@gnu.org</a>
</blockquote>
containing the line:
-
<blockquote>
<p><code>subscribe</code>
<em>&lt;name&gt;@&lt;host.domain&gt;</em></p>
@@ -2050,10 +1703,10 @@ diff --git a/st.info b/st.info
<blockquote>
<p><a href=
- "ftp://ftp.invisible-island.net/ncurses/6.1/">ftp://ftp.invisible-island.net/ncurses/6.1/</a>
+ "ftp://ftp.invisible-island.net/ncurses/6.2/">ftp://ftp.invisible-island.net/ncurses/6.2/</a>
and<br>
<a href=
- "https://invisible-mirror.net/archives/ncurses/6.1/">https://invisible-mirror.net/archives/ncurses/6.1/</a>&nbsp;.</p>
+ "https://invisible-mirror.net/archives/ncurses/6.2/">https://invisible-mirror.net/archives/ncurses/6.2/</a>&nbsp;.</p>
</blockquote>
<p>There is an archive of the mailing list here:</p>
@@ -2082,6 +1735,9 @@ diff --git a/st.info b/st.info
<span class="main-name">ncurses</span> versus <span class=
"main-name">slang</span> (S-Lang)</a></li>
+ <li><a href="@HOMEPAGE@/ncurses-openbsd.html">Comments on
+ <span class="main-name">OpenBSD</span></a></li>
+
<li><a href="@HOMEPAGE@/tack.html">tack &ndash; terminfo action
checker</a></li>
@@ -2118,11 +1774,9 @@ diff --git a/st.info b/st.info
<li>
<a href="#h2-release-notes">Release Notes</a>
-
<ul>
<li>
<a href="#h3-library">Library improvements</a>
-
<ul>
<li><a href="#h4-new-library">New features</a></li>
@@ -2133,7 +1787,6 @@ diff --git a/st.info b/st.info
<li>
<a href="#h3-programs">Program improvements</a>
-
<ul>
<li><a href="#h4-utilities">Utilities</a></li>
@@ -2149,7 +1802,6 @@ diff --git a/st.info b/st.info
<li>
<a href="#h3-config-config">Configuration changes</a>
-
<ul>
<li><a href="#h4-config-major">Major changes</a></li>
diff --git a/c++/Makefile.in b/c++/Makefile.in
index 9b22b6a..99f21da 100644
--- a/c++/Makefile.in
+++ b/c++/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.119 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.133 2021/07/03 18:53:57 tom Exp $
##############################################################################
-# Copyright 2018,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -68,7 +68,7 @@ LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
LIBTOOL_VERSION = @LIBTOOL_VERSION@
LT_UNDEF = @LT_UNDEF@
-INSTALL = @INSTALL@
+INSTALL = @INSTALL@
INSTALL_LIB = $(INSTALL) @INSTALL_LIB@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_OPT_P = @INSTALL_OPT_P@
@@ -89,7 +89,7 @@ CXXFLAGS = @CXXFLAGS@ @EXTRA_CXXFLAGS@
CXXLIBS = @CXXLIBS@
INCDIR = ../include
-CPPFLAGS = -DHAVE_CONFIG_H -I../c++ @CPPFLAGS@
+CPPFLAGS = -DHAVE_CONFIG_H -DBUILDING_NCURSES_CXX -I../c++ @CPPFLAGS@
CTAGS = @CTAGS@
ETAGS = @ETAGS@
@@ -98,9 +98,9 @@ CC = ${CXX}
CCFLAGS = $(CPPFLAGS) $(CXXFLAGS)
CFLAGS_LIBTOOL = $(CCFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CXX_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CXX_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -114,7 +114,11 @@ LOCAL_LIBDIR = @top_builddir@/lib
LINK = @LINK_PROGS@ $(LIBTOOL_LINK) @CXXLDFLAGS@
SHLIB_DIRS = -L../lib
-SHLIB_LIST = $(SHLIB_DIRS) -lform@USE_LIB_SUFFIX@ -lmenu@USE_LIB_SUFFIX@ -lpanel@USE_LIB_SUFFIX@ -lncurses@USE_LIB_SUFFIX@ @SHLIB_LIST@
+SHLIB_LIST = $(SHLIB_DIRS) \
+ -l@FORM_NAME@@USE_LIB_SUFFIX@ \
+ -l@MENU_NAME@@USE_LIB_SUFFIX@ \
+ -l@PANEL_NAME@@USE_LIB_SUFFIX@ \
+ -lncurses@USE_LIB_SUFFIX@ @SHLIB_LIST@
LIBROOT = ncurses++
@@ -124,6 +128,10 @@ LIBNAME = @LIB_PREFIX@$(LIBROOT)@CXX_LIB_SUFFIX@
LIBRARIES = @Libs_To_Make@
+LINT = @LINT@
+LINT_OPTS = @LINT_OPTS@
+LINT_LIBS = -lncurses @LIBS@
+
LINK_FLAGS = @EXTRA_LDFLAGS@ -L../lib -l$(LIBROOT)@USE_LIB_SUFFIX@
RPATH_LIST = @RPATH_LIST@
MK_SHARED_LIB = @MK_SHARED_LIB@
@@ -136,7 +144,7 @@ LINK_SHARED = $(LINK_FLAGS)
# flags for test-programs
TEST_LIBS = @TEST_LIBS@
-TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
+TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
TEST_LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \
@LD_MODEL@ $(TEST_LIBS) @LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS)
@@ -155,15 +163,31 @@ LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \
AUTO_SRC = \
etip.h
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : depend
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
libs :: $(AUTO_SRC) $(LIBRARIES)
@MAKE_TESTS@all :: demo$x
-sources : $(AUTO_SRC)
-
depend :
+sources : $(AUTO_SRC)
+
tags:
$(CTAGS) *.[h] *.cc
@@ -186,29 +210,34 @@ realclean :: distclean
###############################################################################
-internal_h = $(srcdir)/internal.h \
- $(INCDIR)/ncurses_cfg.h \
- $(INCDIR)/nc_mingw.h \
- $(INCDIR)/nc_string.h
-
-etip_h = etip.h \
- $(INCDIR)/ncurses_dll.h
+HEADER_DEPS = @INTERNALS_HDR@ \
+ etip.h \
+ ../include/curses.h \
+ ../include/eti.h \
+ ../include/form.h \
+ ../include/menu.h \
+ ../include/ncurses_cfg.h \
+ ../include/ncurses_def.h \
+ ../include/ncurses_dll.h \
+ ../include/panel.h \
+ ../include/unctrl.h \
+ $(INCDIR)/nc_string.h \
+ $(srcdir)/cursesp.h \
+ $(srcdir)/cursesw.h \
+ $(srcdir)/cursslk.h \
+ $(srcdir)/internal.h
cursesw_h = $(srcdir)/cursesw.h \
- $(etip_h) \
- $(INCDIR)/curses.h
+ $(HEADER_DEPS)
cursesp_h = $(srcdir)/cursesp.h \
- $(cursesw_h) \
- $(INCDIR)/panel.h
+ $(cursesw_h)
cursesf_h = $(srcdir)/cursesf.h \
- $(cursesp_h) \
- $(INCDIR)/form.h
+ $(cursesp_h)
cursesm_h = $(srcdir)/cursesm.h \
- $(cursesp_h) \
- $(INCDIR)/menu.h
+ $(cursesp_h)
cursslk_h = $(srcdir)/cursslk.h \
$(cursesw_h)
@@ -217,25 +246,25 @@ cursesapp_h = $(srcdir)/cursesapp.h \
$(cursslk_h)
$(INCDIR)/form.h :
- cd ../form && $(MAKE) $@
+ ( cd ../form && $(MAKE) $@ )
$(INCDIR)/menu.h :
- cd ../menu && $(MAKE) $@
+ ( cd ../menu && $(MAKE) $@ )
$(INCDIR)/panel.h :
- cd ../panel && $(MAKE) $@
+ ( cd ../panel && $(MAKE) $@ )
###############################################################################
OBJS_DEMO = $(MODEL)/demo$o
$(MODEL)/demo$o : $(srcdir)/demo.cc \
- $(internal_h) \
+ $(HEADER_DEPS) \
$(cursesf_h) \
$(cursesm_h) \
$(cursesapp_h)
@echo 'compiling demo (obj_s)'
- @$(LIBTOOL_COMPILE) $(CXX) $(CFLAGS_DEFAULT) -c $(srcdir)/demo.cc -o $@
+ @( cd $(MODEL) && $(LIBTOOL_COMPILE) $(CXX) $(CFLAGS_DEFAULT) -c $(top_srcdir)/c++/demo.cc -o $@ )
demo$x: $(OBJS_DEMO) \
$(LIBRARIES) \
@@ -246,6 +275,18 @@ etip.h: $(srcdir)/etip.h.in $(srcdir)/edit_cfg.sh
cp $(srcdir)/etip.h.in $@
$(SHELL) $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
+# Verify that each header-file can be compiled without including another.
+check ::
+ @$(SHELL) -c "for header in *.h;\
+ do \
+ [ \$${header} = etip.h ] && continue; \
+ echo \"** testing \$${header}\" ; \
+ echo \"#include <\$${header}>\" >headers.cc; \
+ echo \"int main(int argc, char **argv) { (void) argc; (void) argv; return 0; }\" >>headers.cc; \
+ $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) headers.cc; \
+ done"
+ -@rm -f headers.*
+
###############################################################################
# The remainder of this file is automatically generated during configuration
###############################################################################
diff --git a/c++/NEWS b/c++/NEWS
index 6994893..998e5ff 100644
--- a/c++/NEWS
+++ b/c++/NEWS
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-1999,2006 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.5 2020/02/02 23:34:34 tom Exp $
+-- $Id: NEWS,v 1.6 2021/06/17 21:20:30 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that the ncurses C++ binding has gone
through starting with the integration of menu and forms integration
@@ -37,19 +37,19 @@ into the binding.
to view the pad.
970908 + Improve NCursesWindow class: added additional methods to
- cover more ncurses functionality. Make refresh() and
+ cover more ncurses functionality. Make refresh() and
noutrefresh() virtual members to allow different implementation
in the NCursesPanel class.
+ CAUTION: changed order of parameters in vline() and hline() of
NCursesWindow class.
+ Make refresh() in NCursesPanel non-static, it is now a
- reimplementation of refresh() in the base class. Added
+ reimplementation of refresh() in the base class. Added
noutrefresh() to NCursesPanel.
+ Added NCursesForm and related classes to support libform
functionality.
+ Moved most of configuration related stuff from cursesw.h to
etip.h
- + Added NCursesApplication class to support easy configuration
+ + Added NCursesApplication class to support easy configuration
of menu and forms related attributes as well as ripped of
title lines and Soft-Label-Keys for an application.
+ Support of Auto-Cleanup for a menus fieldlist.
@@ -63,10 +63,10 @@ into the binding.
+ Added the NCursesMenu class to support libmenu functionality.
+ The inheritace relation between NCursesWindow and NCursesColorWindow
was kind of brain damage. Monochrome is a special case of colored, so
- the relation should be just the opposite. This would allow all
- derived classes like NCursesPanel, NCursesMenu or NCursesForm to
+ the relation should be just the opposite. This would allow all
+ derived classes like NCursesPanel, NCursesMenu or NCursesForm to
have colors.
- To resolve that design flaw I put the color functionality into the
+ To resolve that design flaw I put the color functionality into the
NCursesWindow class and it can be switched on by the static member
useColors(). NCursesColorWindow is still there for compatibility
reasons.
diff --git a/c++/README-first b/c++/README-first
index 374328f..313c1f8 100644
--- a/c++/README-first
+++ b/c++/README-first
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-2006,2007 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README-first,v 1.10 2020/02/02 23:34:34 tom Exp $
+-- $Id: README-first,v 1.11 2021/06/17 21:20:30 tom Exp $
-------------------------------------------------------------------------------
C++ interface to ncurses routines
-----------------------------------------------------------------------
@@ -45,7 +45,7 @@ the curses.h file. This is a steady cause of trouble because many
common identifiers are used. Instead now all #defines are inline
functions, which also allows strict type checking of arguments.
-The next enhancement is color support. It was originally provided by a
+The next enhancement is color support. It was originally provided by a
derived class. This caused some trouble if you think about Panels or
Menus and Forms with colors. We decided to put color support into the
base class so that any derived class may use color support also.
diff --git a/c++/cursesapp.cc b/c++/cursesapp.cc
index 522c570..81f6098 100644
--- a/c++/cursesapp.cc
+++ b/c++/cursesapp.cc
@@ -36,7 +36,7 @@
#include "internal.h"
#include "cursesapp.h"
-MODULE_ID("$Id: cursesapp.cc,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: cursesapp.cc,v 1.18 2020/07/18 19:57:11 anonymous.maarten Exp $")
void
NCursesApplication::init(bool bColors)
@@ -69,6 +69,11 @@ NCursesApplication* NCursesApplication::theApp = 0;
NCursesWindow* NCursesApplication::titleWindow = 0;
NCursesApplication::SLK_Link* NCursesApplication::slk_stack = 0;
+
+NCursesWindow *&NCursesApplication::getTitleWindow() {
+ return titleWindow;
+}
+
NCursesApplication::~NCursesApplication() THROWS(NCursesException)
{
Soft_Label_Key_Set* S;
@@ -87,6 +92,10 @@ NCursesApplication::~NCursesApplication() THROWS(NCursesException)
::endwin();
}
+NCursesApplication* NCursesApplication::getApplication() {
+ return theApp;
+}
+
int NCursesApplication::rinit(NCursesWindow& w)
{
titleWindow = &w;
diff --git a/c++/cursesapp.h b/c++/cursesapp.h
index a09a3b6..1296f37 100644
--- a/c++/cursesapp.h
+++ b/c++/cursesapp.h
@@ -1,6 +1,6 @@
// * This makes emacs happy -*-Mode: C++;-*-
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2005,2011 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,14 +32,25 @@
* Author: Juergen Pfeifer, 1997 *
****************************************************************************/
-// $Id: cursesapp.h,v 1.14 2020/02/02 23:34:34 tom Exp $
+// $Id: cursesapp.h,v 1.18 2021/06/17 21:26:02 tom Exp $
#ifndef NCURSES_CURSESAPP_H_incl
#define NCURSES_CURSESAPP_H_incl
#include <cursslk.h>
-class NCURSES_IMPEXP NCursesApplication {
+#if (defined(_WIN32) || defined(_WIN64))
+# define NCURSES_CXX_MAIN_NAME cursespp_main
+# define NCURSES_CXX_MAIN \
+ int main(int argc, char *argv[]) { \
+ return NCURSES_CXX_MAIN_NAME(argc, argv); \
+ }
+#else
+# define NCURSES_CXX_MAIN_NAME main
+#endif
+NCURSES_CXX_IMPEXP int NCURSES_CXX_MAIN_NAME(int argc, char *argv[]);
+
+class NCURSES_CXX_IMPEXP NCursesApplication {
public:
typedef struct _slk_link { // This structure is used to maintain
struct _slk_link* prev; // a stack of SLKs
@@ -106,13 +117,13 @@ protected:
{
}
+ static NCursesWindow *&getTitleWindow();
+
public:
virtual ~NCursesApplication() THROWS(NCursesException);
// Get a pointer to the current application object
- static NCursesApplication* getApplication() {
- return theApp;
- }
+ static NCursesApplication* getApplication();
// This method runs the application and returns its exit value
int operator()(void);
@@ -176,5 +187,5 @@ public:
}
};
-
+
#endif /* NCURSES_CURSESAPP_H_incl */
diff --git a/c++/cursesf.cc b/c++/cursesf.cc
index fea592a..5d31648 100644
--- a/c++/cursesf.cc
+++ b/c++/cursesf.cc
@@ -1,6 +1,6 @@
// * this is for making emacs happy: -*-Mode: C++;-*-
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2005,2011 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -36,7 +36,7 @@
#include "cursesf.h"
#include "cursesapp.h"
-MODULE_ID("$Id: cursesf.cc,v 1.24 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: cursesf.cc,v 1.26 2021/04/17 18:11:08 tom Exp $")
NCursesFormField::~NCursesFormField () THROWS(NCursesException)
{
@@ -285,15 +285,15 @@ NCursesFormField*
NCursesForm::operator()(void)
{
int drvCmnd;
- int err;
int c;
post();
show();
refresh();
- while (((drvCmnd = virtualize((c=getKey()))) != CMD_QUIT)) {
- switch((err=driver(drvCmnd))) {
+ while (((drvCmnd = virtualize((c = getKey()))) != CMD_QUIT)) {
+ int err;
+ switch((err = driver(drvCmnd))) {
case E_REQUEST_DENIED:
On_Request_Denied(c);
break;
@@ -406,10 +406,19 @@ FIELDTYPE* UserDefinedFieldType::generic_fieldtype =
::new_fieldtype(_nc_xx_fld_fcheck,
_nc_xx_fld_ccheck);
+
+UserDefinedFieldType::UserDefinedFieldType() : NCursesFieldType(generic_fieldtype) {
+}
+
FIELDTYPE* UserDefinedFieldType_With_Choice::generic_fieldtype_with_choice =
::new_fieldtype(_nc_xx_fld_fcheck,
_nc_xx_fld_ccheck);
+
+UserDefinedFieldType_With_Choice::UserDefinedFieldType_With_Choice() {
+ fieldtype = generic_fieldtype_with_choice;
+}
+
bool _nc_xx_next_choice(FIELD *f, const void *u)
{
(void) f;
@@ -461,3 +470,5 @@ public:
};
UDF_Init* UDF_Init::I = new UDF_Init();
+
+
diff --git a/c++/cursesf.h b/c++/cursesf.h
index 17d4c70..ea1aaf0 100644
--- a/c++/cursesf.h
+++ b/c++/cursesf.h
@@ -1,6 +1,7 @@
// * This makes emacs happy -*-Mode: C++;-*-
+// vile:cppmode
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,7 +33,7 @@
* Author: Juergen Pfeifer, 1997 *
****************************************************************************/
-// $Id: cursesf.h,v 1.35 2020/02/02 23:34:34 tom Exp $
+// $Id: cursesf.h,v 1.38 2021/04/17 18:11:08 tom Exp $
#ifndef NCURSES_CURSESF_H_incl
#define NCURSES_CURSESF_H_incl 1
@@ -51,11 +52,11 @@ extern "C" {
// The abstract base class for builtin and user defined Fieldtypes.
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP NCursesFormField; // forward declaration
+class NCURSES_CXX_IMPEXP NCursesFormField; // forward declaration
// Class to represent builtin field types as well as C++ written new
// fieldtypes (see classes UserDefineFieldType...
-class NCURSES_IMPEXP NCursesFieldType
+class NCURSES_CXX_IMPEXP NCursesFieldType
{
friend class NCursesFormField;
@@ -101,7 +102,7 @@ public:
// The class representing a forms field, wrapping the lowlevel FIELD struct
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP NCursesFormField
+class NCURSES_CXX_IMPEXP NCursesFormField
{
friend class NCursesForm;
@@ -338,7 +339,7 @@ extern "C" {
// The class representing a form, wrapping the lowlevel FORM struct
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP NCursesForm : public NCursesPanel
+class NCURSES_CXX_IMPEXP NCursesForm : public NCursesPanel
{
protected:
FORM* form; // the lowlevel structure
@@ -629,7 +630,7 @@ public:
// data belongs to some class T. Use T as template argument
// to create a UserField.
// -------------------------------------------------------------------------
-template<class T> class NCURSES_IMPEXP NCursesUserField : public NCursesFormField
+template<class T> class NCURSES_CXX_IMPEXP NCursesUserField : public NCursesFormField
{
public:
NCursesUserField (int rows,
@@ -662,7 +663,7 @@ public:
// The same mechanism is used to attach user data to a form
// -------------------------------------------------------------------------
//
-template<class T> class NCURSES_IMPEXP NCursesUserForm : public NCursesForm
+template<class T> class NCURSES_CXX_IMPEXP NCursesUserForm : public NCursesForm
{
protected:
// 'Internal' constructor, builds an object without association to a
@@ -721,7 +722,7 @@ public:
// Builtin Fieldtypes
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP Alpha_Field : public NCursesFieldType
+class NCURSES_CXX_IMPEXP Alpha_Field : public NCursesFieldType
{
private:
int min_field_width;
@@ -731,13 +732,13 @@ private:
}
public:
- Alpha_Field(int width)
+ explicit Alpha_Field(int width)
: NCursesFieldType(TYPE_ALPHA),
min_field_width(width) {
}
};
-class NCURSES_IMPEXP Alphanumeric_Field : public NCursesFieldType
+class NCURSES_CXX_IMPEXP Alphanumeric_Field : public NCursesFieldType
{
private:
int min_field_width;
@@ -747,13 +748,13 @@ private:
}
public:
- Alphanumeric_Field(int width)
+ explicit Alphanumeric_Field(int width)
: NCursesFieldType(TYPE_ALNUM),
min_field_width(width) {
}
};
-class NCURSES_IMPEXP Integer_Field : public NCursesFieldType
+class NCURSES_CXX_IMPEXP Integer_Field : public NCursesFieldType
{
private:
int precision;
@@ -771,7 +772,7 @@ public:
}
};
-class NCURSES_IMPEXP Numeric_Field : public NCursesFieldType
+class NCURSES_CXX_IMPEXP Numeric_Field : public NCursesFieldType
{
private:
int precision;
@@ -789,7 +790,7 @@ public:
}
};
-class NCURSES_IMPEXP Regular_Expression_Field : public NCursesFieldType
+class NCURSES_CXX_IMPEXP Regular_Expression_Field : public NCursesFieldType
{
private:
char* regex;
@@ -805,7 +806,7 @@ private:
}
public:
- Regular_Expression_Field(const char *expr)
+ explicit Regular_Expression_Field(const char *expr)
: NCursesFieldType(TYPE_REGEXP),
regex(NULL)
{
@@ -834,7 +835,7 @@ public:
}
};
-class NCURSES_IMPEXP Enumeration_Field : public NCursesFieldType
+class NCURSES_CXX_IMPEXP Enumeration_Field : public NCursesFieldType
{
private:
const char** list;
@@ -873,7 +874,7 @@ public:
}
};
-class NCURSES_IMPEXP IPV4_Address_Field : public NCursesFieldType
+class NCURSES_CXX_IMPEXP IPV4_Address_Field : public NCursesFieldType
{
private:
void set(NCursesFormField& f) {
@@ -896,7 +897,7 @@ extern "C" {
// Abstract base class for User-Defined Fieldtypes
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP UserDefinedFieldType : public NCursesFieldType
+class NCURSES_CXX_IMPEXP UserDefinedFieldType : public NCursesFieldType
{
friend class UDF_Init; // Internal helper to set up statics
private:
@@ -925,8 +926,7 @@ protected:
virtual bool char_check (int c) = 0;
public:
- UserDefinedFieldType() : NCursesFieldType(generic_fieldtype) {
- }
+ UserDefinedFieldType();
};
extern "C" {
@@ -939,7 +939,7 @@ extern "C" {
// Abstract base class for User-Defined Fieldtypes with Choice functions
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP UserDefinedFieldType_With_Choice : public UserDefinedFieldType
+class NCURSES_CXX_IMPEXP UserDefinedFieldType_With_Choice : public UserDefinedFieldType
{
friend class UDF_Init; // Internal helper to set up statics
private:
@@ -962,9 +962,7 @@ protected:
virtual bool previous(NCursesFormField& f) = 0;
public:
- UserDefinedFieldType_With_Choice() {
- fieldtype = generic_fieldtype_with_choice;
- }
+ UserDefinedFieldType_With_Choice();
};
#endif /* NCURSES_CURSESF_H_incl */
diff --git a/c++/cursesm.cc b/c++/cursesm.cc
index 2215a16..64f3635 100644
--- a/c++/cursesm.cc
+++ b/c++/cursesm.cc
@@ -1,6 +1,6 @@
// * this is for making emacs happy: -*-Mode: C++;-*-
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2011,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -36,7 +36,7 @@
#include "cursesm.h"
#include "cursesapp.h"
-MODULE_ID("$Id: cursesm.cc,v 1.26 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: cursesm.cc,v 1.27 2021/04/17 18:11:08 tom Exp $")
NCursesMenuItem::~NCursesMenuItem() THROWS(NCursesException)
{
@@ -301,7 +301,6 @@ NCursesMenuItem*
NCursesMenu::operator()(void)
{
int drvCmnd;
- int err;
int c;
bool b_action = FALSE;
@@ -309,9 +308,10 @@ NCursesMenu::operator()(void)
show();
refresh();
- while (!b_action && ((drvCmnd = virtualize((c=getKey()))) != CMD_QUIT)) {
+ while (!b_action && ((drvCmnd = virtualize((c = getKey()))) != CMD_QUIT)) {
+ int err;
- switch((err=driver(drvCmnd))) {
+ switch((err = driver(drvCmnd))) {
case E_REQUEST_DENIED:
On_Request_Denied(c);
break;
diff --git a/c++/cursesm.h b/c++/cursesm.h
index 413da76..383c7e1 100644
--- a/c++/cursesm.h
+++ b/c++/cursesm.h
@@ -32,7 +32,7 @@
* Author: Juergen Pfeifer, 1997 *
****************************************************************************/
-// $Id: cursesm.h,v 1.33 2020/02/02 23:34:34 tom Exp $
+// $Id: cursesm.h,v 1.34 2020/05/24 01:40:20 anonymous.maarten Exp $
#ifndef NCURSES_CURSESM_H_incl
#define NCURSES_CURSESM_H_incl 1
@@ -47,7 +47,7 @@ extern "C" {
// This wraps the ITEM type of <menu.h>
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP NCursesMenuItem
+class NCURSES_CXX_IMPEXP NCursesMenuItem
{
friend class NCursesMenu;
@@ -153,7 +153,7 @@ typedef bool ITEMCALLBACK(NCursesMenuItem&);
// If you don't like to create a child class for individual items to
// overload action(), you may use this class and provide a callback
// function pointer for items.
-class NCURSES_IMPEXP NCursesMenuCallbackItem : public NCursesMenuItem
+class NCURSES_CXX_IMPEXP NCursesMenuCallbackItem : public NCursesMenuItem
{
private:
ITEMCALLBACK* p_fct;
@@ -200,7 +200,7 @@ extern "C" {
// This wraps the MENU type of <menu.h>
// -------------------------------------------------------------------------
//
-class NCURSES_IMPEXP NCursesMenu : public NCursesPanel
+class NCURSES_CXX_IMPEXP NCursesMenu : public NCursesPanel
{
protected:
MENU *menu;
@@ -596,7 +596,7 @@ public:
// to create a UserItem.
// -------------------------------------------------------------------------
//
-template<class T> class NCURSES_IMPEXP NCursesUserItem : public NCursesMenuItem
+template<class T> class NCURSES_CXX_IMPEXP NCursesUserItem : public NCursesMenuItem
{
public:
NCursesUserItem (const char* p_name,
@@ -623,7 +623,7 @@ public:
// The same mechanism is used to attach user data to a menu
// -------------------------------------------------------------------------
//
-template<class T> class NCURSES_IMPEXP NCursesUserMenu : public NCursesMenu
+template<class T> class NCURSES_CXX_IMPEXP NCursesUserMenu : public NCursesMenu
{
protected:
NCursesUserMenu( int nlines,
diff --git a/c++/cursesmain.cc b/c++/cursesmain.cc
index b4f1293..cc41b50 100644
--- a/c++/cursesmain.cc
+++ b/c++/cursesmain.cc
@@ -44,7 +44,7 @@
#define CPP_HAS_TRY_CATCH 0
#endif
-MODULE_ID("$Id: cursesmain.cc,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: cursesmain.cc,v 1.20 2020/07/18 19:57:11 anonymous.maarten Exp $")
#if HAVE_LOCALE_H
#include <locale.h>
@@ -60,7 +60,7 @@ MODULE_ID("$Id: cursesmain.cc,v 1.17 2020/02/02 23:34:34 tom Exp $")
* You only have to instantiate a static NCursesApplication object in your
* main application source file and link this module with your application.
*/
-int main(int argc, char* argv[])
+int NCURSES_CXX_MAIN_NAME(int argc, char* argv[])
{
setlocale(LC_ALL, "");
diff --git a/c++/cursesp.h b/c++/cursesp.h
index d1eea96..1eb90e9 100644
--- a/c++/cursesp.h
+++ b/c++/cursesp.h
@@ -1,6 +1,7 @@
// * This makes emacs happy -*-Mode: C++;-*-
+// vile:cppmode
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,7 +36,7 @@
#ifndef NCURSES_CURSESP_H_incl
#define NCURSES_CURSESP_H_incl 1
-// $Id: cursesp.h,v 1.33 2020/02/02 23:34:34 tom Exp $
+// $Id: cursesp.h,v 1.35 2021/04/17 18:11:08 tom Exp $
#include <cursesw.h>
@@ -43,7 +44,7 @@ extern "C" {
# include <panel.h>
}
-class NCURSES_IMPEXP NCursesPanel
+class NCURSES_CXX_IMPEXP NCursesPanel
: public NCursesWindow
{
protected:
@@ -243,7 +244,7 @@ public:
// This creates an user panel of the requested size with associated
// user data pointed to by p_UserData.
- NCursesUserPanel(const T* p_UserData = STATIC_CAST(T*)(0)) : NCursesPanel()
+ explicit NCursesUserPanel(const T* p_UserData = STATIC_CAST(T*)(0)) : NCursesPanel()
{
if (p)
set_user(const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
diff --git a/c++/cursesw.h b/c++/cursesw.h
index 10a2da7..001f6db 100644
--- a/c++/cursesw.h
+++ b/c++/cursesw.h
@@ -1,7 +1,7 @@
// * This makes emacs happy -*-Mode: C++;-*-
// vile:cppmode
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,12 +32,23 @@
#ifndef NCURSES_CURSESW_H_incl
#define NCURSES_CURSESW_H_incl 1
-// $Id: cursesw.h,v 1.56 2020/02/02 23:34:34 tom Exp $
+// $Id: cursesw.h,v 1.58 2021/04/17 18:11:08 tom Exp $
extern "C" {
# include <curses.h>
}
+#if defined(BUILDING_NCURSES_CXX)
+# define NCURSES_CXX_IMPEXP NCURSES_EXPORT_GENERAL_EXPORT
+#else
+# define NCURSES_CXX_IMPEXP NCURSES_EXPORT_GENERAL_IMPORT
+#endif
+
+#define NCURSES_CXX_WRAPPED_VAR(type,name) extern NCURSES_CXX_IMPEXP type NCURSES_PUBLIC_VAR(name)(void)
+
+#define NCURSES_CXX_EXPORT(type) NCURSES_CXX_IMPEXP type NCURSES_API
+#define NCURSES_CXX_EXPORT_VAR(type) NCURSES_CXX_IMPEXP type
+
#include <etip.h>
/* SCO 3.2v4 curses.h includes term.h, which defines lines as a macro.
@@ -757,7 +768,7 @@ extern "C" int _nc_ripoffline(int, int (*init)(WINDOW*, int));
extern "C" int _nc_xx_ripoff_init(WINDOW *, int);
extern "C" int _nc_has_mouse(void);
-class NCURSES_IMPEXP NCursesWindow
+class NCURSES_CXX_IMPEXP NCursesWindow
{
friend class NCursesMenu;
friend class NCursesForm;
@@ -805,7 +816,7 @@ protected:
NCursesWindow();
public:
- NCursesWindow(WINDOW* window); // useful only for stdscr
+ explicit NCursesWindow(WINDOW* window); // useful only for stdscr
NCursesWindow(int nlines, // number of lines
int ncols, // number of columns
@@ -1371,10 +1382,10 @@ public:
// -------------------------------------------------------------------------
// We leave this here for compatibility reasons.
// -------------------------------------------------------------------------
-class NCURSES_IMPEXP NCursesColorWindow : public NCursesWindow
+class NCURSES_CXX_IMPEXP NCursesColorWindow : public NCursesWindow
{
public:
- NCursesColorWindow(WINDOW* &window) // useful only for stdscr
+ explicit NCursesColorWindow(WINDOW* &window) // useful only for stdscr
: NCursesWindow(window) {
useColors(); }
@@ -1417,7 +1428,7 @@ public:
// Pad Support. We allow an association of a pad with a "real" window
// through which the pad may be viewed.
// -------------------------------------------------------------------------
-class NCURSES_IMPEXP NCursesPad : public NCursesWindow
+class NCURSES_CXX_IMPEXP NCursesPad : public NCursesWindow
{
private:
NCursesWindow* viewWin; // the "viewport" window
@@ -1533,7 +1544,7 @@ public:
// A FramedPad is constructed always with a viewport window. This viewport
// will be framed (by a box() command) and the interior of the box is the
// viewport subwindow. On the frame we display scrollbar sliders.
-class NCURSES_IMPEXP NCursesFramedPad : public NCursesPad
+class NCURSES_CXX_IMPEXP NCursesFramedPad : public NCursesPad
{
protected:
virtual void OnOperation(int pad_req);
diff --git a/c++/cursslk.cc b/c++/cursslk.cc
index 78a426e..9922163 100644
--- a/c++/cursslk.cc
+++ b/c++/cursslk.cc
@@ -36,7 +36,7 @@
#include "cursslk.h"
#include "cursesapp.h"
-MODULE_ID("$Id: cursslk.cc,v 1.18 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: cursslk.cc,v 1.19 2020/07/18 19:57:11 anonymous.maarten Exp $")
Soft_Label_Key_Set::Soft_Label_Key&
Soft_Label_Key_Set::Soft_Label_Key::operator=(char *text)
@@ -102,6 +102,10 @@ Soft_Label_Key_Set::Soft_Label_Key& Soft_Label_Key_Set::operator[](int i) {
return slk_array[i-1];
}
+int Soft_Label_Key_Set::labels() const {
+ return num_labels;
+}
+
void Soft_Label_Key_Set::activate_label(int i, bool bf) {
if (!b_attrInit) {
NCursesApplication* A = NCursesApplication::getApplication();
diff --git a/c++/cursslk.h b/c++/cursslk.h
index 5a7b78c..66564fe 100644
--- a/c++/cursslk.h
+++ b/c++/cursslk.h
@@ -1,6 +1,7 @@
// * this is for making emacs happy: -*-Mode: C++;-*-
+// vile:cppmode
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2003,2005 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,17 +33,17 @@
* Author: Juergen Pfeifer, 1997 *
****************************************************************************/
-// $Id: cursslk.h,v 1.15 2020/02/02 23:34:34 tom Exp $
+// $Id: cursslk.h,v 1.19 2021/04/17 18:11:08 tom Exp $
#ifndef NCURSES_CURSSLK_H_incl
#define NCURSES_CURSSLK_H_incl
#include <cursesw.h>
-class NCURSES_IMPEXP Soft_Label_Key_Set {
+class NCURSES_CXX_IMPEXP Soft_Label_Key_Set {
public:
// This inner class represents the attributes of a Soft Label Key (SLK)
- class NCURSES_IMPEXP Soft_Label_Key {
+ class NCURSES_CXX_IMPEXP Soft_Label_Key {
friend class Soft_Label_Key_Set;
public:
typedef enum { Left=0, Center=1, Right=2 } Justification;
@@ -101,10 +102,10 @@ public:
} Label_Layout;
private:
- static long NCURSES_IMPEXP count; // Number of Key Sets
- static Label_Layout NCURSES_IMPEXP format; // Layout of the Key Sets
- static int NCURSES_IMPEXP num_labels; // Number Of Labels in Key Sets
- bool NCURSES_IMPEXP b_attrInit; // Are attributes initialized
+ static long count; // Number of Key Sets
+ static Label_Layout format; // Layout of the Key Sets
+ static int num_labels; // Number Of Labels in Key Sets
+ bool b_attrInit; // Are attributes initialized
Soft_Label_Key *slk_array; // The array of SLK's
@@ -140,11 +141,11 @@ public:
// You must create a Soft_Label_Key_Set before you create any object of
// the NCursesWindow, NCursesPanel or derived classes. (Actually before
// ::initscr() is called).
- Soft_Label_Key_Set(Label_Layout fmt);
+ explicit Soft_Label_Key_Set(Label_Layout fmt);
// This constructor assumes, that you already constructed a Key Set
// with a layout by the constructor above. This layout will be reused.
- NCURSES_IMPEXP Soft_Label_Key_Set();
+ Soft_Label_Key_Set();
Soft_Label_Key_Set& operator=(const Soft_Label_Key_Set& rhs)
{
@@ -165,10 +166,10 @@ public:
virtual ~Soft_Label_Key_Set() THROWS(NCursesException);
// Get Label# i. Label counting starts with 1!
- NCURSES_IMPEXP Soft_Label_Key& operator[](int i);
+ Soft_Label_Key& operator[](int i);
// Retrieve number of Labels
- inline int labels() const { return num_labels; }
+ int labels() const;
// Refresh the SLK portion of the screen
inline void refresh() {
diff --git a/c++/demo.cc b/c++/demo.cc
index 2b5451a..195e98a 100644
--- a/c++/demo.cc
+++ b/c++/demo.cc
@@ -1,6 +1,6 @@
// * This makes emacs happy -*-Mode: C++;-*-
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -36,7 +36,7 @@
* Demo code for NCursesMenu and NCursesForm written by
* Juergen Pfeifer
*
- * $Id: demo.cc,v 1.45 2020/02/02 23:34:34 tom Exp $
+ * $Id: demo.cc,v 1.50 2021/09/04 10:52:55 tom Exp $
*/
#include "internal.h"
@@ -44,11 +44,10 @@
#include "cursesm.h"
#include "cursesf.h"
-#ifdef _WIN32
+#if (defined(_WIN32) || defined(_WIN64))
#undef KEY_EVENT
-#endif
-
-#ifndef _WIN32
+#define sleep(n) Sleep(n)
+#else
extern "C" unsigned int sleep(unsigned int);
#endif
@@ -105,7 +104,7 @@ class SillyDemo
}
// A refresh to any valid panel updates all panels and refreshes
- // the screen. Using mystd is just convenient - We know it's always
+ // the screen. Using mystd is just convenient - We know it is always
// valid until the end of the program.
mystd->refresh();
@@ -187,7 +186,7 @@ public:
};
template class MyAction<UserData>;
-template class NCURSES_IMPEXP NCursesUserItem<UserData>;
+template class NCURSES_CXX_IMPEXP NCursesUserItem<UserData>;
class QuitItem : public NCursesMenuItem
{
@@ -552,9 +551,9 @@ void TestApplication::title()
const char * const titleText = "Simple C++ Binding Demo";
const int len = ::strlen(titleText);
- titleWindow->bkgd(screen_titles());
- titleWindow->addstr(0, (titleWindow->cols() - len)/2, titleText);
- titleWindow->noutrefresh();
+ getTitleWindow()->bkgd(screen_titles());
+ getTitleWindow()->addstr(0, (getTitleWindow()->cols() - len)/2, titleText);
+ getTitleWindow()->noutrefresh();
}
@@ -569,3 +568,8 @@ int TestApplication::run()
// -------------------------------------------------------------------------
//
static TestApplication *Demo = new TestApplication();
+
+#if (defined(_WIN32) || defined(_WIN64))
+// This is actually only needed when ncurses is a dll
+NCURSES_CXX_MAIN
+#endif
diff --git a/c++/etip.h.in b/c++/etip.h.in
index 9334f9d..9dbb0e7 100644
--- a/c++/etip.h.in
+++ b/c++/etip.h.in
@@ -1,6 +1,6 @@
// * This makes emacs happy -*-Mode: C++;-*-
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,7 +32,7 @@
* Author: Juergen Pfeifer, 1997 *
****************************************************************************/
-// $Id: etip.h.in,v 1.43 2020/02/02 23:34:34 tom Exp $
+// $Id: etip.h.in,v 1.48 2021/06/17 21:11:08 tom Exp $
#ifndef NCURSES_ETIP_H_incl
#define NCURSES_ETIP_H_incl 1
@@ -139,12 +139,16 @@ extern "C" {
#define STATIC_CAST(s) (s)
#endif
+#ifndef NCURSES_CXX_IMPEXP
+#define NCURSES_CXX_IMPEXP /* nothing */
+#endif
+
// Forward Declarations
-class NCURSES_IMPEXP NCursesPanel;
-class NCURSES_IMPEXP NCursesMenu;
-class NCURSES_IMPEXP NCursesForm;
+class NCURSES_CXX_IMPEXP NCursesPanel;
+class NCURSES_CXX_IMPEXP NCursesMenu;
+class NCURSES_CXX_IMPEXP NCursesForm;
-class NCURSES_IMPEXP NCursesException
+class NCURSES_CXX_IMPEXP NCursesException
{
public:
const char *message;
@@ -154,12 +158,13 @@ public:
: message(msg), errorno (err)
{};
- NCursesException (const char* msg)
+ explicit NCursesException (const char* msg)
: message(msg), errorno (E_SYSTEM_ERROR)
{};
NCursesException& operator=(const NCursesException& rhs)
{
+ message = rhs.message;
errorno = rhs.errorno;
return *this;
}
@@ -178,7 +183,7 @@ public:
}
};
-class NCURSES_IMPEXP NCursesPanelException : public NCursesException
+class NCURSES_CXX_IMPEXP NCursesPanelException : public NCursesException
{
public:
const NCursesPanel* p;
@@ -195,7 +200,7 @@ public:
p (panel)
{};
- NCursesPanelException (int err) :
+ explicit NCursesPanelException (int err) :
NCursesException ("panel library error", err),
p (0)
{};
@@ -229,7 +234,7 @@ public:
}
};
-class NCURSES_IMPEXP NCursesMenuException : public NCursesException
+class NCURSES_CXX_IMPEXP NCursesMenuException : public NCursesException
{
public:
const NCursesMenu* m;
@@ -246,7 +251,7 @@ public:
m (menu)
{};
- NCursesMenuException (int err) :
+ explicit NCursesMenuException (int err) :
NCursesException ("menu library error", err),
m (0)
{};
@@ -280,7 +285,7 @@ public:
}
};
-class NCURSES_IMPEXP NCursesFormException : public NCursesException
+class NCURSES_CXX_IMPEXP NCursesFormException : public NCursesException
{
public:
const NCursesForm* f;
@@ -297,7 +302,7 @@ public:
f (form)
{};
- NCursesFormException (int err) :
+ explicit NCursesFormException (int err) :
NCursesException ("form library error", err),
f (0)
{};
@@ -341,7 +346,6 @@ using std::endl;
# else
# include <iostream.h>
# endif
- extern "C" void exit(int);
#endif
inline void THROW(const NCursesException *e) {
diff --git a/c++/internal.h b/c++/internal.h
index 5cd2020..f67aaec 100644
--- a/c++/internal.h
+++ b/c++/internal.h
@@ -32,7 +32,7 @@
* Author: Juergen Pfeifer, 1997 *
****************************************************************************/
-// $Id: internal.h,v 1.20 2020/02/02 23:34:34 tom Exp $
+// $Id: internal.h,v 1.22 2020/08/29 23:06:41 tom Exp $
#ifndef NCURSES_CPLUS_INTERNAL_H
#define NCURSES_CPLUS_INTERNAL_H 1
@@ -45,8 +45,12 @@
#define MODULE_ID(id) /*nothing */
#endif
-#ifdef _WIN32
+#if (defined(_WIN32) || defined(_WIN64))
+#if defined(EXP_WIN32_DRIVER)
+#include <nc_win32.h>
+#else
#include <nc_mingw.h>
+#endif
#undef KEY_EVENT
#endif
diff --git a/config.guess b/config.guess
index 95b16c7..e81d3ae 100755
--- a/config.guess
+++ b/config.guess
@@ -1,8 +1,10 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright 1992-2019 Free Software Foundation, Inc.
+# Copyright 1992-2021 Free Software Foundation, Inc.
-timestamp='2019-12-21'
+# shellcheck disable=SC2006,SC2268 # see below for rationale
+
+timestamp='2021-06-03'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -27,11 +29,19 @@ timestamp='2019-12-21'
# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
# You can get the latest version of this script from:
-# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
#
# Please send patches to <config-patches@gnu.org>.
+# The "shellcheck disable" line above the timestamp inhibits complaints
+# about features and limitations of the classic Bourne shell that were
+# superseded or lifted in POSIX. However, this script identifies a wide
+# variety of pre-POSIX systems that do not have POSIX shells at all, and
+# even some reasonably current systems (Solaris 10 as case-in-point) still
+# have a pre-POSIX /bin/sh.
+
+
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\
@@ -50,7 +60,7 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright 1992-2019 Free Software Foundation, Inc.
+Copyright 1992-2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -84,6 +94,9 @@ if test $# != 0; then
exit 1
fi
+# Just in case it came from the environment.
+GUESS=
+
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a
@@ -102,7 +115,7 @@ set_cc_for_build() {
# prevent multiple calls if $tmp is already set
test "$tmp" && return 0
: "${TMPDIR=/tmp}"
- # shellcheck disable=SC2039
+ # shellcheck disable=SC2039,SC3028
{ tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
@@ -112,7 +125,7 @@ set_cc_for_build() {
,,) echo "int x;" > "$dummy.c"
for driver in cc gcc c89 c99 ; do
if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$driver"
+ CC_FOR_BUILD=$driver
break
fi
done
@@ -133,14 +146,12 @@ fi
UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-case "$UNAME_SYSTEM" in
+case $UNAME_SYSTEM in
Linux|GNU|GNU/*)
- # If the system lacks a compiler, then just pick glibc.
- # We could probably try harder.
- LIBC=gnu
+ LIBC=unknown
set_cc_for_build
cat <<-EOF > "$dummy.c"
@@ -149,24 +160,37 @@ Linux|GNU|GNU/*)
LIBC=uclibc
#elif defined(__dietlibc__)
LIBC=dietlibc
- #else
+ #elif defined(__GLIBC__)
LIBC=gnu
+ #else
+ #include <stdarg.h>
+ /* First heuristic to detect musl libc. */
+ #ifdef __DEFINED_va_list
+ LIBC=musl
+ #endif
#endif
EOF
- eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
+ cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+ eval "$cc_set_libc"
- # If ldd exists, use it to detect musl libc.
- if command -v ldd >/dev/null && \
- ldd --version 2>&1 | grep -q ^musl
- then
- LIBC=musl
+ # Second heuristic to detect musl libc.
+ if [ "$LIBC" = unknown ] &&
+ command -v ldd >/dev/null &&
+ ldd --version 2>&1 | grep -q ^musl; then
+ LIBC=musl
+ fi
+
+ # If the system lacks a compiler, then just pick glibc.
+ # We could probably try harder.
+ if [ "$LIBC" = unknown ]; then
+ LIBC=gnu
fi
;;
esac
# Note: order is significant - the case branches are not exclusive.
-case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
+case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
*:NetBSD:*:*)
# NetBSD (nbsd) targets should (where applicable) match one or
# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
@@ -178,12 +202,12 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
#
# Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
- "/sbin/$sysctl" 2>/dev/null || \
- "/usr/sbin/$sysctl" 2>/dev/null || \
+ /sbin/sysctl -n hw.machine_arch 2>/dev/null || \
+ /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \
echo unknown)`
- case "$UNAME_MACHINE_ARCH" in
+ case $UNAME_MACHINE_ARCH in
+ aarch64eb) machine=aarch64_be-unknown ;;
armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
@@ -192,13 +216,13 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
earmv*)
arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
- machine="${arch}${endian}"-unknown
+ machine=${arch}${endian}-unknown
;;
- *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
+ *) machine=$UNAME_MACHINE_ARCH-unknown ;;
esac
# The Operating System including object format, if it has switched
# to ELF recently (or will in the future) and ABI.
- case "$UNAME_MACHINE_ARCH" in
+ case $UNAME_MACHINE_ARCH in
earm*)
os=netbsdelf
;;
@@ -219,7 +243,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
;;
esac
# Determine ABI tags.
- case "$UNAME_MACHINE_ARCH" in
+ case $UNAME_MACHINE_ARCH in
earm*)
expr='s/^earmv[0-9]/-eabi/;s/eb$//'
abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
@@ -230,7 +254,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
# thus, need a distinct triplet. However, they do not need
# kernel version information, so it can be replaced with a
# suitable tag, in the style of linux-gnu.
- case "$UNAME_VERSION" in
+ case $UNAME_VERSION in
Debian*)
release='-gnu'
;;
@@ -241,51 +265,57 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "$machine-${os}${release}${abi-}"
- exit ;;
+ GUESS=$machine-${os}${release}${abi-}
+ ;;
*:Bitrig:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
- echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE
+ ;;
*:OpenBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE
+ ;;
+ *:SecBSD:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
+ GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE
+ ;;
*:LibertyBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
- echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE
+ ;;
*:MidnightBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE
+ ;;
*:ekkoBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE
+ ;;
*:SolidBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE
+ ;;
*:OS108:*:*)
- echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE
+ ;;
macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
- exit ;;
+ GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE
+ ;;
*:MirBSD:*:*)
- echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE
+ ;;
*:Sortix:*:*)
- echo "$UNAME_MACHINE"-unknown-sortix
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-sortix
+ ;;
*:Twizzler:*:*)
- echo "$UNAME_MACHINE"-unknown-twizzler
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-twizzler
+ ;;
*:Redox:*:*)
- echo "$UNAME_MACHINE"-unknown-redox
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-redox
+ ;;
mips:OSF1:*.*)
- echo mips-dec-osf1
- exit ;;
+ GUESS=mips-dec-osf1
+ ;;
alpha:OSF1:*:*)
+ # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
+ trap '' 0
case $UNAME_RELEASE in
*4.0)
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -299,7 +329,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
# covers most systems running today. This code pipes the CPU
# types through head -n 1, so we only detect the type of CPU 0.
ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
- case "$ALPHA_CPU_TYPE" in
+ case $ALPHA_CPU_TYPE in
"EV4 (21064)")
UNAME_MACHINE=alpha ;;
"EV4.5 (21064)")
@@ -336,75 +366,76 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
- echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
- # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
- exitcode=$?
- trap '' 0
- exit $exitcode ;;
+ OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
+ GUESS=$UNAME_MACHINE-dec-osf$OSF_REL
+ ;;
Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
- exit ;;
+ GUESS=m68k-unknown-sysv4
+ ;;
*:[Aa]miga[Oo][Ss]:*:*)
- echo "$UNAME_MACHINE"-unknown-amigaos
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-amigaos
+ ;;
*:[Mm]orph[Oo][Ss]:*:*)
- echo "$UNAME_MACHINE"-unknown-morphos
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-morphos
+ ;;
*:OS/390:*:*)
- echo i370-ibm-openedition
- exit ;;
+ GUESS=i370-ibm-openedition
+ ;;
*:z/VM:*:*)
- echo s390-ibm-zvmoe
- exit ;;
+ GUESS=s390-ibm-zvmoe
+ ;;
*:OS400:*:*)
- echo powerpc-ibm-os400
- exit ;;
+ GUESS=powerpc-ibm-os400
+ ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix"$UNAME_RELEASE"
- exit ;;
+ GUESS=arm-acorn-riscix$UNAME_RELEASE
+ ;;
arm*:riscos:*:*|arm*:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
+ GUESS=arm-unknown-riscos
+ ;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
- exit ;;
+ GUESS=hppa1.1-hitachi-hiuxmpp
+ ;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit ;;
+ case `(/bin/universe) 2>/dev/null` in
+ att) GUESS=pyramid-pyramid-sysv3 ;;
+ *) GUESS=pyramid-pyramid-bsd ;;
+ esac
+ ;;
NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
- exit ;;
+ GUESS=pyramid-pyramid-svr4
+ ;;
DRS?6000:unix:4.0:6*)
- echo sparc-icl-nx6
- exit ;;
+ GUESS=sparc-icl-nx6
+ ;;
DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7; exit ;;
- esac ;;
+ sparc) GUESS=sparc-icl-nx7 ;;
+ esac
+ ;;
s390x:SunOS:*:*)
- echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
- exit ;;
+ SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+ GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL
+ ;;
sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
+ SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+ GUESS=sparc-hal-solaris2$SUN_REL
+ ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
- exit ;;
+ SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+ GUESS=sparc-sun-solaris2$SUN_REL
+ ;;
i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux"$UNAME_RELEASE"
- exit ;;
+ GUESS=i386-pc-auroraux$UNAME_RELEASE
+ ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
set_cc_for_build
SUN_ARCH=i386
# If there is a compiler, see if it is configured for 64-bit objects.
# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
# This test works for both compilers.
- if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
@@ -412,41 +443,44 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
SUN_ARCH=x86_64
fi
fi
- echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
+ SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+ GUESS=$SUN_ARCH-pc-solaris2$SUN_REL
+ ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
+ SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+ GUESS=sparc-sun-solaris3$SUN_REL
+ ;;
sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
+ case `/usr/bin/arch -k` in
Series*|S4*)
UNAME_RELEASE=`uname -v`
;;
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
- exit ;;
+ SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'`
+ GUESS=sparc-sun-sunos$SUN_REL
+ ;;
sun3*:SunOS:*:*)
- echo m68k-sun-sunos"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-sun-sunos$UNAME_RELEASE
+ ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
- case "`/bin/arch`" in
+ case `/bin/arch` in
sun3)
- echo m68k-sun-sunos"$UNAME_RELEASE"
+ GUESS=m68k-sun-sunos$UNAME_RELEASE
;;
sun4)
- echo sparc-sun-sunos"$UNAME_RELEASE"
+ GUESS=sparc-sun-sunos$UNAME_RELEASE
;;
esac
- exit ;;
+ ;;
aushp:SunOS:*:*)
- echo sparc-auspex-sunos"$UNAME_RELEASE"
- exit ;;
+ GUESS=sparc-auspex-sunos$UNAME_RELEASE
+ ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
@@ -456,41 +490,41 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-atari-mint$UNAME_RELEASE
+ ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-atari-mint$UNAME_RELEASE
+ ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-atari-mint$UNAME_RELEASE
+ ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-milan-mint$UNAME_RELEASE
+ ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-hades-mint$UNAME_RELEASE
+ ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-unknown-mint$UNAME_RELEASE
+ ;;
m68k:machten:*:*)
- echo m68k-apple-machten"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-apple-machten$UNAME_RELEASE
+ ;;
powerpc:machten:*:*)
- echo powerpc-apple-machten"$UNAME_RELEASE"
- exit ;;
+ GUESS=powerpc-apple-machten$UNAME_RELEASE
+ ;;
RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
- exit ;;
+ GUESS=mips-dec-mach_bsd4.3
+ ;;
RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix"$UNAME_RELEASE"
- exit ;;
+ GUESS=mips-dec-ultrix$UNAME_RELEASE
+ ;;
VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix"$UNAME_RELEASE"
- exit ;;
+ GUESS=vax-dec-ultrix$UNAME_RELEASE
+ ;;
2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix"$UNAME_RELEASE"
- exit ;;
+ GUESS=clipper-intergraph-clix$UNAME_RELEASE
+ ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
set_cc_for_build
sed 's/^ //' << EOF > "$dummy.c"
@@ -518,75 +552,76 @@ EOF
dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
{ echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos"$UNAME_RELEASE"
- exit ;;
+ GUESS=mips-mips-riscos$UNAME_RELEASE
+ ;;
Motorola:PowerMAX_OS:*:*)
- echo powerpc-motorola-powermax
- exit ;;
+ GUESS=powerpc-motorola-powermax
+ ;;
Motorola:*:4.3:PL8-*)
- echo powerpc-harris-powermax
- exit ;;
+ GUESS=powerpc-harris-powermax
+ ;;
Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
- echo powerpc-harris-powermax
- exit ;;
+ GUESS=powerpc-harris-powermax
+ ;;
Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
- exit ;;
+ GUESS=powerpc-harris-powerunix
+ ;;
m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit ;;
+ GUESS=m88k-harris-cxux7
+ ;;
m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
- exit ;;
+ GUESS=m88k-motorola-sysv4
+ ;;
m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
- exit ;;
+ GUESS=m88k-motorola-sysv3
+ ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
+ if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
then
- if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
- [ "$TARGET_BINARY_INTERFACE"x = x ]
+ if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
+ test "$TARGET_BINARY_INTERFACE"x = x
then
- echo m88k-dg-dgux"$UNAME_RELEASE"
+ GUESS=m88k-dg-dgux$UNAME_RELEASE
else
- echo m88k-dg-dguxbcs"$UNAME_RELEASE"
+ GUESS=m88k-dg-dguxbcs$UNAME_RELEASE
fi
else
- echo i586-dg-dgux"$UNAME_RELEASE"
+ GUESS=i586-dg-dgux$UNAME_RELEASE
fi
- exit ;;
+ ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit ;;
+ GUESS=m88k-dolphin-sysv3
+ ;;
M88*:*:R3*:*)
# Delta 88k system running SVR3
- echo m88k-motorola-sysv3
- exit ;;
+ GUESS=m88k-motorola-sysv3
+ ;;
XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
- exit ;;
+ GUESS=m88k-tektronix-sysv3
+ ;;
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
- exit ;;
+ GUESS=m68k-tektronix-bsd
+ ;;
*:IRIX*:*:*)
- echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
- exit ;;
+ IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'`
+ GUESS=mips-sgi-irix$IRIX_REL
+ ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+ ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i*86:AIX:*:*)
- echo i386-ibm-aix
- exit ;;
+ GUESS=i386-ibm-aix
+ ;;
ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
+ if test -x /usr/bin/oslevel ; then
IBM_REV=`/usr/bin/oslevel`
else
- IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
fi
- echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
- exit ;;
+ GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV
+ ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
set_cc_for_build
@@ -603,16 +638,16 @@ EOF
EOF
if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
then
- echo "$SYSTEM_NAME"
+ GUESS=$SYSTEM_NAME
else
- echo rs6000-ibm-aix3.2.5
+ GUESS=rs6000-ibm-aix3.2.5
fi
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
+ GUESS=rs6000-ibm-aix3.2.4
else
- echo rs6000-ibm-aix3.2
+ GUESS=rs6000-ibm-aix3.2
fi
- exit ;;
+ ;;
*:AIX:*:[4567])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
@@ -620,56 +655,56 @@ EOF
else
IBM_ARCH=powerpc
fi
- if [ -x /usr/bin/lslpp ] ; then
- IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
+ if test -x /usr/bin/lslpp ; then
+ IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \
awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
else
- IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
fi
- echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
- exit ;;
+ GUESS=$IBM_ARCH-ibm-aix$IBM_REV
+ ;;
*:AIX:*:*)
- echo rs6000-ibm-aix
- exit ;;
+ GUESS=rs6000-ibm-aix
+ ;;
ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
- echo romp-ibm-bsd4.4
- exit ;;
+ GUESS=romp-ibm-bsd4.4
+ ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
- exit ;; # report: romp-ibm BSD 4.3
+ GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to
+ ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
- echo rs6000-bull-bosx
- exit ;;
+ GUESS=rs6000-bull-bosx
+ ;;
DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
- exit ;;
+ GUESS=m68k-bull-sysv3
+ ;;
9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
- exit ;;
+ GUESS=m68k-hp-bsd
+ ;;
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
- exit ;;
+ GUESS=m68k-hp-bsd4.4
+ ;;
9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
- case "$UNAME_MACHINE" in
+ HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
+ case $UNAME_MACHINE in
9000/31?) HP_ARCH=m68000 ;;
9000/[34]??) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
+ if test -x /usr/bin/getconf; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "$sc_cpu_version" in
+ case $sc_cpu_version in
523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
- case "$sc_kernel_bits" in
+ case $sc_kernel_bits in
32) HP_ARCH=hppa2.0n ;;
64) HP_ARCH=hppa2.0w ;;
'') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
esac ;;
esac
fi
- if [ "$HP_ARCH" = "" ]; then
+ if test "$HP_ARCH" = ""; then
set_cc_for_build
sed 's/^ //' << EOF > "$dummy.c"
@@ -708,7 +743,7 @@ EOF
test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;;
esac
- if [ "$HP_ARCH" = hppa2.0w ]
+ if test "$HP_ARCH" = hppa2.0w
then
set_cc_for_build
@@ -729,12 +764,12 @@ EOF
HP_ARCH=hppa64
fi
fi
- echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
- exit ;;
+ GUESS=$HP_ARCH-hp-hpux$HPUX_REV
+ ;;
ia64:HP-UX:*:*)
- HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux"$HPUX_REV"
- exit ;;
+ HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
+ GUESS=ia64-hp-hpux$HPUX_REV
+ ;;
3050*:HI-UX:*:*)
set_cc_for_build
sed 's/^ //' << EOF > "$dummy.c"
@@ -764,36 +799,36 @@ EOF
EOF
$CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
{ echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
- exit ;;
+ GUESS=unknown-hitachi-hiuxwe2
+ ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
- echo hppa1.1-hp-bsd
- exit ;;
+ GUESS=hppa1.1-hp-bsd
+ ;;
9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
- exit ;;
+ GUESS=hppa1.0-hp-bsd
+ ;;
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
- exit ;;
+ GUESS=hppa1.0-hp-mpeix
+ ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
- echo hppa1.1-hp-osf
- exit ;;
+ GUESS=hppa1.1-hp-osf
+ ;;
hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit ;;
+ GUESS=hppa1.0-hp-osf
+ ;;
i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo "$UNAME_MACHINE"-unknown-osf1mk
+ if test -x /usr/sbin/sysversion ; then
+ GUESS=$UNAME_MACHINE-unknown-osf1mk
else
- echo "$UNAME_MACHINE"-unknown-osf1
+ GUESS=$UNAME_MACHINE-unknown-osf1
fi
- exit ;;
+ ;;
parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit ;;
+ GUESS=hppa1.1-hp-lites
+ ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
- exit ;;
+ GUESS=c1-convex-bsd
+ ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
@@ -801,17 +836,18 @@ EOF
fi
exit ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
- exit ;;
+ GUESS=c34-convex-bsd
+ ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
- exit ;;
+ GUESS=c38-convex-bsd
+ ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
- exit ;;
+ GUESS=c4-convex-bsd
+ ;;
CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+ GUESS=ymp-cray-unicos$CRAY_REL
+ ;;
CRAY*[A-Z]90:*:*:*)
echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
@@ -819,112 +855,124 @@ EOF
-e 's/\.[^.]*$/.X/'
exit ;;
CRAY*TS:*:*:*)
- echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+ GUESS=t90-cray-unicos$CRAY_REL
+ ;;
CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+ GUESS=alphaev5-cray-unicosmk$CRAY_REL
+ ;;
CRAY*SV1:*:*:*)
- echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+ GUESS=sv1-cray-unicos$CRAY_REL
+ ;;
*:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
+ GUESS=craynv-cray-unicosmp$CRAY_REL
+ ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
+ GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
+ ;;
5000:UNIX_System_V:4.*:*)
FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
+ GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
+ ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE
+ ;;
sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi"$UNAME_RELEASE"
- exit ;;
+ GUESS=sparc-unknown-bsdi$UNAME_RELEASE
+ ;;
*:BSD/OS:*:*)
- echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE
+ ;;
arm:FreeBSD:*:*)
UNAME_PROCESSOR=`uname -p`
set_cc_for_build
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP
then
- echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
+ FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+ GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi
else
- echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
+ FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+ GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf
fi
- exit ;;
+ ;;
*:FreeBSD:*:*)
UNAME_PROCESSOR=`/usr/bin/uname -p`
- case "$UNAME_PROCESSOR" in
+ case $UNAME_PROCESSOR in
amd64)
UNAME_PROCESSOR=x86_64 ;;
i386)
UNAME_PROCESSOR=i586 ;;
esac
- echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
- exit ;;
+ FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+ GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL
+ ;;
i*:CYGWIN*:*)
- echo "$UNAME_MACHINE"-pc-cygwin
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-cygwin
+ ;;
*:MINGW64*:*)
- echo "$UNAME_MACHINE"-pc-mingw64
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-mingw64
+ ;;
*:MINGW*:*)
- echo "$UNAME_MACHINE"-pc-mingw32
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-mingw32
+ ;;
*:MSYS*:*)
- echo "$UNAME_MACHINE"-pc-msys
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-msys
+ ;;
i*:PW*:*)
- echo "$UNAME_MACHINE"-pc-pw32
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-pw32
+ ;;
*:Interix*:*)
- case "$UNAME_MACHINE" in
+ case $UNAME_MACHINE in
x86)
- echo i586-pc-interix"$UNAME_RELEASE"
- exit ;;
+ GUESS=i586-pc-interix$UNAME_RELEASE
+ ;;
authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix"$UNAME_RELEASE"
- exit ;;
+ GUESS=x86_64-unknown-interix$UNAME_RELEASE
+ ;;
IA64)
- echo ia64-unknown-interix"$UNAME_RELEASE"
- exit ;;
+ GUESS=ia64-unknown-interix$UNAME_RELEASE
+ ;;
esac ;;
i*:UWIN*:*)
- echo "$UNAME_MACHINE"-pc-uwin
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-uwin
+ ;;
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-pc-cygwin
- exit ;;
+ GUESS=x86_64-pc-cygwin
+ ;;
prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
- exit ;;
+ SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
+ GUESS=powerpcle-unknown-solaris2$SUN_REL
+ ;;
*:GNU:*:*)
# the GNU system
- echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
- exit ;;
+ GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'`
+ GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'`
+ GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL
+ ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
- echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
- exit ;;
+ GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"`
+ GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+ GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC
+ ;;
*:Minix:*:*)
- echo "$UNAME_MACHINE"-unknown-minix
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-minix
+ ;;
aarch64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
aarch64_be:Linux:*:*)
UNAME_MACHINE=aarch64_be
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
EV5) UNAME_MACHINE=alphaev5 ;;
@@ -937,60 +985,63 @@ EOF
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
- arc:Linux:*:* | arceb:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
+ arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*)
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
arm*:Linux:*:*)
set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__
then
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
else
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP
then
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
+ GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi
else
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
+ GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf
fi
fi
- exit ;;
+ ;;
avr32*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
cris:Linux:*:*)
- echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-axis-linux-$LIBC
+ ;;
crisv32:Linux:*:*)
- echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-axis-linux-$LIBC
+ ;;
e2k:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
frv:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
hexagon:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
i*86:Linux:*:*)
- echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-linux-$LIBC
+ ;;
ia64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
k1om:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
+ loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
m32r*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
m68*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
mips:Linux:*:* | mips64:Linux:*:*)
set_cc_for_build
IS_GLIBC=0
@@ -1035,113 +1086,124 @@ EOF
#endif
#endif
EOF
- eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`"
+ cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`
+ eval "$cc_set_vars"
test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
;;
mips64el:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
openrisc*:Linux:*:*)
- echo or1k-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=or1k-unknown-linux-$LIBC
+ ;;
or32:Linux:*:* | or1k*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
padre:Linux:*:*)
- echo sparc-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=sparc-unknown-linux-$LIBC
+ ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=hppa64-unknown-linux-$LIBC
+ ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
- PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
- *) echo hppa-unknown-linux-"$LIBC" ;;
+ PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;;
+ PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;;
+ *) GUESS=hppa-unknown-linux-$LIBC ;;
esac
- exit ;;
+ ;;
ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=powerpc64-unknown-linux-$LIBC
+ ;;
ppc:Linux:*:*)
- echo powerpc-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=powerpc-unknown-linux-$LIBC
+ ;;
ppc64le:Linux:*:*)
- echo powerpc64le-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=powerpc64le-unknown-linux-$LIBC
+ ;;
ppcle:Linux:*:*)
- echo powerpcle-unknown-linux-"$LIBC"
- exit ;;
- riscv32:Linux:*:* | riscv64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=powerpcle-unknown-linux-$LIBC
+ ;;
+ riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
s390:Linux:*:* | s390x:Linux:*:*)
- echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-ibm-linux-$LIBC
+ ;;
sh64*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
sh*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
tile*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
vax:Linux:*:*)
- echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-dec-linux-$LIBC
+ ;;
x86_64:Linux:*:*)
- echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
- exit ;;
+ set_cc_for_build
+ LIBCABI=$LIBC
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
+ if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_X32 >/dev/null
+ then
+ LIBCABI=${LIBC}x32
+ fi
+ fi
+ GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI
+ ;;
xtensa*:Linux:*:*)
- echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+ ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both
# sysname and nodename.
- echo i386-sequent-sysv4
- exit ;;
+ GUESS=i386-sequent-sysv4
+ ;;
i*86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
# I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
- echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION
+ ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
- echo "$UNAME_MACHINE"-pc-os2-emx
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-os2-emx
+ ;;
i*86:XTS-300:*:STOP)
- echo "$UNAME_MACHINE"-unknown-stop
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-stop
+ ;;
i*86:atheos:*:*)
- echo "$UNAME_MACHINE"-unknown-atheos
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-atheos
+ ;;
i*86:syllable:*:*)
- echo "$UNAME_MACHINE"-pc-syllable
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-syllable
+ ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
+ GUESS=i386-unknown-lynxos$UNAME_RELEASE
+ ;;
i*86:*DOS:*:*)
- echo "$UNAME_MACHINE"-pc-msdosdjgpp
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-msdosdjgpp
+ ;;
i*86:*:4.*:*)
UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
+ GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL
else
- echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
+ GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL
fi
- exit ;;
+ ;;
i*86:*:5:[678]*)
# UnixWare 7.x, OpenUNIX and OpenServer 6.
case `/bin/uname -X | grep "^Machine"` in
@@ -1149,12 +1211,12 @@ EOF
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
- echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+ ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
+ GUESS=$UNAME_MACHINE-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
@@ -1164,11 +1226,11 @@ EOF
&& UNAME_MACHINE=i686
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
- echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
+ GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL
else
- echo "$UNAME_MACHINE"-pc-sysv32
+ GUESS=$UNAME_MACHINE-pc-sysv32
fi
- exit ;;
+ ;;
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
@@ -1176,31 +1238,31 @@ EOF
# Note: whatever this is, it MUST be the same as what config.sub
# prints for the "djgpp" host, or else GDB configure will decide that
# this is a cross-build.
- echo i586-pc-msdosdjgpp
- exit ;;
+ GUESS=i586-pc-msdosdjgpp
+ ;;
Intel:Mach:3*:*)
- echo i386-pc-mach3
- exit ;;
+ GUESS=i386-pc-mach3
+ ;;
paragon:*:*:*)
- echo i860-intel-osf1
- exit ;;
+ GUESS=i860-intel-osf1
+ ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
+ GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
+ GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4
fi
- exit ;;
+ ;;
mini*:CTIX:SYS*5:*)
# "miniframe"
- echo m68010-convergent-sysv
- exit ;;
+ GUESS=m68010-convergent-sysv
+ ;;
mc68k:UNIX:SYSTEM5:3.51m)
- echo m68k-convergent-sysv
- exit ;;
+ GUESS=m68k-convergent-sysv
+ ;;
M680?0:D-NIX:5.3:*)
- echo m68k-diab-dnix
- exit ;;
+ GUESS=m68k-diab-dnix
+ ;;
M68*:*:R3V[5678]*:*)
test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
@@ -1225,113 +1287,116 @@ EOF
/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
&& { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-unknown-lynxos$UNAME_RELEASE
+ ;;
mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit ;;
+ GUESS=m68k-atari-sysv4
+ ;;
TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
+ GUESS=sparc-unknown-lynxos$UNAME_RELEASE
+ ;;
rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
+ GUESS=rs6000-unknown-lynxos$UNAME_RELEASE
+ ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos"$UNAME_RELEASE"
- exit ;;
+ GUESS=powerpc-unknown-lynxos$UNAME_RELEASE
+ ;;
SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv"$UNAME_RELEASE"
- exit ;;
+ GUESS=mips-dde-sysv$UNAME_RELEASE
+ ;;
RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
+ GUESS=mips-sni-sysv4
+ ;;
RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
+ GUESS=mips-sni-sysv4
+ ;;
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo "$UNAME_MACHINE"-sni-sysv4
+ GUESS=$UNAME_MACHINE-sni-sysv4
else
- echo ns32k-sni-sysv
+ GUESS=ns32k-sni-sysv
fi
- exit ;;
+ ;;
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit ;;
+ GUESS=i586-unisys-sysv4
+ ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
- exit ;;
+ GUESS=hppa1.1-stratus-sysv4
+ ;;
*:*:*:FTX*)
# From seanf@swdc.stratus.com.
- echo i860-stratus-sysv4
- exit ;;
+ GUESS=i860-stratus-sysv4
+ ;;
i*86:VOS:*:*)
# From Paul.Green@stratus.com.
- echo "$UNAME_MACHINE"-stratus-vos
- exit ;;
+ GUESS=$UNAME_MACHINE-stratus-vos
+ ;;
*:VOS:*:*)
# From Paul.Green@stratus.com.
- echo hppa1.1-stratus-vos
- exit ;;
+ GUESS=hppa1.1-stratus-vos
+ ;;
mc68*:A/UX:*:*)
- echo m68k-apple-aux"$UNAME_RELEASE"
- exit ;;
+ GUESS=m68k-apple-aux$UNAME_RELEASE
+ ;;
news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
- exit ;;
+ GUESS=mips-sony-newsos6
+ ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv"$UNAME_RELEASE"
+ if test -d /usr/nec; then
+ GUESS=mips-nec-sysv$UNAME_RELEASE
else
- echo mips-unknown-sysv"$UNAME_RELEASE"
+ GUESS=mips-unknown-sysv$UNAME_RELEASE
fi
- exit ;;
+ ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
- exit ;;
+ GUESS=powerpc-be-beos
+ ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
- exit ;;
+ GUESS=powerpc-apple-beos
+ ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
- exit ;;
+ GUESS=i586-pc-beos
+ ;;
BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
- echo i586-pc-haiku
- exit ;;
+ GUESS=i586-pc-haiku
+ ;;
x86_64:Haiku:*:*)
- echo x86_64-unknown-haiku
- exit ;;
+ GUESS=x86_64-unknown-haiku
+ ;;
SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux"$UNAME_RELEASE"
- exit ;;
+ GUESS=sx4-nec-superux$UNAME_RELEASE
+ ;;
SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux"$UNAME_RELEASE"
- exit ;;
+ GUESS=sx5-nec-superux$UNAME_RELEASE
+ ;;
SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux"$UNAME_RELEASE"
- exit ;;
+ GUESS=sx6-nec-superux$UNAME_RELEASE
+ ;;
SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux"$UNAME_RELEASE"
- exit ;;
+ GUESS=sx7-nec-superux$UNAME_RELEASE
+ ;;
SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux"$UNAME_RELEASE"
- exit ;;
+ GUESS=sx8-nec-superux$UNAME_RELEASE
+ ;;
SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux"$UNAME_RELEASE"
- exit ;;
+ GUESS=sx8r-nec-superux$UNAME_RELEASE
+ ;;
SX-ACE:SUPER-UX:*:*)
- echo sxace-nec-superux"$UNAME_RELEASE"
- exit ;;
+ GUESS=sxace-nec-superux$UNAME_RELEASE
+ ;;
Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody"$UNAME_RELEASE"
- exit ;;
+ GUESS=powerpc-apple-rhapsody$UNAME_RELEASE
+ ;;
*:Rhapsody:*:*)
- echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE
+ ;;
+ arm64:Darwin:*:*)
+ GUESS=aarch64-apple-darwin$UNAME_RELEASE
+ ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p`
case $UNAME_PROCESSOR in
@@ -1346,7 +1411,7 @@ EOF
else
set_cc_for_build
fi
- if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
@@ -1367,109 +1432,116 @@ EOF
# uname -m returns i386 or x86_64
UNAME_PROCESSOR=$UNAME_MACHINE
fi
- echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE
+ ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=`uname -p`
if test "$UNAME_PROCESSOR" = x86; then
UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
- echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE
+ ;;
*:QNX:*:4*)
- echo i386-pc-qnx
- exit ;;
+ GUESS=i386-pc-qnx
+ ;;
NEO-*:NONSTOP_KERNEL:*:*)
- echo neo-tandem-nsk"$UNAME_RELEASE"
- exit ;;
+ GUESS=neo-tandem-nsk$UNAME_RELEASE
+ ;;
NSE-*:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk"$UNAME_RELEASE"
- exit ;;
+ GUESS=nse-tandem-nsk$UNAME_RELEASE
+ ;;
NSR-*:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk"$UNAME_RELEASE"
- exit ;;
+ GUESS=nsr-tandem-nsk$UNAME_RELEASE
+ ;;
NSV-*:NONSTOP_KERNEL:*:*)
- echo nsv-tandem-nsk"$UNAME_RELEASE"
- exit ;;
+ GUESS=nsv-tandem-nsk$UNAME_RELEASE
+ ;;
NSX-*:NONSTOP_KERNEL:*:*)
- echo nsx-tandem-nsk"$UNAME_RELEASE"
- exit ;;
+ GUESS=nsx-tandem-nsk$UNAME_RELEASE
+ ;;
*:NonStop-UX:*:*)
- echo mips-compaq-nonstopux
- exit ;;
+ GUESS=mips-compaq-nonstopux
+ ;;
BS2000:POSIX*:*:*)
- echo bs2000-siemens-sysv
- exit ;;
+ GUESS=bs2000-siemens-sysv
+ ;;
DS/*:UNIX_System_V:*:*)
- echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE
+ ;;
*:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
# operating systems.
- # shellcheck disable=SC2154
- if test "$cputype" = 386; then
+ if test "${cputype-}" = 386; then
UNAME_MACHINE=i386
- else
- UNAME_MACHINE="$cputype"
+ elif test "x${cputype-}" != x; then
+ UNAME_MACHINE=$cputype
fi
- echo "$UNAME_MACHINE"-unknown-plan9
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-plan9
+ ;;
*:TOPS-10:*:*)
- echo pdp10-unknown-tops10
- exit ;;
+ GUESS=pdp10-unknown-tops10
+ ;;
*:TENEX:*:*)
- echo pdp10-unknown-tenex
- exit ;;
+ GUESS=pdp10-unknown-tenex
+ ;;
KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
- echo pdp10-dec-tops20
- exit ;;
+ GUESS=pdp10-dec-tops20
+ ;;
XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
- echo pdp10-xkl-tops20
- exit ;;
+ GUESS=pdp10-xkl-tops20
+ ;;
*:TOPS-20:*:*)
- echo pdp10-unknown-tops20
- exit ;;
+ GUESS=pdp10-unknown-tops20
+ ;;
*:ITS:*:*)
- echo pdp10-unknown-its
- exit ;;
+ GUESS=pdp10-unknown-its
+ ;;
SEI:*:*:SEIUX)
- echo mips-sei-seiux"$UNAME_RELEASE"
- exit ;;
+ GUESS=mips-sei-seiux$UNAME_RELEASE
+ ;;
*:DragonFly:*:*)
- echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
- exit ;;
+ DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
+ GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL
+ ;;
*:*VMS:*:*)
UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "$UNAME_MACHINE" in
- A*) echo alpha-dec-vms ; exit ;;
- I*) echo ia64-dec-vms ; exit ;;
- V*) echo vax-dec-vms ; exit ;;
+ case $UNAME_MACHINE in
+ A*) GUESS=alpha-dec-vms ;;
+ I*) GUESS=ia64-dec-vms ;;
+ V*) GUESS=vax-dec-vms ;;
esac ;;
*:XENIX:*:SysV)
- echo i386-pc-xenix
- exit ;;
+ GUESS=i386-pc-xenix
+ ;;
i*86:skyos:*:*)
- echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
- exit ;;
+ SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`
+ GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL
+ ;;
i*86:rdos:*:*)
- echo "$UNAME_MACHINE"-pc-rdos
- exit ;;
- i*86:AROS:*:*)
- echo "$UNAME_MACHINE"-pc-aros
- exit ;;
+ GUESS=$UNAME_MACHINE-pc-rdos
+ ;;
+ *:AROS:*:*)
+ GUESS=$UNAME_MACHINE-unknown-aros
+ ;;
x86_64:VMkernel:*:*)
- echo "$UNAME_MACHINE"-unknown-esx
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-esx
+ ;;
amd64:Isilon\ OneFS:*:*)
- echo x86_64-unknown-onefs
- exit ;;
+ GUESS=x86_64-unknown-onefs
+ ;;
*:Unleashed:*:*)
- echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE"
- exit ;;
+ GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE
+ ;;
esac
+# Do we have a guess based on uname results?
+if test "x$GUESS" != x; then
+ echo "$GUESS"
+ exit
+fi
+
# No uname command or uname output not recognized.
set_cc_for_build
cat > "$dummy.c" <<EOF
@@ -1601,7 +1673,7 @@ main ()
}
EOF
-$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` &&
{ echo "$SYSTEM_NAME"; exit; }
# Apollos put the system type in the environment.
@@ -1609,7 +1681,7 @@ test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
echo "$0: unable to guess system type" >&2
-case "$UNAME_MACHINE:$UNAME_SYSTEM" in
+case $UNAME_MACHINE:$UNAME_SYSTEM in
mips:Linux | mips64:Linux)
# If we got here on MIPS GNU/Linux, output extra information.
cat >&2 <<EOF
@@ -1626,9 +1698,17 @@ This script (version $timestamp), has failed to recognize the
operating system you are using. If your script is old, overwrite *all*
copies of config.guess and config.sub with the latest versions from:
- https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+ https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
and
- https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+ https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
+EOF
+
+our_year=`echo $timestamp | sed 's,-.*,,'`
+thisyear=`date +%Y`
+# shellcheck disable=SC2003
+script_age=`expr "$thisyear" - "$our_year"`
+if test "$script_age" -lt 3 ; then
+ cat >&2 <<EOF
If $0 has already been updated, send the following data and any
information you think might be pertinent to config-patches@gnu.org to
@@ -1656,6 +1736,7 @@ UNAME_RELEASE = "$UNAME_RELEASE"
UNAME_SYSTEM = "$UNAME_SYSTEM"
UNAME_VERSION = "$UNAME_VERSION"
EOF
+fi
exit 1
diff --git a/config.sub b/config.sub
index 0f2234c..d74fb6d 100755
--- a/config.sub
+++ b/config.sub
@@ -1,8 +1,10 @@
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright 1992-2019 Free Software Foundation, Inc.
+# Copyright 1992-2021 Free Software Foundation, Inc.
-timestamp='2019-06-30'
+# shellcheck disable=SC2006,SC2268 # see below for rationale
+
+timestamp='2021-08-14'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -33,7 +35,7 @@ timestamp='2019-06-30'
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
-# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
@@ -50,6 +52,13 @@ timestamp='2019-06-30'
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification.
+# The "shellcheck disable" line above the timestamp inhibits complaints
+# about features and limitations of the classic Bourne shell that were
+# superseded or lifted in POSIX. However, this script identifies a wide
+# variety of pre-POSIX systems that do not have POSIX shells at all, and
+# even some reasonably current systems (Solaris 10 as case-in-point) still
+# have a pre-POSIX /bin/sh.
+
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\
@@ -67,7 +76,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
-Copyright 1992-2019 Free Software Foundation, Inc.
+Copyright 1992-2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -112,9 +121,11 @@ esac
# Split fields of configuration type
# shellcheck disable=SC2162
+saved_IFS=$IFS
IFS="-" read field1 field2 field3 field4 <<EOF
$1
EOF
+IFS=$saved_IFS
# Separate into logical components for further validation
case $1 in
@@ -124,28 +135,27 @@ case $1 in
;;
*-*-*-*)
basic_machine=$field1-$field2
- os=$field3-$field4
+ basic_os=$field3-$field4
;;
*-*-*)
# Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
# parts
maybe_os=$field2-$field3
case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
- | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
+ nto-qnx* | linux-* | uclinux-uclibc* \
| uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
| netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
| storm-chaos* | os2-emx* | rtmk-nova*)
basic_machine=$field1
- os=$maybe_os
+ basic_os=$maybe_os
;;
android-linux)
basic_machine=$field1-unknown
- os=linux-android
+ basic_os=linux-android
;;
*)
basic_machine=$field1-$field2
- os=$field3
+ basic_os=$field3
;;
esac
;;
@@ -154,7 +164,7 @@ case $1 in
case $field1-$field2 in
decstation-3100)
basic_machine=mips-dec
- os=
+ basic_os=
;;
*-*)
# Second component is usually, but not always the OS
@@ -162,7 +172,11 @@ case $1 in
# Prevent following clause from handling this valid os
sun*os*)
basic_machine=$field1
- os=$field2
+ basic_os=$field2
+ ;;
+ zephyr*)
+ basic_machine=$field1-unknown
+ basic_os=$field2
;;
# Manufacturers
dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
@@ -175,11 +189,11 @@ case $1 in
| microblaze* | sim | cisco \
| oki | wec | wrs | winbond)
basic_machine=$field1-$field2
- os=
+ basic_os=
;;
*)
basic_machine=$field1
- os=$field2
+ basic_os=$field2
;;
esac
;;
@@ -191,447 +205,451 @@ case $1 in
case $field1 in
386bsd)
basic_machine=i386-pc
- os=bsd
+ basic_os=bsd
;;
a29khif)
basic_machine=a29k-amd
- os=udi
+ basic_os=udi
;;
adobe68k)
basic_machine=m68010-adobe
- os=scout
+ basic_os=scout
;;
alliant)
basic_machine=fx80-alliant
- os=
+ basic_os=
;;
altos | altos3068)
basic_machine=m68k-altos
- os=
+ basic_os=
;;
am29k)
basic_machine=a29k-none
- os=bsd
+ basic_os=bsd
;;
amdahl)
basic_machine=580-amdahl
- os=sysv
+ basic_os=sysv
;;
amiga)
basic_machine=m68k-unknown
- os=
+ basic_os=
;;
amigaos | amigados)
basic_machine=m68k-unknown
- os=amigaos
+ basic_os=amigaos
;;
amigaunix | amix)
basic_machine=m68k-unknown
- os=sysv4
+ basic_os=sysv4
;;
apollo68)
basic_machine=m68k-apollo
- os=sysv
+ basic_os=sysv
;;
apollo68bsd)
basic_machine=m68k-apollo
- os=bsd
+ basic_os=bsd
;;
aros)
basic_machine=i386-pc
- os=aros
+ basic_os=aros
;;
aux)
basic_machine=m68k-apple
- os=aux
+ basic_os=aux
;;
balance)
basic_machine=ns32k-sequent
- os=dynix
+ basic_os=dynix
;;
blackfin)
basic_machine=bfin-unknown
- os=linux
+ basic_os=linux
;;
cegcc)
basic_machine=arm-unknown
- os=cegcc
+ basic_os=cegcc
;;
convex-c1)
basic_machine=c1-convex
- os=bsd
+ basic_os=bsd
;;
convex-c2)
basic_machine=c2-convex
- os=bsd
+ basic_os=bsd
;;
convex-c32)
basic_machine=c32-convex
- os=bsd
+ basic_os=bsd
;;
convex-c34)
basic_machine=c34-convex
- os=bsd
+ basic_os=bsd
;;
convex-c38)
basic_machine=c38-convex
- os=bsd
+ basic_os=bsd
;;
cray)
basic_machine=j90-cray
- os=unicos
+ basic_os=unicos
;;
crds | unos)
basic_machine=m68k-crds
- os=
+ basic_os=
;;
da30)
basic_machine=m68k-da30
- os=
+ basic_os=
;;
decstation | pmax | pmin | dec3100 | decstatn)
basic_machine=mips-dec
- os=
+ basic_os=
;;
delta88)
basic_machine=m88k-motorola
- os=sysv3
+ basic_os=sysv3
;;
dicos)
basic_machine=i686-pc
- os=dicos
+ basic_os=dicos
;;
djgpp)
basic_machine=i586-pc
- os=msdosdjgpp
+ basic_os=msdosdjgpp
;;
ebmon29k)
basic_machine=a29k-amd
- os=ebmon
+ basic_os=ebmon
;;
es1800 | OSE68k | ose68k | ose | OSE)
basic_machine=m68k-ericsson
- os=ose
+ basic_os=ose
;;
gmicro)
basic_machine=tron-gmicro
- os=sysv
+ basic_os=sysv
;;
go32)
basic_machine=i386-pc
- os=go32
+ basic_os=go32
;;
h8300hms)
basic_machine=h8300-hitachi
- os=hms
+ basic_os=hms
;;
h8300xray)
basic_machine=h8300-hitachi
- os=xray
+ basic_os=xray
;;
h8500hms)
basic_machine=h8500-hitachi
- os=hms
+ basic_os=hms
;;
harris)
basic_machine=m88k-harris
- os=sysv3
+ basic_os=sysv3
;;
hp300 | hp300hpux)
basic_machine=m68k-hp
- os=hpux
+ basic_os=hpux
;;
hp300bsd)
basic_machine=m68k-hp
- os=bsd
+ basic_os=bsd
;;
hppaosf)
basic_machine=hppa1.1-hp
- os=osf
+ basic_os=osf
;;
hppro)
basic_machine=hppa1.1-hp
- os=proelf
+ basic_os=proelf
;;
i386mach)
basic_machine=i386-mach
- os=mach
+ basic_os=mach
;;
isi68 | isi)
basic_machine=m68k-isi
- os=sysv
+ basic_os=sysv
;;
m68knommu)
basic_machine=m68k-unknown
- os=linux
+ basic_os=linux
;;
magnum | m3230)
basic_machine=mips-mips
- os=sysv
+ basic_os=sysv
;;
merlin)
basic_machine=ns32k-utek
- os=sysv
+ basic_os=sysv
;;
mingw64)
basic_machine=x86_64-pc
- os=mingw64
+ basic_os=mingw64
;;
mingw32)
basic_machine=i686-pc
- os=mingw32
+ basic_os=mingw32
;;
mingw32ce)
basic_machine=arm-unknown
- os=mingw32ce
+ basic_os=mingw32ce
;;
monitor)
basic_machine=m68k-rom68k
- os=coff
+ basic_os=coff
;;
morphos)
basic_machine=powerpc-unknown
- os=morphos
+ basic_os=morphos
;;
moxiebox)
basic_machine=moxie-unknown
- os=moxiebox
+ basic_os=moxiebox
;;
msdos)
basic_machine=i386-pc
- os=msdos
+ basic_os=msdos
;;
msys)
basic_machine=i686-pc
- os=msys
+ basic_os=msys
;;
mvs)
basic_machine=i370-ibm
- os=mvs
+ basic_os=mvs
;;
nacl)
basic_machine=le32-unknown
- os=nacl
+ basic_os=nacl
;;
ncr3000)
basic_machine=i486-ncr
- os=sysv4
+ basic_os=sysv4
;;
netbsd386)
basic_machine=i386-pc
- os=netbsd
+ basic_os=netbsd
;;
netwinder)
basic_machine=armv4l-rebel
- os=linux
+ basic_os=linux
;;
news | news700 | news800 | news900)
basic_machine=m68k-sony
- os=newsos
+ basic_os=newsos
;;
news1000)
basic_machine=m68030-sony
- os=newsos
+ basic_os=newsos
;;
necv70)
basic_machine=v70-nec
- os=sysv
+ basic_os=sysv
;;
nh3000)
basic_machine=m68k-harris
- os=cxux
+ basic_os=cxux
;;
nh[45]000)
basic_machine=m88k-harris
- os=cxux
+ basic_os=cxux
;;
nindy960)
basic_machine=i960-intel
- os=nindy
+ basic_os=nindy
;;
mon960)
basic_machine=i960-intel
- os=mon960
+ basic_os=mon960
;;
nonstopux)
basic_machine=mips-compaq
- os=nonstopux
+ basic_os=nonstopux
;;
os400)
basic_machine=powerpc-ibm
- os=os400
+ basic_os=os400
;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
- os=ose
+ basic_os=ose
;;
os68k)
basic_machine=m68k-none
- os=os68k
+ basic_os=os68k
;;
paragon)
basic_machine=i860-intel
- os=osf
+ basic_os=osf
;;
parisc)
basic_machine=hppa-unknown
- os=linux
+ basic_os=linux
+ ;;
+ psp)
+ basic_machine=mipsallegrexel-sony
+ basic_os=psp
;;
pw32)
basic_machine=i586-unknown
- os=pw32
+ basic_os=pw32
;;
rdos | rdos64)
basic_machine=x86_64-pc
- os=rdos
+ basic_os=rdos
;;
rdos32)
basic_machine=i386-pc
- os=rdos
+ basic_os=rdos
;;
rom68k)
basic_machine=m68k-rom68k
- os=coff
+ basic_os=coff
;;
sa29200)
basic_machine=a29k-amd
- os=udi
+ basic_os=udi
;;
sei)
basic_machine=mips-sei
- os=seiux
+ basic_os=seiux
;;
sequent)
basic_machine=i386-sequent
- os=
+ basic_os=
;;
sps7)
basic_machine=m68k-bull
- os=sysv2
+ basic_os=sysv2
;;
st2000)
basic_machine=m68k-tandem
- os=
+ basic_os=
;;
stratus)
basic_machine=i860-stratus
- os=sysv4
+ basic_os=sysv4
;;
sun2)
basic_machine=m68000-sun
- os=
+ basic_os=
;;
sun2os3)
basic_machine=m68000-sun
- os=sunos3
+ basic_os=sunos3
;;
sun2os4)
basic_machine=m68000-sun
- os=sunos4
+ basic_os=sunos4
;;
sun3)
basic_machine=m68k-sun
- os=
+ basic_os=
;;
sun3os3)
basic_machine=m68k-sun
- os=sunos3
+ basic_os=sunos3
;;
sun3os4)
basic_machine=m68k-sun
- os=sunos4
+ basic_os=sunos4
;;
sun4)
basic_machine=sparc-sun
- os=
+ basic_os=
;;
sun4os3)
basic_machine=sparc-sun
- os=sunos3
+ basic_os=sunos3
;;
sun4os4)
basic_machine=sparc-sun
- os=sunos4
+ basic_os=sunos4
;;
sun4sol2)
basic_machine=sparc-sun
- os=solaris2
+ basic_os=solaris2
;;
sun386 | sun386i | roadrunner)
basic_machine=i386-sun
- os=
+ basic_os=
;;
sv1)
basic_machine=sv1-cray
- os=unicos
+ basic_os=unicos
;;
symmetry)
basic_machine=i386-sequent
- os=dynix
+ basic_os=dynix
;;
t3e)
basic_machine=alphaev5-cray
- os=unicos
+ basic_os=unicos
;;
t90)
basic_machine=t90-cray
- os=unicos
+ basic_os=unicos
;;
toad1)
basic_machine=pdp10-xkl
- os=tops20
+ basic_os=tops20
;;
tpf)
basic_machine=s390x-ibm
- os=tpf
+ basic_os=tpf
;;
udi29k)
basic_machine=a29k-amd
- os=udi
+ basic_os=udi
;;
ultra3)
basic_machine=a29k-nyu
- os=sym1
+ basic_os=sym1
;;
v810 | necv810)
basic_machine=v810-nec
- os=none
+ basic_os=none
;;
vaxv)
basic_machine=vax-dec
- os=sysv
+ basic_os=sysv
;;
vms)
basic_machine=vax-dec
- os=vms
+ basic_os=vms
;;
vsta)
basic_machine=i386-pc
- os=vsta
+ basic_os=vsta
;;
vxworks960)
basic_machine=i960-wrs
- os=vxworks
+ basic_os=vxworks
;;
vxworks68)
basic_machine=m68k-wrs
- os=vxworks
+ basic_os=vxworks
;;
vxworks29k)
basic_machine=a29k-wrs
- os=vxworks
+ basic_os=vxworks
;;
xbox)
basic_machine=i686-pc
- os=mingw32
+ basic_os=mingw32
;;
ymp)
basic_machine=ymp-cray
- os=unicos
+ basic_os=unicos
;;
*)
basic_machine=$1
- os=
+ basic_os=
;;
esac
;;
@@ -683,17 +701,17 @@ case $basic_machine in
bluegene*)
cpu=powerpc
vendor=ibm
- os=cnk
+ basic_os=cnk
;;
decsystem10* | dec10*)
cpu=pdp10
vendor=dec
- os=tops10
+ basic_os=tops10
;;
decsystem20* | dec20*)
cpu=pdp10
vendor=dec
- os=tops20
+ basic_os=tops20
;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
@@ -703,7 +721,7 @@ case $basic_machine in
dpx2*)
cpu=m68k
vendor=bull
- os=sysv3
+ basic_os=sysv3
;;
encore | umax | mmax)
cpu=ns32k
@@ -712,7 +730,7 @@ case $basic_machine in
elxsi)
cpu=elxsi
vendor=elxsi
- os=${os:-bsd}
+ basic_os=${basic_os:-bsd}
;;
fx2800)
cpu=i860
@@ -725,7 +743,7 @@ case $basic_machine in
h3050r* | hiux*)
cpu=hppa1.1
vendor=hitachi
- os=hiuxwe2
+ basic_os=hiuxwe2
;;
hp3k9[0-9][0-9] | hp9[0-9][0-9])
cpu=hppa1.0
@@ -768,36 +786,36 @@ case $basic_machine in
i*86v32)
cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc
- os=sysv32
+ basic_os=sysv32
;;
i*86v4*)
cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc
- os=sysv4
+ basic_os=sysv4
;;
i*86v)
cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc
- os=sysv
+ basic_os=sysv
;;
i*86sol2)
cpu=`echo "$1" | sed -e 's/86.*/86/'`
vendor=pc
- os=solaris2
+ basic_os=solaris2
;;
j90 | j90-cray)
cpu=j90
vendor=cray
- os=${os:-unicos}
+ basic_os=${basic_os:-unicos}
;;
iris | iris4d)
cpu=mips
vendor=sgi
- case $os in
+ case $basic_os in
irix*)
;;
*)
- os=irix4
+ basic_os=irix4
;;
esac
;;
@@ -808,26 +826,26 @@ case $basic_machine in
*mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
cpu=m68k
vendor=atari
- os=mint
+ basic_os=mint
;;
news-3600 | risc-news)
cpu=mips
vendor=sony
- os=newsos
+ basic_os=newsos
;;
next | m*-next)
cpu=m68k
vendor=next
- case $os in
+ case $basic_os in
openstep*)
;;
nextstep*)
;;
ns2*)
- os=nextstep2
+ basic_os=nextstep2
;;
*)
- os=nextstep3
+ basic_os=nextstep3
;;
esac
;;
@@ -838,12 +856,12 @@ case $basic_machine in
op50n-* | op60c-*)
cpu=hppa1.1
vendor=oki
- os=proelf
+ basic_os=proelf
;;
pa-hitachi)
cpu=hppa1.1
vendor=hitachi
- os=hiuxwe2
+ basic_os=hiuxwe2
;;
pbd)
cpu=sparc
@@ -880,12 +898,12 @@ case $basic_machine in
sde)
cpu=mipsisa32
vendor=sde
- os=${os:-elf}
+ basic_os=${basic_os:-elf}
;;
simso-wrs)
cpu=sparclite
vendor=wrs
- os=vxworks
+ basic_os=vxworks
;;
tower | tower-32)
cpu=m68k
@@ -902,7 +920,7 @@ case $basic_machine in
w89k-*)
cpu=hppa1.1
vendor=winbond
- os=proelf
+ basic_os=proelf
;;
none)
cpu=none
@@ -919,9 +937,11 @@ case $basic_machine in
*-*)
# shellcheck disable=SC2162
+ saved_IFS=$IFS
IFS="-" read cpu vendor <<EOF
$basic_machine
EOF
+ IFS=$saved_IFS
;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
@@ -955,11 +975,11 @@ case $cpu-$vendor in
# some cases the only manufacturer, in others, it is the most popular.
craynv-unknown)
vendor=cray
- os=${os:-unicosmp}
+ basic_os=${basic_os:-unicosmp}
;;
c90-unknown | c90-cray)
vendor=cray
- os=${os:-unicos}
+ basic_os=${Basic_os:-unicos}
;;
fx80-unknown)
vendor=alliant
@@ -1003,7 +1023,7 @@ case $cpu-$vendor in
dpx20-unknown | dpx20-bull)
cpu=rs6000
vendor=bull
- os=${os:-bosx}
+ basic_os=${basic_os:-bosx}
;;
# Here we normalize CPU types irrespective of the vendor
@@ -1012,7 +1032,7 @@ case $cpu-$vendor in
;;
blackfin-*)
cpu=bfin
- os=linux
+ basic_os=linux
;;
c54x-*)
cpu=tic54x
@@ -1025,7 +1045,7 @@ case $cpu-$vendor in
;;
e500v[12]-*)
cpu=powerpc
- os=$os"spe"
+ basic_os=${basic_os}"spe"
;;
mips3*-*)
cpu=mips64
@@ -1035,7 +1055,7 @@ case $cpu-$vendor in
;;
m68knommu-*)
cpu=m68k
- os=linux
+ basic_os=linux
;;
m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
cpu=s12z
@@ -1045,7 +1065,7 @@ case $cpu-$vendor in
;;
parisc-*)
cpu=hppa
- os=linux
+ basic_os=linux
;;
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
cpu=i586
@@ -1101,11 +1121,14 @@ case $cpu-$vendor in
xscale-* | xscalee[bl]-*)
cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
;;
+ arm64-*)
+ cpu=aarch64
+ ;;
# Recognize the canonical CPU Types that limit and/or modify the
# company names they are paired with.
cr16-*)
- os=${os:-elf}
+ basic_os=${basic_os:-elf}
;;
crisv32-* | etraxfs*-*)
cpu=crisv32
@@ -1116,7 +1139,7 @@ case $cpu-$vendor in
vendor=axis
;;
crx-*)
- os=${os:-elf}
+ basic_os=${basic_os:-elf}
;;
neo-tandem)
cpu=neo
@@ -1138,16 +1161,12 @@ case $cpu-$vendor in
cpu=nsx
vendor=tandem
;;
- s390-*)
- cpu=s390
- vendor=ibm
- ;;
- s390x-*)
- cpu=s390x
- vendor=ibm
+ mipsallegrexel-sony)
+ cpu=mipsallegrexel
+ vendor=sony
;;
tile*-*)
- os=${os:-linux-gnu}
+ basic_os=${basic_os:-linux-gnu}
;;
*)
@@ -1163,8 +1182,8 @@ case $cpu-$vendor in
| alphapca5[67] | alpha64pca5[67] \
| am33_2.0 \
| amdgcn \
- | arc | arceb \
- | arm | arm[lb]e | arme[lb] | armv* \
+ | arc | arceb | arc32 | arc64 \
+ | arm | arm[lb]e | arme[lb] | armv* \
| avr | avr32 \
| asmjs \
| ba \
@@ -1183,6 +1202,7 @@ case $cpu-$vendor in
| k1om \
| le32 | le64 \
| lm32 \
+ | loongarch32 | loongarch64 | loongarchx32 \
| m32c | m32r | m32rle \
| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
@@ -1201,9 +1221,13 @@ case $cpu-$vendor in
| mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
+ | mipsisa32r3 | mipsisa32r3el \
+ | mipsisa32r5 | mipsisa32r5el \
| mipsisa32r6 | mipsisa32r6el \
| mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64r3 | mipsisa64r3el \
+ | mipsisa64r5 | mipsisa64r5el \
| mipsisa64r6 | mipsisa64r6el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
@@ -1227,8 +1251,9 @@ case $cpu-$vendor in
| powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
| pru \
| pyramid \
- | riscv | riscv32 | riscv64 \
+ | riscv | riscv32 | riscv32be | riscv64 | riscv64be \
| rl78 | romp | rs6000 | rx \
+ | s390 | s390x \
| score \
| sh | shl \
| sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
@@ -1238,6 +1263,7 @@ case $cpu-$vendor in
| sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
| spu \
| tahoe \
+ | thumbv7* \
| tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
| tron \
| ubicom32 \
@@ -1275,8 +1301,49 @@ esac
# Decode manufacturer-specific aliases for certain operating systems.
-if [ x$os != x ]
+if test x$basic_os != x
then
+
+# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
+# set os.
+case $basic_os in
+ gnu/linux*)
+ kernel=linux
+ os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
+ ;;
+ os2-emx)
+ kernel=os2
+ os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
+ ;;
+ nto-qnx*)
+ kernel=nto
+ os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
+ ;;
+ *-*)
+ # shellcheck disable=SC2162
+ saved_IFS=$IFS
+ IFS="-" read kernel os <<EOF
+$basic_os
+EOF
+ IFS=$saved_IFS
+ ;;
+ # Default OS when just kernel was specified
+ nto*)
+ kernel=nto
+ os=`echo "$basic_os" | sed -e 's|nto|qnx|'`
+ ;;
+ linux*)
+ kernel=linux
+ os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
+ ;;
+ *)
+ kernel=
+ os=$basic_os
+ ;;
+esac
+
+# Now, normalize the OS (knowing we just have one component, it's not a kernel,
+# etc.)
case $os in
# First match some system type aliases that might get confused
# with valid system types.
@@ -1288,7 +1355,7 @@ case $os in
os=cnk
;;
solaris1 | solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
+ os=`echo "$os" | sed -e 's|solaris1|sunos4|'`
;;
solaris)
os=solaris2
@@ -1296,9 +1363,6 @@ case $os in
unixware*)
os=sysv4.2uw
;;
- gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
# es1800 is here to avoid being matched by es* (a different OS)
es1800*)
os=ose
@@ -1320,12 +1384,9 @@ case $os in
os=sco3.2v4
;;
sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- ;;
- sco3.2v[4-9]* | sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
+ os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'`
;;
- scout)
+ sco*v* | scout)
# Don't match below
;;
sco*)
@@ -1334,78 +1395,25 @@ case $os in
psos*)
os=psos
;;
- # Now accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST end in a * to match a version number.
- # sysv* is not here because it comes later, after sysvr4.
- gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
- | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
- | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
- | sym* | kopensolaris* | plan9* \
- | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
- | aos* | aros* | cloudabi* | sortix* | twizzler* \
- | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
- | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
- | knetbsd* | mirbsd* | netbsd* \
- | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
- | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
- | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
- | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
- | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
- | chorusrdb* | cegcc* | glidix* \
- | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
- | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
- | linux-newlib* | linux-musl* | linux-uclibc* \
- | uxpv* | beos* | mpeix* | udk* | moxiebox* \
- | interix* | uwin* | mks* | rhapsody* | darwin* \
- | openstep* | oskit* | conix* | pw32* | nonstopux* \
- | storm-chaos* | tops10* | tenex* | tops20* | its* \
- | os2* | vos* | palmos* | uclinux* | nucleus* \
- | morphos* | superux* | rtmk* | windiss* \
- | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
- | skyos* | haiku* | rdos* | toppers* | drops* | es* \
- | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
- | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
- | nsk* | powerunix)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
qnx*)
- case $cpu in
- x86 | i*86)
- ;;
- *)
- os=nto-$os
- ;;
- esac
+ os=qnx
;;
hiux*)
os=hiuxwe2
;;
- nto-qnx*)
- ;;
- nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- sim | xray | os68k* | v88r* \
- | windows* | osx | abug | netware* | os9* \
- | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
- ;;
- linux-dietlibc)
- os=linux-dietlibc
- ;;
- linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
lynx*178)
os=lynxos178
;;
lynx*5)
os=lynxos5
;;
+ lynxos*)
+ # don't get caught up in next wildcard
+ ;;
lynx*)
os=lynxos
;;
- mac*)
+ mac[0-9]*)
os=`echo "$os" | sed -e 's|mac|macos|'`
;;
opened*)
@@ -1452,7 +1460,7 @@ case $os in
;;
# Preserve the version number of sinix5.
sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
+ os=`echo "$os" | sed -e 's|sinix|sysv|'`
;;
sinix*)
os=sysv4
@@ -1475,18 +1483,12 @@ case $os in
sysvr4)
os=sysv4
;;
- # This must come after sysvr4.
- sysv*)
- ;;
ose*)
os=ose
;;
*mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
os=mint
;;
- zvmoe)
- os=zvmoe
- ;;
dicos*)
os=dicos
;;
@@ -1503,19 +1505,11 @@ case $os in
;;
esac
;;
- nacl*)
- ;;
- ios)
- ;;
- none)
- ;;
- *-eabi)
- ;;
*)
- echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
- exit 1
+ # No normalization, but not necessarily accepted, that comes below.
;;
esac
+
else
# Here we handle the default operating systems that come with various machines.
@@ -1528,6 +1522,7 @@ else
# will signal an error saying that MANUFACTURER isn't an operating
# system, and we'll never get to this point.
+kernel=
case $cpu-$vendor in
score-*)
os=elf
@@ -1539,7 +1534,8 @@ case $cpu-$vendor in
os=riscix1.2
;;
arm*-rebel)
- os=linux
+ kernel=linux
+ os=gnu
;;
arm*-semi)
os=aout
@@ -1705,84 +1701,179 @@ case $cpu-$vendor in
os=none
;;
esac
+
fi
+# Now, validate our (potentially fixed-up) OS.
+case $os in
+ # Sometimes we do "kernel-libc", so those need to count as OSes.
+ musl* | newlib* | relibc* | uclibc*)
+ ;;
+ # Likewise for "kernel-abi"
+ eabi* | gnueabi*)
+ ;;
+ # VxWorks passes extra cpu info in the 4th filed.
+ simlinux | simwindows | spe)
+ ;;
+ # Now accept the basic system types.
+ # The portable systems comes first.
+ # Each alternative MUST end in a * to match a version number.
+ gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
+ | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
+ | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
+ | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \
+ | hiux* | abug | nacl* | netware* | windows* \
+ | os9* | macos* | osx* | ios* \
+ | mpw* | magic* | mmixware* | mon960* | lnews* \
+ | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
+ | aos* | aros* | cloudabi* | sortix* | twizzler* \
+ | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
+ | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
+ | mirbsd* | netbsd* | dicos* | openedition* | ose* \
+ | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
+ | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
+ | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
+ | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
+ | udi* | lites* | ieee* | go32* | aux* | hcos* \
+ | chorusrdb* | cegcc* | glidix* | serenity* \
+ | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
+ | midipix* | mingw32* | mingw64* | mint* \
+ | uxpv* | beos* | mpeix* | udk* | moxiebox* \
+ | interix* | uwin* | mks* | rhapsody* | darwin* \
+ | openstep* | oskit* | conix* | pw32* | nonstopux* \
+ | storm-chaos* | tops10* | tenex* | tops20* | its* \
+ | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
+ | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
+ | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
+ | skyos* | haiku* | rdos* | toppers* | drops* | es* \
+ | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
+ | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
+ | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr*)
+ ;;
+ # This one is extra strict with allowed versions
+ sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
+ # Don't forget version if it is 3.2v4 or newer.
+ ;;
+ none)
+ ;;
+ *)
+ echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2
+ exit 1
+ ;;
+esac
+
+# As a final step for OS-related things, validate the OS-kernel combination
+# (given a valid OS), if there is a kernel.
+case $kernel-$os in
+ linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \
+ | linux-musl* | linux-relibc* | linux-uclibc* )
+ ;;
+ uclinux-uclibc* )
+ ;;
+ -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* )
+ # These are just libc implementations, not actual OSes, and thus
+ # require a kernel.
+ echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
+ exit 1
+ ;;
+ kfreebsd*-gnu* | kopensolaris*-gnu*)
+ ;;
+ vxworks-simlinux | vxworks-simwindows | vxworks-spe)
+ ;;
+ nto-qnx*)
+ ;;
+ os2-emx)
+ ;;
+ *-eabi* | *-gnueabi*)
+ ;;
+ -*)
+ # Blank kernel with real OS is always fine.
+ ;;
+ *-*)
+ echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
+ exit 1
+ ;;
+esac
+
# Here we handle the case where we know the os, and the CPU type, but not the
# manufacturer. We pick the logical manufacturer.
case $vendor in
unknown)
- case $os in
- riscix*)
+ case $cpu-$os in
+ *-riscix*)
vendor=acorn
;;
- sunos*)
+ *-sunos*)
vendor=sun
;;
- cnk*|-aix*)
+ *-cnk* | *-aix*)
vendor=ibm
;;
- beos*)
+ *-beos*)
vendor=be
;;
- hpux*)
+ *-hpux*)
vendor=hp
;;
- mpeix*)
+ *-mpeix*)
vendor=hp
;;
- hiux*)
+ *-hiux*)
vendor=hitachi
;;
- unos*)
+ *-unos*)
vendor=crds
;;
- dgux*)
+ *-dgux*)
vendor=dg
;;
- luna*)
+ *-luna*)
vendor=omron
;;
- genix*)
+ *-genix*)
vendor=ns
;;
- clix*)
+ *-clix*)
vendor=intergraph
;;
- mvs* | opened*)
+ *-mvs* | *-opened*)
+ vendor=ibm
+ ;;
+ *-os400*)
vendor=ibm
;;
- os400*)
+ s390-* | s390x-*)
vendor=ibm
;;
- ptx*)
+ *-ptx*)
vendor=sequent
;;
- tpf*)
+ *-tpf*)
vendor=ibm
;;
- vxsim* | vxworks* | windiss*)
+ *-vxsim* | *-vxworks* | *-windiss*)
vendor=wrs
;;
- aux*)
+ *-aux*)
vendor=apple
;;
- hms*)
+ *-hms*)
vendor=hitachi
;;
- mpw* | macos*)
+ *-mpw* | *-macos*)
vendor=apple
;;
- *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
+ *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
vendor=atari
;;
- vos*)
+ *-vos*)
vendor=stratus
;;
esac
;;
esac
-echo "$cpu-$vendor-$os"
+echo "$cpu-$vendor-${kernel:+$kernel-}$os"
exit
# Local variables:
diff --git a/configure b/configure
index 06f344f..421cf85 100755
--- a/configure
+++ b/configure
@@ -1,8 +1,9 @@
#! /bin/sh
-# From configure.in Revision: 1.697 .
+# From configure.in Revision: 1.736 .
# Guess values for system-dependent variables and create Makefiles.
-# Generated by Autoconf 2.52.20200111.
+# Generated by Autoconf 2.52.20210509.
#
+# Copyright 2003-2020,2021 Thomas E. Dickey
# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -60,9 +61,9 @@ as_executable_p="test -f"
# Support unset when possible.
if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
+ as_unset="unset"
else
- as_unset=false
+ as_unset="false"
fi
# NLS nuisances.
@@ -97,13 +98,14 @@ exec 6>&1
ac_default_prefix=/usr/local
cross_compiling=no
subdirs=
-MFLAGS= MAKEFLAGS=
+MFLAGS=
+MAKEFLAGS=
SHELL=${CONFIG_SHELL-/bin/sh}
# Maximum number of lines to put in a shell here document.
# This variable seems obsolete. It should probably be removed, and
# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
+: "${ac_max_here_lines=38}"
ac_unique_file="ncurses/base/lib_initscr.c"
# Factoring default headers for most tests.
@@ -204,7 +206,7 @@ do
# Accept the important Cygnus configure options, so we can diagnose typos.
- case $ac_option in
+ case "$ac_option" in
-bindir | --bindir | --bindi | --bind | --bin | --bi)
ac_prev=bindir ;;
@@ -245,7 +247,7 @@ do
expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid feature name: $ac_feature" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+ ac_feature=`echo "$ac_feature" | sed 's/-/_/g'`
eval "enable_$ac_feature=no" ;;
-enable-* | --enable-*)
@@ -254,8 +256,8 @@ do
expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid feature name: $ac_feature" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- case $ac_option in
+ ac_feature=`echo "$ac_feature" | sed 's/-/_/g'`
+ case "$ac_option" in
*=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
*) ac_optarg=yes ;;
esac
@@ -445,8 +447,8 @@ do
expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid package name: $ac_package" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case $ac_option in
+ ac_package=`echo "$ac_package" | sed 's/-/_/g'`
+ case "$ac_option" in
*=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
*) ac_optarg=yes ;;
esac
@@ -458,7 +460,7 @@ do
expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid package name: $ac_package" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/-/_/g'`
+ ac_package=`echo "$ac_package" | sed 's/-/_/g'`
eval "with_$ac_package=no" ;;
--x)
@@ -492,21 +494,21 @@ Try \`$0 --help' for more information." >&2
{ (exit 1); exit 1; }; }
ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
eval "$ac_envvar='$ac_optarg'"
- export $ac_envvar ;;
+ export "$ac_envvar" ;;
*)
# FIXME: should be removed in autoconf 3.0.
echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ : "${build_alias=$ac_option}" "${host_alias=$ac_option}" "${target_alias=$ac_option}"
;;
esac
done
if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+ ac_option=--`echo "$ac_prev" | sed 's/_/-/g'`
{ echo "$as_me: error: missing argument to $ac_option" >&2
{ (exit 1); exit 1; }; }
fi
@@ -514,8 +516,8 @@ fi
# Be sure to have absolute paths.
for ac_var in exec_prefix prefix
do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
+ eval ac_val=$`echo "$ac_var"`
+ case "$ac_val" in
[\\/$]* | ?:[\\/]* | NONE | '' ) ;;
*) { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
{ (exit 1); exit 1; }; };;
@@ -526,8 +528,8 @@ done
for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \
localstatedir libdir includedir oldincludedir infodir mandir
do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
+ eval ac_val=$`echo "$ac_var"`
+ case "$ac_val" in
[\\/$]* | ?:[\\/]* ) ;;
*) { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
{ (exit 1); exit 1; }; };;
@@ -564,13 +566,13 @@ if test -z "$srcdir"; then
ac_confdir=`echo "$ac_prog" | sed 's%[\\/][^\\/][^\\/]*$%%'`
test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
+ if test ! -r "$srcdir/$ac_unique_file"; then
srcdir=..
fi
else
ac_srcdir_defaulted=no
fi
-if test ! -r $srcdir/$ac_unique_file; then
+if test ! -r "$srcdir/$ac_unique_file"; then
if test "$ac_srcdir_defaulted" = yes; then
{ echo "$as_me: error: cannot find sources in $ac_confdir or .." >&2
{ (exit 1); exit 1; }; }
@@ -760,6 +762,7 @@ Options to Specify the Libraries Built/Used:
--with-sysmouse use sysmouse (FreeBSD console)
--disable-lib-suffixes disable library suffixes
--disable-rpath-hack don't add rpath options for additional libraries
+ --disable-pkg-ldflags disable extra LDFLAGS for package-scripts
Fine-Tuning Your Configuration:
--with-extra-suffix=X append extra suffix to header/library paths
--disable-overwrite put headers in subdir, omit link to -lcurses
@@ -780,7 +783,8 @@ Fine-Tuning Your Configuration:
--enable-getcap fast termcap load, no xrefs to terminfo
--enable-getcap-cache cache translated termcaps in ~/.terminfo
--disable-home-terminfo drop ~/.terminfo from terminfo search-path
- --disable-root-environ restrict environment when running as root
+ --disable-root-environ restrict root use of ncurses environment variables
+ --disable-root-access restrict file-access when running setuid
--enable-symlinks make tic use symbolic links not hard links
--enable-broken_linker compile with broken-linker support code
--enable-bsdpad recognize BSD-style prefix padding
@@ -789,7 +793,7 @@ Fine-Tuning Your Configuration:
--disable-largefile omit support for large files
--disable-tparm-varargs compile tparm() without varargs interface
--disable-tic-depends link tic library without explicit dependency on ncurses library
- --disable-wattr-macros suppress wattr* macros to help with ncurses5/ncurses6 transition
+ --enable-wattr-macros enable wattr* macros
--with-x11-rgb=FILE file containing X11 rgb information (EPREFIX/lib/X11/rgb.txt)
--with-bool=TYPE override fallback type of bool variable
--with-caps=alt compile with alternate Caps file
@@ -836,14 +840,17 @@ Experimental Code:
--disable-assumed-color do not assume anything about default-colors
--disable-hashmap compile without hashmap scrolling-optimization
--enable-colorfgbg compile-in experimental $COLORFGBG code
+ --enable-fvisibility compile with -fvisibility=hidden
--enable-interop compile-in interop bindings
--enable-safe-sprintf compile with experimental safe-sprintf code
--disable-scroll-hints compile without scroll-hints code
--enable-wgetch-events compile with wgetch-events code
+ --enable-exp-win32 compile with experimental-Windows driver
Testing/development Options:
--disable-echo do not display "compiling" commands
--disable-stripping do not strip (debug info) installed executables
- --enable-warnings build: turn on GCC compiler warnings
+ --enable-warnings test: turn on gcc compiler warnings
+ --enable-stdnoreturn enable C11 _Noreturn feature for diagnostics
--enable-string-hacks work around bogus compiler/loader warnings
--enable-assertions test: turn on generation of assertion code
--with-dmalloc test: use Gray Watson's dmalloc library
@@ -860,6 +867,10 @@ Ada Binding Options:
--with-ada-objects=DIR Ada objects are in DIR (default: PREFIX/lib/ada/adalib)
--with-ada-sharedlib=soname build shared-library (requires GNAT projects)
--with-ada-libname=XXX override default Ada library-name
+ --with-form-libname=XXX override form basename of library
+ --with-menu-libname=XXX override menu basename of library
+ --with-panel-libname=XXX override panel basename of library
+ --with-cxx-libname=XXX override ncurses++ basename of library
Some influential environment variables:
CC C compiler command
@@ -883,42 +894,43 @@ if test "$ac_init_help" = "recursive"; then
# If there are subdirs, report their specific --help.
ac_popdir=`pwd`
for ac_subdir in : $ac_subdirs_all; do test "x$ac_subdir" = x: && continue
- cd $ac_subdir
+ cd "$ac_subdir"
# A "../" for each directory in /$ac_subdir.
- ac_dots=`echo $ac_subdir |
+ ac_dots=`echo "$ac_subdir" |
sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
- case $srcdir in
+ case "$srcdir" in
.) # No --srcdir option. We are building in place.
- ac_sub_srcdir=$srcdir ;;
+ ac_sub_srcdir="$srcdir" ;;
[\\/]* | ?:[\\/]* ) # Absolute path.
- ac_sub_srcdir=$srcdir/$ac_subdir ;;
+ ac_sub_srcdir="$srcdir/$ac_subdir" ;;
*) # Relative path.
- ac_sub_srcdir=$ac_dots$srcdir/$ac_subdir ;;
+ ac_sub_srcdir="$ac_dots$srcdir/$ac_subdir" ;;
esac
# Check for guested configure; otherwise get Cygnus style configure.
- if test -f $ac_sub_srcdir/configure.gnu; then
+ if test -f "$ac_sub_srcdir/configure.gnu"; then
echo
- $SHELL $ac_sub_srcdir/configure.gnu --help=recursive
- elif test -f $ac_sub_srcdir/configure; then
+ $SHELL "$ac_sub_srcdir/configure.gnu" --help=recursive
+ elif test -f "$ac_sub_srcdir/configure"; then
echo
- $SHELL $ac_sub_srcdir/configure --help=recursive
- elif test -f $ac_sub_srcdir/configure.ac ||
- test -f $ac_sub_srcdir/configure.in; then
+ $SHELL "$ac_sub_srcdir/configure" --help=recursive
+ elif test -f "$ac_sub_srcdir/configure.ac" ||
+ test -f "$ac_sub_srcdir/configure.in"; then
echo
- $ac_configure --help
+ "$ac_configure" --help
else
echo "$as_me: WARNING: no configuration information is in $ac_subdir" >&2
fi
- cd $ac_popdir
+ cd "$ac_popdir"
done
fi
test -n "$ac_init_help" && exit 0
-if $ac_init_version; then
+if "$ac_init_version"; then
cat <<\EOF
+Copyright 2003-2020,2021 Thomas E. Dickey
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
@@ -932,7 +944,7 @@ This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by $as_me, which was
-generated by GNU Autoconf 2.52.20200111. Invocation command line was
+generated by GNU Autoconf 2.52.20210509. Invocation command line was
$ $0 $@
@@ -979,7 +991,7 @@ ac_configure_args=
ac_sep=
for ac_arg
do
- case $ac_arg in
+ case "$ac_arg" in
-no-create | --no-create | --no-creat | --no-crea | --no-cre \
| --no-cr | --no-c) ;;
-no-recursion | --no-recursion | --no-recursio | --no-recursi \
@@ -1036,7 +1048,7 @@ trap 'exit_status=$?
exit $exit_status
' 0
for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' "$ac_signal"
done
ac_signal=0
@@ -1056,7 +1068,7 @@ if test -z "$CONFIG_SITE"; then
fi
for ac_site_file in $CONFIG_SITE; do
if test -r "$ac_site_file"; then
- { echo "$as_me:1059: loading site script $ac_site_file" >&5
+ { echo "$as_me:1071: loading site script $ac_site_file" >&5
echo "$as_me: loading site script $ac_site_file" >&6;}
cat "$ac_site_file" >&5
. "$ac_site_file"
@@ -1067,7 +1079,7 @@ if test -r "$cache_file"; then
# Some versions of bash will fail to source /dev/null (special
# files actually), so we avoid doing that.
if test -f "$cache_file"; then
- { echo "$as_me:1070: loading cache $cache_file" >&5
+ { echo "$as_me:1082: loading cache $cache_file" >&5
echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . $cache_file;;
@@ -1075,7 +1087,7 @@ echo "$as_me: loading cache $cache_file" >&6;}
esac
fi
else
- { echo "$as_me:1078: creating cache $cache_file" >&5
+ { echo "$as_me:1090: creating cache $cache_file" >&5
echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
@@ -1089,23 +1101,23 @@ for ac_var in `(set) 2>&1 |
eval ac_new_set=\$ac_env_${ac_var}_set
eval ac_old_val="\$ac_cv_env_${ac_var}_value"
eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
+ case "$ac_old_set,$ac_new_set" in
set,)
- { echo "$as_me:1094: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+ { echo "$as_me:1106: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { echo "$as_me:1098: error: \`$ac_var' was not set in the previous run" >&5
+ { echo "$as_me:1110: error: \`$ac_var' was not set in the previous run" >&5
echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:1104: error: \`$ac_var' has changed since the previous run:" >&5
+ { echo "$as_me:1116: error: \`$ac_var' has changed since the previous run:" >&5
echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:1106: former value: $ac_old_val" >&5
+ { echo "$as_me:1118: former value: $ac_old_val" >&5
echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:1108: current value: $ac_new_val" >&5
+ { echo "$as_me:1120: current value: $ac_new_val" >&5
echo "$as_me: current value: $ac_new_val" >&2;}
ac_cache_corrupted=:
fi;;
@@ -1113,7 +1125,7 @@ echo "$as_me: current value: $ac_new_val" >&2;}
# Pass precious variables to config.status. It doesn't matter if
# we pass some twice (in addition to the command line arguments).
if test "$ac_new_set" = set; then
- case $ac_new_val in
+ case "$ac_new_val" in
*" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"`
ac_configure_args="$ac_configure_args '$ac_arg'"
@@ -1123,35 +1135,43 @@ echo "$as_me: current value: $ac_new_val" >&2;}
esac
fi
done
-if $ac_cache_corrupted; then
- { echo "$as_me:1127: error: changes in the environment can compromise the build" >&5
+if "$ac_cache_corrupted"; then
+ { echo "$as_me:1139: error: changes in the environment can compromise the build" >&5
echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:1129: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+ { { echo "$as_me:1141: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
{ (exit 1); exit 1; }; }
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
case `echo "testing\c" 2>/dev/null; echo 1,2,3`,`echo -n testing 2>/dev/null; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C= # newlines do not sed ;-) only broken shells would use this case anyway
- ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+ *c*,-n*) ECHO_N=
+ ECHO_C= # newlines do not sed ;-) only broken shells would use this case anyway
+ ECHO_T=' '
+ ;;
+ *c*,* ) ECHO_N=-n
+ ECHO_C=
+ ECHO_T=
+ ;;
+ *) ECHO_N=
+ ECHO_C='\c'
+ ECHO_T=
+ ;;
esac
echo "#! $SHELL" >conftest.sh
echo "exit 0" >>conftest.sh
chmod +x conftest.sh
-if { (echo "$as_me:1150: PATH=\".;.\"; conftest.sh") >&5
+if { (echo "$as_me:1170: PATH=\".;.\"; conftest.sh") >&5
(PATH=".;."; conftest.sh) 2>&5
ac_status=$?
- echo "$as_me:1153: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1173: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
ac_path_separator=';'
else
ac_path_separator=:
@@ -1163,79 +1183,159 @@ ac_config_headers="$ac_config_headers include/ncurses_cfg.h:include/ncurses_cfg.
top_builddir=`pwd`
-echo "$as_me:1166: checking for egrep" >&5
+for ac_prog in ggrep grep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:1190: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_GREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$GREP"; then
+ ac_cv_prog_GREP="$GREP" # Let the user override the test.
+else
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_GREP="$ac_prog"
+echo "$as_me:1205: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+GREP=$ac_cv_prog_GREP
+if test -n "$GREP"; then
+ echo "$as_me:1213: result: $GREP" >&5
+echo "${ECHO_T}$GREP" >&6
+else
+ echo "$as_me:1216: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$GREP" && break
+done
+test -n "$GREP" || GREP=": "
+
+echo "$as_me:1224: checking for egrep" >&5
echo $ECHO_N "checking for egrep... $ECHO_C" >&6
-if test "${ac_cv_prog_egrep+set}" = set; then
+if test "${ac_cv_path_EGREP+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- if echo a | (grep -E '(a|b)') >/dev/null 2>&1
- then ac_cv_prog_egrep='grep -E'
- else ac_cv_prog_egrep='egrep'
- fi
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ for ac_prog in gegrep egrep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:1236: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_EGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $EGREP in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_EGREP="$EGREP" # Let the user override the test with a path.
+ ;;
+ *)
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ if $as_executable_p "$ac_dir/$ac_word"; then
+ ac_cv_path_EGREP="$ac_dir/$ac_word"
+ echo "$as_me:1253: found $ac_dir/$ac_word" >&5
+ break
+fi
+done
+
+ ;;
+esac
+fi
+EGREP=$ac_cv_path_EGREP
+
+if test -n "$EGREP"; then
+ echo "$as_me:1264: result: $EGREP" >&5
+echo "${ECHO_T}$EGREP" >&6
+else
+ echo "$as_me:1267: result: no" >&5
+echo "${ECHO_T}no" >&6
fi
-echo "$as_me:1176: result: $ac_cv_prog_egrep" >&5
-echo "${ECHO_T}$ac_cv_prog_egrep" >&6
- EGREP=$ac_cv_prog_egrep
- test -z "$EGREP" && { { echo "$as_me:1180: error: No egrep program found" >&5
-echo "$as_me: error: No egrep program found" >&2;}
+ test -n "$EGREP" && break
+done
+test -n "$EGREP" || EGREP=": "
+
+ test "x$ac_cv_path_EGREP" = "x:" && { { echo "$as_me:1275: error: cannot find workable egrep" >&5
+echo "$as_me: error: cannot find workable egrep" >&2;}
{ (exit 1); exit 1; }; }
+ fi
+fi
+echo "$as_me:1280: result: $ac_cv_path_EGREP" >&5
+echo "${ECHO_T}$ac_cv_path_EGREP" >&6
+ EGREP="$ac_cv_path_EGREP"
-NCURSES_MAJOR="`$ac_cv_prog_egrep '^NCURSES_MAJOR[ ]*=' $srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
-NCURSES_MINOR="`$ac_cv_prog_egrep '^NCURSES_MINOR[ ]*=' $srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
-NCURSES_PATCH="`$ac_cv_prog_egrep '^NCURSES_PATCH[ ]*=' $srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
+NCURSES_MAJOR="`${EGREP-egrep} '^NCURSES_MAJOR[ ]*=' "$srcdir/dist.mk" | sed -e 's/^[^0-9]*//'`"
+NCURSES_MINOR="`${EGREP-egrep} '^NCURSES_MINOR[ ]*=' "$srcdir/dist.mk" | sed -e 's/^[^0-9]*//'`"
+NCURSES_PATCH="`${EGREP-egrep} '^NCURSES_PATCH[ ]*=' "$srcdir/dist.mk" | sed -e 's/^[^0-9]*//'`"
cf_cv_abi_version=${NCURSES_MAJOR}
cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
cf_cv_timestamp=`date`
-echo "$as_me:1190: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
+echo "$as_me:1290: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
echo "${ECHO_T}Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&6
-if test -f $srcdir/VERSION ; then
- echo "$as_me:1194: checking for package version" >&5
+if test -f "$srcdir/VERSION" ; then
+ echo "$as_me:1294: checking for package version" >&5
echo $ECHO_N "checking for package version... $ECHO_C" >&6
# if there are not enough fields, cut returns the last one...
- cf_field1=`sed -e '2,$d' $srcdir/VERSION|cut -f1`
- cf_field2=`sed -e '2,$d' $srcdir/VERSION|cut -f2`
- cf_field3=`sed -e '2,$d' $srcdir/VERSION|cut -f3`
+ cf_field1=`sed -e '2,$d' "$srcdir/VERSION" |cut -f1`
+ cf_field2=`sed -e '2,$d' "$srcdir/VERSION" |cut -f2`
+ cf_field3=`sed -e '2,$d' "$srcdir/VERSION" |cut -f3`
# this is how CF_BUNDLED_INTL uses $VERSION:
VERSION="$cf_field1"
VERSION_MAJOR=`echo "$cf_field2" | sed -e 's/\..*//'`
- test -z "$VERSION_MAJOR" && { { echo "$as_me:1206: error: missing major-version" >&5
+ test -z "$VERSION_MAJOR" && { { echo "$as_me:1306: error: missing major-version" >&5
echo "$as_me: error: missing major-version" >&2;}
{ (exit 1); exit 1; }; }
VERSION_MINOR=`echo "$cf_field2" | sed -e 's/^[^.]*\.//' -e 's/-.*//'`
- test -z "$VERSION_MINOR" && { { echo "$as_me:1211: error: missing minor-version" >&5
+ test -z "$VERSION_MINOR" && { { echo "$as_me:1311: error: missing minor-version" >&5
echo "$as_me: error: missing minor-version" >&2;}
{ (exit 1); exit 1; }; }
- echo "$as_me:1215: result: ${VERSION_MAJOR}.${VERSION_MINOR}" >&5
+ echo "$as_me:1315: result: ${VERSION_MAJOR}.${VERSION_MINOR}" >&5
echo "${ECHO_T}${VERSION_MAJOR}.${VERSION_MINOR}" >&6
- echo "$as_me:1218: checking for package patch date" >&5
+ echo "$as_me:1318: checking for package patch date" >&5
echo $ECHO_N "checking for package patch date... $ECHO_C" >&6
VERSION_PATCH=`echo "$cf_field3" | sed -e 's/^[^-]*-//'`
case .$VERSION_PATCH in
(.)
- { { echo "$as_me:1223: error: missing patch-date $VERSION_PATCH" >&5
+ { { echo "$as_me:1323: error: missing patch-date $VERSION_PATCH" >&5
echo "$as_me: error: missing patch-date $VERSION_PATCH" >&2;}
{ (exit 1); exit 1; }; }
;;
(.[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9])
;;
(*)
- { { echo "$as_me:1230: error: illegal patch-date $VERSION_PATCH" >&5
+ { { echo "$as_me:1330: error: illegal patch-date $VERSION_PATCH" >&5
echo "$as_me: error: illegal patch-date $VERSION_PATCH" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
- echo "$as_me:1235: result: $VERSION_PATCH" >&5
+ echo "$as_me:1335: result: $VERSION_PATCH" >&5
echo "${ECHO_T}$VERSION_PATCH" >&6
else
- { { echo "$as_me:1238: error: did not find $srcdir/VERSION" >&5
+ { { echo "$as_me:1338: error: did not find $srcdir/VERSION" >&5
echo "$as_me: error: did not find $srcdir/VERSION" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1243,19 +1343,19 @@ fi
# show the actual data that we have for versions:
test -n "$verbose" && echo " ABI VERSION $VERSION" 1>&6
-echo "${as_me:-configure}:1246: testing ABI VERSION $VERSION ..." 1>&5
+echo "${as_me:-configure}:1346: testing ABI VERSION $VERSION ..." 1>&5
test -n "$verbose" && echo " VERSION_MAJOR $VERSION_MAJOR" 1>&6
-echo "${as_me:-configure}:1250: testing VERSION_MAJOR $VERSION_MAJOR ..." 1>&5
+echo "${as_me:-configure}:1350: testing VERSION_MAJOR $VERSION_MAJOR ..." 1>&5
test -n "$verbose" && echo " VERSION_MINOR $VERSION_MINOR" 1>&6
-echo "${as_me:-configure}:1254: testing VERSION_MINOR $VERSION_MINOR ..." 1>&5
+echo "${as_me:-configure}:1354: testing VERSION_MINOR $VERSION_MINOR ..." 1>&5
test -n "$verbose" && echo " VERSION_PATCH $VERSION_PATCH" 1>&6
-echo "${as_me:-configure}:1258: testing VERSION_PATCH $VERSION_PATCH ..." 1>&5
+echo "${as_me:-configure}:1358: testing VERSION_PATCH $VERSION_PATCH ..." 1>&5
cf_PACKAGE=NCURSES
PACKAGE=ncurses
@@ -1279,7 +1379,7 @@ test -z "$cf_cv_rel_version" && cf_cv_rel_version=0.0
# Check whether --with-rel-version or --without-rel-version was given.
if test "${with_rel_version+set}" = set; then
withval="$with_rel_version"
- { echo "$as_me:1282: WARNING: overriding release version $cf_cv_rel_version to $withval" >&5
+ { echo "$as_me:1382: WARNING: overriding release version $cf_cv_rel_version to $withval" >&5
echo "$as_me: WARNING: overriding release version $cf_cv_rel_version to $withval" >&2;}
cf_cv_rel_version=$withval
fi;
@@ -1292,13 +1392,13 @@ if test -n "$NCURSES_MAJOR" ; then
([0-9]*)
;;
(*)
- { { echo "$as_me:1295: error: Release major-version is not a number: $NCURSES_MAJOR" >&5
+ { { echo "$as_me:1395: error: Release major-version is not a number: $NCURSES_MAJOR" >&5
echo "$as_me: error: Release major-version is not a number: $NCURSES_MAJOR" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
else
- { { echo "$as_me:1301: error: Release major-version value is empty" >&5
+ { { echo "$as_me:1401: error: Release major-version value is empty" >&5
echo "$as_me: error: Release major-version value is empty" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1308,13 +1408,13 @@ if test -n "$NCURSES_MINOR" ; then
([0-9]*)
;;
(*)
- { { echo "$as_me:1311: error: Release minor-version is not a number: $NCURSES_MINOR" >&5
+ { { echo "$as_me:1411: error: Release minor-version is not a number: $NCURSES_MINOR" >&5
echo "$as_me: error: Release minor-version is not a number: $NCURSES_MINOR" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
else
- { { echo "$as_me:1317: error: Release minor-version value is empty" >&5
+ { { echo "$as_me:1417: error: Release minor-version value is empty" >&5
echo "$as_me: error: Release minor-version value is empty" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1327,9 +1427,9 @@ if test "${with_abi_version+set}" = set; then
if test "x$cf_cv_abi_version" != "x$withval"
then
- { echo "$as_me:1330: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&5
+ { echo "$as_me:1430: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&5
echo "$as_me: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&2;}
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=$withval.0
;;
@@ -1346,20 +1446,20 @@ if test -n "$cf_cv_abi_version" ; then
([0-9]*)
;;
(*)
- { { echo "$as_me:1349: error: ABI version is not a number: $cf_cv_abi_version" >&5
+ { { echo "$as_me:1449: error: ABI version is not a number: $cf_cv_abi_version" >&5
echo "$as_me: error: ABI version is not a number: $cf_cv_abi_version" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
else
- { { echo "$as_me:1355: error: ABI version value is empty" >&5
+ { { echo "$as_me:1455: error: ABI version value is empty" >&5
echo "$as_me: error: ABI version value is empty" >&2;}
{ (exit 1); exit 1; }; }
fi
if test "x$cf_cv_abi_version" != "x$with_abi_version"
then
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=$with_abi_version.0
;;
@@ -1368,22 +1468,22 @@ fi
ac_aux_dir=
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
+ if test -f "$ac_dir/install-sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
break
- elif test -f $ac_dir/install.sh; then
+ elif test -f "$ac_dir/install.sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install.sh -c"
break
- elif test -f $ac_dir/shtool; then
+ elif test -f "$ac_dir/shtool"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/shtool install -c"
break
fi
done
if test -z "$ac_aux_dir"; then
- { { echo "$as_me:1386: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+ { { echo "$as_me:1486: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1393,11 +1493,11 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
# Make sure we can run config.sub.
$ac_config_sub sun4 >/dev/null 2>&1 ||
- { { echo "$as_me:1396: error: cannot run $ac_config_sub" >&5
+ { { echo "$as_me:1496: error: cannot run $ac_config_sub" >&5
echo "$as_me: error: cannot run $ac_config_sub" >&2;}
{ (exit 1); exit 1; }; }
-echo "$as_me:1400: checking build system type" >&5
+echo "$as_me:1500: checking build system type" >&5
echo $ECHO_N "checking build system type... $ECHO_C" >&6
if test "${ac_cv_build+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1406,23 +1506,23 @@ else
test -z "$ac_cv_build_alias" &&
ac_cv_build_alias=`$ac_config_guess`
test -z "$ac_cv_build_alias" &&
- { { echo "$as_me:1409: error: cannot guess build type; you must specify one" >&5
+ { { echo "$as_me:1509: error: cannot guess build type; you must specify one" >&5
echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
{ (exit 1); exit 1; }; }
-ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
- { { echo "$as_me:1413: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+ac_cv_build=`$ac_config_sub "$ac_cv_build_alias"` ||
+ { { echo "$as_me:1513: error: $ac_config_sub $ac_cv_build_alias failed." >&5
echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1418: result: $ac_cv_build" >&5
+echo "$as_me:1518: result: $ac_cv_build" >&5
echo "${ECHO_T}$ac_cv_build" >&6
build=$ac_cv_build
-build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+build_cpu=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$as_me:1425: checking host system type" >&5
+echo "$as_me:1525: checking host system type" >&5
echo $ECHO_N "checking host system type... $ECHO_C" >&6
if test "${ac_cv_host+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1430,21 +1530,21 @@ else
ac_cv_host_alias=$host_alias
test -z "$ac_cv_host_alias" &&
ac_cv_host_alias=$ac_cv_build_alias
-ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
- { { echo "$as_me:1434: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+ac_cv_host=`$ac_config_sub "$ac_cv_host_alias"` ||
+ { { echo "$as_me:1534: error: $ac_config_sub $ac_cv_host_alias failed" >&5
echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1439: result: $ac_cv_host" >&5
+echo "$as_me:1539: result: $ac_cv_host" >&5
echo "${ECHO_T}$ac_cv_host" >&6
host=$ac_cv_host
-host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+host_cpu=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
- echo "$as_me:1447: checking target system type" >&5
+if test -f "$srcdir/config.guess" || test -f "$ac_aux_dir/config.guess" ; then
+ echo "$as_me:1547: checking target system type" >&5
echo $ECHO_N "checking target system type... $ECHO_C" >&6
if test "${ac_cv_target+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1452,18 +1552,18 @@ else
ac_cv_target_alias=$target_alias
test "x$ac_cv_target_alias" = "x" &&
ac_cv_target_alias=$ac_cv_host_alias
-ac_cv_target=`$ac_config_sub $ac_cv_target_alias` ||
- { { echo "$as_me:1456: error: $ac_config_sub $ac_cv_target_alias failed" >&5
+ac_cv_target=`$ac_config_sub "$ac_cv_target_alias"` ||
+ { { echo "$as_me:1556: error: $ac_config_sub $ac_cv_target_alias failed" >&5
echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1461: result: $ac_cv_target" >&5
+echo "$as_me:1561: result: $ac_cv_target" >&5
echo "${ECHO_T}$ac_cv_target" >&6
target=$ac_cv_target
-target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+target_cpu=`echo "$ac_cv_target" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+target_vendor=`echo "$ac_cv_target" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+target_os=`echo "$ac_cv_target" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
# The aliases save the names the user supplied, while $host etc.
# will get canonicalized.
@@ -1490,13 +1590,13 @@ else
fi
test -z "$system_name" && system_name="$cf_cv_system_name"
-test -n "$cf_cv_system_name" && echo "$as_me:1493: result: Configuring for $cf_cv_system_name" >&5
+test -n "$cf_cv_system_name" && echo "$as_me:1593: result: Configuring for $cf_cv_system_name" >&5
echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6
if test ".$system_name" != ".$cf_cv_system_name" ; then
- echo "$as_me:1497: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
+ echo "$as_me:1597: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6
- { { echo "$as_me:1499: error: \"Please remove config.cache and try again.\"" >&5
+ { { echo "$as_me:1599: error: \"Please remove config.cache and try again.\"" >&5
echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1504,7 +1604,7 @@ fi
# Check whether --with-system-type or --without-system-type was given.
if test "${with_system_type+set}" = set; then
withval="$with_system_type"
- { echo "$as_me:1507: WARNING: overriding system type to $withval" >&5
+ { echo "$as_me:1607: WARNING: overriding system type to $withval" >&5
echo "$as_me: WARNING: overriding system type to $withval" >&2;}
cf_cv_system_name=$withval
host_os=$withval
@@ -1515,8 +1615,67 @@ fi;
cf_user_CFLAGS="$CFLAGS"
### Default install-location
+echo "$as_me:1618: checking for fgrep" >&5
+echo $ECHO_N "checking for fgrep... $ECHO_C" >&6
+if test "${ac_cv_path_FGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
+ then ac_cv_path_FGREP="$GREP -F"
+ else
+ for ac_prog in gfgrep fgrep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:1630: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_FGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $FGREP in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_FGREP="$FGREP" # Let the user override the test with a path.
+ ;;
+ *)
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ if $as_executable_p "$ac_dir/$ac_word"; then
+ ac_cv_path_FGREP="$ac_dir/$ac_word"
+ echo "$as_me:1647: found $ac_dir/$ac_word" >&5
+ break
+fi
+done
-echo "$as_me:1519: checking for prefix" >&5
+ ;;
+esac
+fi
+FGREP=$ac_cv_path_FGREP
+
+if test -n "$FGREP"; then
+ echo "$as_me:1658: result: $FGREP" >&5
+echo "${ECHO_T}$FGREP" >&6
+else
+ echo "$as_me:1661: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$FGREP" && break
+done
+test -n "$FGREP" || FGREP=": "
+
+ test "x$ac_cv_path_FGREP" = "x:" && { { echo "$as_me:1669: error: cannot find workable fgrep" >&5
+echo "$as_me: error: cannot find workable fgrep" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+fi
+echo "$as_me:1674: result: $ac_cv_path_FGREP" >&5
+echo "${ECHO_T}$ac_cv_path_FGREP" >&6
+ FGREP="$ac_cv_path_FGREP"
+
+echo "$as_me:1678: checking for prefix" >&5
echo $ECHO_N "checking for prefix... $ECHO_C" >&6
if test "x$prefix" = "xNONE" ; then
case "$cf_cv_system_name" in
@@ -1528,34 +1687,34 @@ if test "x$prefix" = "xNONE" ; then
;;
esac
fi
-echo "$as_me:1531: result: $prefix" >&5
+echo "$as_me:1690: result: $prefix" >&5
echo "${ECHO_T}$prefix" >&6
if test "x$prefix" = "xNONE" ; then
-echo "$as_me:1535: checking for default include-directory" >&5
+echo "$as_me:1694: checking for default include-directory" >&5
echo $ECHO_N "checking for default include-directory... $ECHO_C" >&6
test -n "$verbose" && echo 1>&6
for cf_symbol in \
- $includedir \
- $includedir/ncurses \
- $prefix/include \
- $prefix/include/ncurses \
+ "$includedir" \
+ "$includedir/ncurses" \
+ "$prefix/include" \
+ "$prefix/include/ncurses" \
/usr/local/include \
/usr/local/include/ncurses \
/usr/include \
/usr/include/ncurses
do
- cf_dir=`eval echo $cf_symbol`
- if test -f $cf_dir/curses.h ; then
- if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then
+ cf_dir=`eval echo "$cf_symbol"`
+ if test -f "$cf_dir/curses.h" ; then
+ if ( ${FGREP-fgrep} NCURSES_VERSION "$cf_dir/curses.h" >/dev/null 2>&1 ) ; then
includedir="$cf_symbol"
- test -n "$verbose" && echo $ac_n " found " 1>&6
+ test -n "$verbose" && echo $ECHO_N " found " 1>&6
break
fi
fi
test -n "$verbose" && echo " tested $cf_dir" 1>&6
done
-echo "$as_me:1558: result: $includedir" >&5
+echo "$as_me:1717: result: $includedir" >&5
echo "${ECHO_T}$includedir" >&6
fi
@@ -1609,16 +1768,16 @@ fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test -n "$ac_tool_prefix"; then
for ac_prog in $cf_prog_cc
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:1621: checking for $ac_word" >&5
+echo "$as_me:1780: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1633,7 +1792,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-echo "$as_me:1636: found $ac_dir/$ac_word" >&5
+echo "$as_me:1795: found $ac_dir/$ac_word" >&5
break
done
@@ -1641,10 +1800,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1644: result: $CC" >&5
+ echo "$as_me:1803: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1647: result: no" >&5
+ echo "$as_me:1806: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1657,7 +1816,7 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:1660: checking for $ac_word" >&5
+echo "$as_me:1819: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1672,7 +1831,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CC="$ac_prog"
-echo "$as_me:1675: found $ac_dir/$ac_word" >&5
+echo "$as_me:1834: found $ac_dir/$ac_word" >&5
break
done
@@ -1680,10 +1839,10 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:1683: result: $ac_ct_CC" >&5
+ echo "$as_me:1842: result: $ac_ct_CC" >&5
echo "${ECHO_T}$ac_ct_CC" >&6
else
- echo "$as_me:1686: result: no" >&5
+ echo "$as_me:1845: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1693,32 +1852,32 @@ done
CC=$ac_ct_CC
fi
-test -z "$CC" && { { echo "$as_me:1696: error: no acceptable cc found in \$PATH" >&5
+test -z "$CC" && { { echo "$as_me:1855: error: no acceptable cc found in \$PATH" >&5
echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
{ (exit 1); exit 1; }; }
# Provide some information about the compiler.
-echo "$as_me:1701:" \
+echo "$as_me:1860:" \
"checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:1704: \"$ac_compiler --version </dev/null >&5\"") >&5
+ac_compiler=`set X $ac_compile; echo "$2"`
+{ (eval echo "$as_me:1863: \"$ac_compiler --version </dev/null >&5\"") >&5
(eval $ac_compiler --version </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1707: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:1709: \"$ac_compiler -v </dev/null >&5\"") >&5
+ echo "$as_me:1866: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:1868: \"$ac_compiler -v </dev/null >&5\"") >&5
(eval $ac_compiler -v </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1712: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:1714: \"$ac_compiler -V </dev/null >&5\"") >&5
+ echo "$as_me:1871: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:1873: \"$ac_compiler -V </dev/null >&5\"") >&5
(eval $ac_compiler -V </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1717: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:1876: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
-cat >conftest.$ac_ext <<_ACEOF
-#line 1721 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 1880 "configure"
#include "confdefs.h"
int
@@ -1734,14 +1893,14 @@ ac_clean_files="$ac_clean_files a.out a.exe"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-echo "$as_me:1737: checking for C compiler default output" >&5
+echo "$as_me:1896: checking for C compiler default output" >&5
echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:1740: \"$ac_link_default\"") >&5
+ac_link_default=`echo "$ac_link" | sed 's/ -o *"conftest[^"]*"//'`
+if { (eval echo "$as_me:1899: \"$ac_link_default\"") >&5
(eval $ac_link_default) 2>&5
ac_status=$?
- echo "$as_me:1743: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1902: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
# Find the output, starting from the most likely. This scheme is
# not robust to junk in `.', hence go to wildcards (a.*) only as a last
# resort.
@@ -1762,35 +1921,35 @@ for ac_file in `ls a.exe conftest.exe 2>/dev/null;
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-{ { echo "$as_me:1766: error: C compiler cannot create executables" >&5
+cat "conftest.$ac_ext" >&5
+{ { echo "$as_me:1925: error: C compiler cannot create executables" >&5
echo "$as_me: error: C compiler cannot create executables" >&2;}
{ (exit 77); exit 77; }; }
fi
ac_exeext=$ac_cv_exeext
-echo "$as_me:1772: result: $ac_file" >&5
+echo "$as_me:1931: result: $ac_file" >&5
echo "${ECHO_T}$ac_file" >&6
# Check the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-echo "$as_me:1777: checking whether the C compiler works" >&5
+echo "$as_me:1936: checking whether the C compiler works" >&5
echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
# If not cross compiling, check that we can run a simple program.
if test "$cross_compiling" != yes; then
if { ac_try='./$ac_file'
- { (eval echo "$as_me:1783: \"$ac_try\"") >&5
+ { (eval echo "$as_me:1942: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1786: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1945: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cross_compiling=no
else
if test "$cross_compiling" = maybe; then
cross_compiling=yes
else
- { { echo "$as_me:1793: error: cannot run C compiled programs.
+ { { echo "$as_me:1952: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'." >&5
echo "$as_me: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'." >&2;}
@@ -1798,25 +1957,25 @@ If you meant to cross compile, use \`--host'." >&2;}
fi
fi
fi
-echo "$as_me:1801: result: yes" >&5
+echo "$as_me:1960: result: yes" >&5
echo "${ECHO_T}yes" >&6
-rm -f a.out a.exe conftest$ac_cv_exeext
+rm -f a.out a.exe "conftest$ac_cv_exeext"
ac_clean_files=$ac_clean_files_save
# Check the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-echo "$as_me:1808: checking whether we are cross compiling" >&5
+echo "$as_me:1967: checking whether we are cross compiling" >&5
echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:1810: result: $cross_compiling" >&5
+echo "$as_me:1969: result: $cross_compiling" >&5
echo "${ECHO_T}$cross_compiling" >&6
-echo "$as_me:1813: checking for executable suffix" >&5
+echo "$as_me:1972: checking for executable suffix" >&5
echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
-if { (eval echo "$as_me:1815: \"$ac_link\"") >&5
+if { (eval echo "$as_me:1974: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:1818: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1977: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -1831,25 +1990,25 @@ for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
esac
done
else
- { { echo "$as_me:1834: error: cannot compute EXEEXT: cannot compile and link" >&5
+ { { echo "$as_me:1993: error: cannot compute EXEEXT: cannot compile and link" >&5
echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
{ (exit 1); exit 1; }; }
fi
-rm -f conftest$ac_cv_exeext
-echo "$as_me:1840: result: $ac_cv_exeext" >&5
+rm -f "conftest$ac_cv_exeext"
+echo "$as_me:1999: result: $ac_cv_exeext" >&5
echo "${ECHO_T}$ac_cv_exeext" >&6
-rm -f conftest.$ac_ext
+rm -f "conftest.$ac_ext"
EXEEXT=$ac_cv_exeext
ac_exeext=$EXEEXT
-echo "$as_me:1846: checking for object suffix" >&5
+echo "$as_me:2005: checking for object suffix" >&5
echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
if test "${ac_cv_objext+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1852 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2011 "configure"
#include "confdefs.h"
int
@@ -1861,11 +2020,11 @@ main (void)
}
_ACEOF
rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:1864: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2023: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1867: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:2026: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
case $ac_file in
*.$ac_ext | *.xcoff | *.tds | *.d | *.dbg | *.pdb | *.xSYM | *.map | *.inf ) ;;
@@ -1875,25 +2034,25 @@ if { (eval echo "$as_me:1864: \"$ac_compile\"") >&5
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-{ { echo "$as_me:1879: error: cannot compute OBJEXT: cannot compile" >&5
+cat "conftest.$ac_ext" >&5
+{ { echo "$as_me:2038: error: cannot compute OBJEXT: cannot compile" >&5
echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
{ (exit 1); exit 1; }; }
fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
+rm -f "conftest.$ac_cv_objext" "conftest.$ac_ext"
fi
-echo "$as_me:1886: result: $ac_cv_objext" >&5
+echo "$as_me:2045: result: $ac_cv_objext" >&5
echo "${ECHO_T}$ac_cv_objext" >&6
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-echo "$as_me:1890: checking whether we are using the GNU C compiler" >&5
+echo "$as_me:2049: checking whether we are using the GNU C compiler" >&5
echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
if test "${ac_cv_c_compiler_gnu+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1896 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2055 "configure"
#include "confdefs.h"
int
@@ -1907,41 +2066,41 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1911: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2070: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1914: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1917: \"$ac_try\"") >&5
+ echo "$as_me:2073: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2076: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1920: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2079: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_compiler_gnu=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_compiler_gnu=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-echo "$as_me:1932: result: $ac_cv_c_compiler_gnu" >&5
+echo "$as_me:2091: result: $ac_cv_c_compiler_gnu" >&5
echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
GCC=`test $ac_compiler_gnu = yes && echo yes`
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
CFLAGS="-g"
-echo "$as_me:1938: checking whether $CC accepts -g" >&5
+echo "$as_me:2097: checking whether $CC accepts -g" >&5
echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
if test "${ac_cv_prog_cc_g+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1944 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2103 "configure"
#include "confdefs.h"
int
@@ -1952,27 +2111,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1956: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2115: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1959: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1962: \"$ac_try\"") >&5
+ echo "$as_me:2118: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2121: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1965: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2124: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_prog_cc_g=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_prog_cc_g=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:1975: result: $ac_cv_prog_cc_g" >&5
+echo "$as_me:2134: result: $ac_cv_prog_cc_g" >&5
echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
@@ -1993,23 +2152,23 @@ fi
# in C++ we need to declare it. In case someone uses the same compiler
# for both compiling C and C++ we need to have the C++ compiler decide
# the declaration of exit, since it's the most demanding environment.
-cat >conftest.$ac_ext <<_ACEOF
+cat >"conftest.$ac_ext" <<_ACEOF
#ifndef __cplusplus
choke me
#endif
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2002: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2161: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2005: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2008: \"$ac_try\"") >&5
+ echo "$as_me:2164: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2167: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2011: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2170: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
for ac_declaration in \
''\
'#include <stdlib.h>' \
@@ -2019,8 +2178,8 @@ if { (eval echo "$as_me:2002: \"$ac_compile\"") >&5
'extern "C" void exit (int);' \
'void exit (int);'
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 2023 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2182 "configure"
#include "confdefs.h"
#include <stdlib.h>
$ac_declaration
@@ -2032,27 +2191,27 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2036: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2195: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2039: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2042: \"$ac_try\"") >&5
+ echo "$as_me:2198: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2201: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2045: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2204: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
continue
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 2055 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2214 "configure"
#include "confdefs.h"
$ac_declaration
int
@@ -2063,65 +2222,65 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2067: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2226: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2070: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2073: \"$ac_try\"") >&5
+ echo "$as_me:2229: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2232: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2076: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2235: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
rm -rf conftest*
if test -n "$ac_declaration"; then
echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
+ echo "$ac_declaration" >>confdefs.h
echo '#endif' >>confdefs.h
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
GCC_VERSION=none
if test "$GCC" = yes ; then
- echo "$as_me:2106: checking version of $CC" >&5
+ echo "$as_me:2265: checking version of $CC" >&5
echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
test -z "$GCC_VERSION" && GCC_VERSION=unknown
- echo "$as_me:2110: result: $GCC_VERSION" >&5
+ echo "$as_me:2269: result: $GCC_VERSION" >&5
echo "${ECHO_T}$GCC_VERSION" >&6
fi
INTEL_COMPILER=no
if test "$GCC" = yes ; then
- case $host_os in
+ case "$host_os" in
(linux*|gnu*)
- echo "$as_me:2119: checking if this is really Intel C compiler" >&5
+ echo "$as_me:2278: checking if this is really Intel C compiler" >&5
echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -no-gcc"
- cat >conftest.$ac_ext <<_ACEOF
-#line 2124 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2283 "configure"
#include "confdefs.h"
int
@@ -2137,28 +2296,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2141: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2300: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2144: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2147: \"$ac_try\"") >&5
+ echo "$as_me:2303: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2306: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2150: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2309: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
INTEL_COMPILER=yes
cf_save_CFLAGS="$cf_save_CFLAGS -we147"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
- echo "$as_me:2161: result: $INTEL_COMPILER" >&5
+ echo "$as_me:2320: result: $INTEL_COMPILER" >&5
echo "${ECHO_T}$INTEL_COMPILER" >&6
;;
esac
@@ -2167,12 +2326,11 @@ fi
CLANG_COMPILER=no
if test "$GCC" = yes ; then
- echo "$as_me:2170: checking if this is really Clang C compiler" >&5
+ echo "$as_me:2329: checking if this is really Clang C compiler" >&5
echo $ECHO_N "checking if this is really Clang C compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Qunused-arguments"
- cat >conftest.$ac_ext <<_ACEOF
-#line 2175 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2333 "configure"
#include "confdefs.h"
int
@@ -2188,40 +2346,116 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2192: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2350: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2195: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2198: \"$ac_try\"") >&5
+ echo "$as_me:2353: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2356: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2201: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2359: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
CLANG_COMPILER=yes
-cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
- echo "$as_me:2212: result: $CLANG_COMPILER" >&5
+ echo "$as_me:2369: result: $CLANG_COMPILER" >&5
echo "${ECHO_T}$CLANG_COMPILER" >&6
fi
-echo "$as_me:2216: checking for $CC option to accept ANSI C" >&5
+CLANG_VERSION=none
+
+if test "x$CLANG_COMPILER" = "xyes" ; then
+ case "$CC" in
+ (c[1-9][0-9]|*/c[1-9][0-9])
+ { echo "$as_me:2378: WARNING: replacing broken compiler alias $CC" >&5
+echo "$as_me: WARNING: replacing broken compiler alias $CC" >&2;}
+ CFLAGS="$CFLAGS -std=`echo "$CC" | sed -e 's%.*/%%'`"
+ CC=clang
+ ;;
+ esac
+
+ echo "$as_me:2385: checking version of $CC" >&5
+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
+ CLANG_VERSION="`$CC --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(CLANG[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
+ test -z "$CLANG_VERSION" && CLANG_VERSION=unknown
+ echo "$as_me:2389: result: $CLANG_VERSION" >&5
+echo "${ECHO_T}$CLANG_VERSION" >&6
+
+ for cf_clang_opt in \
+ -Qunused-arguments \
+ -Wno-error=implicit-function-declaration
+ do
+ echo "$as_me:2396: checking if option $cf_clang_opt works" >&5
+echo $ECHO_N "checking if option $cf_clang_opt works... $ECHO_C" >&6
+ cf_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $cf_clang_opt"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2401 "configure"
+#include "confdefs.h"
+
+ #include <stdio.h>
+int
+main (void)
+{
+
+ printf("hello!\\n");
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:2415: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:2418: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:2421: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:2424: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+
+ cf_clang_optok=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+
+ cf_clang_optok=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:2435: result: $cf_clang_optok" >&5
+echo "${ECHO_T}$cf_clang_optok" >&6
+ CFLAGS="$cf_save_CFLAGS"
+ if test "$cf_clang_optok" = yes; then
+ test -n "$verbose" && echo " adding option $cf_clang_opt" 1>&6
+
+echo "${as_me:-configure}:2441: testing adding option $cf_clang_opt ..." 1>&5
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_clang_opt"
+
+ fi
+ done
+fi
+
+echo "$as_me:2450: checking for $CC option to accept ANSI C" >&5
echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
if test "${ac_cv_prog_cc_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_cv_prog_cc_stdc=no
ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-#line 2224 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 2458 "configure"
#include "confdefs.h"
#include <stdarg.h>
#include <stdio.h>
@@ -2269,51 +2503,51 @@ _ACEOF
for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2273: \"$ac_compile\"") >&5
+ rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2507: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2276: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2279: \"$ac_try\"") >&5
+ echo "$as_me:2510: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2513: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2282: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2516: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_prog_cc_stdc=$ac_arg
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext
+rm -f "conftest.$ac_objext"
done
-rm -f conftest.$ac_ext conftest.$ac_objext
+rm -f "conftest.$ac_ext" "conftest.$ac_objext"
CC=$ac_save_CC
fi
case "x$ac_cv_prog_cc_stdc" in
x|xno)
- echo "$as_me:2299: result: none needed" >&5
+ echo "$as_me:2533: result: none needed" >&5
echo "${ECHO_T}none needed" >&6 ;;
*)
- echo "$as_me:2302: result: $ac_cv_prog_cc_stdc" >&5
+ echo "$as_me:2536: result: $ac_cv_prog_cc_stdc" >&5
echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
CC="$CC $ac_cv_prog_cc_stdc" ;;
esac
# This should have been defined by AC_PROG_CC
-: ${CC:=cc}
+: "${CC:=cc}"
-echo "$as_me:2310: checking \$CFLAGS variable" >&5
+echo "$as_me:2544: checking \$CFLAGS variable" >&5
echo $ECHO_N "checking \$CFLAGS variable... $ECHO_C" >&6
case "x$CFLAGS" in
(*-[IUD]*)
- echo "$as_me:2314: result: broken" >&5
+ echo "$as_me:2548: result: broken" >&5
echo "${ECHO_T}broken" >&6
- { echo "$as_me:2316: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&5
+ { echo "$as_me:2550: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&5
echo "$as_me: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&2;}
cf_flags="$CFLAGS"
CFLAGS=
@@ -2327,19 +2561,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_arg
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -2358,7 +2592,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -2388,7 +2622,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -2421,18 +2655,18 @@ fi
done
;;
(*)
- echo "$as_me:2424: result: ok" >&5
+ echo "$as_me:2658: result: ok" >&5
echo "${ECHO_T}ok" >&6
;;
esac
-echo "$as_me:2429: checking \$CC variable" >&5
+echo "$as_me:2663: checking \$CC variable" >&5
echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6
case "$CC" in
(*[\ \ ]-*)
- echo "$as_me:2433: result: broken" >&5
+ echo "$as_me:2667: result: broken" >&5
echo "${ECHO_T}broken" >&6
- { echo "$as_me:2435: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
+ { echo "$as_me:2669: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
echo "$as_me: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
# humor him...
cf_prog=`echo "$CC" | sed -e 's/ / /g' -e 's/[ ]* / /g' -e 's/[ ]*[ ]-[^ ].*//'`
@@ -2450,19 +2684,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_arg
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -2481,7 +2715,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -2511,7 +2745,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -2549,30 +2783,30 @@ fi
done
test -n "$verbose" && echo " resulting CC: '$CC'" 1>&6
-echo "${as_me:-configure}:2552: testing resulting CC: '$CC' ..." 1>&5
+echo "${as_me:-configure}:2786: testing resulting CC: '$CC' ..." 1>&5
test -n "$verbose" && echo " resulting CFLAGS: '$CFLAGS'" 1>&6
-echo "${as_me:-configure}:2556: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5
+echo "${as_me:-configure}:2790: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5
test -n "$verbose" && echo " resulting CPPFLAGS: '$CPPFLAGS'" 1>&6
-echo "${as_me:-configure}:2560: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5
+echo "${as_me:-configure}:2794: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5
;;
(*)
- echo "$as_me:2564: result: ok" >&5
+ echo "$as_me:2798: result: ok" >&5
echo "${ECHO_T}ok" >&6
;;
esac
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
-echo "$as_me:2575: checking how to run the C preprocessor" >&5
+ac_main_return="return"
+echo "$as_me:2809: checking how to run the C preprocessor" >&5
echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
@@ -2592,20 +2826,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2596 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2830 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:2601: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2835: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2607: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2841: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2618,27 +2852,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2630 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2864 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:2634: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2868: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2640: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2874: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2652,16 +2886,16 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
break
fi
@@ -2674,7 +2908,7 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-echo "$as_me:2677: result: $CPP" >&5
+echo "$as_me:2911: result: $CPP" >&5
echo "${ECHO_T}$CPP" >&6
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
@@ -2683,20 +2917,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2687 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2921 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:2692: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2926: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2698: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2932: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2709,27 +2943,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2721 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2955 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:2725: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2959: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2731: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2965: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2743,46 +2977,46 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
:
else
- { { echo "$as_me:2759: error: C preprocessor \"$CPP\" fails sanity check" >&5
+ { { echo "$as_me:2993: error: C preprocessor \"$CPP\" fails sanity check" >&5
echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
{ (exit 1); exit 1; }; }
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test $ac_cv_c_compiler_gnu = yes; then
- echo "$as_me:2772: checking whether $CC needs -traditional" >&5
+ echo "$as_me:3006: checking whether $CC needs -traditional" >&5
echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6
if test "${ac_cv_prog_gcc_traditional+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_pattern="Autoconf.*'x'"
- cat >conftest.$ac_ext <<_ACEOF
-#line 2779 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3013 "configure"
#include "confdefs.h"
#include <sgtty.h>
int Autoconf = TIOCGETP;
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then
ac_cv_prog_gcc_traditional=yes
else
ac_cv_prog_gcc_traditional=no
@@ -2790,28 +3024,28 @@ fi
rm -rf conftest*
if test $ac_cv_prog_gcc_traditional = no; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 2794 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3028 "configure"
#include "confdefs.h"
#include <termio.h>
int Autoconf = TCGETA;
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then
ac_cv_prog_gcc_traditional=yes
fi
rm -rf conftest*
fi
fi
-echo "$as_me:2807: result: $ac_cv_prog_gcc_traditional" >&5
+echo "$as_me:3041: result: $ac_cv_prog_gcc_traditional" >&5
echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6
if test $ac_cv_prog_gcc_traditional = yes; then
CC="$CC -traditional"
fi
fi
-echo "$as_me:2814: checking whether $CC understands -c and -o together" >&5
+echo "$as_me:3048: checking whether $CC understands -c and -o together" >&5
echo $ECHO_N "checking whether $CC understands -c and -o together... $ECHO_C" >&6
if test "${cf_cv_prog_CC_c_o+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2826,29 +3060,29 @@ CF_EOF
# We do the test twice because some compilers refuse to overwrite an
# existing .o file with -o, though they will create one.
ac_try='$CC $CFLAGS $CPPFLAGS -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
-if { (eval echo "$as_me:2829: \"$ac_try\"") >&5
+if { (eval echo "$as_me:3063: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2832: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- test -f conftest2.$ac_objext && { (eval echo "$as_me:2834: \"$ac_try\"") >&5
+ echo "$as_me:3066: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ test -f conftest2.$ac_objext && { (eval echo "$as_me:3068: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2837: \$? = $ac_status" >&5
- (exit $ac_status); };
+ echo "$as_me:3071: \$? = $ac_status" >&5
+ (exit "$ac_status"); };
then
eval cf_cv_prog_CC_c_o=yes
else
eval cf_cv_prog_CC_c_o=no
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
-if test $cf_cv_prog_CC_c_o = yes; then
- echo "$as_me:2848: result: yes" >&5
+if test "$cf_cv_prog_CC_c_o" = yes; then
+ echo "$as_me:3082: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:2851: result: no" >&5
+ echo "$as_me:3085: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2862,7 +3096,7 @@ else
(*) LDPATH=$PATH:/sbin:/usr/sbin
# Extract the first word of "ldconfig", so it can be a program name with args.
set dummy ldconfig; ac_word=$2
-echo "$as_me:2865: checking for $ac_word" >&5
+echo "$as_me:3099: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_LDCONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2879,7 +3113,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_LDCONFIG="$ac_dir/$ac_word"
- echo "$as_me:2882: found $ac_dir/$ac_word" >&5
+ echo "$as_me:3116: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -2890,10 +3124,10 @@ fi
LDCONFIG=$ac_cv_path_LDCONFIG
if test -n "$LDCONFIG"; then
- echo "$as_me:2893: result: $LDCONFIG" >&5
+ echo "$as_me:3127: result: $LDCONFIG" >&5
echo "${ECHO_T}$LDCONFIG" >&6
else
- echo "$as_me:2896: result: no" >&5
+ echo "$as_me:3130: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2901,7 +3135,7 @@ fi
esac
fi
-echo "$as_me:2904: checking if you want to ensure bool is consistent with C++" >&5
+echo "$as_me:3138: checking if you want to ensure bool is consistent with C++" >&5
echo $ECHO_N "checking if you want to ensure bool is consistent with C++... $ECHO_C" >&6
# Check whether --with-cxx or --without-cxx was given.
@@ -2911,7 +3145,7 @@ if test "${with_cxx+set}" = set; then
else
cf_with_cxx=yes
fi;
-echo "$as_me:2914: result: $cf_with_cxx" >&5
+echo "$as_me:3148: result: $cf_with_cxx" >&5
echo "${ECHO_T}$cf_with_cxx" >&6
if test "X$cf_with_cxx" = Xno ; then
CXX=""
@@ -2920,16 +3154,16 @@ else
# with autoconf 2.13, we can change the error to a warning:
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test -n "$ac_tool_prefix"; then
for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:2932: checking for $ac_word" >&5
+echo "$as_me:3166: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CXX+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2944,7 +3178,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
-echo "$as_me:2947: found $ac_dir/$ac_word" >&5
+echo "$as_me:3181: found $ac_dir/$ac_word" >&5
break
done
@@ -2952,10 +3186,10 @@ fi
fi
CXX=$ac_cv_prog_CXX
if test -n "$CXX"; then
- echo "$as_me:2955: result: $CXX" >&5
+ echo "$as_me:3189: result: $CXX" >&5
echo "${ECHO_T}$CXX" >&6
else
- echo "$as_me:2958: result: no" >&5
+ echo "$as_me:3192: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2968,7 +3202,7 @@ if test -z "$CXX"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:2971: checking for $ac_word" >&5
+echo "$as_me:3205: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2983,7 +3217,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CXX="$ac_prog"
-echo "$as_me:2986: found $ac_dir/$ac_word" >&5
+echo "$as_me:3220: found $ac_dir/$ac_word" >&5
break
done
@@ -2991,10 +3225,10 @@ fi
fi
ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
if test -n "$ac_ct_CXX"; then
- echo "$as_me:2994: result: $ac_ct_CXX" >&5
+ echo "$as_me:3228: result: $ac_ct_CXX" >&5
echo "${ECHO_T}$ac_ct_CXX" >&6
else
- echo "$as_me:2997: result: no" >&5
+ echo "$as_me:3231: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3006,32 +3240,32 @@ test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
fi
# Provide some information about the compiler.
-echo "$as_me:3009:" \
+echo "$as_me:3243:" \
"checking for C++ compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:3012: \"$ac_compiler --version </dev/null >&5\"") >&5
+{ (eval echo "$as_me:3246: \"$ac_compiler --version </dev/null >&5\"") >&5
(eval $ac_compiler --version </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:3015: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:3017: \"$ac_compiler -v </dev/null >&5\"") >&5
+ echo "$as_me:3249: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:3251: \"$ac_compiler -v </dev/null >&5\"") >&5
(eval $ac_compiler -v </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:3020: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:3022: \"$ac_compiler -V </dev/null >&5\"") >&5
+ echo "$as_me:3254: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:3256: \"$ac_compiler -V </dev/null >&5\"") >&5
(eval $ac_compiler -V </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:3025: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:3259: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
-echo "$as_me:3028: checking whether we are using the GNU C++ compiler" >&5
+echo "$as_me:3262: checking whether we are using the GNU C++ compiler" >&5
echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6
if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 3034 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3268 "configure"
#include "confdefs.h"
int
@@ -3045,41 +3279,41 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3049: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:3283: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3052: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3055: \"$ac_try\"") >&5
+ echo "$as_me:3286: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:3289: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3058: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3292: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_compiler_gnu=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_compiler_gnu=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
fi
-echo "$as_me:3070: result: $ac_cv_cxx_compiler_gnu" >&5
+echo "$as_me:3304: result: $ac_cv_cxx_compiler_gnu" >&5
echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
GXX=`test $ac_compiler_gnu = yes && echo yes`
ac_test_CXXFLAGS=${CXXFLAGS+set}
ac_save_CXXFLAGS=$CXXFLAGS
CXXFLAGS="-g"
-echo "$as_me:3076: checking whether $CXX accepts -g" >&5
+echo "$as_me:3310: checking whether $CXX accepts -g" >&5
echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
if test "${ac_cv_prog_cxx_g+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 3082 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3316 "configure"
#include "confdefs.h"
int
@@ -3090,27 +3324,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3094: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:3328: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3097: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3100: \"$ac_try\"") >&5
+ echo "$as_me:3331: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:3334: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3103: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3337: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_prog_cxx_g=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_prog_cxx_g=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:3113: result: $ac_cv_prog_cxx_g" >&5
+echo "$as_me:3347: result: $ac_cv_prog_cxx_g" >&5
echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
if test "$ac_test_CXXFLAGS" = set; then
CXXFLAGS=$ac_save_CXXFLAGS
@@ -3136,8 +3370,8 @@ for ac_declaration in \
'extern "C" void exit (int);' \
'void exit (int);'
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 3140 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3374 "configure"
#include "confdefs.h"
#include <stdlib.h>
$ac_declaration
@@ -3149,27 +3383,27 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3153: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:3387: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3156: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3159: \"$ac_try\"") >&5
+ echo "$as_me:3390: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:3393: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3162: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3396: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
continue
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 3172 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3406 "configure"
#include "confdefs.h"
$ac_declaration
int
@@ -3180,59 +3414,59 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3184: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:3418: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3187: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3190: \"$ac_try\"") >&5
+ echo "$as_me:3421: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:3424: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3193: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3427: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
rm -rf conftest*
if test -n "$ac_declaration"; then
echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
+ echo "$ac_declaration" >>confdefs.h
echo '#endif' >>confdefs.h
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test "x$cf_with_cxx" != xno
then
# Several of the C++ configurations do not work, particularly when
# cross-compiling (20140913 -TD)
- echo "$as_me:3227: checking if $CXX works" >&5
+ echo "$as_me:3461: checking if $CXX works" >&5
echo $ECHO_N "checking if $CXX works... $ECHO_C" >&6
save_CPPFLAGS="$CPPFLAGS"
eval cf_includedir=${includedir}
CPPFLAGS="$CPPFLAGS -I${cf_includedir}"
-cat >conftest.$ac_ext <<_ACEOF
-#line 3235 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 3469 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -3248,48 +3482,48 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3252: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:3486: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3255: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3258: \"$ac_try\"") >&5
+ echo "$as_me:3489: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:3492: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3261: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3495: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cxx_works=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cxx_works=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$save_CPPFLAGS"
- echo "$as_me:3272: result: $cf_cxx_works" >&5
+ echo "$as_me:3506: result: $cf_cxx_works" >&5
echo "${ECHO_T}$cf_cxx_works" >&6
if test "x$cf_cxx_works" = xno
then
- { echo "$as_me:3276: WARNING: Ignore $CXX, since it cannot compile hello-world." >&5
+ { echo "$as_me:3510: WARNING: Ignore $CXX, since it cannot compile hello-world." >&5
echo "$as_me: WARNING: Ignore $CXX, since it cannot compile hello-world." >&2;}
cf_with_cxx=no; CXX=""; GXX="";
fi
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
# autoconf 2.5x removed the error (hardcoding it to g++, or just blank)
if test "$CXX" = "g++" ; then
# Extract the first word of "g++", so it can be a program name with args.
set dummy g++; ac_word=$2
-echo "$as_me:3292: checking for $ac_word" >&5
+echo "$as_me:3526: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_CXX+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3306,7 +3540,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_CXX="$ac_dir/$ac_word"
- echo "$as_me:3309: found $ac_dir/$ac_word" >&5
+ echo "$as_me:3543: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -3317,17 +3551,17 @@ fi
CXX=$ac_cv_path_CXX
if test -n "$CXX"; then
- echo "$as_me:3320: result: $CXX" >&5
+ echo "$as_me:3554: result: $CXX" >&5
echo "${ECHO_T}$CXX" >&6
else
- echo "$as_me:3323: result: no" >&5
+ echo "$as_me:3557: result: no" >&5
echo "${ECHO_T}no" >&6
fi
fi
case "x$CXX" in
(x|xg++)
- { echo "$as_me:3330: WARNING: You don't have any C++ compiler, too bad" >&5
+ { echo "$as_me:3564: WARNING: You don't have any C++ compiler, too bad" >&5
echo "$as_me: WARNING: You don't have any C++ compiler, too bad" >&2;}
cf_with_cxx=no; CXX=""; GXX="";
;;
@@ -3336,7 +3570,7 @@ fi
GXX_VERSION=none
if test "$GXX" = yes; then
- echo "$as_me:3339: checking version of ${CXX:-g++}" >&5
+ echo "$as_me:3573: checking version of ${CXX:-g++}" >&5
echo $ECHO_N "checking version of ${CXX:-g++}... $ECHO_C" >&6
GXX_VERSION="`${CXX:-g++} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
if test -z "$GXX_VERSION"
@@ -3344,20 +3578,20 @@ echo $ECHO_N "checking version of ${CXX:-g++}... $ECHO_C" >&6
GXX_VERSION=unknown
GXX=no
fi
- echo "$as_me:3347: result: $GXX_VERSION" >&5
+ echo "$as_me:3581: result: $GXX_VERSION" >&5
echo "${ECHO_T}$GXX_VERSION" >&6
fi
-case $GXX_VERSION in
-(1*|2.[0-6]*)
- # GXX=""; CXX=""; ac_cv_prog_gxx=no
- # cf_cxx_library=no
- { echo "$as_me:3355: WARNING: templates do not work" >&5
+case "$GXX_VERSION" in
+([1-9][0-9].*)
+ ;;
+(1.*|2.[0-6]*)
+ { echo "$as_me:3589: WARNING: templates do not work" >&5
echo "$as_me: WARNING: templates do not work" >&2;}
;;
esac
-echo "$as_me:3360: checking if you want to build C++ binding and demo" >&5
+echo "$as_me:3594: checking if you want to build C++ binding and demo" >&5
echo $ECHO_N "checking if you want to build C++ binding and demo... $ECHO_C" >&6
# Check whether --with-cxx-binding or --without-cxx-binding was given.
@@ -3367,15 +3601,15 @@ if test "${with_cxx_binding+set}" = set; then
else
cf_with_cxx_binding=$cf_with_cxx
fi;
-echo "$as_me:3370: result: $cf_with_cxx_binding" >&5
+echo "$as_me:3604: result: $cf_with_cxx_binding" >&5
echo "${ECHO_T}$cf_with_cxx_binding" >&6
-echo "$as_me:3373: checking if you want to build with Ada" >&5
+echo "$as_me:3607: checking if you want to build with Ada" >&5
echo $ECHO_N "checking if you want to build with Ada... $ECHO_C" >&6
-echo "$as_me:3375: result: $cf_with_ada" >&5
+echo "$as_me:3609: result: $cf_with_ada" >&5
echo "${ECHO_T}$cf_with_ada" >&6
-echo "$as_me:3378: checking if you want to install terminal database" >&5
+echo "$as_me:3612: checking if you want to install terminal database" >&5
echo $ECHO_N "checking if you want to install terminal database... $ECHO_C" >&6
# Check whether --enable-db-install or --disable-db-install was given.
@@ -3385,10 +3619,10 @@ if test "${enable_db_install+set}" = set; then
else
cf_with_db_install=yes
fi;
-echo "$as_me:3388: result: $cf_with_db_install" >&5
+echo "$as_me:3622: result: $cf_with_db_install" >&5
echo "${ECHO_T}$cf_with_db_install" >&6
-echo "$as_me:3391: checking if you want to install manpages" >&5
+echo "$as_me:3625: checking if you want to install manpages" >&5
echo $ECHO_N "checking if you want to install manpages... $ECHO_C" >&6
# Check whether --with-manpages or --without-manpages was given.
@@ -3398,10 +3632,10 @@ if test "${with_manpages+set}" = set; then
else
cf_with_manpages=yes
fi;
-echo "$as_me:3401: result: $cf_with_manpages" >&5
+echo "$as_me:3635: result: $cf_with_manpages" >&5
echo "${ECHO_T}$cf_with_manpages" >&6
-echo "$as_me:3404: checking if you want to build programs such as tic" >&5
+echo "$as_me:3638: checking if you want to build programs such as tic" >&5
echo $ECHO_N "checking if you want to build programs such as tic... $ECHO_C" >&6
# Check whether --with-progs or --without-progs was given.
@@ -3411,18 +3645,18 @@ if test "${with_progs+set}" = set; then
else
cf_with_progs=yes
fi;
-echo "$as_me:3414: result: $cf_with_progs" >&5
+echo "$as_me:3648: result: $cf_with_progs" >&5
echo "${ECHO_T}$cf_with_progs" >&6
-if test -f $srcdir/tack/tack.h; then
+if test -f "$srcdir/tack/tack.h" ; then
if test "x$cross_compiling" = xyes ; then
test -n "$verbose" && echo " ignoring tack because we are cross-compiling" 1>&6
-echo "${as_me:-configure}:3421: testing ignoring tack because we are cross-compiling ..." 1>&5
+echo "${as_me:-configure}:3655: testing ignoring tack because we are cross-compiling ..." 1>&5
cf_with_tack=no
else
- echo "$as_me:3425: checking if you want to build the tack program" >&5
+ echo "$as_me:3659: checking if you want to build the tack program" >&5
echo $ECHO_N "checking if you want to build the tack program... $ECHO_C" >&6
# Check whether --with-tack or --without-tack was given.
@@ -3432,14 +3666,14 @@ if test "${with_tack+set}" = set; then
else
cf_with_tack=$cf_with_progs
fi;
- echo "$as_me:3435: result: $cf_with_tack" >&5
+ echo "$as_me:3669: result: $cf_with_tack" >&5
echo "${ECHO_T}$cf_with_tack" >&6
fi
else
cf_with_tack=no
fi
-echo "$as_me:3442: checking if you want to build test-programs" >&5
+echo "$as_me:3676: checking if you want to build test-programs" >&5
echo $ECHO_N "checking if you want to build test-programs... $ECHO_C" >&6
# Check whether --with-tests or --without-tests was given.
@@ -3449,10 +3683,10 @@ if test "${with_tests+set}" = set; then
else
cf_with_tests=yes
fi;
-echo "$as_me:3452: result: $cf_with_tests" >&5
+echo "$as_me:3686: result: $cf_with_tests" >&5
echo "${ECHO_T}$cf_with_tests" >&6
-echo "$as_me:3455: checking if you wish to install curses.h" >&5
+echo "$as_me:3689: checking if you wish to install curses.h" >&5
echo $ECHO_N "checking if you wish to install curses.h... $ECHO_C" >&6
# Check whether --with-curses-h or --without-curses-h was given.
@@ -3462,7 +3696,7 @@ if test "${with_curses_h+set}" = set; then
else
with_curses_h=yes
fi;
-echo "$as_me:3465: result: $with_curses_h" >&5
+echo "$as_me:3699: result: $with_curses_h" >&5
echo "${ECHO_T}$with_curses_h" >&6
modules_to_build="ncurses"
@@ -3487,7 +3721,7 @@ for ac_prog in mawk gawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:3490: checking for $ac_word" >&5
+echo "$as_me:3724: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_AWK+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3502,7 +3736,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_AWK="$ac_prog"
-echo "$as_me:3505: found $ac_dir/$ac_word" >&5
+echo "$as_me:3739: found $ac_dir/$ac_word" >&5
break
done
@@ -3510,38 +3744,20 @@ fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- echo "$as_me:3513: result: $AWK" >&5
+ echo "$as_me:3747: result: $AWK" >&5
echo "${ECHO_T}$AWK" >&6
else
- echo "$as_me:3516: result: no" >&5
+ echo "$as_me:3750: result: no" >&5
echo "${ECHO_T}no" >&6
fi
test -n "$AWK" && break
done
-test -z "$AWK" && { { echo "$as_me:3523: error: No awk program found" >&5
+test -z "$AWK" && { { echo "$as_me:3757: error: No awk program found" >&5
echo "$as_me: error: No awk program found" >&2;}
{ (exit 1); exit 1; }; }
-echo "$as_me:3527: checking for egrep" >&5
-echo $ECHO_N "checking for egrep... $ECHO_C" >&6
-if test "${ac_cv_prog_egrep+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if echo a | (grep -E '(a|b)') >/dev/null 2>&1
- then ac_cv_prog_egrep='grep -E'
- else ac_cv_prog_egrep='egrep'
- fi
-fi
-echo "$as_me:3537: result: $ac_cv_prog_egrep" >&5
-echo "${ECHO_T}$ac_cv_prog_egrep" >&6
- EGREP=$ac_cv_prog_egrep
-
- test -z "$EGREP" && { { echo "$as_me:3541: error: No egrep program found" >&5
-echo "$as_me: error: No egrep program found" >&2;}
- { (exit 1); exit 1; }; }
-
# Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
# incompatible versions:
@@ -3554,7 +3770,7 @@ echo "$as_me: error: No egrep program found" >&2;}
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:3557: checking for a BSD compatible install" >&5
+echo "$as_me:3773: checking for a BSD compatible install" >&5
echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
if test -z "$INSTALL"; then
if test "${ac_cv_path_install+set}" = set; then
@@ -3603,7 +3819,7 @@ fi
INSTALL=$ac_install_sh
fi
fi
-echo "$as_me:3606: result: $INSTALL" >&5
+echo "$as_me:3822: result: $INSTALL" >&5
echo "${ECHO_T}$INSTALL" >&6
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -3618,9 +3834,9 @@ case $INSTALL in
(/*)
;;
(*)
- cf_dir=`echo $INSTALL | sed -e 's%/[^/]*$%%'`
+ cf_dir=`echo "$INSTALL" | sed -e 's%/[^/]*$%%'`
test -z "$cf_dir" && cf_dir=.
- INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
+ INSTALL="`cd \"$cf_dir\" && pwd`"/"`echo "$INSTALL" | sed -e 's%^.*/%%'`"
;;
esac
@@ -3628,7 +3844,7 @@ for ac_prog in lint cppcheck splint
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:3631: checking for $ac_word" >&5
+echo "$as_me:3847: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_LINT+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3643,7 +3859,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_LINT="$ac_prog"
-echo "$as_me:3646: found $ac_dir/$ac_word" >&5
+echo "$as_me:3862: found $ac_dir/$ac_word" >&5
break
done
@@ -3651,10 +3867,10 @@ fi
fi
LINT=$ac_cv_prog_LINT
if test -n "$LINT"; then
- echo "$as_me:3654: result: $LINT" >&5
+ echo "$as_me:3870: result: $LINT" >&5
echo "${ECHO_T}$LINT" >&6
else
- echo "$as_me:3657: result: no" >&5
+ echo "$as_me:3873: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3667,18 +3883,18 @@ case "x$LINT" in
;;
esac
-echo "$as_me:3670: checking whether ln -s works" >&5
+echo "$as_me:3886: checking whether ln -s works" >&5
echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
LN_S=$as_ln_s
if test "$LN_S" = "ln -s"; then
- echo "$as_me:3674: result: yes" >&5
+ echo "$as_me:3890: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:3677: result: no, using $LN_S" >&5
+ echo "$as_me:3893: result: no, using $LN_S" >&5
echo "${ECHO_T}no, using $LN_S" >&6
fi
-echo "$as_me:3681: checking if $LN_S -f options work" >&5
+echo "$as_me:3897: checking if $LN_S -f options work" >&5
echo $ECHO_N "checking if $LN_S -f options work... $ECHO_C" >&6
rm -f conf$$.src conf$$dst
@@ -3690,12 +3906,12 @@ else
cf_prog_ln_sf=no
fi
rm -f conf$$.dst conf$$src
-echo "$as_me:3693: result: $cf_prog_ln_sf" >&5
+echo "$as_me:3909: result: $cf_prog_ln_sf" >&5
echo "${ECHO_T}$cf_prog_ln_sf" >&6
test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
-echo "$as_me:3698: checking for long file names" >&5
+echo "$as_me:3914: checking for long file names" >&5
echo $ECHO_N "checking for long file names... $ECHO_C" >&6
if test "${ac_cv_sys_long_file_names+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3716,27 +3932,27 @@ if test -n "$TMPDIR" && test -d "$TMPDIR" && test -w "$TMPDIR"; then
else
ac_tmpdirs='/tmp /var/tmp /usr/tmp'
fi
-for ac_dir in . $ac_tmpdirs `eval echo $prefix/lib $exec_prefix/lib` ; do
- test -d $ac_dir || continue
- test -w $ac_dir || continue # It is less confusing to not echo anything here.
+for ac_dir in . $ac_tmpdirs `eval echo "$prefix/lib" "$exec_prefix/lib"` ; do
+ test -d "$ac_dir" || continue
+ test -w "$ac_dir" || continue # It is less confusing to not echo anything here.
ac_xdir=$ac_dir/cf$$
- (umask 077 && mkdir $ac_xdir 2>/dev/null) || continue
+ (umask 077 && mkdir "$ac_xdir" 2>/dev/null) || continue
ac_tf1=$ac_xdir/conftest9012345
ac_tf2=$ac_xdir/conftest9012346
- (echo 1 >$ac_tf1) 2>/dev/null
- (echo 2 >$ac_tf2) 2>/dev/null
- ac_val=`cat $ac_tf1 2>/dev/null`
- if test ! -f $ac_tf1 || test "$ac_val" != 1; then
+ (echo 1 >"$ac_tf1") 2>/dev/null
+ (echo 2 >"$ac_tf2") 2>/dev/null
+ ac_val=`cat "$ac_tf1" 2>/dev/null`
+ if test ! -f "$ac_tf1" || test "$ac_val" != 1; then
ac_cv_sys_long_file_names=no
- rm -rf $ac_xdir 2>/dev/null
+ rm -rf "$ac_xdir" 2>/dev/null
break
fi
- rm -rf $ac_xdir 2>/dev/null
+ rm -rf "$ac_xdir" 2>/dev/null
done
fi
-echo "$as_me:3737: result: $ac_cv_sys_long_file_names" >&5
+echo "$as_me:3953: result: $ac_cv_sys_long_file_names" >&5
echo "${ECHO_T}$ac_cv_sys_long_file_names" >&6
-if test $ac_cv_sys_long_file_names = yes; then
+if test "$ac_cv_sys_long_file_names" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_LONG_FILE_NAMES 1
@@ -3753,7 +3969,7 @@ if test "${with_config_suffix+set}" = set; then
withval="$with_config_suffix"
case "x$withval" in
(xyes|xno)
- { echo "$as_me:3756: WARNING: expected a value for config-suffix option" >&5
+ { echo "$as_me:3972: WARNING: expected a value for config-suffix option" >&5
echo "$as_me: WARNING: expected a value for config-suffix option" >&2;}
;;
(*) cf_config_suffix="$withval"
@@ -3763,7 +3979,7 @@ fi;
# If we find pkg-config, check if we should install the ".pc" files.
-echo "$as_me:3766: checking if you want to use pkg-config" >&5
+echo "$as_me:3982: checking if you want to use pkg-config" >&5
echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6
# Check whether --with-pkg-config or --without-pkg-config was given.
@@ -3773,10 +3989,10 @@ if test "${with_pkg_config+set}" = set; then
else
cf_pkg_config=yes
fi;
-echo "$as_me:3776: result: $cf_pkg_config" >&5
+echo "$as_me:3992: result: $cf_pkg_config" >&5
echo "${ECHO_T}$cf_pkg_config" >&6
-case $cf_pkg_config in
+case "$cf_pkg_config" in
(no)
PKG_CONFIG=none
;;
@@ -3785,7 +4001,7 @@ case $cf_pkg_config in
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-echo "$as_me:3788: checking for $ac_word" >&5
+echo "$as_me:4004: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3802,7 +4018,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word"
- echo "$as_me:3805: found $ac_dir/$ac_word" >&5
+ echo "$as_me:4021: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -3813,10 +4029,10 @@ fi
PKG_CONFIG=$ac_cv_path_PKG_CONFIG
if test -n "$PKG_CONFIG"; then
- echo "$as_me:3816: result: $PKG_CONFIG" >&5
+ echo "$as_me:4032: result: $PKG_CONFIG" >&5
echo "${ECHO_T}$PKG_CONFIG" >&6
else
- echo "$as_me:3819: result: no" >&5
+ echo "$as_me:4035: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3825,7 +4041,7 @@ if test -z "$ac_cv_path_PKG_CONFIG"; then
ac_pt_PKG_CONFIG=$PKG_CONFIG
# Extract the first word of "pkg-config", so it can be a program name with args.
set dummy pkg-config; ac_word=$2
-echo "$as_me:3828: checking for $ac_word" >&5
+echo "$as_me:4044: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3842,7 +4058,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word"
- echo "$as_me:3845: found $ac_dir/$ac_word" >&5
+ echo "$as_me:4061: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -3854,10 +4070,10 @@ fi
ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
if test -n "$ac_pt_PKG_CONFIG"; then
- echo "$as_me:3857: result: $ac_pt_PKG_CONFIG" >&5
+ echo "$as_me:4073: result: $ac_pt_PKG_CONFIG" >&5
echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
else
- echo "$as_me:3860: result: no" >&5
+ echo "$as_me:4076: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3888,122 +4104,151 @@ case ".$PKG_CONFIG" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval PKG_CONFIG="$PKG_CONFIG"
case ".$PKG_CONFIG" in
(.NONE/*)
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG=`echo "$PKG_CONFIG" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG=`echo "$PKG_CONFIG" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:3903: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
+ { { echo "$as_me:4119: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
elif test "x$cf_pkg_config" != xno ; then
- { echo "$as_me:3910: WARNING: pkg-config is not installed" >&5
+ { echo "$as_me:4126: WARNING: pkg-config is not installed" >&5
echo "$as_me: WARNING: pkg-config is not installed" >&2;}
fi
-case $PKG_CONFIG in
+case "$PKG_CONFIG" in
(no|none|yes)
- echo "$as_me:3916: checking for pkg-config library directory" >&5
+ echo "$as_me:4132: checking for pkg-config library directory" >&5
echo $ECHO_N "checking for pkg-config library directory... $ECHO_C" >&6
;;
(*)
- echo "$as_me:3920: checking for $PKG_CONFIG library directory" >&5
+ echo "$as_me:4136: checking for $PKG_CONFIG library directory" >&5
echo $ECHO_N "checking for $PKG_CONFIG library directory... $ECHO_C" >&6
;;
esac
-PKG_CONFIG_LIBDIR=no
+cf_search_path=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/:/ /g' -e 's,^[ ]*,,'`
# Check whether --with-pkg-config-libdir or --without-pkg-config-libdir was given.
if test "${with_pkg_config_libdir+set}" = set; then
withval="$with_pkg_config_libdir"
- PKG_CONFIG_LIBDIR=$withval
+ cf_search_path=$withval
else
- test "x$PKG_CONFIG" != xnone && PKG_CONFIG_LIBDIR=yes
+ test "x$PKG_CONFIG" != xnone && cf_search_path=yes
fi;
-case x$PKG_CONFIG_LIBDIR in
+case x$cf_search_path in
(x/*)
;;
(xyes)
+ cf_search_path=
+ test -n "$verbose" && echo " auto..." 1>&6
+
+echo "${as_me:-configure}:4158: testing auto... ..." 1>&5
+
# Look for the library directory using the same prefix as the executable
+ echo "$as_me:4161: checking for search-list" >&5
+echo $ECHO_N "checking for search-list... $ECHO_C" >&6
if test "x$PKG_CONFIG" = xnone
then
cf_path=$prefix
else
cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`
+ cf_search_path=`
+ "$PKG_CONFIG" --debug --exists no-such-package 2>&1 | awk "\
+/^Scanning directory #[1-9][0-9]* '.*'$/{ \
+ sub(\"^[^']*'\",\"\"); \
+ sub(\"'.*\",\"\"); \
+ printf \" %s\", \\$0; } \
+/trying path:/{
+ sub(\"^.* trying path: \",\"\");
+ sub(\" for no-such-package.*$\",\"\");
+ printf \" %s\", \\$0;
+}
+{ next; } \
+"`
fi
- # If you don't like using the default architecture, you have to specify the
- # intended library directory and corresponding compiler/linker options.
- #
- # This case allows for Debian's 2014-flavor of multiarch, along with the
- # most common variations before that point. Some other variants spell the
- # directory differently, e.g., "pkg-config", and put it in unusual places.
- # pkg-config has always been poorly standardized, which is ironic...
- case x`(arch) 2>/dev/null` in
- (*64)
- cf_search_path="\
- $cf_path/lib/*64-linux-gnu \
- $cf_path/share \
- $cf_path/lib64 \
- $cf_path/lib32 \
- $cf_path/lib"
- ;;
- (*)
- cf_search_path="\
- $cf_path/lib/*-linux-gnu \
- $cf_path/share \
- $cf_path/lib32 \
- $cf_path/lib \
- $cf_path/libdata"
- ;;
- esac
-
- test -n "$verbose" && echo " list..." 1>&6
-
-echo "${as_me:-configure}:3975: testing list... ..." 1>&5
-
- for cf_config in $cf_search_path
- do
- test -n "$verbose" && echo " checking $cf_config/pkgconfig" 1>&6
+ if test -z "$cf_search_path"
+ then
+ # If you don't like using the default architecture, you have to specify
+ # the intended library directory and corresponding compiler/linker
+ # options.
+ #
+ # This case allows for Debian's 2014-flavor of multiarch, along with
+ # the most common variations before that point. Some other variants
+ # spell the directory differently, e.g., "pkg-config", and put it in
+ # unusual places.
+ #
+ # pkg-config has always been poorly standardized, which is ironic...
+ case x`(arch) 2>/dev/null` in
+ (*64)
+ cf_test_path="\
+ $cf_path/lib/*64-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib64 \
+ $cf_path/lib32 \
+ $cf_path/lib"
+ ;;
+ (*)
+ cf_test_path="\
+ $cf_path/lib/*-linux-gnu \
+ $cf_path/share \
+ $cf_path/lib32 \
+ $cf_path/lib \
+ $cf_path/libdata"
+ ;;
+ esac
+ for cf_config in $cf_test_path
+ do
+ test -d "$cf_config/pkgconfig" && cf_search_path="$cf_search_path $cf_config/pkgconfig"
+ done
+ fi
-echo "${as_me:-configure}:3981: testing checking $cf_config/pkgconfig ..." 1>&5
+ echo "$as_me:4219: result: $cf_search_path" >&5
+echo "${ECHO_T}$cf_search_path" >&6
- if test -d $cf_config/pkgconfig
- then
- PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
- echo "$as_me:3986: checking done" >&5
-echo $ECHO_N "checking done... $ECHO_C" >&6
- break
- fi
- done
;;
(*)
;;
esac
-if test "x$PKG_CONFIG_LIBDIR" != xno ; then
- echo "$as_me:3997: result: $PKG_CONFIG_LIBDIR" >&5
-echo "${ECHO_T}$PKG_CONFIG_LIBDIR" >&6
+echo "$as_me:4227: checking for first directory" >&5
+echo $ECHO_N "checking for first directory... $ECHO_C" >&6
+cf_pkg_config_path=none
+for cf_config in $cf_search_path
+do
+ if test -d "$cf_config"
+ then
+ cf_pkg_config_path=$cf_config
+ break
+ fi
+done
+echo "$as_me:4238: result: $cf_pkg_config_path" >&5
+echo "${ECHO_T}$cf_pkg_config_path" >&6
+
+if test "x$cf_pkg_config_path" != xnone ; then
+ # limit this to the first directory found
+ PKG_CONFIG_LIBDIR="$cf_pkg_config_path"
fi
if test "x$PKG_CONFIG" != xnone
then
- echo "$as_me:4003: checking if we should install .pc files for $PKG_CONFIG" >&5
+ echo "$as_me:4248: checking if we should install .pc files for $PKG_CONFIG" >&5
echo $ECHO_N "checking if we should install .pc files for $PKG_CONFIG... $ECHO_C" >&6
else
- echo "$as_me:4006: checking if we should install .pc files" >&5
+ echo "$as_me:4251: checking if we should install .pc files" >&5
echo $ECHO_N "checking if we should install .pc files... $ECHO_C" >&6
fi
@@ -4014,15 +4259,15 @@ if test "${enable_pc_files+set}" = set; then
else
enable_pc_files=no
fi;
-echo "$as_me:4017: result: $enable_pc_files" >&5
+echo "$as_me:4262: result: $enable_pc_files" >&5
echo "${ECHO_T}$enable_pc_files" >&6
if test "x$enable_pc_files" != xno
then
MAKE_PC_FILES=
case "x$PKG_CONFIG_LIBDIR" in
- (xno|xyes)
- { echo "$as_me:4025: WARNING: no PKG_CONFIG_LIBDIR was found" >&5
+ (xno|xnone|xyes)
+ { echo "$as_me:4270: WARNING: no PKG_CONFIG_LIBDIR was found" >&5
echo "$as_me: WARNING: no PKG_CONFIG_LIBDIR was found" >&2;}
;;
(*)
@@ -4040,19 +4285,19 @@ case ".$PKG_CONFIG_LIBDIR" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval PKG_CONFIG_LIBDIR="$PKG_CONFIG_LIBDIR"
case ".$PKG_CONFIG_LIBDIR" in
(.NONE/*)
- PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:4055: error: expected a pathname, not \"$PKG_CONFIG_LIBDIR\"" >&5
+ { { echo "$as_me:4300: error: expected a pathname, not \"$PKG_CONFIG_LIBDIR\"" >&5
echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG_LIBDIR\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -4066,7 +4311,7 @@ fi
if test -z "$MAKE_PC_FILES"
then
- echo "$as_me:4069: checking for suffix to add to pc-files" >&5
+ echo "$as_me:4314: checking for suffix to add to pc-files" >&5
echo $ECHO_N "checking for suffix to add to pc-files... $ECHO_C" >&6
# Check whether --with-pc-suffix or --without-pc-suffix was given.
@@ -4081,13 +4326,13 @@ if test "${with_pc_suffix+set}" = set; then
esac
fi;
test -z "$PC_MODULE_SUFFIX" && PC_MODULE_SUFFIX=none
- echo "$as_me:4084: result: $PC_MODULE_SUFFIX" >&5
+ echo "$as_me:4329: result: $PC_MODULE_SUFFIX" >&5
echo "${ECHO_T}$PC_MODULE_SUFFIX" >&6
test "$PC_MODULE_SUFFIX" = none && PC_MODULE_SUFFIX=
fi
-echo "$as_me:4090: checking if we should assume mixed-case filenames" >&5
+echo "$as_me:4335: checking if we should assume mixed-case filenames" >&5
echo $ECHO_N "checking if we should assume mixed-case filenames... $ECHO_C" >&6
# Check whether --enable-mixed-case or --disable-mixed-case was given.
@@ -4097,19 +4342,19 @@ if test "${enable_mixed_case+set}" = set; then
else
enable_mixedcase=auto
fi;
-echo "$as_me:4100: result: $enable_mixedcase" >&5
+echo "$as_me:4345: result: $enable_mixedcase" >&5
echo "${ECHO_T}$enable_mixedcase" >&6
if test "$enable_mixedcase" = "auto" ; then
-echo "$as_me:4104: checking if filesystem supports mixed-case filenames" >&5
+echo "$as_me:4349: checking if filesystem supports mixed-case filenames" >&5
echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6
if test "${cf_cv_mixedcase+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test "$cross_compiling" = yes ; then
- case $target_alias in
- (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*)
+ case "$target_alias" in
+ (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*|darwin*)
cf_cv_mixedcase=no
;;
(*)
@@ -4128,7 +4373,7 @@ else
fi
fi
-echo "$as_me:4131: result: $cf_cv_mixedcase" >&5
+echo "$as_me:4376: result: $cf_cv_mixedcase" >&5
echo "${ECHO_T}$cf_cv_mixedcase" >&6
test "$cf_cv_mixedcase" = yes &&
cat >>confdefs.h <<\EOF
@@ -4147,7 +4392,7 @@ EOF
fi
# do this after mixed-case option (tags/TAGS is not as important as tic).
-echo "$as_me:4150: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "$as_me:4395: checking whether ${MAKE-make} sets \${MAKE}" >&5
echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
@@ -4167,20 +4412,82 @@ fi
rm -f conftest.make
fi
if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$as_me:4170: result: yes" >&5
+ echo "$as_me:4415: result: yes" >&5
echo "${ECHO_T}yes" >&6
SET_MAKE=
else
- echo "$as_me:4174: result: no" >&5
+ echo "$as_me:4419: result: no" >&5
echo "${ECHO_T}no" >&6
SET_MAKE="MAKE=${MAKE-make}"
fi
+echo "$as_me:4424: checking for \".PHONY\" make-support" >&5
+echo $ECHO_N "checking for \".PHONY\" make-support... $ECHO_C" >&6
+if test "${cf_cv_make_PHONY+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+ rm -rf conftest*
+ (
+ mkdir conftest || exit 1
+ cd conftest
+ cat >makefile <<'CF_EOF'
+.PHONY: always
+DATA=0
+always: always.out
+ @echo "** making $@ $(DATA)"
+once: once.out
+ @echo "** making $@ $(DATA)"
+always.out:
+ @echo "** making $@ $(DATA)"
+ echo $(DATA) > $@
+once.out:
+ @echo "** making $@ $(DATA)"
+ echo $(DATA) > $@
+CF_EOF
+ for cf_data in 1 2 3
+ do
+ ${MAKE:-make} always DATA=$cf_data
+ ${MAKE:-make} once DATA=$cf_data
+ ${MAKE:-make} -t always once
+ if test -f always ; then
+ echo "no (case 1)" > ../conftest.tmp
+ elif test ! -f always.out ; then
+ echo "no (case 2)" > ../conftest.tmp
+ elif test ! -f once.out ; then
+ echo "no (case 3)" > ../conftest.tmp
+ elif ! cmp -s always.out once.out ; then
+ echo "no (case 4)" > ../conftest.tmp
+ diff always.out once.out
+ else
+ cf_check="`cat always.out`"
+ if test "x$cf_check" != "x$cf_data" ; then
+ echo "no (case 5)" > ../conftest.tmp
+ else
+ echo yes > ../conftest.tmp
+ rm -f ./*.out
+ continue
+ fi
+ fi
+ break
+ done
+ ) >&5 2>&1
+ cf_cv_make_PHONY="`cat conftest.tmp`"
+ rm -rf conftest*
+
+fi
+echo "$as_me:4479: result: $cf_cv_make_PHONY" >&5
+echo "${ECHO_T}$cf_cv_make_PHONY" >&6
+MAKE_NO_PHONY="#"
+MAKE_PHONY="#"
+test "x$cf_cv_make_PHONY" = xyes && MAKE_PHONY=
+test "x$cf_cv_make_PHONY" != xyes && MAKE_NO_PHONY=
+
for ac_prog in exctags ctags
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:4183: checking for $ac_word" >&5
+echo "$as_me:4490: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CTAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4195,7 +4502,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CTAGS="$ac_prog"
-echo "$as_me:4198: found $ac_dir/$ac_word" >&5
+echo "$as_me:4505: found $ac_dir/$ac_word" >&5
break
done
@@ -4203,10 +4510,10 @@ fi
fi
CTAGS=$ac_cv_prog_CTAGS
if test -n "$CTAGS"; then
- echo "$as_me:4206: result: $CTAGS" >&5
+ echo "$as_me:4513: result: $CTAGS" >&5
echo "${ECHO_T}$CTAGS" >&6
else
- echo "$as_me:4209: result: no" >&5
+ echo "$as_me:4516: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4217,7 +4524,7 @@ for ac_prog in exetags etags
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:4220: checking for $ac_word" >&5
+echo "$as_me:4527: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ETAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4232,7 +4539,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ETAGS="$ac_prog"
-echo "$as_me:4235: found $ac_dir/$ac_word" >&5
+echo "$as_me:4542: found $ac_dir/$ac_word" >&5
break
done
@@ -4240,10 +4547,10 @@ fi
fi
ETAGS=$ac_cv_prog_ETAGS
if test -n "$ETAGS"; then
- echo "$as_me:4243: result: $ETAGS" >&5
+ echo "$as_me:4550: result: $ETAGS" >&5
echo "${ECHO_T}$ETAGS" >&6
else
- echo "$as_me:4246: result: no" >&5
+ echo "$as_me:4553: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4252,7 +4559,7 @@ done
# Extract the first word of "${CTAGS:-ctags}", so it can be a program name with args.
set dummy ${CTAGS:-ctags}; ac_word=$2
-echo "$as_me:4255: checking for $ac_word" >&5
+echo "$as_me:4562: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4267,7 +4574,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_MAKE_LOWER_TAGS="yes"
-echo "$as_me:4270: found $ac_dir/$ac_word" >&5
+echo "$as_me:4577: found $ac_dir/$ac_word" >&5
break
done
@@ -4276,17 +4583,17 @@ fi
fi
MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
if test -n "$MAKE_LOWER_TAGS"; then
- echo "$as_me:4279: result: $MAKE_LOWER_TAGS" >&5
+ echo "$as_me:4586: result: $MAKE_LOWER_TAGS" >&5
echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
else
- echo "$as_me:4282: result: no" >&5
+ echo "$as_me:4589: result: no" >&5
echo "${ECHO_T}no" >&6
fi
if test "$cf_cv_mixedcase" = yes ; then
# Extract the first word of "${ETAGS:-etags}", so it can be a program name with args.
set dummy ${ETAGS:-etags}; ac_word=$2
-echo "$as_me:4289: checking for $ac_word" >&5
+echo "$as_me:4596: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4301,7 +4608,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_MAKE_UPPER_TAGS="yes"
-echo "$as_me:4304: found $ac_dir/$ac_word" >&5
+echo "$as_me:4611: found $ac_dir/$ac_word" >&5
break
done
@@ -4310,10 +4617,10 @@ fi
fi
MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
if test -n "$MAKE_UPPER_TAGS"; then
- echo "$as_me:4313: result: $MAKE_UPPER_TAGS" >&5
+ echo "$as_me:4620: result: $MAKE_UPPER_TAGS" >&5
echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
else
- echo "$as_me:4316: result: no" >&5
+ echo "$as_me:4623: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4333,7 +4640,7 @@ else
MAKE_LOWER_TAGS="#"
fi
-echo "$as_me:4336: checking for makeflags variable" >&5
+echo "$as_me:4643: checking for makeflags variable" >&5
echo $ECHO_N "checking for makeflags variable... $ECHO_C" >&6
if test "${cf_cv_makeflags+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4347,10 +4654,10 @@ SHELL = $SHELL
all :
@ echo '.$cf_option'
CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[ ]*$,,'`
+ cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | ${FGREP-fgrep} -v "ing directory" | sed -e 's,[ ]*$,,'`
case "$cf_result" in
(.*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
+ cf_result="`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`"
case "$cf_result" in
(.*CC=*) cf_cv_makeflags=
;;
@@ -4363,7 +4670,7 @@ CF_EOF
;;
(*)
-echo "${as_me:-configure}:4366: testing given option \"$cf_option\",no match \"$cf_result\" ..." 1>&5
+echo "${as_me:-configure}:4673: testing given option \"$cf_option\",no match \"$cf_result\" ..." 1>&5
;;
esac
@@ -4371,13 +4678,13 @@ echo "${as_me:-configure}:4366: testing given option \"$cf_option\",no match \"$
rm -f cf_makeflags.tmp
fi
-echo "$as_me:4374: result: $cf_cv_makeflags" >&5
+echo "$as_me:4681: result: $cf_cv_makeflags" >&5
echo "${ECHO_T}$cf_cv_makeflags" >&6
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo "$as_me:4380: checking for $ac_word" >&5
+echo "$as_me:4687: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_RANLIB+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4392,7 +4699,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-echo "$as_me:4395: found $ac_dir/$ac_word" >&5
+echo "$as_me:4702: found $ac_dir/$ac_word" >&5
break
done
@@ -4400,10 +4707,10 @@ fi
fi
RANLIB=$ac_cv_prog_RANLIB
if test -n "$RANLIB"; then
- echo "$as_me:4403: result: $RANLIB" >&5
+ echo "$as_me:4710: result: $RANLIB" >&5
echo "${ECHO_T}$RANLIB" >&6
else
- echo "$as_me:4406: result: no" >&5
+ echo "$as_me:4713: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4412,7 +4719,7 @@ if test -z "$ac_cv_prog_RANLIB"; then
ac_ct_RANLIB=$RANLIB
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
-echo "$as_me:4415: checking for $ac_word" >&5
+echo "$as_me:4722: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4427,7 +4734,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_RANLIB="ranlib"
-echo "$as_me:4430: found $ac_dir/$ac_word" >&5
+echo "$as_me:4737: found $ac_dir/$ac_word" >&5
break
done
@@ -4436,10 +4743,10 @@ fi
fi
ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
if test -n "$ac_ct_RANLIB"; then
- echo "$as_me:4439: result: $ac_ct_RANLIB" >&5
+ echo "$as_me:4746: result: $ac_ct_RANLIB" >&5
echo "${ECHO_T}$ac_ct_RANLIB" >&6
else
- echo "$as_me:4442: result: no" >&5
+ echo "$as_me:4749: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4451,7 +4758,7 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ld", so it can be a program name with args.
set dummy ${ac_tool_prefix}ld; ac_word=$2
-echo "$as_me:4454: checking for $ac_word" >&5
+echo "$as_me:4761: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_LD+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4466,7 +4773,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_LD="${ac_tool_prefix}ld"
-echo "$as_me:4469: found $ac_dir/$ac_word" >&5
+echo "$as_me:4776: found $ac_dir/$ac_word" >&5
break
done
@@ -4474,10 +4781,10 @@ fi
fi
LD=$ac_cv_prog_LD
if test -n "$LD"; then
- echo "$as_me:4477: result: $LD" >&5
+ echo "$as_me:4784: result: $LD" >&5
echo "${ECHO_T}$LD" >&6
else
- echo "$as_me:4480: result: no" >&5
+ echo "$as_me:4787: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4486,7 +4793,7 @@ if test -z "$ac_cv_prog_LD"; then
ac_ct_LD=$LD
# Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
-echo "$as_me:4489: checking for $ac_word" >&5
+echo "$as_me:4796: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_LD+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4501,7 +4808,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_LD="ld"
-echo "$as_me:4504: found $ac_dir/$ac_word" >&5
+echo "$as_me:4811: found $ac_dir/$ac_word" >&5
break
done
@@ -4510,10 +4817,10 @@ fi
fi
ac_ct_LD=$ac_cv_prog_ac_ct_LD
if test -n "$ac_ct_LD"; then
- echo "$as_me:4513: result: $ac_ct_LD" >&5
+ echo "$as_me:4820: result: $ac_ct_LD" >&5
echo "${ECHO_T}$ac_ct_LD" >&6
else
- echo "$as_me:4516: result: no" >&5
+ echo "$as_me:4823: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4525,7 +4832,7 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo "$as_me:4528: checking for $ac_word" >&5
+echo "$as_me:4835: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4540,7 +4847,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_AR="${ac_tool_prefix}ar"
-echo "$as_me:4543: found $ac_dir/$ac_word" >&5
+echo "$as_me:4850: found $ac_dir/$ac_word" >&5
break
done
@@ -4548,10 +4855,10 @@ fi
fi
AR=$ac_cv_prog_AR
if test -n "$AR"; then
- echo "$as_me:4551: result: $AR" >&5
+ echo "$as_me:4858: result: $AR" >&5
echo "${ECHO_T}$AR" >&6
else
- echo "$as_me:4554: result: no" >&5
+ echo "$as_me:4861: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4560,7 +4867,7 @@ if test -z "$ac_cv_prog_AR"; then
ac_ct_AR=$AR
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
-echo "$as_me:4563: checking for $ac_word" >&5
+echo "$as_me:4870: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4575,7 +4882,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_AR="ar"
-echo "$as_me:4578: found $ac_dir/$ac_word" >&5
+echo "$as_me:4885: found $ac_dir/$ac_word" >&5
break
done
@@ -4584,10 +4891,10 @@ fi
fi
ac_ct_AR=$ac_cv_prog_ac_ct_AR
if test -n "$ac_ct_AR"; then
- echo "$as_me:4587: result: $ac_ct_AR" >&5
+ echo "$as_me:4894: result: $ac_ct_AR" >&5
echo "${ECHO_T}$ac_ct_AR" >&6
else
- echo "$as_me:4590: result: no" >&5
+ echo "$as_me:4897: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4599,7 +4906,7 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}nm", so it can be a program name with args.
set dummy ${ac_tool_prefix}nm; ac_word=$2
-echo "$as_me:4602: checking for $ac_word" >&5
+echo "$as_me:4909: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_NM+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4614,7 +4921,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_NM="${ac_tool_prefix}nm"
-echo "$as_me:4617: found $ac_dir/$ac_word" >&5
+echo "$as_me:4924: found $ac_dir/$ac_word" >&5
break
done
@@ -4622,10 +4929,10 @@ fi
fi
NM=$ac_cv_prog_NM
if test -n "$NM"; then
- echo "$as_me:4625: result: $NM" >&5
+ echo "$as_me:4932: result: $NM" >&5
echo "${ECHO_T}$NM" >&6
else
- echo "$as_me:4628: result: no" >&5
+ echo "$as_me:4935: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4634,7 +4941,7 @@ if test -z "$ac_cv_prog_NM"; then
ac_ct_NM=$NM
# Extract the first word of "nm", so it can be a program name with args.
set dummy nm; ac_word=$2
-echo "$as_me:4637: checking for $ac_word" >&5
+echo "$as_me:4944: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_NM+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4649,7 +4956,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_NM="nm"
-echo "$as_me:4652: found $ac_dir/$ac_word" >&5
+echo "$as_me:4959: found $ac_dir/$ac_word" >&5
break
done
@@ -4658,10 +4965,10 @@ fi
fi
ac_ct_NM=$ac_cv_prog_ac_ct_NM
if test -n "$ac_ct_NM"; then
- echo "$as_me:4661: result: $ac_ct_NM" >&5
+ echo "$as_me:4968: result: $ac_ct_NM" >&5
echo "${ECHO_T}$ac_ct_NM" >&6
else
- echo "$as_me:4664: result: no" >&5
+ echo "$as_me:4971: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4673,7 +4980,7 @@ fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo "$as_me:4676: checking for $ac_word" >&5
+echo "$as_me:4983: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4688,7 +4995,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_AR="${ac_tool_prefix}ar"
-echo "$as_me:4691: found $ac_dir/$ac_word" >&5
+echo "$as_me:4998: found $ac_dir/$ac_word" >&5
break
done
@@ -4696,10 +5003,10 @@ fi
fi
AR=$ac_cv_prog_AR
if test -n "$AR"; then
- echo "$as_me:4699: result: $AR" >&5
+ echo "$as_me:5006: result: $AR" >&5
echo "${ECHO_T}$AR" >&6
else
- echo "$as_me:4702: result: no" >&5
+ echo "$as_me:5009: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4708,7 +5015,7 @@ if test -z "$ac_cv_prog_AR"; then
ac_ct_AR=$AR
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
-echo "$as_me:4711: checking for $ac_word" >&5
+echo "$as_me:5018: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4723,7 +5030,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_AR="ar"
-echo "$as_me:4726: found $ac_dir/$ac_word" >&5
+echo "$as_me:5033: found $ac_dir/$ac_word" >&5
break
done
@@ -4732,10 +5039,10 @@ fi
fi
ac_ct_AR=$ac_cv_prog_ac_ct_AR
if test -n "$ac_ct_AR"; then
- echo "$as_me:4735: result: $ac_ct_AR" >&5
+ echo "$as_me:5042: result: $ac_ct_AR" >&5
echo "${ECHO_T}$ac_ct_AR" >&6
else
- echo "$as_me:4738: result: no" >&5
+ echo "$as_me:5045: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4744,55 +5051,71 @@ else
AR="$ac_cv_prog_AR"
fi
-echo "$as_me:4747: checking for options to update archives" >&5
+echo "$as_me:5054: checking for options to update archives" >&5
echo $ECHO_N "checking for options to update archives... $ECHO_C" >&6
if test "${cf_cv_ar_flags+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cf_cv_ar_flags=unknown
- for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
- do
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_cv_ar_flags=''
+ cat >mk_static_lib.sh <<-EOF
+ #!$SHELL
+ MSVC_BIN="$AR"
+ out="\$1"
+ shift
+ exec \$MSVC_BIN -out:"\$out" \$@
+ EOF
+ chmod +x mk_static_lib.sh
+ AR=`pwd`/mk_static_lib.sh
+ ;;
+ (*)
+ cf_cv_ar_flags=unknown
+ for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
+ do
- # check if $ARFLAGS already contains this choice
- if test "x$ARFLAGS" != "x" ; then
- cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
- if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
- cf_cv_ar_flags=
- break
+ # check if $ARFLAGS already contains this choice
+ if test "x$ARFLAGS" != "x" ; then
+ cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
+ if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
+ cf_cv_ar_flags=
+ break
+ fi
fi
- fi
- rm -f conftest.$ac_cv_objext
- rm -f conftest.a
+ rm -f "conftest.$ac_cv_objext"
+ rm -f conftest.a
- cat >conftest.$ac_ext <<EOF
-#line 4770 "configure"
+ cat >"conftest.$ac_ext" <<EOF
+#line 5091 "configure"
int testdata[3] = { 123, 456, 789 };
EOF
- if { (eval echo "$as_me:4773: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:5094: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4776: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
- echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&5
- $AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&5 1>/dev/null
- if test -f conftest.a ; then
- cf_cv_ar_flags=$cf_ar_flags
- break
- fi
- else
- test -n "$verbose" && echo " cannot compile test-program" 1>&6
+ echo "$as_me:5097: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
+ echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&5
+ $AR $ARFLAGS "$cf_ar_flags" conftest.a "conftest.$ac_cv_objext" 2>&5 1>/dev/null
+ if test -f conftest.a ; then
+ cf_cv_ar_flags="$cf_ar_flags"
+ break
+ fi
+ else
+ test -n "$verbose" && echo " cannot compile test-program" 1>&6
-echo "${as_me:-configure}:4787: testing cannot compile test-program ..." 1>&5
+echo "${as_me:-configure}:5108: testing cannot compile test-program ..." 1>&5
- break
- fi
- done
- rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
+ break
+ fi
+ done
+ rm -f conftest.a "conftest.$ac_ext" "conftest.$ac_cv_objext"
+ ;;
+ esac
fi
-echo "$as_me:4795: result: $cf_cv_ar_flags" >&5
+echo "$as_me:5118: result: $cf_cv_ar_flags" >&5
echo "${ECHO_T}$cf_cv_ar_flags" >&6
if test -n "$ARFLAGS" ; then
@@ -4803,7 +5126,7 @@ else
ARFLAGS=$cf_cv_ar_flags
fi
-echo "$as_me:4806: checking if you have specified an install-prefix" >&5
+echo "$as_me:5129: checking if you have specified an install-prefix" >&5
echo $ECHO_N "checking if you have specified an install-prefix... $ECHO_C" >&6
# Check whether --with-install-prefix or --without-install-prefix was given.
@@ -4816,7 +5139,7 @@ if test "${with_install_prefix+set}" = set; then
;;
esac
fi;
-echo "$as_me:4819: result: $DESTDIR" >&5
+echo "$as_me:5142: result: $DESTDIR" >&5
echo "${ECHO_T}$DESTDIR" >&6
###############################################################################
@@ -4825,6 +5148,13 @@ echo "${ECHO_T}$DESTDIR" >&6
# options. The configure script is oriented toward identifying the host
# compiler, etc., but we need a build compiler to generate parts of the source.
+case "$cf_cv_system_name" in
+(*-msvc*)
+ LDFLAGS="$LDFLAGS user32.lib"
+ export LDFLAGS
+ ;;
+esac
+
if test "$cross_compiling" = yes ; then
# defaults that we might want to override
@@ -4844,7 +5174,7 @@ else
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:4847: checking for $ac_word" >&5
+echo "$as_me:5177: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_BUILD_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4859,7 +5189,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_BUILD_CC="$ac_prog"
-echo "$as_me:4862: found $ac_dir/$ac_word" >&5
+echo "$as_me:5192: found $ac_dir/$ac_word" >&5
break
done
@@ -4867,10 +5197,10 @@ fi
fi
BUILD_CC=$ac_cv_prog_BUILD_CC
if test -n "$BUILD_CC"; then
- echo "$as_me:4870: result: $BUILD_CC" >&5
+ echo "$as_me:5200: result: $BUILD_CC" >&5
echo "${ECHO_T}$BUILD_CC" >&6
else
- echo "$as_me:4873: result: no" >&5
+ echo "$as_me:5203: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -4879,12 +5209,12 @@ done
test -n "$BUILD_CC" || BUILD_CC="none"
fi;
- echo "$as_me:4882: checking for native build C compiler" >&5
+ echo "$as_me:5212: checking for native build C compiler" >&5
echo $ECHO_N "checking for native build C compiler... $ECHO_C" >&6
- echo "$as_me:4884: result: $BUILD_CC" >&5
+ echo "$as_me:5214: result: $BUILD_CC" >&5
echo "${ECHO_T}$BUILD_CC" >&6
- echo "$as_me:4887: checking for native build C preprocessor" >&5
+ echo "$as_me:5217: checking for native build C preprocessor" >&5
echo $ECHO_N "checking for native build C preprocessor... $ECHO_C" >&6
# Check whether --with-build-cpp or --without-build-cpp was given.
@@ -4894,10 +5224,10 @@ if test "${with_build_cpp+set}" = set; then
else
BUILD_CPP='${BUILD_CC} -E'
fi;
- echo "$as_me:4897: result: $BUILD_CPP" >&5
+ echo "$as_me:5227: result: $BUILD_CPP" >&5
echo "${ECHO_T}$BUILD_CPP" >&6
- echo "$as_me:4900: checking for native build C flags" >&5
+ echo "$as_me:5230: checking for native build C flags" >&5
echo $ECHO_N "checking for native build C flags... $ECHO_C" >&6
# Check whether --with-build-cflags or --without-build-cflags was given.
@@ -4905,10 +5235,10 @@ if test "${with_build_cflags+set}" = set; then
withval="$with_build_cflags"
BUILD_CFLAGS="$withval"
fi;
- echo "$as_me:4908: result: $BUILD_CFLAGS" >&5
+ echo "$as_me:5238: result: $BUILD_CFLAGS" >&5
echo "${ECHO_T}$BUILD_CFLAGS" >&6
- echo "$as_me:4911: checking for native build C preprocessor-flags" >&5
+ echo "$as_me:5241: checking for native build C preprocessor-flags" >&5
echo $ECHO_N "checking for native build C preprocessor-flags... $ECHO_C" >&6
# Check whether --with-build-cppflags or --without-build-cppflags was given.
@@ -4916,10 +5246,10 @@ if test "${with_build_cppflags+set}" = set; then
withval="$with_build_cppflags"
BUILD_CPPFLAGS="$withval"
fi;
- echo "$as_me:4919: result: $BUILD_CPPFLAGS" >&5
+ echo "$as_me:5249: result: $BUILD_CPPFLAGS" >&5
echo "${ECHO_T}$BUILD_CPPFLAGS" >&6
- echo "$as_me:4922: checking for native build linker-flags" >&5
+ echo "$as_me:5252: checking for native build linker-flags" >&5
echo $ECHO_N "checking for native build linker-flags... $ECHO_C" >&6
# Check whether --with-build-ldflags or --without-build-ldflags was given.
@@ -4927,10 +5257,10 @@ if test "${with_build_ldflags+set}" = set; then
withval="$with_build_ldflags"
BUILD_LDFLAGS="$withval"
fi;
- echo "$as_me:4930: result: $BUILD_LDFLAGS" >&5
+ echo "$as_me:5260: result: $BUILD_LDFLAGS" >&5
echo "${ECHO_T}$BUILD_LDFLAGS" >&6
- echo "$as_me:4933: checking for native build linker-libraries" >&5
+ echo "$as_me:5263: checking for native build linker-libraries" >&5
echo $ECHO_N "checking for native build linker-libraries... $ECHO_C" >&6
# Check whether --with-build-libs or --without-build-libs was given.
@@ -4938,7 +5268,7 @@ if test "${with_build_libs+set}" = set; then
withval="$with_build_libs"
BUILD_LIBS="$withval"
fi;
- echo "$as_me:4941: result: $BUILD_LIBS" >&5
+ echo "$as_me:5271: result: $BUILD_LIBS" >&5
echo "${ECHO_T}$BUILD_LIBS" >&6
# this assumes we're on Unix.
@@ -4947,8 +5277,8 @@ echo "${ECHO_T}$BUILD_LIBS" >&6
: ${BUILD_CC:='${CC}'}
- if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
- { { echo "$as_me:4951: error: Cross-build requires two compilers.
+ if { test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}'; } ; then
+ { { echo "$as_me:5281: error: Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler." >&5
echo "$as_me: error: Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler." >&2;}
@@ -4973,7 +5303,7 @@ fi
### shared, for example.
cf_list_models=""
-echo "$as_me:4976: checking if libtool -version-number should be used" >&5
+echo "$as_me:5306: checking if libtool -version-number should be used" >&5
echo $ECHO_N "checking if libtool -version-number should be used... $ECHO_C" >&6
# Check whether --enable-libtool-version or --disable-libtool-version was given.
@@ -4990,7 +5320,7 @@ else
cf_libtool_version=yes
fi;
-echo "$as_me:4993: result: $cf_libtool_version" >&5
+echo "$as_me:5323: result: $cf_libtool_version" >&5
echo "${ECHO_T}$cf_libtool_version" >&6
if test "$cf_libtool_version" = yes ; then
@@ -4999,25 +5329,25 @@ else
LIBTOOL_VERSION="-version-info"
case "x$VERSION" in
(x)
- { echo "$as_me:5002: WARNING: VERSION was not set" >&5
+ { echo "$as_me:5332: WARNING: VERSION was not set" >&5
echo "$as_me: WARNING: VERSION was not set" >&2;}
;;
(x*.*.*)
ABI_VERSION="$VERSION"
test -n "$verbose" && echo " ABI_VERSION: $ABI_VERSION" 1>&6
-echo "${as_me:-configure}:5009: testing ABI_VERSION: $ABI_VERSION ..." 1>&5
+echo "${as_me:-configure}:5339: testing ABI_VERSION: $ABI_VERSION ..." 1>&5
;;
(x*:*:*)
ABI_VERSION=`echo "$VERSION" | sed -e 's/:/./g'`
test -n "$verbose" && echo " ABI_VERSION: $ABI_VERSION" 1>&6
-echo "${as_me:-configure}:5016: testing ABI_VERSION: $ABI_VERSION ..." 1>&5
+echo "${as_me:-configure}:5346: testing ABI_VERSION: $ABI_VERSION ..." 1>&5
;;
(*)
- { echo "$as_me:5020: WARNING: unexpected VERSION value: $VERSION" >&5
+ { echo "$as_me:5350: WARNING: unexpected VERSION value: $VERSION" >&5
echo "$as_me: WARNING: unexpected VERSION value: $VERSION" >&2;}
;;
esac
@@ -5039,7 +5369,7 @@ LIB_LINK='${CC}'
LIB_INSTALL=
LIB_UNINSTALL=
-echo "$as_me:5042: checking if you want to build libraries with libtool" >&5
+echo "$as_me:5372: checking if you want to build libraries with libtool" >&5
echo $ECHO_N "checking if you want to build libraries with libtool... $ECHO_C" >&6
# Check whether --with-libtool or --without-libtool was given.
@@ -5049,7 +5379,7 @@ if test "${with_libtool+set}" = set; then
else
with_libtool=no
fi;
-echo "$as_me:5052: result: $with_libtool" >&5
+echo "$as_me:5382: result: $with_libtool" >&5
echo "${ECHO_T}$with_libtool" >&6
if test "$with_libtool" != "no"; then
@@ -5068,19 +5398,19 @@ case ".$with_libtool" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval with_libtool="$with_libtool"
case ".$with_libtool" in
(.NONE/*)
- with_libtool=`echo $with_libtool | sed -e s%NONE%$cf_path_syntax%`
+ with_libtool=`echo "$with_libtool" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- with_libtool=`echo $with_libtool | sed -e s%NONE%$cf_path_syntax%`
+ with_libtool=`echo "$with_libtool" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:5083: error: expected a pathname, not \"$with_libtool\"" >&5
+ { { echo "$as_me:5413: error: expected a pathname, not \"$with_libtool\"" >&5
echo "$as_me: error: expected a pathname, not \"$with_libtool\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -5093,7 +5423,7 @@ esac
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:5096: checking for $ac_word" >&5
+echo "$as_me:5426: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_LIBTOOL+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5108,7 +5438,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_LIBTOOL="$ac_tool_prefix$ac_prog"
-echo "$as_me:5111: found $ac_dir/$ac_word" >&5
+echo "$as_me:5441: found $ac_dir/$ac_word" >&5
break
done
@@ -5116,10 +5446,10 @@ fi
fi
LIBTOOL=$ac_cv_prog_LIBTOOL
if test -n "$LIBTOOL"; then
- echo "$as_me:5119: result: $LIBTOOL" >&5
+ echo "$as_me:5449: result: $LIBTOOL" >&5
echo "${ECHO_T}$LIBTOOL" >&6
else
- echo "$as_me:5122: result: no" >&5
+ echo "$as_me:5452: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -5132,7 +5462,7 @@ if test -z "$LIBTOOL"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:5135: checking for $ac_word" >&5
+echo "$as_me:5465: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_LIBTOOL+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5147,7 +5477,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_LIBTOOL="$ac_prog"
-echo "$as_me:5150: found $ac_dir/$ac_word" >&5
+echo "$as_me:5480: found $ac_dir/$ac_word" >&5
break
done
@@ -5155,10 +5485,10 @@ fi
fi
ac_ct_LIBTOOL=$ac_cv_prog_ac_ct_LIBTOOL
if test -n "$ac_ct_LIBTOOL"; then
- echo "$as_me:5158: result: $ac_ct_LIBTOOL" >&5
+ echo "$as_me:5488: result: $ac_ct_LIBTOOL" >&5
echo "${ECHO_T}$ac_ct_LIBTOOL" >&6
else
- echo "$as_me:5161: result: no" >&5
+ echo "$as_me:5491: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -5189,7 +5519,7 @@ unset LIBTOOL
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:5192: checking for $ac_word" >&5
+echo "$as_me:5522: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_LIBTOOL+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5204,7 +5534,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_LIBTOOL="$ac_tool_prefix$ac_prog"
-echo "$as_me:5207: found $ac_dir/$ac_word" >&5
+echo "$as_me:5537: found $ac_dir/$ac_word" >&5
break
done
@@ -5212,10 +5542,10 @@ fi
fi
LIBTOOL=$ac_cv_prog_LIBTOOL
if test -n "$LIBTOOL"; then
- echo "$as_me:5215: result: $LIBTOOL" >&5
+ echo "$as_me:5545: result: $LIBTOOL" >&5
echo "${ECHO_T}$LIBTOOL" >&6
else
- echo "$as_me:5218: result: no" >&5
+ echo "$as_me:5548: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -5228,7 +5558,7 @@ if test -z "$LIBTOOL"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:5231: checking for $ac_word" >&5
+echo "$as_me:5561: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_LIBTOOL+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5243,7 +5573,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_LIBTOOL="$ac_prog"
-echo "$as_me:5246: found $ac_dir/$ac_word" >&5
+echo "$as_me:5576: found $ac_dir/$ac_word" >&5
break
done
@@ -5251,10 +5581,10 @@ fi
fi
ac_ct_LIBTOOL=$ac_cv_prog_ac_ct_LIBTOOL
if test -n "$ac_ct_LIBTOOL"; then
- echo "$as_me:5254: result: $ac_ct_LIBTOOL" >&5
+ echo "$as_me:5584: result: $ac_ct_LIBTOOL" >&5
echo "${ECHO_T}$ac_ct_LIBTOOL" >&6
else
- echo "$as_me:5257: result: no" >&5
+ echo "$as_me:5587: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -5276,7 +5606,7 @@ test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
fi
fi
if test -z "$LIBTOOL" ; then
- { { echo "$as_me:5279: error: Cannot find libtool" >&5
+ { { echo "$as_me:5609: error: Cannot find libtool" >&5
echo "$as_me: error: Cannot find libtool" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -5292,7 +5622,7 @@ echo "$as_me: error: Cannot find libtool" >&2;}
if test -n "$LIBTOOL" && test "$LIBTOOL" != none
then
- echo "$as_me:5295: checking version of $LIBTOOL" >&5
+ echo "$as_me:5625: checking version of $LIBTOOL" >&5
echo $ECHO_N "checking version of $LIBTOOL... $ECHO_C" >&6
if test -n "$LIBTOOL" && test "$LIBTOOL" != none
@@ -5303,15 +5633,27 @@ else
fi
test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
- echo "$as_me:5306: result: $cf_cv_libtool_version" >&5
+ echo "$as_me:5636: result: $cf_cv_libtool_version" >&5
echo "${ECHO_T}$cf_cv_libtool_version" >&6
- if test -z "$cf_cv_libtool_version" ; then
- { { echo "$as_me:5309: error: This is not GNU libtool" >&5
+ if test -n "$cf_cv_libtool_version"
+ then
+ cf_check_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' -e 's,[()],...,g' -e 's,[ ],-,g' -e '2,$d'`
+ case "x$cf_check_libtool_version" in
+ (*...GNU-libtool...*)
+ ;;
+ (*)
+ { { echo "$as_me:5645: error: This is not GNU libtool" >&5
echo "$as_me: error: This is not GNU libtool" >&2;}
{ (exit 1); exit 1; }; }
+ ;;
+ esac
+ else
+ { { echo "$as_me:5651: error: No version found for $LIBTOOL" >&5
+echo "$as_me: error: No version found for $LIBTOOL" >&2;}
+ { (exit 1); exit 1; }; }
fi
else
- { { echo "$as_me:5314: error: GNU libtool has not been found" >&5
+ { { echo "$as_me:5656: error: GNU libtool has not been found" >&5
echo "$as_me: error: GNU libtool has not been found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -5325,7 +5667,7 @@ fi
esac
# special hack to add --tag option for C++ compiler
- case $cf_cv_libtool_version in
+ case "$cf_cv_libtool_version" in
(1.[5-9]*|[2-9].[0-9.a-z]*)
LIBTOOL_CXX="$LIBTOOL --tag=CXX"
LIBTOOL="$LIBTOOL --tag=CC"
@@ -5347,7 +5689,7 @@ cf_list_models="$cf_list_models libtool"
else
-echo "$as_me:5350: checking if you want to build shared libraries" >&5
+echo "$as_me:5692: checking if you want to build shared libraries" >&5
echo $ECHO_N "checking if you want to build shared libraries... $ECHO_C" >&6
# Check whether --with-shared or --without-shared was given.
@@ -5357,11 +5699,11 @@ if test "${with_shared+set}" = set; then
else
with_shared=no
fi;
-echo "$as_me:5360: result: $with_shared" >&5
+echo "$as_me:5702: result: $with_shared" >&5
echo "${ECHO_T}$with_shared" >&6
test "x$with_shared" = "xyes" && cf_list_models="$cf_list_models shared"
-echo "$as_me:5364: checking if you want to build static libraries" >&5
+echo "$as_me:5706: checking if you want to build static libraries" >&5
echo $ECHO_N "checking if you want to build static libraries... $ECHO_C" >&6
# Check whether --with-normal or --without-normal was given.
@@ -5371,11 +5713,11 @@ if test "${with_normal+set}" = set; then
else
with_normal=yes
fi;
-echo "$as_me:5374: result: $with_normal" >&5
+echo "$as_me:5716: result: $with_normal" >&5
echo "${ECHO_T}$with_normal" >&6
test "x$with_normal" = "xyes" && cf_list_models="$cf_list_models normal"
-echo "$as_me:5378: checking if you want to build debug libraries" >&5
+echo "$as_me:5720: checking if you want to build debug libraries" >&5
echo $ECHO_N "checking if you want to build debug libraries... $ECHO_C" >&6
# Check whether --with-debug or --without-debug was given.
@@ -5385,11 +5727,11 @@ if test "${with_debug+set}" = set; then
else
with_debug=yes
fi;
-echo "$as_me:5388: result: $with_debug" >&5
+echo "$as_me:5730: result: $with_debug" >&5
echo "${ECHO_T}$with_debug" >&6
test "x$with_debug" = "xyes" && cf_list_models="$cf_list_models debug"
-echo "$as_me:5392: checking if you want to build profiling libraries" >&5
+echo "$as_me:5734: checking if you want to build profiling libraries" >&5
echo $ECHO_N "checking if you want to build profiling libraries... $ECHO_C" >&6
# Check whether --with-profile or --without-profile was given.
@@ -5399,7 +5741,7 @@ if test "${with_profile+set}" = set; then
else
with_profile=no
fi;
-echo "$as_me:5402: result: $with_profile" >&5
+echo "$as_me:5744: result: $with_profile" >&5
echo "${ECHO_T}$with_profile" >&6
test "x$with_profile" = "xyes" && cf_list_models="$cf_list_models profile"
@@ -5407,7 +5749,7 @@ fi
if test "X$cf_with_cxx_binding" != Xno; then
if test "x$with_shared" = "xyes"; then
-echo "$as_me:5410: checking if you want to build C++ shared libraries" >&5
+echo "$as_me:5752: checking if you want to build C++ shared libraries" >&5
echo $ECHO_N "checking if you want to build C++ shared libraries... $ECHO_C" >&6
# Check whether --with-cxx-shared or --without-cxx-shared was given.
@@ -5417,26 +5759,26 @@ if test "${with_cxx_shared+set}" = set; then
else
with_shared_cxx=no
fi;
-echo "$as_me:5420: result: $with_shared_cxx" >&5
+echo "$as_me:5762: result: $with_shared_cxx" >&5
echo "${ECHO_T}$with_shared_cxx" >&6
fi
fi
###############################################################################
-echo "$as_me:5427: checking for specified models" >&5
+echo "$as_me:5769: checking for specified models" >&5
echo $ECHO_N "checking for specified models... $ECHO_C" >&6
test -z "$cf_list_models" && cf_list_models=normal
test "$with_libtool" != "no" && cf_list_models=libtool
-echo "$as_me:5431: result: $cf_list_models" >&5
+echo "$as_me:5773: result: $cf_list_models" >&5
echo "${ECHO_T}$cf_list_models" >&6
### Use the first model as the default, and save its suffix for use in building
### up test-applications.
-echo "$as_me:5436: checking for default model" >&5
+echo "$as_me:5778: checking for default model" >&5
echo $ECHO_N "checking for default model... $ECHO_C" >&6
DFT_LWR_MODEL=`echo "$cf_list_models" | $AWK '{print $1}'`
-echo "$as_me:5439: result: $DFT_LWR_MODEL" >&5
+echo "$as_me:5781: result: $DFT_LWR_MODEL" >&5
echo "${ECHO_T}$DFT_LWR_MODEL" >&6
DFT_UPR_MODEL=`echo "$DFT_LWR_MODEL" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -5450,7 +5792,7 @@ LIB_NAME=ncurses
LIB_DIR=../lib
LIB_2ND=../../lib
-echo "$as_me:5453: checking if you want to have a library-prefix" >&5
+echo "$as_me:5795: checking if you want to have a library-prefix" >&5
echo $ECHO_N "checking if you want to have a library-prefix... $ECHO_C" >&6
# Check whether --with-lib-prefix or --without-lib-prefix was given.
@@ -5460,13 +5802,13 @@ if test "${with_lib_prefix+set}" = set; then
else
with_lib_prefix=auto
fi;
-echo "$as_me:5463: result: $with_lib_prefix" >&5
+echo "$as_me:5805: result: $with_lib_prefix" >&5
echo "${ECHO_T}$with_lib_prefix" >&6
-if test $with_lib_prefix = auto
+if test "$with_lib_prefix" = auto
then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(OS/2*|os2*)
if test "$DFT_LWR_MODEL" = libtool; then
LIB_PREFIX='lib'
@@ -5474,12 +5816,15 @@ then
LIB_PREFIX=''
fi
;;
+ (*-msvc*)
+ LIB_PREFIX=''
+ ;;
(*) LIB_PREFIX='lib'
;;
esac
cf_prefix=$LIB_PREFIX
-elif test $with_lib_prefix = no
+elif test "$with_lib_prefix" = no
then
LIB_PREFIX=
else
@@ -5488,19 +5833,19 @@ fi
LIB_SUFFIX=
- echo "$as_me:5491: checking for PATH separator" >&5
+ echo "$as_me:5836: checking for PATH separator" >&5
echo $ECHO_N "checking for PATH separator... $ECHO_C" >&6
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(os2*) PATH_SEPARATOR=';' ;;
(*) ${PATH_SEPARATOR:=':'} ;;
esac
- echo "$as_me:5498: result: $PATH_SEPARATOR" >&5
+ echo "$as_me:5843: result: $PATH_SEPARATOR" >&5
echo "${ECHO_T}$PATH_SEPARATOR" >&6
###############################################################################
-echo "$as_me:5503: checking if you want to build a separate terminfo library" >&5
+echo "$as_me:5848: checking if you want to build a separate terminfo library" >&5
echo $ECHO_N "checking if you want to build a separate terminfo library... $ECHO_C" >&6
# Check whether --with-termlib or --without-termlib was given.
@@ -5510,10 +5855,10 @@ if test "${with_termlib+set}" = set; then
else
with_termlib=no
fi;
-echo "$as_me:5513: result: $with_termlib" >&5
+echo "$as_me:5858: result: $with_termlib" >&5
echo "${ECHO_T}$with_termlib" >&6
-echo "$as_me:5516: checking if you want to build a separate tic library" >&5
+echo "$as_me:5861: checking if you want to build a separate tic library" >&5
echo $ECHO_N "checking if you want to build a separate tic library... $ECHO_C" >&6
# Check whether --with-ticlib or --without-ticlib was given.
@@ -5523,7 +5868,7 @@ if test "${with_ticlib+set}" = set; then
else
with_ticlib=no
fi;
-echo "$as_me:5526: result: $with_ticlib" >&5
+echo "$as_me:5871: result: $with_ticlib" >&5
echo "${ECHO_T}$with_ticlib" >&6
if test X"$CC_G_OPT" = X"" ; then
@@ -5536,22 +5881,22 @@ if test X"$CXX_G_OPT" = X"" ; then
test -n "$GXX" && test "x${ac_cv_prog_cxx_g}" != xyes && CXX_G_OPT=''
fi
-echo "$as_me:5539: checking for default loader flags" >&5
+echo "$as_me:5884: checking for default loader flags" >&5
echo $ECHO_N "checking for default loader flags... $ECHO_C" >&6
-case $DFT_LWR_MODEL in
+case "$DFT_LWR_MODEL" in
(libtool) LD_MODEL='' ;;
(normal) LD_MODEL='' ;;
(debug) LD_MODEL=$CC_G_OPT ;;
(profile) LD_MODEL='-pg';;
(shared) LD_MODEL='' ;;
esac
-echo "$as_me:5548: result: $LD_MODEL" >&5
+echo "$as_me:5893: result: $LD_MODEL" >&5
echo "${ECHO_T}$LD_MODEL" >&6
-case $DFT_LWR_MODEL in
+case "$DFT_LWR_MODEL" in
(shared)
-echo "$as_me:5554: checking if rpath option should be used" >&5
+echo "$as_me:5899: checking if rpath option should be used" >&5
echo $ECHO_N "checking if rpath option should be used... $ECHO_C" >&6
# Check whether --enable-rpath or --disable-rpath was given.
@@ -5561,10 +5906,10 @@ if test "${enable_rpath+set}" = set; then
else
cf_cv_enable_rpath=no
fi;
-echo "$as_me:5564: result: $cf_cv_enable_rpath" >&5
+echo "$as_me:5909: result: $cf_cv_enable_rpath" >&5
echo "${ECHO_T}$cf_cv_enable_rpath" >&6
-echo "$as_me:5567: checking if shared libraries should be relinked during install" >&5
+echo "$as_me:5912: checking if shared libraries should be relinked during install" >&5
echo $ECHO_N "checking if shared libraries should be relinked during install... $ECHO_C" >&6
# Check whether --enable-relink or --disable-relink was given.
@@ -5574,7 +5919,7 @@ if test "${enable_relink+set}" = set; then
else
cf_cv_do_relink=yes
fi;
-echo "$as_me:5577: result: $cf_cv_do_relink" >&5
+echo "$as_me:5922: result: $cf_cv_do_relink" >&5
echo "${ECHO_T}$cf_cv_do_relink" >&6
;;
esac
@@ -5585,9 +5930,9 @@ rel_builddir=..
LD_RPATH_OPT=
if test "x$cf_cv_enable_rpath" != xno
then
- echo "$as_me:5588: checking for an rpath option" >&5
+ echo "$as_me:5933: checking for an rpath option" >&5
echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GCC" = yes; then
LD_RPATH_OPT="-Wl,-rpath,"
@@ -5616,12 +5961,12 @@ echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
(*)
;;
esac
- echo "$as_me:5619: result: $LD_RPATH_OPT" >&5
+ echo "$as_me:5964: result: $LD_RPATH_OPT" >&5
echo "${ECHO_T}$LD_RPATH_OPT" >&6
case "x$LD_RPATH_OPT" in
(x-R*)
- echo "$as_me:5624: checking if we need a space after rpath option" >&5
+ echo "$as_me:5969: checking if we need a space after rpath option" >&5
echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6
cf_save_LIBS="$LIBS"
@@ -5641,8 +5986,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5645 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5990 "configure"
#include "confdefs.h"
int
@@ -5653,27 +5998,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5657: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6002: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5660: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5663: \"$ac_try\"") >&5
+ echo "$as_me:6005: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6008: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5666: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6011: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_rpath_space=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_rpath_space=yes
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
- echo "$as_me:5676: result: $cf_rpath_space" >&5
+ echo "$as_me:6021: result: $cf_rpath_space" >&5
echo "${ECHO_T}$cf_rpath_space" >&6
test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
;;
@@ -5695,14 +6040,14 @@ fi
cf_ld_rpath_opt=
test "$cf_cv_enable_rpath" = yes && cf_ld_rpath_opt="$LD_RPATH_OPT"
- echo "$as_me:5698: checking if release/abi version should be used for shared libs" >&5
+ echo "$as_me:6043: checking if release/abi version should be used for shared libs" >&5
echo $ECHO_N "checking if release/abi version should be used for shared libs... $ECHO_C" >&6
# Check whether --with-shlib-version or --without-shlib-version was given.
if test "${with_shlib_version+set}" = set; then
withval="$with_shlib_version"
test -z "$withval" && withval=auto
- case $withval in
+ case "$withval" in
(yes)
cf_cv_shlib_version=auto
;;
@@ -5710,9 +6055,9 @@ if test "${with_shlib_version+set}" = set; then
cf_cv_shlib_version=$withval
;;
(*)
- echo "$as_me:5713: result: $withval" >&5
+ echo "$as_me:6058: result: $withval" >&5
echo "${ECHO_T}$withval" >&6
- { { echo "$as_me:5715: error: option value must be one of: rel, abi, or auto" >&5
+ { { echo "$as_me:6060: error: option value must be one of: rel, abi, or auto" >&5
echo "$as_me: error: option value must be one of: rel, abi, or auto" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -5721,7 +6066,7 @@ echo "$as_me: error: option value must be one of: rel, abi, or auto" >&2;}
else
cf_cv_shlib_version=auto
fi;
- echo "$as_me:5724: result: $cf_cv_shlib_version" >&5
+ echo "$as_me:6069: result: $cf_cv_shlib_version" >&5
echo "${ECHO_T}$cf_cv_shlib_version" >&6
cf_cv_rm_so_locs=no
@@ -5735,7 +6080,7 @@ echo "${ECHO_T}$cf_cv_shlib_version" >&6
then
cf_try_fPIC=yes
else
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(*linux*) # e.g., PGI compiler
cf_try_fPIC=yes
;;
@@ -5744,14 +6089,14 @@ echo "${ECHO_T}$cf_cv_shlib_version" >&6
if test "$cf_try_fPIC" = yes
then
- echo "$as_me:5747: checking which $CC option to use" >&5
+ echo "$as_me:6092: checking which $CC option to use" >&5
echo $ECHO_N "checking which $CC option to use... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
for CC_SHARED_OPTS in -fPIC -fpic ''
do
CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5754 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6099 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -5762,33 +6107,33 @@ int x = 1
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5766: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:6111: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5769: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5772: \"$ac_try\"") >&5
+ echo "$as_me:6114: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:6117: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5775: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6120: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
- echo "$as_me:5784: result: $CC_SHARED_OPTS" >&5
+ echo "$as_me:6129: result: $CC_SHARED_OPTS" >&5
echo "${ECHO_T}$CC_SHARED_OPTS" >&6
CFLAGS="$cf_save_CFLAGS"
fi
cf_cv_shlib_version_infix=no
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix4.3-9*|aix[5-7]*)
if test "$GCC" = yes; then
CC_SHARED_OPTS='-Wl,-brtl'
@@ -5852,7 +6197,7 @@ CF_EOF
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $@` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $@'
test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi
cf_cv_shlib_version_infix=yes
- echo "$as_me:5855: checking if ld -search_paths_first works" >&5
+ echo "$as_me:6200: checking if ld -search_paths_first works" >&5
echo $ECHO_N "checking if ld -search_paths_first works... $ECHO_C" >&6
if test "${cf_cv_ldflags_search_paths_first+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5860,8 +6205,8 @@ else
cf_save_LDFLAGS=$LDFLAGS
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5864 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6209 "configure"
#include "confdefs.h"
int
@@ -5872,33 +6217,44 @@ int i;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5876: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6221: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5879: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5882: \"$ac_try\"") >&5
+ echo "$as_me:6224: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6227: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5885: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6230: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ldflags_search_paths_first=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ldflags_search_paths_first=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LDFLAGS=$cf_save_LDFLAGS
fi
-echo "$as_me:5896: result: $cf_cv_ldflags_search_paths_first" >&5
+echo "$as_me:6241: result: $cf_cv_ldflags_search_paths_first" >&5
echo "${ECHO_T}$cf_cv_ldflags_search_paths_first" >&6
- if test $cf_cv_ldflags_search_paths_first = yes; then
+ if test "$cf_cv_ldflags_search_paths_first" = yes; then
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
fi
;;
+ (haiku*)
+
+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
+ if test "$cf_cv_shlib_version" = rel; then
+ cf_cv_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
+ else
+ cf_cv_shared_soname='`basename $@`'
+ fi
+
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
+ ;;
(hpux[7-8]*)
# HP-UX 8.07 ld lacks "+b" option used for libdir search-list
if test "$GCC" != yes; then
@@ -5961,6 +6317,112 @@ echo "${ECHO_T}$cf_cv_ldflags_search_paths_first" >&6
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
;;
+ (mingw*msvc*)
+ cf_cv_shlib_version=msvcdll
+ cf_cv_shlib_version_infix=msvcdll
+ shlibdir=$bindir
+ MAKE_DLLS=
+ if test "$DFT_LWR_MODEL" = "shared" ; then
+ LOCAL_LDFLAGS="-link -dll"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ EXTRA_LDFLAGS="-link -dll $EXTRA_LDFLAGS"
+ fi
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh $@ ${LD} ${CFLAGS}'
+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.lib"
+ cat >mk_shared_lib.sh <<-CF_EOF
+ #!$SHELL
+ SHARED_LIB=\$1
+ IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$/.dll.lib/'\`
+ shift
+ my_ld=\$1
+ shift
+ cat <<-EOF
+ Linking shared library
+ ** SHARED LIB \$SHARED_LIB
+ ** IMPORT_LIB \$IMPORT_LIB
+EOF
+ args=\$(echo \$* | sed -E "s#-l(\w*)#\1.dll.lib#g" | sed -E "s#-L(\w*)#-LIBPATH:\1#g")
+ exec \$my_ld -DLL -IMPLIB:"\${IMPORT_LIB}" -OUT:"\${SHARED_LIB}" ${LDFLAGS} \$args
+ mv "\${IMPORT_LIB}" "\${IMPORT_LIB}"
+CF_EOF
+ chmod +x mk_shared_lib.sh
+ cat >mk_prog.sh <<-CF_EOF
+ #!$SHELL
+ shift
+ # Ignore first argument (compiler) and use LD (link.exe) unconditionally
+ LD="$LD"
+ clopts=()
+ ldopts=("/subsystem:console")
+ libs=()
+ isdll=0
+ while test \$# -gt 0; do
+ case "\$1" in
+ -link)
+ # ignore -link argument
+ ;;
+ -M[TD] | -M[TD]d)
+ # ignore runtime-library option
+ ;;
+ -dll)
+ isdll=1
+ ;;
+ -W* | -w*)
+ # ignore warnings
+ ;;
+ -D*)
+ clopts+=("\$1")
+ ;;
+ -I*)
+ clopts+=("\$1")
+ ;;
+ -l*)
+ libs+=("\`echo \"\$1\" | sed \"s/^-l//\"\`")
+ ;;
+ -L*)
+ ldopts+=("\`echo \"\$1\" | sed \"s/^-L/-LIBPATH:/\"\`")
+ ;;
+ *.obj | *.o)
+ ldopts+=("\$1")
+ ;;
+ -Wl,*)
+ for linkarg in \`echo '\$1' | sed -e 's/-Wl,//' -e 's/,/ /'\`; do
+ ldopts+=("\${linkarg}")
+ done
+ ;;
+ *.lib)
+ ldopts+=("\$1")
+ ;;
+ -o)
+ shift
+ ldopts+=("-out:\$1")
+ ;;
+ *)
+ clopts+=("\$1")
+ ldopts+=("\$1")
+ ;;
+ esac
+ shift
+ done
+ if [ "\$isdll" -ne 0 ]; then
+ for lib in \${libs[*]}; do
+ ldopts+=("\$lib.dll.lib")
+ done
+ else
+ for lib in \${libs[*]}; do
+ ldopts+=("\$lib.lib")
+ done
+ fi
+ cat <<-EOF
+ Creating program
+ ** ld options: "\${ldopts[@]}"
+EOF
+ exec \$LD \${ldopts[@]}
+CF_EOF
+ chmod +x mk_prog.sh
+ LINK_PROGS="$SHELL ${rel_builddir}/mk_prog.sh"
+ LINK_TESTS="$SHELL ${rel_builddir}/mk_prog.sh"
+ ;;
(mingw*)
cf_cv_shlib_version=mingw
cf_cv_shlib_version_infix=mingw
@@ -6007,6 +6469,14 @@ CF_EOF
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-Bshareable,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
;;
+ (nskJ*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Weld=-export_all -o $@'
+ ;;
+ (nskL*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='${LD} -Wshared -Wxld=-export_all -o $@'
+ ;;
(nto-qnx*|openbsd*|freebsd[12].*)
CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
MK_SHARED_LIB='${LD} ${LDFLAGS} -Bshareable -o $@'
@@ -6052,7 +6522,7 @@ CF_EOF
MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $@'
else
- MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -Wl,-shared -Wl,-Bshareable -o $@'
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -o $@'
fi
;;
(osf*|mls+*)
@@ -6060,7 +6530,7 @@ CF_EOF
# tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't
# link with shared libs).
MK_SHARED_LIB='${LD} ${LDFLAGS} -set_version ${REL_VERSION}:${ABI_VERSION} -expect_unresolved "*" -shared -soname `basename $@`'
- case $host_os in
+ case "$host_os" in
(osf4*)
MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
;;
@@ -6117,36 +6587,36 @@ CF_EOF
for cf_shared_opts in -xcode=pic32 -xcode=pic13 -KPIC -Kpic -O
do
CFLAGS="$cf_shared_opts $cf_save_CFLAGS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 6121 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6591 "configure"
#include "confdefs.h"
#include <stdio.h>
int
main (void)
{
-printf("Hello\n");
+printf("Hello\\n");
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6133: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:6603: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6136: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:6139: \"$ac_try\"") >&5
+ echo "$as_me:6606: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:6609: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6142: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6612: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
CFLAGS="$cf_save_CFLAGS"
CC_SHARED_OPTS=$cf_shared_opts
@@ -6176,7 +6646,7 @@ rm -f conftest.$ac_objext conftest.$ac_ext
test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes
;;
(*)
- { echo "$as_me:6179: WARNING: ignored --with-shlib-version" >&5
+ { echo "$as_me:6649: WARNING: ignored --with-shlib-version" >&5
echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
;;
esac
@@ -6186,11 +6656,11 @@ echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
if test -n "$cf_try_cflags"
then
cat > conftest.$ac_ext <<EOF
-#line 6189 "${as_me:-configure}"
+#line 6659 "${as_me:-configure}"
#include <stdio.h>
int main(int argc, char *argv[])
{
- printf("hello\n");
+ printf("hello\\n");
return (argv[argc-1] == 0) ;
}
EOF
@@ -6198,18 +6668,18 @@ EOF
for cf_opt in $cf_try_cflags
do
CFLAGS="$cf_save_CFLAGS -$cf_opt"
- echo "$as_me:6201: checking if CFLAGS option -$cf_opt works" >&5
+ echo "$as_me:6671: checking if CFLAGS option -$cf_opt works" >&5
echo $ECHO_N "checking if CFLAGS option -$cf_opt works... $ECHO_C" >&6
- if { (eval echo "$as_me:6203: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:6673: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6206: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- echo "$as_me:6208: result: yes" >&5
+ echo "$as_me:6676: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ echo "$as_me:6678: result: yes" >&5
echo "${ECHO_T}yes" >&6
cf_save_CFLAGS="$CFLAGS"
else
- echo "$as_me:6212: result: no" >&5
+ echo "$as_me:6682: result: no" >&5
echo "${ECHO_T}no" >&6
fi
done
@@ -6220,21 +6690,21 @@ echo "${ECHO_T}no" >&6
test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}"
test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}"
- test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
+ test "$cf_cv_rm_so_locs" = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
test -n "$verbose" && echo " CC_SHARED_OPTS: $CC_SHARED_OPTS" 1>&6
-echo "${as_me:-configure}:6227: testing CC_SHARED_OPTS: $CC_SHARED_OPTS ..." 1>&5
+echo "${as_me:-configure}:6697: testing CC_SHARED_OPTS: $CC_SHARED_OPTS ..." 1>&5
test -n "$verbose" && echo " MK_SHARED_LIB: $MK_SHARED_LIB" 1>&6
-echo "${as_me:-configure}:6231: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
+echo "${as_me:-configure}:6701: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
-for model in $cf_list_models; do
- case $model in
+for model in $cf_list_models ; do
+ case "$model" in
(libtool)
-echo "$as_me:6237: checking for additional libtool options" >&5
+echo "$as_me:6707: checking for additional libtool options" >&5
echo $ECHO_N "checking for additional libtool options... $ECHO_C" >&6
# Check whether --with-libtool-opts or --without-libtool-opts was given.
@@ -6244,7 +6714,7 @@ if test "${with_libtool_opts+set}" = set; then
else
with_libtool_opts=no
fi;
-echo "$as_me:6247: result: $with_libtool_opts" >&5
+echo "$as_me:6717: result: $with_libtool_opts" >&5
echo "${ECHO_T}$with_libtool_opts" >&6
case .$with_libtool_opts in
@@ -6255,7 +6725,7 @@ case .$with_libtool_opts in
;;
esac
-echo "$as_me:6258: checking if exported-symbols file should be used" >&5
+echo "$as_me:6728: checking if exported-symbols file should be used" >&5
echo $ECHO_N "checking if exported-symbols file should be used... $ECHO_C" >&6
# Check whether --with-export-syms or --without-export-syms was given.
@@ -6270,7 +6740,7 @@ then
with_export_syms='${top_srcdir}/package/${PACKAGE}.sym'
fi
-echo "$as_me:6273: result: $with_export_syms" >&5
+echo "$as_me:6743: result: $with_export_syms" >&5
echo "${ECHO_T}$with_export_syms" >&6
if test "x$with_export_syms" != xno
then
@@ -6281,56 +6751,56 @@ fi
;;
(shared)
if test "$CC_SHARED_OPTS" = "unknown"; then
- { { echo "$as_me:6284: error: Shared libraries are not supported in this version" >&5
+ { { echo "$as_me:6754: error: Shared libraries are not supported in this version" >&5
echo "$as_me: error: Shared libraries are not supported in this version" >&2;}
{ (exit 1); exit 1; }; }
fi
# workaround for inept transition to PIE vs PIC...
- echo "$as_me:6289: checking if current CFLAGS link properly" >&5
+ echo "$as_me:6759: checking if current CFLAGS link properly" >&5
echo $ECHO_N "checking if current CFLAGS link properly... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 6292 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6762 "configure"
#include "confdefs.h"
#include <stdio.h>
int
main (void)
{
-printf("Hello work\n");
+printf("Hello work\\n");
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6304: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6774: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6307: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6310: \"$ac_try\"") >&5
+ echo "$as_me:6777: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6780: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6313: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6783: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cflags_work=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cflags_work=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:6322: result: $cf_cflags_work" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:6792: result: $cf_cflags_work" >&5
echo "${ECHO_T}$cf_cflags_work" >&6
if test "$cf_cflags_work" = no
then
test -n "$verbose" && echo " try to work around by appending shared-options" 1>&6
-echo "${as_me:-configure}:6328: testing try to work around by appending shared-options ..." 1>&5
+echo "${as_me:-configure}:6798: testing try to work around by appending shared-options ..." 1>&5
CFLAGS="$CFLAGS $CC_SHARED_OPTS"
fi
-echo "$as_me:6333: checking if versioned-symbols file should be used" >&5
+echo "$as_me:6803: checking if versioned-symbols file should be used" >&5
echo $ECHO_N "checking if versioned-symbols file should be used... $ECHO_C" >&6
# Check whether --with-versioned-syms or --without-versioned-syms was given.
@@ -6348,18 +6818,18 @@ case "x$with_versioned_syms" in
(xno)
;;
(x/*)
- test -f "$with_versioned_syms" || { { echo "$as_me:6351: error: expected a filename: $with_versioned_syms" >&5
+ test -f "$with_versioned_syms" || { { echo "$as_me:6821: error: expected a filename: $with_versioned_syms" >&5
echo "$as_me: error: expected a filename: $with_versioned_syms" >&2;}
{ (exit 1); exit 1; }; }
;;
(*)
- test -f "$with_versioned_syms" || { { echo "$as_me:6356: error: expected a filename: $with_versioned_syms" >&5
+ test -f "$with_versioned_syms" || { { echo "$as_me:6826: error: expected a filename: $with_versioned_syms" >&5
echo "$as_me: error: expected a filename: $with_versioned_syms" >&2;}
{ (exit 1); exit 1; }; }
with_versioned_syms=`pwd`/"$with_versioned_syms"
;;
esac
-echo "$as_me:6362: result: $with_versioned_syms" >&5
+echo "$as_me:6832: result: $with_versioned_syms" >&5
echo "${ECHO_T}$with_versioned_syms" >&6
RESULTING_SYMS=
@@ -6375,7 +6845,7 @@ then
MK_SHARED_LIB=`echo "$MK_SHARED_LIB" | sed -e "s%-Wl,%\\${VERSIONED_SYMS} -Wl,%"`
test -n "$verbose" && echo " MK_SHARED_LIB: $MK_SHARED_LIB" 1>&6
-echo "${as_me:-configure}:6378: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
+echo "${as_me:-configure}:6848: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
;;
(*-dy\ *)
@@ -6383,11 +6853,11 @@ echo "${as_me:-configure}:6378: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
MK_SHARED_LIB=`echo "$MK_SHARED_LIB" | sed -e "s%-dy%\\${VERSIONED_SYMS} -dy%"`
test -n "$verbose" && echo " MK_SHARED_LIB: $MK_SHARED_LIB" 1>&6
-echo "${as_me:-configure}:6386: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
+echo "${as_me:-configure}:6856: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
;;
(*)
- { echo "$as_me:6390: WARNING: this system does not support versioned-symbols" >&5
+ { echo "$as_me:6860: WARNING: this system does not support versioned-symbols" >&5
echo "$as_me: WARNING: this system does not support versioned-symbols" >&2;}
;;
esac
@@ -6399,7 +6869,7 @@ echo "$as_me: WARNING: this system does not support versioned-symbols" >&2;}
# symbols.
if test "x$VERSIONED_SYMS" != "x"
then
- echo "$as_me:6402: checking if wildcards can be used to selectively omit symbols" >&5
+ echo "$as_me:6872: checking if wildcards can be used to selectively omit symbols" >&5
echo $ECHO_N "checking if wildcards can be used to selectively omit symbols... $ECHO_C" >&6
WILDCARD_SYMS=no
@@ -6436,7 +6906,7 @@ local:
} submodule_1.0;
EOF
cat >conftest.$ac_ext <<EOF
-#line 6439 "configure"
+#line 6909 "configure"
int _ismissing(void) { return 1; }
int _localf1(void) { return 1; }
int _localf2(void) { return 2; }
@@ -6464,10 +6934,10 @@ EOF
if make -f conftest.mk 2>&5 >/dev/null
then
# test for missing symbol in either Data or Text section
- cf_missing=`nm -P conftest.so 2>&5 |fgrep _ismissing | egrep '[ ][DT][ ]'`
+ cf_missing="`nm -P conftest.so 2>&5 |${FGREP-fgrep} _ismissing | ${EGREP-egrep} '[ ][DT][ ]'`"
test -n "$cf_missing" && WILDCARD_SYMS=yes
fi
- echo "$as_me:6470: result: $WILDCARD_SYMS" >&5
+ echo "$as_me:6940: result: $WILDCARD_SYMS" >&5
echo "${ECHO_T}$WILDCARD_SYMS" >&6
rm -f conftest.*
fi
@@ -6480,7 +6950,7 @@ done
### Checks for special libraries, must be done up-front.
SHLIB_LIST=""
-echo "$as_me:6483: checking if you want to link with the GPM mouse library" >&5
+echo "$as_me:6953: checking if you want to link with the GPM mouse library" >&5
echo $ECHO_N "checking if you want to link with the GPM mouse library... $ECHO_C" >&6
# Check whether --with-gpm or --without-gpm was given.
@@ -6490,28 +6960,28 @@ if test "${with_gpm+set}" = set; then
else
with_gpm=maybe
fi;
-echo "$as_me:6493: result: $with_gpm" >&5
+echo "$as_me:6963: result: $with_gpm" >&5
echo "${ECHO_T}$with_gpm" >&6
if test "$with_gpm" != no ; then
- echo "$as_me:6497: checking for gpm.h" >&5
+ echo "$as_me:6967: checking for gpm.h" >&5
echo $ECHO_N "checking for gpm.h... $ECHO_C" >&6
if test "${ac_cv_header_gpm_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 6503 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6973 "configure"
#include "confdefs.h"
#include <gpm.h>
_ACEOF
-if { (eval echo "$as_me:6507: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:6977: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:6513: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:6983: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -6524,14 +6994,14 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_gpm_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_gpm_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:6532: result: $ac_cv_header_gpm_h" >&5
+echo "$as_me:7002: result: $ac_cv_header_gpm_h" >&5
echo "${ECHO_T}$ac_cv_header_gpm_h" >&6
-if test $ac_cv_header_gpm_h = yes; then
+if test "$ac_cv_header_gpm_h" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_GPM_H 1
@@ -6540,7 +7010,7 @@ EOF
if test "$with_gpm" != yes && test "$with_gpm" != maybe ; then
test -n "$verbose" && echo " assuming we really have GPM library" 1>&6
-echo "${as_me:-configure}:6543: testing assuming we really have GPM library ..." 1>&5
+echo "${as_me:-configure}:7013: testing assuming we really have GPM library ..." 1>&5
cat >>confdefs.h <<\EOF
#define HAVE_LIBGPM 1
@@ -6548,15 +7018,15 @@ EOF
with_gpm=yes
else
- echo "$as_me:6551: checking for Gpm_Open in -lgpm" >&5
+ echo "$as_me:7021: checking for Gpm_Open in -lgpm" >&5
echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6559 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7029 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -6574,39 +7044,39 @@ Gpm_Open ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6578: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7048: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6581: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6584: \"$ac_try\"") >&5
+ echo "$as_me:7051: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7054: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6587: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7057: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_Gpm_Open=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_Gpm_Open=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:6598: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "$as_me:7068: result: $ac_cv_lib_gpm_Gpm_Open" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
-if test $ac_cv_lib_gpm_Gpm_Open = yes; then
+if test "$ac_cv_lib_gpm_Gpm_Open" = yes; then
with_gpm=yes
else
if test "$with_gpm" = maybe; then
- { echo "$as_me:6605: WARNING: Cannot link with GPM library" >&5
+ { echo "$as_me:7075: WARNING: Cannot link with GPM library" >&5
echo "$as_me: WARNING: Cannot link with GPM library" >&2;}
with_gpm=no
else
- { { echo "$as_me:6609: error: Cannot link with GPM library" >&5
+ { { echo "$as_me:7079: error: Cannot link with GPM library" >&5
echo "$as_me: error: Cannot link with GPM library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -6617,7 +7087,7 @@ fi
else
- test "$with_gpm" != maybe && { echo "$as_me:6620: WARNING: Cannot find GPM header" >&5
+ test "$with_gpm" != maybe && { echo "$as_me:7090: WARNING: Cannot find GPM header" >&5
echo "$as_me: WARNING: Cannot find GPM header" >&2;}
with_gpm=no
@@ -6626,7 +7096,7 @@ fi
fi
if test "$with_gpm" != no ; then
- echo "$as_me:6629: checking if you want to load GPM dynamically" >&5
+ echo "$as_me:7099: checking if you want to load GPM dynamically" >&5
echo $ECHO_N "checking if you want to load GPM dynamically... $ECHO_C" >&6
# Check whether --with-dlsym or --without-dlsym was given.
@@ -6636,18 +7106,18 @@ if test "${with_dlsym+set}" = set; then
else
with_dlsym=yes
fi;
- echo "$as_me:6639: result: $with_dlsym" >&5
+ echo "$as_me:7109: result: $with_dlsym" >&5
echo "${ECHO_T}$with_dlsym" >&6
if test "x$with_dlsym" = xyes ; then
cf_have_dlsym=no
-echo "$as_me:6644: checking for dlsym" >&5
+echo "$as_me:7114: checking for dlsym" >&5
echo $ECHO_N "checking for dlsym... $ECHO_C" >&6
if test "${ac_cv_func_dlsym+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 6650 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7120 "configure"
#include "confdefs.h"
#define dlsym autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -6677,42 +7147,42 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6681: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7151: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6684: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6687: \"$ac_try\"") >&5
+ echo "$as_me:7154: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7157: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6690: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7160: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_dlsym=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_dlsym=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:6700: result: $ac_cv_func_dlsym" >&5
+echo "$as_me:7170: result: $ac_cv_func_dlsym" >&5
echo "${ECHO_T}$ac_cv_func_dlsym" >&6
-if test $ac_cv_func_dlsym = yes; then
+if test "$ac_cv_func_dlsym" = yes; then
cf_have_dlsym=yes
else
cf_have_libdl=no
-echo "$as_me:6707: checking for dlsym in -ldl" >&5
+echo "$as_me:7177: checking for dlsym in -ldl" >&5
echo $ECHO_N "checking for dlsym in -ldl... $ECHO_C" >&6
if test "${ac_cv_lib_dl_dlsym+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldl $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6715 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7185 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -6730,30 +7200,30 @@ dlsym ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6734: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7204: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6737: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6740: \"$ac_try\"") >&5
+ echo "$as_me:7207: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7210: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6743: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7213: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dl_dlsym=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dl_dlsym=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:6754: result: $ac_cv_lib_dl_dlsym" >&5
+echo "$as_me:7224: result: $ac_cv_lib_dl_dlsym" >&5
echo "${ECHO_T}$ac_cv_lib_dl_dlsym" >&6
-if test $ac_cv_lib_dl_dlsym = yes; then
+if test "$ac_cv_lib_dl_dlsym" = yes; then
cf_have_dlsym=yes
cf_have_libdl=yes
@@ -6780,10 +7250,10 @@ done
LIBS="$cf_add_libs"
}
- echo "$as_me:6783: checking whether able to link to dl*() functions" >&5
+ echo "$as_me:7253: checking whether able to link to dl*() functions" >&5
echo $ECHO_N "checking whether able to link to dl*() functions... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 6786 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7256 "configure"
#include "confdefs.h"
#include <dlfcn.h>
int
@@ -6800,18 +7270,18 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6804: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7274: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6807: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6810: \"$ac_try\"") >&5
+ echo "$as_me:7277: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7280: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6813: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7283: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cat >>confdefs.h <<\EOF
#define HAVE_LIBDL 1
@@ -6819,17 +7289,17 @@ EOF
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
- { { echo "$as_me:6824: error: Cannot link test program for libdl" >&5
+ { { echo "$as_me:7294: error: Cannot link test program for libdl" >&5
echo "$as_me: error: Cannot link test program for libdl" >&2;}
{ (exit 1); exit 1; }; }
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:6829: result: ok" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:7299: result: ok" >&5
echo "${ECHO_T}ok" >&6
else
- { { echo "$as_me:6832: error: Cannot find dlsym function" >&5
+ { { echo "$as_me:7302: error: Cannot find dlsym function" >&5
echo "$as_me: error: Cannot find dlsym function" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -6837,12 +7307,12 @@ fi
if test "x$with_gpm" != xyes ; then
test -n "$verbose" && echo " assuming soname for gpm is $with_gpm" 1>&6
-echo "${as_me:-configure}:6840: testing assuming soname for gpm is $with_gpm ..." 1>&5
+echo "${as_me:-configure}:7310: testing assuming soname for gpm is $with_gpm ..." 1>&5
cf_cv_gpm_soname="$with_gpm"
else
-echo "$as_me:6845: checking for soname of gpm library" >&5
+echo "$as_me:7315: checking for soname of gpm library" >&5
echo $ECHO_N "checking for soname of gpm library... $ECHO_C" >&6
if test "${cf_cv_gpm_soname+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6876,26 +7346,26 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- if { (eval echo "$as_me:6879: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:7349: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6882: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
- if { (eval echo "$as_me:6884: \"$ac_link\"") >&5
+ echo "$as_me:7352: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
+ if { (eval echo "$as_me:7354: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6887: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
- cf_cv_gpm_soname=`ldd conftest$ac_exeext 2>/dev/null | sed -e 's,^.*/,,' -e 's, .*$,,' | fgrep libgpm.`
+ echo "$as_me:7357: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
+ cf_cv_gpm_soname="`ldd \"conftest$ac_exeext\" 2>/dev/null | sed -e 's,^.*/,,' -e 's, .*$,,' | ${FGREP-fgrep} libgpm.`"
test -z "$cf_cv_gpm_soname" && cf_cv_gpm_soname=unknown
fi
fi
-rm -rf conftest*
+rm -rf ./conftest*
LIBS="$cf_save_LIBS"
fi
fi
-echo "$as_me:6898: result: $cf_cv_gpm_soname" >&5
+echo "$as_me:7368: result: $cf_cv_gpm_soname" >&5
echo "${ECHO_T}$cf_cv_gpm_soname" >&6
fi
@@ -6963,15 +7433,15 @@ cat >>confdefs.h <<\EOF
#define HAVE_LIBGPM 1
EOF
-echo "$as_me:6966: checking for Gpm_Wgetch in -lgpm" >&5
+echo "$as_me:7436: checking for Gpm_Wgetch in -lgpm" >&5
echo $ECHO_N "checking for Gpm_Wgetch in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_Gpm_Wgetch+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6974 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7444 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -6989,32 +7459,32 @@ Gpm_Wgetch ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6993: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7463: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6996: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6999: \"$ac_try\"") >&5
+ echo "$as_me:7466: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7469: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7002: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7472: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_Gpm_Wgetch=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_Gpm_Wgetch=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:7013: result: $ac_cv_lib_gpm_Gpm_Wgetch" >&5
+echo "$as_me:7483: result: $ac_cv_lib_gpm_Gpm_Wgetch" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Wgetch" >&6
-if test $ac_cv_lib_gpm_Gpm_Wgetch = yes; then
+if test "$ac_cv_lib_gpm_Gpm_Wgetch" = yes; then
-echo "$as_me:7017: checking if GPM is weakly bound to curses library" >&5
+echo "$as_me:7487: checking if GPM is weakly bound to curses library" >&5
echo $ECHO_N "checking if GPM is weakly bound to curses library... $ECHO_C" >&6
if test "${cf_cv_check_gpm_wgetch+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7038,31 +7508,31 @@ CF_EOF
# to rely on the static library, noting that some packagers may not
# include it.
LIBS="-static -lgpm -dynamic $LIBS"
- if { (eval echo "$as_me:7041: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:7511: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7044: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
- if { (eval echo "$as_me:7046: \"$ac_link\"") >&5
+ echo "$as_me:7514: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
+ if { (eval echo "$as_me:7516: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7049: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
- cf_cv_check_gpm_wgetch=`nm conftest$ac_exeext | egrep '\<wgetch\>' | egrep '\<[vVwW]\>'`
+ echo "$as_me:7519: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
+ cf_cv_check_gpm_wgetch="`nm \"conftest$ac_exeext\" | ${EGREP-egrep} '\<wgetch\>' | ${EGREP-egrep} '\<[vVwW]\>'`"
test -n "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=yes
test -z "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=no
fi
fi
- rm -rf conftest*
+ rm -rf ./conftest*
LIBS="$cf_save_LIBS"
fi
fi
-echo "$as_me:7061: result: $cf_cv_check_gpm_wgetch" >&5
+echo "$as_me:7531: result: $cf_cv_check_gpm_wgetch" >&5
echo "${ECHO_T}$cf_cv_check_gpm_wgetch" >&6
if test "$cf_cv_check_gpm_wgetch" != yes ; then
- { echo "$as_me:7065: WARNING: GPM library is already linked with curses - read the FAQ" >&5
+ { echo "$as_me:7535: WARNING: GPM library is already linked with curses - read the FAQ" >&5
echo "$as_me: WARNING: GPM library is already linked with curses - read the FAQ" >&2;}
fi
@@ -7070,7 +7540,7 @@ fi
fi
-echo "$as_me:7073: checking if you want to use PCRE2 for regular-expressions" >&5
+echo "$as_me:7543: checking if you want to use PCRE2 for regular-expressions" >&5
echo $ECHO_N "checking if you want to use PCRE2 for regular-expressions... $ECHO_C" >&6
# Check whether --with-pcre2 or --without-pcre2 was given.
@@ -7079,25 +7549,28 @@ if test "${with_pcre2+set}" = set; then
fi;
test -z "$with_pcre2" && with_pcre2=no
-echo "$as_me:7082: result: $with_pcre2" >&5
+echo "$as_me:7552: result: $with_pcre2" >&5
echo "${ECHO_T}$with_pcre2" >&6
if test "x$with_pcre2" != xno ; then
+ cf_with_pcre2_ok=no
+ for cf_with_pcre2 in libpcre2 libpcre2-posix libpcre
+ do
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists libpcre2; then
- test -n "$verbose" && echo " found package libpcre2" 1>&6
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "$cf_with_pcre2"; then
+ test -n "$verbose" && echo " found package $cf_with_pcre2" 1>&6
-echo "${as_me:-configure}:7090: testing found package libpcre2 ..." 1>&5
+echo "${as_me:-configure}:7563: testing found package $cf_with_pcre2 ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags libpcre2 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs libpcre2 2>/dev/null`"
- test -n "$verbose" && echo " package libpcre2 CFLAGS: $cf_pkgconfig_incs" 1>&6
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "$cf_with_pcre2" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "$cf_with_pcre2" 2>/dev/null`"
+ test -n "$verbose" && echo " package $cf_with_pcre2 CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:7096: testing package libpcre2 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:7569: testing package $cf_with_pcre2 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
- test -n "$verbose" && echo " package libpcre2 LIBS: $cf_pkgconfig_libs" 1>&6
+ test -n "$verbose" && echo " package $cf_with_pcre2 LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:7100: testing package libpcre2 LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:7573: testing package $cf_with_pcre2 LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -7106,19 +7579,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -7137,7 +7610,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -7167,7 +7640,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -7213,170 +7686,36 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- :
+ cf_with_pcre2_ok=yes; break
else
cf_pkgconfig_incs=
cf_pkgconfig_libs=
-
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists libpcre; then
- test -n "$verbose" && echo " found package libpcre" 1>&6
-
-echo "${as_me:-configure}:7224: testing found package libpcre ..." 1>&5
-
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags libpcre 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs libpcre 2>/dev/null`"
- test -n "$verbose" && echo " package libpcre CFLAGS: $cf_pkgconfig_incs" 1>&6
-
-echo "${as_me:-configure}:7230: testing package libpcre CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-
- test -n "$verbose" && echo " package libpcre LIBS: $cf_pkgconfig_libs" 1>&6
-
-echo "${as_me:-configure}:7234: testing package libpcre LIBS: $cf_pkgconfig_libs ..." 1>&5
-
-cf_fix_cppflags=no
-cf_new_cflags=
-cf_new_cppflags=
-cf_new_extra_cppflags=
-
-for cf_add_cflags in $cf_pkgconfig_incs
-do
-case $cf_fix_cppflags in
-(no)
- case $cf_add_cflags in
- (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
- (-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
- if test $cf_fix_cppflags = yes ; then
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- continue
- elif test "${cf_tst_cflags}" = "\"'" ; then
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- continue
- fi
- ;;
- esac
- case "$CPPFLAGS" in
- (*$cf_add_cflags)
- ;;
- (*)
- case $cf_add_cflags in
- (-D*)
- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-
-CPPFLAGS=`echo "$CPPFLAGS" | \
- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
-
- ;;
- esac
-
- test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
- cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
-
- ;;
- esac
- ;;
- (*)
-
- test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
- cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
-
- ;;
- esac
- ;;
-(yes)
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-esac
-done
-
-if test -n "$cf_new_cflags" ; then
-
- test -n "$CFLAGS" && CFLAGS="$CFLAGS "
- CFLAGS="${CFLAGS}$cf_new_cflags"
-
-fi
-
-if test -n "$cf_new_cppflags" ; then
-
- test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
- CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
-
-fi
-
-if test -n "$cf_new_extra_cppflags" ; then
-
- test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
- EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
-
+ :
fi
-cf_add_libs="$LIBS"
-# reverse order
-cf_add_0lib=
-for cf_add_1lib in $cf_pkgconfig_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
-# filter duplicates
-for cf_add_1lib in $cf_add_0lib; do
- for cf_add_2lib in $cf_add_libs; do
- if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
- cf_add_1lib=
- break
- fi
done
- test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
-done
-LIBS="$cf_add_libs"
-
- :
-else
- cf_pkgconfig_incs=
- cf_pkgconfig_libs=
-
- { { echo "$as_me:7355: error: Cannot find PCRE2 library" >&5
+ cf_with_pcre2_ok=yes || { { echo "$as_me:7697: error: Cannot find PCRE2 library" >&5
echo "$as_me: error: Cannot find PCRE2 library" >&2;}
{ (exit 1); exit 1; }; }
-fi
-
-fi
cat >>confdefs.h <<\EOF
#define HAVE_LIB_PCRE2 1
EOF
# if pkgconfig gave no results, look for the libraries directly
- case $LIBS in
+ case "$LIBS" in
(*pcre2-posix*|*pcreposix*)
;;
(*)
- echo "$as_me:7371: checking for regcomp in -lpcre2-posix" >&5
+ echo "$as_me:7710: checking for regcomp in -lpcre2-posix" >&5
echo $ECHO_N "checking for regcomp in -lpcre2-posix... $ECHO_C" >&6
if test "${ac_cv_lib_pcre2_posix_regcomp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lpcre2-posix $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 7379 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7718 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -7394,30 +7733,30 @@ regcomp ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7398: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7737: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7401: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7404: \"$ac_try\"") >&5
+ echo "$as_me:7740: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7743: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7407: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7746: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_pcre2_posix_regcomp=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_pcre2_posix_regcomp=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:7418: result: $ac_cv_lib_pcre2_posix_regcomp" >&5
+echo "$as_me:7757: result: $ac_cv_lib_pcre2_posix_regcomp" >&5
echo "${ECHO_T}$ac_cv_lib_pcre2_posix_regcomp" >&6
-if test $ac_cv_lib_pcre2_posix_regcomp = yes; then
+if test "$ac_cv_lib_pcre2_posix_regcomp" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -7436,15 +7775,15 @@ done
LIBS="$cf_add_libs"
else
- echo "$as_me:7439: checking for regcomp in -lpcreposix" >&5
+ echo "$as_me:7778: checking for regcomp in -lpcreposix" >&5
echo $ECHO_N "checking for regcomp in -lpcreposix... $ECHO_C" >&6
if test "${ac_cv_lib_pcreposix_regcomp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lpcreposix $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 7447 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7786 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -7462,30 +7801,30 @@ regcomp ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7466: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7805: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7469: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7472: \"$ac_try\"") >&5
+ echo "$as_me:7808: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7811: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7475: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7814: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_pcreposix_regcomp=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_pcreposix_regcomp=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:7486: result: $ac_cv_lib_pcreposix_regcomp" >&5
+echo "$as_me:7825: result: $ac_cv_lib_pcreposix_regcomp" >&5
echo "${ECHO_T}$ac_cv_lib_pcreposix_regcomp" >&6
-if test $ac_cv_lib_pcreposix_regcomp = yes; then
+if test "$ac_cv_lib_pcreposix_regcomp" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -7504,7 +7843,7 @@ done
LIBS="$cf_add_libs"
else
- { { echo "$as_me:7507: error: Cannot find PCRE2 POSIX library" >&5
+ { { echo "$as_me:7846: error: Cannot find PCRE2 POSIX library" >&5
echo "$as_me: error: Cannot find PCRE2 POSIX library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -7516,27 +7855,27 @@ fi
# either way, check for the library header files
-for ac_header in pcre2-posix.h pcreposix.h
+for ac_header in pcre2posix.h pcreposix.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:7522: checking for $ac_header" >&5
+echo "$as_me:7861: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 7528 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7867 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:7532: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:7871: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:7538: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:7877: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -7549,14 +7888,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:7557: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:7896: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -7564,11 +7903,80 @@ EOF
fi
done
+for ac_func in PCRE2regcomp
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:7909: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7915 "configure"
+#include "confdefs.h"
+#define $ac_func autoconf_temporary
+#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
+#undef $ac_func
+
+#ifdef __cplusplus
+extern "C"
+#endif
+
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func (void);
+
+int
+main (void)
+{
+
+/* The GNU C library defines stubs for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+#error found stub for $ac_func
+#endif
+
+ return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7946: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:7949: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7952: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:7955: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+eval "$as_ac_var=no"
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+fi
+echo "$as_me:7965: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
+ cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
fi
# not everyone has "test -c"
if test -c /dev/sysmouse 2>/dev/null ; then
-echo "$as_me:7571: checking if you want to use sysmouse" >&5
+echo "$as_me:7979: checking if you want to use sysmouse" >&5
echo $ECHO_N "checking if you want to use sysmouse... $ECHO_C" >&6
# Check whether --with-sysmouse or --without-sysmouse was given.
@@ -7579,8 +7987,8 @@ else
cf_with_sysmouse=maybe
fi;
if test "$cf_with_sysmouse" != no ; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 7583 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7991 "configure"
#include "confdefs.h"
#include <osreldate.h>
@@ -7602,27 +8010,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7606: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8014: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7609: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7612: \"$ac_try\"") >&5
+ echo "$as_me:8017: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8020: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7615: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8023: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_with_sysmouse=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_with_sysmouse=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:7625: result: $cf_with_sysmouse" >&5
+echo "$as_me:8033: result: $cf_with_sysmouse" >&5
echo "${ECHO_T}$cf_with_sysmouse" >&6
test "$cf_with_sysmouse" = yes &&
cat >>confdefs.h <<\EOF
@@ -7632,7 +8040,7 @@ EOF
fi
# pretend that ncurses==ncursesw==ncursest
-echo "$as_me:7635: checking if you want to disable library suffixes" >&5
+echo "$as_me:8043: checking if you want to disable library suffixes" >&5
echo $ECHO_N "checking if you want to disable library suffixes... $ECHO_C" >&6
# Check whether --enable-lib-suffixes or --disable-lib-suffixes was given.
@@ -7649,13 +8057,13 @@ else
disable_lib_suffixes=no
fi;
-echo "$as_me:7652: result: $disable_lib_suffixes" >&5
+echo "$as_me:8060: result: $disable_lib_suffixes" >&5
echo "${ECHO_T}$disable_lib_suffixes" >&6
### If we're building with rpath, try to link non-standard libs that way too.
if test "$DFT_LWR_MODEL" = "shared" && test "x$cf_cv_enable_rpath" != xno; then
-echo "$as_me:7658: checking if rpath-hack should be disabled" >&5
+echo "$as_me:8066: checking if rpath-hack should be disabled" >&5
echo $ECHO_N "checking if rpath-hack should be disabled... $ECHO_C" >&6
# Check whether --enable-rpath-hack or --disable-rpath-hack was given.
@@ -7663,30 +8071,32 @@ if test "${enable_rpath_hack+set}" = set; then
enableval="$enable_rpath_hack"
test "$enableval" != no && enableval=yes
if test "$enableval" != "yes" ; then
- cf_disable_rpath_hack=yes
+ enable_rpath_hack=no
else
- cf_disable_rpath_hack=no
+ enable_rpath_hack=yes
fi
else
enableval=yes
- cf_disable_rpath_hack=no
+ enable_rpath_hack=yes
fi;
-echo "$as_me:7675: result: $cf_disable_rpath_hack" >&5
+if test "x$enable_rpath_hack" = xno; then cf_disable_rpath_hack=yes; else cf_disable_rpath_hack=no; fi
+echo "$as_me:8084: result: $cf_disable_rpath_hack" >&5
echo "${ECHO_T}$cf_disable_rpath_hack" >&6
-if test "$cf_disable_rpath_hack" = no ; then
-echo "$as_me:7679: checking for updated LDFLAGS" >&5
+if test "$enable_rpath_hack" = yes ; then
+
+echo "$as_me:8089: checking for updated LDFLAGS" >&5
echo $ECHO_N "checking for updated LDFLAGS... $ECHO_C" >&6
if test -n "$LD_RPATH_OPT" ; then
- echo "$as_me:7682: result: maybe" >&5
+ echo "$as_me:8092: result: maybe" >&5
echo "${ECHO_T}maybe" >&6
for ac_prog in ldd
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:7689: checking for $ac_word" >&5
+echo "$as_me:8099: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_cf_ldd_prog+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7701,7 +8111,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_cf_ldd_prog="$ac_prog"
-echo "$as_me:7704: found $ac_dir/$ac_word" >&5
+echo "$as_me:8114: found $ac_dir/$ac_word" >&5
break
done
@@ -7709,10 +8119,10 @@ fi
fi
cf_ldd_prog=$ac_cv_prog_cf_ldd_prog
if test -n "$cf_ldd_prog"; then
- echo "$as_me:7712: result: $cf_ldd_prog" >&5
+ echo "$as_me:8122: result: $cf_ldd_prog" >&5
echo "${ECHO_T}$cf_ldd_prog" >&6
else
- echo "$as_me:7715: result: no" >&5
+ echo "$as_me:8125: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -7725,8 +8135,8 @@ test -n "$cf_ldd_prog" || cf_ldd_prog="no"
then
cf_rpath_oops=
-cat >conftest.$ac_ext <<_ACEOF
-#line 7729 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 8139 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -7737,25 +8147,25 @@ printf("Hello");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7741: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:8151: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7744: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7747: \"$ac_try\"") >&5
+ echo "$as_me:8154: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:8157: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7750: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort | uniq`
+ echo "$as_me:8160: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_rpath_oops=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
+ cf_rpath_list=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort | uniq`
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
# If we passed the link-test, but get a "not found" on a given library,
# this could be due to inept reconfiguration of gcc to make it only
@@ -7771,11 +8181,11 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
/usr/pkg \
/opt/sfw
do
- if test -f $cf_rpath_dir/lib/$cf_rpath_src
+ if test -f "$cf_rpath_dir/lib/$cf_rpath_src"
then
test -n "$verbose" && echo " ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src" 1>&6
-echo "${as_me:-configure}:7778: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
+echo "${as_me:-configure}:8188: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
break
@@ -7787,16 +8197,16 @@ echo "${as_me:-configure}:7778: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS
test -n "$verbose" && echo " ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-echo "${as_me:-configure}:7790: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:8200: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
test -n "$verbose" && echo " ...checking LDFLAGS $LDFLAGS" 1>&6
-echo "${as_me:-configure}:7794: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:8204: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
cf_rpath_dst=
for cf_rpath_src in $LDFLAGS
do
- case $cf_rpath_src in
+ case "$cf_rpath_src" in
(-L*)
# check if this refers to a directory which we will ignore
@@ -7828,7 +8238,7 @@ do
then
test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-echo "${as_me:-configure}:7831: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
+echo "${as_me:-configure}:8241: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
fi
@@ -7841,16 +8251,16 @@ LDFLAGS=$cf_rpath_dst
test -n "$verbose" && echo " ...checked LDFLAGS $LDFLAGS" 1>&6
-echo "${as_me:-configure}:7844: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:8254: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
test -n "$verbose" && echo " ...checking LIBS $LIBS" 1>&6
-echo "${as_me:-configure}:7848: testing ...checking LIBS $LIBS ..." 1>&5
+echo "${as_me:-configure}:8258: testing ...checking LIBS $LIBS ..." 1>&5
cf_rpath_dst=
for cf_rpath_src in $LIBS
do
- case $cf_rpath_src in
+ case "$cf_rpath_src" in
(-L*)
# check if this refers to a directory which we will ignore
@@ -7882,7 +8292,7 @@ do
then
test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-echo "${as_me:-configure}:7885: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
+echo "${as_me:-configure}:8295: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
fi
@@ -7895,14 +8305,14 @@ LIBS=$cf_rpath_dst
test -n "$verbose" && echo " ...checked LIBS $LIBS" 1>&6
-echo "${as_me:-configure}:7898: testing ...checked LIBS $LIBS ..." 1>&5
+echo "${as_me:-configure}:8308: testing ...checked LIBS $LIBS ..." 1>&5
test -n "$verbose" && echo " ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-echo "${as_me:-configure}:7902: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:8312: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
else
- echo "$as_me:7905: result: no" >&5
+ echo "$as_me:8315: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -7910,10 +8320,38 @@ fi
fi
+### Depending on the system, someone may use rpath to build ncurses but not
+# want users of the package to rely upon that feature. Give those people an
+# option to suppress that detail from EXTRA_LDFLAGS.
+EXTRA_PKG_LDFLAGS="$LDFLAGS $EXTRA_LDFLAGS"
+if test -n "$EXTRA_PKG_LDFLAGS"
+then
+ echo "$as_me:8329: checking if you want to disable extra LDFLAGS for package-scripts" >&5
+echo $ECHO_N "checking if you want to disable extra LDFLAGS for package-scripts... $ECHO_C" >&6
+
+# Check whether --enable-pkg-ldflags or --disable-pkg-ldflags was given.
+if test "${enable_pkg_ldflags+set}" = set; then
+ enableval="$enable_pkg_ldflags"
+ test "$enableval" != no && enableval=yes
+ if test "$enableval" != "yes" ; then
+ disable_pkg_ldflags=yes
+ else
+ disable_pkg_ldflags=no
+ fi
+else
+ enableval=yes
+ disable_pkg_ldflags=no
+
+fi;
+ echo "$as_me:8346: result: $disable_pkg_ldflags" >&5
+echo "${ECHO_T}$disable_pkg_ldflags" >&6
+ test "$disable_pkg_ldflags" = yes && EXTRA_PKG_LDFLAGS=
+fi
+
###############################################################################
### use option --with-extra-suffix to append suffix to headers and libraries
-echo "$as_me:7916: checking if you wish to append extra suffix to header/library paths" >&5
+echo "$as_me:8354: checking if you wish to append extra suffix to header/library paths" >&5
echo $ECHO_N "checking if you wish to append extra suffix to header/library paths... $ECHO_C" >&6
EXTRA_SUFFIX=
@@ -7921,7 +8359,7 @@ EXTRA_SUFFIX=
if test "${with_extra_suffix+set}" = set; then
withval="$with_extra_suffix"
case x$withval in
- (no)
+ (xno)
;;
(xyes|x)
EXTRA_SUFFIX=$cf_cv_abi_version
@@ -7932,11 +8370,11 @@ if test "${with_extra_suffix+set}" = set; then
esac
fi;
-echo "$as_me:7935: result: $EXTRA_SUFFIX" >&5
+echo "$as_me:8373: result: $EXTRA_SUFFIX" >&5
echo "${ECHO_T}$EXTRA_SUFFIX" >&6
### use option --disable-overwrite to leave out the link to -lcurses
-echo "$as_me:7939: checking if you wish to install ncurses overwriting curses" >&5
+echo "$as_me:8377: checking if you wish to install ncurses overwriting curses" >&5
echo $ECHO_N "checking if you wish to install ncurses overwriting curses... $ECHO_C" >&6
# Check whether --enable-overwrite or --disable-overwrite was given.
@@ -7946,10 +8384,10 @@ if test "${enable_overwrite+set}" = set; then
else
if test "$prefix" = "/usr" ; then with_overwrite=yes; else with_overwrite=no; fi
fi;
-echo "$as_me:7949: result: $with_overwrite" >&5
+echo "$as_me:8387: result: $with_overwrite" >&5
echo "${ECHO_T}$with_overwrite" >&6
-echo "$as_me:7952: checking if external terminfo-database is used" >&5
+echo "$as_me:8390: checking if external terminfo-database is used" >&5
echo $ECHO_N "checking if external terminfo-database is used... $ECHO_C" >&6
# Check whether --enable-database or --disable-database was given.
@@ -7959,10 +8397,10 @@ if test "${enable_database+set}" = set; then
else
use_database=yes
fi;
-echo "$as_me:7962: result: $use_database" >&5
+echo "$as_me:8400: result: $use_database" >&5
echo "${ECHO_T}$use_database" >&6
-case $host_os in
+case "$host_os" in
(os2*)
TERMINFO_SRC='${top_srcdir}/misc/emx.src'
;;
@@ -7975,7 +8413,7 @@ NCURSES_USE_DATABASE=0
if test "$use_database" != no ; then
NCURSES_USE_DATABASE=1
- echo "$as_me:7978: checking which terminfo source-file will be installed" >&5
+ echo "$as_me:8416: checking which terminfo source-file will be installed" >&5
echo $ECHO_N "checking which terminfo source-file will be installed... $ECHO_C" >&6
# Check whether --with-database or --without-database was given.
@@ -7983,10 +8421,10 @@ if test "${with_database+set}" = set; then
withval="$with_database"
TERMINFO_SRC=$withval
fi;
- echo "$as_me:7986: result: $TERMINFO_SRC" >&5
+ echo "$as_me:8424: result: $TERMINFO_SRC" >&5
echo "${ECHO_T}$TERMINFO_SRC" >&6
- echo "$as_me:7989: checking whether to use hashed database instead of directory/tree" >&5
+ echo "$as_me:8427: checking whether to use hashed database instead of directory/tree" >&5
echo $ECHO_N "checking whether to use hashed database instead of directory/tree... $ECHO_C" >&6
# Check whether --with-hashed-db or --without-hashed-db was given.
@@ -7996,13 +8434,13 @@ if test "${with_hashed_db+set}" = set; then
else
with_hashed_db=no
fi;
- echo "$as_me:7999: result: $with_hashed_db" >&5
+ echo "$as_me:8437: result: $with_hashed_db" >&5
echo "${ECHO_T}$with_hashed_db" >&6
else
with_hashed_db=no
fi
-echo "$as_me:8005: checking for list of fallback descriptions" >&5
+echo "$as_me:8443: checking for list of fallback descriptions" >&5
echo $ECHO_N "checking for list of fallback descriptions... $ECHO_C" >&6
# Check whether --with-fallbacks or --without-fallbacks was given.
@@ -8012,7 +8450,7 @@ if test "${with_fallbacks+set}" = set; then
else
with_fallback=
fi;
-echo "$as_me:8015: result: $with_fallback" >&5
+echo "$as_me:8453: result: $with_fallback" >&5
echo "${ECHO_T}$with_fallback" >&6
case ".$with_fallback" in
@@ -8020,7 +8458,7 @@ case ".$with_fallback" in
FALLBACK_LIST=
;;
(.yes)
- { echo "$as_me:8023: WARNING: expected a list of terminal descriptions" >&5
+ { echo "$as_me:8461: WARNING: expected a list of terminal descriptions" >&5
echo "$as_me: WARNING: expected a list of terminal descriptions" >&2;}
;;
(*)
@@ -8028,24 +8466,167 @@ echo "$as_me: WARNING: expected a list of terminal descriptions" >&2;}
;;
esac
-USE_FALLBACKS=
-test -z "$FALLBACK_LIST" && USE_FALLBACKS="#"
-
# The fallback feature in ncurses relies upon tic/infocmp outside the build
# tree for generating the terminal descriptions that will be compiled into the
# library. If your toolchain is old, it may not handle current terminal
# databases. Use configure-options to point to the tools which will be used,
# rather than the first ones found on the $PATH.
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}tic", so it can be a program name with args.
+set dummy ${ac_tool_prefix}tic; ac_word=$2
+echo "$as_me:8477: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_TIC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$TIC"; then
+ ac_cv_prog_TIC="$TIC" # Let the user override the test.
+else
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_TIC="${ac_tool_prefix}tic"
+echo "$as_me:8492: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+TIC=$ac_cv_prog_TIC
+if test -n "$TIC"; then
+ echo "$as_me:8500: result: $TIC" >&5
+echo "${ECHO_T}$TIC" >&6
+else
+ echo "$as_me:8503: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_TIC"; then
+ ac_ct_TIC=$TIC
+ # Extract the first word of "tic", so it can be a program name with args.
+set dummy tic; ac_word=$2
+echo "$as_me:8512: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_TIC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_TIC"; then
+ ac_cv_prog_ac_ct_TIC="$ac_ct_TIC" # Let the user override the test.
+else
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_TIC="tic"
+echo "$as_me:8527: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_TIC=$ac_cv_prog_ac_ct_TIC
+if test -n "$ac_ct_TIC"; then
+ echo "$as_me:8535: result: $ac_ct_TIC" >&5
+echo "${ECHO_T}$ac_ct_TIC" >&6
+else
+ echo "$as_me:8538: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ TIC=$ac_ct_TIC
+else
+ TIC="$ac_cv_prog_TIC"
+fi
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}infocmp", so it can be a program name with args.
+set dummy ${ac_tool_prefix}infocmp; ac_word=$2
+echo "$as_me:8550: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_INFOCMP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$INFOCMP"; then
+ ac_cv_prog_INFOCMP="$INFOCMP" # Let the user override the test.
+else
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_INFOCMP="${ac_tool_prefix}infocmp"
+echo "$as_me:8565: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+INFOCMP=$ac_cv_prog_INFOCMP
+if test -n "$INFOCMP"; then
+ echo "$as_me:8573: result: $INFOCMP" >&5
+echo "${ECHO_T}$INFOCMP" >&6
+else
+ echo "$as_me:8576: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_INFOCMP"; then
+ ac_ct_INFOCMP=$INFOCMP
+ # Extract the first word of "infocmp", so it can be a program name with args.
+set dummy infocmp; ac_word=$2
+echo "$as_me:8585: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_INFOCMP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_INFOCMP"; then
+ ac_cv_prog_ac_ct_INFOCMP="$ac_ct_INFOCMP" # Let the user override the test.
+else
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_INFOCMP="infocmp"
+echo "$as_me:8600: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_INFOCMP=$ac_cv_prog_ac_ct_INFOCMP
+if test -n "$ac_ct_INFOCMP"; then
+ echo "$as_me:8608: result: $ac_ct_INFOCMP" >&5
+echo "${ECHO_T}$ac_ct_INFOCMP" >&6
+else
+ echo "$as_me:8611: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ INFOCMP=$ac_ct_INFOCMP
+else
+ INFOCMP="$ac_cv_prog_INFOCMP"
+fi
+
if test -n "$FALLBACK_LIST"
then
# Check whether --with-tic-path or --without-tic-path was given.
if test "${with_tic_path+set}" = set; then
withval="$with_tic_path"
- echo "$as_me:8045: checking for tic program for fallbacks" >&5
+ echo "$as_me:8626: checking for tic program for fallbacks" >&5
echo $ECHO_N "checking for tic program for fallbacks... $ECHO_C" >&6
TIC=$withval
- echo "$as_me:8048: result: $TIC" >&5
+ echo "$as_me:8629: result: $TIC" >&5
echo "${ECHO_T}$TIC" >&6
if test "x$prefix" != xNONE; then
@@ -8061,19 +8642,19 @@ case ".$TIC" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval TIC="$TIC"
case ".$TIC" in
(.NONE/*)
- TIC=`echo $TIC | sed -e s%NONE%$cf_path_syntax%`
+ TIC=`echo "$TIC" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- TIC=`echo $TIC | sed -e s%NONE%$cf_path_syntax%`
+ TIC=`echo "$TIC" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:8076: error: expected a pathname, not \"$TIC\"" >&5
+ { { echo "$as_me:8657: error: expected a pathname, not \"$TIC\"" >&5
echo "$as_me: error: expected a pathname, not \"$TIC\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -8081,12 +8662,12 @@ esac
else
-test -z "$TIC" && TIC=tic
+test -z "$TIC" && TIC="tic"
for ac_prog in $TIC tic
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:8089: checking for $ac_word" >&5
+echo "$as_me:8670: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_TIC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8103,7 +8684,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_TIC="$ac_dir/$ac_word"
- echo "$as_me:8106: found $ac_dir/$ac_word" >&5
+ echo "$as_me:8687: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -8114,10 +8695,10 @@ fi
TIC=$ac_cv_path_TIC
if test -n "$TIC"; then
- echo "$as_me:8117: result: $TIC" >&5
+ echo "$as_me:8698: result: $TIC" >&5
echo "${ECHO_T}$TIC" >&6
else
- echo "$as_me:8120: result: no" >&5
+ echo "$as_me:8701: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -8146,16 +8727,16 @@ case ".$cf_temp" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval cf_temp="$cf_temp"
case ".$cf_temp" in
(.NONE/*)
- cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+ cf_temp=`echo "$cf_temp" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+ cf_temp=`echo "$cf_temp" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
break
@@ -8164,7 +8745,7 @@ esac
cf_path_prog="$cf_temp"
else
- cf_path_prog="`basename $cf_temp`"
+ cf_path_prog="`basename "$cf_temp"`"
fi
elif test -z "$cf_path_args" ; then
cf_path_args="$cf_temp"
@@ -8176,7 +8757,7 @@ IFS="$cf_save_ifs"
if test -n "$cf_path_prog" ; then
-echo "${as_me:-configure}:8179: testing defining path for ${cf_path_prog} ..." 1>&5
+echo "${as_me:-configure}:8760: testing defining path for ${cf_path_prog} ..." 1>&5
cat >>confdefs.h <<EOF
#define TIC_PATH "$cf_path_prog"
@@ -8191,7 +8772,7 @@ fi
if test -z "$TIC"
then
- { echo "$as_me:8194: WARNING: no tic program found for fallbacks" >&5
+ { echo "$as_me:8775: WARNING: no tic program found for fallbacks" >&5
echo "$as_me: WARNING: no tic program found for fallbacks" >&2;}
fi
@@ -8200,10 +8781,10 @@ fi;
# Check whether --with-infocmp-path or --without-infocmp-path was given.
if test "${with_infocmp_path+set}" = set; then
withval="$with_infocmp_path"
- echo "$as_me:8203: checking for infocmp program for fallbacks" >&5
+ echo "$as_me:8784: checking for infocmp program for fallbacks" >&5
echo $ECHO_N "checking for infocmp program for fallbacks... $ECHO_C" >&6
INFOCMP=$withval
- echo "$as_me:8206: result: $INFOCMP" >&5
+ echo "$as_me:8787: result: $INFOCMP" >&5
echo "${ECHO_T}$INFOCMP" >&6
if test "x$prefix" != xNONE; then
@@ -8219,19 +8800,19 @@ case ".$INFOCMP" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval INFOCMP="$INFOCMP"
case ".$INFOCMP" in
(.NONE/*)
- INFOCMP=`echo $INFOCMP | sed -e s%NONE%$cf_path_syntax%`
+ INFOCMP=`echo "$INFOCMP" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- INFOCMP=`echo $INFOCMP | sed -e s%NONE%$cf_path_syntax%`
+ INFOCMP=`echo "$INFOCMP" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:8234: error: expected a pathname, not \"$INFOCMP\"" >&5
+ { { echo "$as_me:8815: error: expected a pathname, not \"$INFOCMP\"" >&5
echo "$as_me: error: expected a pathname, not \"$INFOCMP\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -8239,12 +8820,12 @@ esac
else
-test -z "$INFOCMP" && INFOCMP=infocmp
+test -z "$INFOCMP" && INFOCMP="infocmp"
for ac_prog in $INFOCMP infocmp
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:8247: checking for $ac_word" >&5
+echo "$as_me:8828: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_INFOCMP+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8261,7 +8842,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_INFOCMP="$ac_dir/$ac_word"
- echo "$as_me:8264: found $ac_dir/$ac_word" >&5
+ echo "$as_me:8845: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -8272,10 +8853,10 @@ fi
INFOCMP=$ac_cv_path_INFOCMP
if test -n "$INFOCMP"; then
- echo "$as_me:8275: result: $INFOCMP" >&5
+ echo "$as_me:8856: result: $INFOCMP" >&5
echo "${ECHO_T}$INFOCMP" >&6
else
- echo "$as_me:8278: result: no" >&5
+ echo "$as_me:8859: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -8304,16 +8885,16 @@ case ".$cf_temp" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval cf_temp="$cf_temp"
case ".$cf_temp" in
(.NONE/*)
- cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+ cf_temp=`echo "$cf_temp" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+ cf_temp=`echo "$cf_temp" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
break
@@ -8322,7 +8903,7 @@ esac
cf_path_prog="$cf_temp"
else
- cf_path_prog="`basename $cf_temp`"
+ cf_path_prog="`basename "$cf_temp"`"
fi
elif test -z "$cf_path_args" ; then
cf_path_args="$cf_temp"
@@ -8334,7 +8915,7 @@ IFS="$cf_save_ifs"
if test -n "$cf_path_prog" ; then
-echo "${as_me:-configure}:8337: testing defining path for ${cf_path_prog} ..." 1>&5
+echo "${as_me:-configure}:8918: testing defining path for ${cf_path_prog} ..." 1>&5
cat >>confdefs.h <<EOF
#define INFOCMP_PATH "$cf_path_prog"
@@ -8349,18 +8930,25 @@ fi
if test -z "$INFOCMP"
then
- { echo "$as_me:8352: WARNING: no infocmp program found for fallbacks" >&5
+ { echo "$as_me:8933: WARNING: no infocmp program found for fallbacks" >&5
echo "$as_me: WARNING: no infocmp program found for fallbacks" >&2;}
fi
fi;
-else
- : ${TIC:=tic}
- : ${INFOCMP:=infocmp}
+ test -z "$TIC" && FALLBACK_LIST=
+ test -z "$INFOCMP" && FALLBACK_LIST=
+ if test -z "$FALLBACK_LIST"
+ then
+ { echo "$as_me:8943: WARNING: ignoring fallback option because tic/infocmp are not available" >&5
+echo "$as_me: WARNING: ignoring fallback option because tic/infocmp are not available" >&2;}
+ fi
fi
-echo "$as_me:8363: checking if you want modern xterm or antique" >&5
+USE_FALLBACKS=
+test -z "$FALLBACK_LIST" && USE_FALLBACKS="#"
+
+echo "$as_me:8951: checking if you want modern xterm or antique" >&5
echo $ECHO_N "checking if you want modern xterm or antique... $ECHO_C" >&6
# Check whether --with-xterm-new or --without-xterm-new was given.
@@ -8370,15 +8958,15 @@ if test "${with_xterm_new+set}" = set; then
else
with_xterm_new=yes
fi;
-case $with_xterm_new in
+case "$with_xterm_new" in
(no) with_xterm_new=xterm-old;;
(*) with_xterm_new=xterm-new;;
esac
-echo "$as_me:8377: result: $with_xterm_new" >&5
+echo "$as_me:8965: result: $with_xterm_new" >&5
echo "${ECHO_T}$with_xterm_new" >&6
WHICH_XTERM=$with_xterm_new
-echo "$as_me:8381: checking if xterm backspace sends BS or DEL" >&5
+echo "$as_me:8969: checking if xterm backspace sends BS or DEL" >&5
echo $ECHO_N "checking if xterm backspace sends BS or DEL... $ECHO_C" >&6
# Check whether --with-xterm-kbs or --without-xterm-kbs was given.
@@ -8399,7 +8987,7 @@ case x$with_xterm_kbs in
with_xterm_kbs=$withval
;;
esac
-echo "$as_me:8402: result: $with_xterm_kbs" >&5
+echo "$as_me:8990: result: $with_xterm_kbs" >&5
echo "${ECHO_T}$with_xterm_kbs" >&6
XTERM_KBS=$with_xterm_kbs
@@ -8409,7 +8997,7 @@ if test "$use_database" = no ; then
MAKE_TERMINFO="#"
else
-echo "$as_me:8412: checking for list of terminfo directories" >&5
+echo "$as_me:9000: checking for list of terminfo directories" >&5
echo $ECHO_N "checking for list of terminfo directories... $ECHO_C" >&6
# Check whether --with-terminfo-dirs or --without-terminfo-dirs was given.
@@ -8437,19 +9025,19 @@ case ".$cf_src_path" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval cf_src_path="$cf_src_path"
case ".$cf_src_path" in
(.NONE/*)
- cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_src_path=`echo "$cf_src_path" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_src_path=`echo "$cf_src_path" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:8452: error: expected a pathname, not \"$cf_src_path\"" >&5
+ { { echo "$as_me:9040: error: expected a pathname, not \"$cf_src_path\"" >&5
echo "$as_me: error: expected a pathname, not \"$cf_src_path\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -8472,7 +9060,7 @@ case "x$cf_dst_eval" in
;;
esac
-echo "$as_me:8475: result: $TERMINFO_DIRS" >&5
+echo "$as_me:9063: result: $TERMINFO_DIRS" >&5
echo "${ECHO_T}$TERMINFO_DIRS" >&6
test -n "$TERMINFO_DIRS" &&
cat >>confdefs.h <<EOF
@@ -8481,13 +9069,13 @@ EOF
case "x$TERMINFO" in
x???:*)
- { echo "$as_me:8484: WARNING: ignoring non-directory/file TERMINFO value" >&5
+ { echo "$as_me:9072: WARNING: ignoring non-directory/file TERMINFO value" >&5
echo "$as_me: WARNING: ignoring non-directory/file TERMINFO value" >&2;}
unset TERMINFO
;;
esac
-echo "$as_me:8490: checking for default terminfo directory" >&5
+echo "$as_me:9078: checking for default terminfo directory" >&5
echo $ECHO_N "checking for default terminfo directory... $ECHO_C" >&6
# Check whether --with-default-terminfo-dir or --without-default-terminfo-dir was given.
@@ -8511,19 +9099,19 @@ case ".$withval" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval withval="$withval"
case ".$withval" in
(.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:8526: error: expected a pathname, not \"$withval\"" >&5
+ { { echo "$as_me:9114: error: expected a pathname, not \"$withval\"" >&5
echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -8532,7 +9120,7 @@ esac
fi
eval TERMINFO="$withval"
-echo "$as_me:8535: result: $TERMINFO" >&5
+echo "$as_me:9123: result: $TERMINFO" >&5
echo "${ECHO_T}$TERMINFO" >&6
cat >>confdefs.h <<EOF
@@ -8543,7 +9131,7 @@ fi
### use option --disable-big-core to make tic run on small machines
### We need 4Mb, check if we can allocate 50% more than that.
-echo "$as_me:8546: checking if big-core option selected" >&5
+echo "$as_me:9134: checking if big-core option selected" >&5
echo $ECHO_N "checking if big-core option selected... $ECHO_C" >&6
# Check whether --enable-big-core or --disable-big-core was given.
@@ -8554,8 +9142,8 @@ else
if test "$cross_compiling" = yes; then
with_big_core=no
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8558 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9146 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -8568,28 +9156,28 @@ int main() {
${cf_cv_main_return:-return}(s == 0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:8572: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:9160: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8575: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:8577: \"$ac_try\"") >&5
+ echo "$as_me:9163: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:9165: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8580: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9168: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
with_big_core=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
with_big_core=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi;
-echo "$as_me:8592: result: $with_big_core" >&5
+echo "$as_me:9180: result: $with_big_core" >&5
echo "${ECHO_T}$with_big_core" >&6
test "x$with_big_core" = "xyes" &&
cat >>confdefs.h <<\EOF
@@ -8599,7 +9187,7 @@ EOF
### ISO C only guarantees 512-char strings, we have tables which load faster
### when constructed using "big" strings. More than the C compiler, the awk
### program is a limit on most vendor UNIX systems. Check that we can build.
-echo "$as_me:8602: checking if big-strings option selected" >&5
+echo "$as_me:9190: checking if big-strings option selected" >&5
echo $ECHO_N "checking if big-strings option selected... $ECHO_C" >&6
# Check whether --enable-big-strings or --disable-big-strings was given.
@@ -8623,14 +9211,14 @@ else
esac
fi;
-echo "$as_me:8626: result: $with_big_strings" >&5
+echo "$as_me:9214: result: $with_big_strings" >&5
echo "${ECHO_T}$with_big_strings" >&6
USE_BIG_STRINGS=0
test "x$with_big_strings" = "xyes" && USE_BIG_STRINGS=1
### use option --enable-termcap to compile in the termcap fallback support
-echo "$as_me:8633: checking if you want termcap-fallback support" >&5
+echo "$as_me:9221: checking if you want termcap-fallback support" >&5
echo $ECHO_N "checking if you want termcap-fallback support... $ECHO_C" >&6
# Check whether --enable-termcap or --disable-termcap was given.
@@ -8640,14 +9228,14 @@ if test "${enable_termcap+set}" = set; then
else
with_termcap=no
fi;
-echo "$as_me:8643: result: $with_termcap" >&5
+echo "$as_me:9231: result: $with_termcap" >&5
echo "${ECHO_T}$with_termcap" >&6
NCURSES_USE_TERMCAP=0
if test "x$with_termcap" != "xyes" ; then
if test "$use_database" = no ; then
if test -z "$with_fallback" ; then
- { { echo "$as_me:8650: error: You have disabled the database w/o specifying fallbacks" >&5
+ { { echo "$as_me:9238: error: You have disabled the database w/o specifying fallbacks" >&5
echo "$as_me: error: You have disabled the database w/o specifying fallbacks" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -8660,13 +9248,13 @@ EOF
else
if test "$with_ticlib" != no ; then
- { { echo "$as_me:8663: error: Options --with-ticlib and --enable-termcap cannot be combined" >&5
+ { { echo "$as_me:9251: error: Options --with-ticlib and --enable-termcap cannot be combined" >&5
echo "$as_me: error: Options --with-ticlib and --enable-termcap cannot be combined" >&2;}
{ (exit 1); exit 1; }; }
fi
NCURSES_USE_TERMCAP=1
- echo "$as_me:8669: checking for list of termcap files" >&5
+ echo "$as_me:9257: checking for list of termcap files" >&5
echo $ECHO_N "checking for list of termcap files... $ECHO_C" >&6
# Check whether --with-termpath or --without-termpath was given.
@@ -8694,19 +9282,19 @@ case ".$cf_src_path" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval cf_src_path="$cf_src_path"
case ".$cf_src_path" in
(.NONE/*)
- cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_src_path=`echo "$cf_src_path" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_src_path=`echo "$cf_src_path" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:8709: error: expected a pathname, not \"$cf_src_path\"" >&5
+ { { echo "$as_me:9297: error: expected a pathname, not \"$cf_src_path\"" >&5
echo "$as_me: error: expected a pathname, not \"$cf_src_path\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -8729,7 +9317,7 @@ case "x$cf_dst_eval" in
;;
esac
- echo "$as_me:8732: result: $TERMPATH" >&5
+ echo "$as_me:9320: result: $TERMPATH" >&5
echo "${ECHO_T}$TERMPATH" >&6
test -n "$TERMPATH" &&
cat >>confdefs.h <<EOF
@@ -8737,7 +9325,7 @@ cat >>confdefs.h <<EOF
EOF
### use option --enable-getcap to use a hacked getcap for reading termcaps
- echo "$as_me:8740: checking if fast termcap-loader is needed" >&5
+ echo "$as_me:9328: checking if fast termcap-loader is needed" >&5
echo $ECHO_N "checking if fast termcap-loader is needed... $ECHO_C" >&6
# Check whether --enable-getcap or --disable-getcap was given.
@@ -8747,14 +9335,14 @@ if test "${enable_getcap+set}" = set; then
else
with_getcap=no
fi;
- echo "$as_me:8750: result: $with_getcap" >&5
+ echo "$as_me:9338: result: $with_getcap" >&5
echo "${ECHO_T}$with_getcap" >&6
test "x$with_getcap" = "xyes" &&
cat >>confdefs.h <<\EOF
#define USE_GETCAP 1
EOF
- echo "$as_me:8757: checking if translated termcaps will be cached in ~/.terminfo" >&5
+ echo "$as_me:9345: checking if translated termcaps will be cached in ~/.terminfo" >&5
echo $ECHO_N "checking if translated termcaps will be cached in ~/.terminfo... $ECHO_C" >&6
# Check whether --enable-getcap-cache or --disable-getcap-cache was given.
@@ -8764,7 +9352,7 @@ if test "${enable_getcap_cache+set}" = set; then
else
with_getcap_cache=no
fi;
- echo "$as_me:8767: result: $with_getcap_cache" >&5
+ echo "$as_me:9355: result: $with_getcap_cache" >&5
echo "${ECHO_T}$with_getcap_cache" >&6
test "x$with_getcap_cache" = "xyes" &&
cat >>confdefs.h <<\EOF
@@ -8774,7 +9362,7 @@ EOF
fi
### Use option --disable-home-terminfo to completely remove ~/.terminfo
-echo "$as_me:8777: checking if ~/.terminfo is wanted" >&5
+echo "$as_me:9365: checking if ~/.terminfo is wanted" >&5
echo $ECHO_N "checking if ~/.terminfo is wanted... $ECHO_C" >&6
# Check whether --enable-home-terminfo or --disable-home-terminfo was given.
@@ -8784,15 +9372,15 @@ if test "${enable_home_terminfo+set}" = set; then
else
with_home_terminfo=yes
fi;
-echo "$as_me:8787: result: $with_home_terminfo" >&5
+echo "$as_me:9375: result: $with_home_terminfo" >&5
echo "${ECHO_T}$with_home_terminfo" >&6
test "x$with_home_terminfo" = "xyes" &&
cat >>confdefs.h <<\EOF
#define USE_HOME_TERMINFO 1
EOF
-echo "$as_me:8794: checking if you want to use restricted environment when running as root" >&5
-echo $ECHO_N "checking if you want to use restricted environment when running as root... $ECHO_C" >&6
+echo "$as_me:9382: checking if you want to permit root to use ncurses environment variables" >&5
+echo $ECHO_N "checking if you want to permit root to use ncurses environment variables... $ECHO_C" >&6
# Check whether --enable-root-environ or --disable-root-environ was given.
if test "${enable_root_environ+set}" = set; then
@@ -8801,13 +9389,30 @@ if test "${enable_root_environ+set}" = set; then
else
with_root_environ=yes
fi;
-echo "$as_me:8804: result: $with_root_environ" >&5
+echo "$as_me:9392: result: $with_root_environ" >&5
echo "${ECHO_T}$with_root_environ" >&6
test "x$with_root_environ" = xyes &&
cat >>confdefs.h <<\EOF
#define USE_ROOT_ENVIRON 1
EOF
+echo "$as_me:9399: checking if you want to permit setuid programs to access all files" >&5
+echo $ECHO_N "checking if you want to permit setuid programs to access all files... $ECHO_C" >&6
+
+# Check whether --enable-root-environ or --disable-root-environ was given.
+if test "${enable_root_environ+set}" = set; then
+ enableval="$enable_root_environ"
+ with_root_access=$enableval
+else
+ with_root_access=yes
+fi;
+echo "$as_me:9409: result: $with_root_access" >&5
+echo "${ECHO_T}$with_root_access" >&6
+test "x$with_root_access" = xyes &&
+cat >>confdefs.h <<\EOF
+#define USE_ROOT_ACCESS 1
+EOF
+
### Use option --enable-symlinks to make tic use symlinks, not hard links
### to reduce storage requirements for the terminfo database.
@@ -8816,24 +9421,24 @@ unistd.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:8819: checking for $ac_header" >&5
+echo "$as_me:9424: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8825 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9430 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:8829: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:9434: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:8835: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:9440: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -8846,14 +9451,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:8854: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:9459: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -8866,13 +9471,13 @@ for ac_func in \
unlink
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:8869: checking for $ac_func" >&5
+echo "$as_me:9474: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8875 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9480 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -8902,29 +9507,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8906: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9511: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8909: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8912: \"$ac_try\"") >&5
+ echo "$as_me:9514: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9517: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8915: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9520: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:8925: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:9530: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -8939,13 +9544,13 @@ for ac_func in \
symlink
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:8942: checking for $ac_func" >&5
+echo "$as_me:9547: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8948 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9553 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -8975,29 +9580,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8979: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9584: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8982: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8985: \"$ac_try\"") >&5
+ echo "$as_me:9587: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9590: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8988: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9593: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:8998: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:9603: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -9006,7 +9611,7 @@ fi
done
else
- echo "$as_me:9009: checking if link/symlink functions work" >&5
+ echo "$as_me:9614: checking if link/symlink functions work" >&5
echo $ECHO_N "checking if link/symlink functions work... $ECHO_C" >&6
if test "${cf_cv_link_funcs+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9018,10 +9623,11 @@ else
eval 'ac_cv_func_'$cf_func'=error'
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 9022 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9627 "configure"
#include "confdefs.h"
+#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#ifdef HAVE_UNISTD_H
@@ -9030,52 +9636,59 @@ else
int main(void)
{
int fail = 0;
- char *src = "config.log";
+ char *src = "conftest.tmp";
char *dst = "conftest.chk";
- struct stat src_sb;
- struct stat dst_sb;
-
- stat(src, &src_sb);
- fail = ($cf_func("config.log", "conftest.chk") < 0)
- || (stat(dst, &dst_sb) < 0)
- || (dst_sb.st_mtime != src_sb.st_mtime);
+ struct stat src_sb, dst_sb;
+ FILE *fp = fopen(src, "w");
+ if (fp == 0) { fail = 3; } else {
+ fclose(fp); stat(src, &src_sb);
+ if ($cf_func(src, dst) < 0) {
+ fail = 1;
+ } else if (stat(dst, &dst_sb) < 0) {
+ fail = 2;
+ } else {
+ long diff = (dst_sb.st_mtime - src_sb.st_mtime);
+ if (diff < 0) diff = -diff;
+ if (diff > 2) fail = 3;
+ }
+ }
#ifdef HAVE_UNLINK
- unlink(dst);
+ unlink(dst); unlink(src);
#else
- remove(dst);
+ remove(dst); remove(src);
#endif
${cf_cv_main_return:-return} (fail);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:9052: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:9665: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9055: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:9057: \"$ac_try\"") >&5
+ echo "$as_me:9668: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:9670: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9060: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9673: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
eval 'ac_cv_func_'$cf_func'=yes'
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval 'ac_cv_func_'$cf_func'=no'
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
done
test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no
fi
-echo "$as_me:9078: result: $cf_cv_link_funcs" >&5
+echo "$as_me:9691: result: $cf_cv_link_funcs" >&5
echo "${ECHO_T}$cf_cv_link_funcs" >&6
test "$ac_cv_func_link" = yes &&
cat >>confdefs.h <<\EOF
@@ -9095,7 +9708,7 @@ with_symlinks=no
# soft links (symbolic links) are useful for some systems where hard links do
# not work, or to make it simpler to copy terminfo trees around.
if test "x$ac_cv_func_symlink" = xyes ; then
- echo "$as_me:9098: checking if tic should use symbolic links" >&5
+ echo "$as_me:9711: checking if tic should use symbolic links" >&5
echo $ECHO_N "checking if tic should use symbolic links... $ECHO_C" >&6
# Check whether --enable-symlinks or --disable-symlinks was given.
@@ -9105,21 +9718,21 @@ if test "${enable_symlinks+set}" = set; then
else
with_symlinks=no
fi;
- echo "$as_me:9108: result: $with_symlinks" >&5
+ echo "$as_me:9721: result: $with_symlinks" >&5
echo "${ECHO_T}$with_symlinks" >&6
fi
# If we have hard links and did not choose to use soft links instead, there is
# no reason to make this choice optional - use the hard links.
if test "$with_symlinks" = no ; then
- echo "$as_me:9115: checking if tic should use hard links" >&5
+ echo "$as_me:9728: checking if tic should use hard links" >&5
echo $ECHO_N "checking if tic should use hard links... $ECHO_C" >&6
if test "x$ac_cv_func_link" = xyes ; then
with_links=yes
else
with_links=no
fi
- echo "$as_me:9122: result: $with_links" >&5
+ echo "$as_me:9735: result: $with_links" >&5
echo "${ECHO_T}$with_links" >&6
fi
@@ -9135,7 +9748,7 @@ EOF
### use option --enable-broken-linker to force on use of broken-linker support
-echo "$as_me:9138: checking if you want broken-linker support code" >&5
+echo "$as_me:9751: checking if you want broken-linker support code" >&5
echo $ECHO_N "checking if you want broken-linker support code... $ECHO_C" >&6
# Check whether --enable-broken_linker or --disable-broken_linker was given.
@@ -9145,10 +9758,10 @@ if test "${enable_broken_linker+set}" = set; then
else
with_broken_linker=no
fi;
-echo "$as_me:9148: result: $with_broken_linker" >&5
+echo "$as_me:9761: result: $with_broken_linker" >&5
echo "${ECHO_T}$with_broken_linker" >&6
-: ${BROKEN_LINKER:=0}
+: "${BROKEN_LINKER:=0}"
if test "x$with_broken_linker" = xyes ; then
cat >>confdefs.h <<\EOF
@@ -9159,7 +9772,7 @@ EOF
fi
### use option --enable-bsdpad to have tputs process BSD-style prefix padding
-echo "$as_me:9162: checking if tputs should process BSD-style prefix padding" >&5
+echo "$as_me:9775: checking if tputs should process BSD-style prefix padding" >&5
echo $ECHO_N "checking if tputs should process BSD-style prefix padding... $ECHO_C" >&6
# Check whether --enable-bsdpad or --disable-bsdpad was given.
@@ -9169,7 +9782,7 @@ if test "${enable_bsdpad+set}" = set; then
else
with_bsdpad=no
fi;
-echo "$as_me:9172: result: $with_bsdpad" >&5
+echo "$as_me:9785: result: $with_bsdpad" >&5
echo "${ECHO_T}$with_bsdpad" >&6
test "x$with_bsdpad" = xyes &&
cat >>confdefs.h <<\EOF
@@ -9188,14 +9801,14 @@ NCURSES_WINT_T=0
# Check to define _XOPEN_SOURCE "automatically"
CPPFLAGS_before_XOPEN="$CPPFLAGS"
-echo "$as_me:9191: checking if the POSIX test-macros are already defined" >&5
+echo "$as_me:9804: checking if the POSIX test-macros are already defined" >&5
echo $ECHO_N "checking if the POSIX test-macros are already defined... $ECHO_C" >&6
if test "${cf_cv_posix_visible+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 9198 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 9811 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -9213,28 +9826,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9217: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9830: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9220: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9223: \"$ac_try\"") >&5
+ echo "$as_me:9833: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9836: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9226: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9839: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_visible=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_visible=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:9237: result: $cf_cv_posix_visible" >&5
+echo "$as_me:9850: result: $cf_cv_posix_visible" >&5
echo "${ECHO_T}$cf_cv_posix_visible" >&6
if test "$cf_cv_posix_visible" = no; then
@@ -9243,7 +9856,7 @@ cf_XOPEN_SOURCE=600
cf_POSIX_C_SOURCE=199506L
cf_xopen_source=
-case $host_os in
+case "$host_os" in
(aix[4-7]*)
cf_xopen_source="-D_ALL_SOURCE"
;;
@@ -9279,14 +9892,14 @@ case $host_os in
cf_gnu_xopen_source=$cf_XOPEN_SOURCE
-echo "$as_me:9282: checking if this is the GNU C library" >&5
+echo "$as_me:9895: checking if this is the GNU C library" >&5
echo $ECHO_N "checking if this is the GNU C library... $ECHO_C" >&6
if test "${cf_cv_gnu_library+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 9289 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 9902 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9304,28 +9917,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9308: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9921: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9311: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9314: \"$ac_try\"") >&5
+ echo "$as_me:9924: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9927: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9317: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9930: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_library=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_library=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:9328: result: $cf_cv_gnu_library" >&5
+echo "$as_me:9941: result: $cf_cv_gnu_library" >&5
echo "${ECHO_T}$cf_cv_gnu_library" >&6
if test x$cf_cv_gnu_library = xyes; then
@@ -9333,7 +9946,7 @@ if test x$cf_cv_gnu_library = xyes; then
# With glibc 2.19 (13 years after this check was begun), _DEFAULT_SOURCE
# was changed to help a little. newlib incorporated the change about 4
# years later.
- echo "$as_me:9336: checking if _DEFAULT_SOURCE can be used as a basis" >&5
+ echo "$as_me:9949: checking if _DEFAULT_SOURCE can be used as a basis" >&5
echo $ECHO_N "checking if _DEFAULT_SOURCE can be used as a basis... $ECHO_C" >&6
if test "${cf_cv_gnu_library_219+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9344,8 +9957,8 @@ else
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_DEFAULT_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9348 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9961 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9363,34 +9976,34 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9367: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9980: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9370: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9373: \"$ac_try\"") >&5
+ echo "$as_me:9983: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9986: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9376: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9989: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_library_219=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_library_219=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-echo "$as_me:9388: result: $cf_cv_gnu_library_219" >&5
+echo "$as_me:10001: result: $cf_cv_gnu_library_219" >&5
echo "${ECHO_T}$cf_cv_gnu_library_219" >&6
if test "x$cf_cv_gnu_library_219" = xyes; then
cf_save="$CPPFLAGS"
- echo "$as_me:9393: checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE" >&5
+ echo "$as_me:10006: checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE" >&5
echo $ECHO_N "checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE... $ECHO_C" >&6
if test "${cf_cv_gnu_dftsrc_219+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9403,19 +10016,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=$cf_gnu_xopen_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -9434,7 +10047,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -9464,7 +10077,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -9494,8 +10107,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 9498 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10111 "configure"
#include "confdefs.h"
#include <limits.h>
@@ -9514,28 +10127,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9518: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10131: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9521: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9524: \"$ac_try\"") >&5
+ echo "$as_me:10134: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10137: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9527: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10140: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_dftsrc_219=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_dftsrc_219=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:9538: result: $cf_cv_gnu_dftsrc_219" >&5
+echo "$as_me:10151: result: $cf_cv_gnu_dftsrc_219" >&5
echo "${ECHO_T}$cf_cv_gnu_dftsrc_219" >&6
test "x$cf_cv_gnu_dftsrc_219" = "xyes" || CPPFLAGS="$cf_save"
else
@@ -9544,14 +10157,14 @@ echo "${ECHO_T}$cf_cv_gnu_dftsrc_219" >&6
if test "x$cf_cv_gnu_dftsrc_219" != xyes; then
- echo "$as_me:9547: checking if we must define _GNU_SOURCE" >&5
+ echo "$as_me:10160: checking if we must define _GNU_SOURCE" >&5
echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6
if test "${cf_cv_gnu_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 9554 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10167 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9565,22 +10178,22 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9569: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10182: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9572: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9575: \"$ac_try\"") >&5
+ echo "$as_me:10185: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10188: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9578: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10191: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
cf_fix_cppflags=no
@@ -9590,19 +10203,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -D_GNU_SOURCE
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -9621,7 +10234,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -9651,7 +10264,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -9681,8 +10294,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 9685 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10298 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9696,37 +10309,37 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9700: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10313: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9703: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9706: \"$ac_try\"") >&5
+ echo "$as_me:10316: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10319: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9709: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10322: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_source=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:9724: result: $cf_cv_gnu_source" >&5
+echo "$as_me:10337: result: $cf_cv_gnu_source" >&5
echo "${ECHO_T}$cf_cv_gnu_source" >&6
if test "$cf_cv_gnu_source" = yes
then
- echo "$as_me:9729: checking if we should also define _DEFAULT_SOURCE" >&5
+ echo "$as_me:10342: checking if we should also define _DEFAULT_SOURCE" >&5
echo $ECHO_N "checking if we should also define _DEFAULT_SOURCE... $ECHO_C" >&6
if test "${cf_cv_default_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9735,8 +10348,8 @@ else
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_GNU_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9739 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10352 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9750,28 +10363,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9754: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10367: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9757: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9760: \"$ac_try\"") >&5
+ echo "$as_me:10370: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10373: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9763: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10376: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_default_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_default_source=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:9774: result: $cf_cv_default_source" >&5
+echo "$as_me:10387: result: $cf_cv_default_source" >&5
echo "${ECHO_T}$cf_cv_default_source" >&6
if test "$cf_cv_default_source" = yes
then
@@ -9808,16 +10421,16 @@ cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-echo "$as_me:9811: checking if we should define _POSIX_C_SOURCE" >&5
+echo "$as_me:10424: checking if we should define _POSIX_C_SOURCE" >&5
echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
if test "${cf_cv_posix_c_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-echo "${as_me:-configure}:9817: testing if the symbol is already defined go no further ..." 1>&5
+echo "${as_me:-configure}:10430: testing if the symbol is already defined go no further ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 9820 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10433 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9831,22 +10444,22 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9835: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10448: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9838: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9841: \"$ac_try\"") >&5
+ echo "$as_me:10451: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10454: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9844: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10457: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_c_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_want_posix_source=no
case .$cf_POSIX_C_SOURCE in
(.[12]??*)
@@ -9861,8 +10474,8 @@ cf_want_posix_source=no
;;
esac
if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 9865 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10478 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9876,28 +10489,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9880: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10493: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9883: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9886: \"$ac_try\"") >&5
+ echo "$as_me:10496: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10499: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9889: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10502: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "${as_me:-configure}:9900: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+echo "${as_me:-configure}:10513: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS"
@@ -9905,10 +10518,10 @@ echo "${as_me:-configure}:9900: testing ifdef from value $cf_POSIX_C_SOURCE ..."
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_cv_posix_c_source"
-echo "${as_me:-configure}:9908: testing if the second compile does not leave our definition intact error ..." 1>&5
+echo "${as_me:-configure}:10521: testing if the second compile does not leave our definition intact error ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 9911 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10524 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -9922,33 +10535,33 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9926: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10539: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9929: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9932: \"$ac_try\"") >&5
+ echo "$as_me:10542: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10545: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9935: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10548: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:9951: result: $cf_cv_posix_c_source" >&5
+echo "$as_me:10564: result: $cf_cv_posix_c_source" >&5
echo "${ECHO_T}$cf_cv_posix_c_source" >&6
if test "$cf_cv_posix_c_source" != no ; then
@@ -9962,19 +10575,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_cv_posix_c_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -9993,7 +10606,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -10023,7 +10636,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -10061,7 +10674,16 @@ fi # cf_cv_posix_visible
(netbsd*)
cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
;;
-(openbsd[4-9]*)
+(openbsd[6-9]*)
+ # OpenBSD 6.x has broken locale support, both compile-time and runtime.
+ # see https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ # Abusing the conformance level is a workaround.
+ { echo "$as_me:10681: WARNING: this system does not provide usable locale support" >&5
+echo "$as_me: WARNING: this system does not provide usable locale support" >&2;}
+ cf_xopen_source="-D_BSD_SOURCE"
+ cf_XOPEN_SOURCE=700
+ ;;
+(openbsd[4-5]*)
# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
cf_xopen_source="-D_BSD_SOURCE"
cf_XOPEN_SOURCE=600
@@ -10088,14 +10710,14 @@ fi # cf_cv_posix_visible
;;
(*)
-echo "$as_me:10091: checking if we should define _XOPEN_SOURCE" >&5
+echo "$as_me:10713: checking if we should define _XOPEN_SOURCE" >&5
echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
if test "${cf_cv_xopen_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 10098 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10720 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -10113,29 +10735,29 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10117: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10739: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10120: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10123: \"$ac_try\"") >&5
+ echo "$as_me:10742: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10745: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10126: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10748: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10138 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10760 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -10153,32 +10775,32 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10157: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10779: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10160: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10163: \"$ac_try\"") >&5
+ echo "$as_me:10782: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10785: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10166: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10788: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xopen_source=$cf_XOPEN_SOURCE
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:10181: result: $cf_cv_xopen_source" >&5
+echo "$as_me:10803: result: $cf_cv_xopen_source" >&5
echo "${ECHO_T}$cf_cv_xopen_source" >&6
if test "$cf_cv_xopen_source" != no ; then
@@ -10193,26 +10815,52 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+for cf_add_cflags in $cf_temp_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_temp_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -10231,7 +10879,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -10261,7 +10909,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -10291,6 +10939,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
fi
if test "$cf_cv_posix_visible" = no; then
@@ -10308,16 +10958,16 @@ cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-echo "$as_me:10311: checking if we should define _POSIX_C_SOURCE" >&5
+echo "$as_me:10961: checking if we should define _POSIX_C_SOURCE" >&5
echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
if test "${cf_cv_posix_c_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-echo "${as_me:-configure}:10317: testing if the symbol is already defined go no further ..." 1>&5
+echo "${as_me:-configure}:10967: testing if the symbol is already defined go no further ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 10320 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10970 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -10331,22 +10981,22 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10335: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10985: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10338: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10341: \"$ac_try\"") >&5
+ echo "$as_me:10988: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10991: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10344: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10994: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_c_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_want_posix_source=no
case .$cf_POSIX_C_SOURCE in
(.[12]??*)
@@ -10361,8 +11011,8 @@ cf_want_posix_source=no
;;
esac
if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 10365 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11015 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -10376,28 +11026,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10380: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11030: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10383: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10386: \"$ac_try\"") >&5
+ echo "$as_me:11033: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11036: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10389: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11039: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "${as_me:-configure}:10400: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+echo "${as_me:-configure}:11050: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS"
@@ -10405,10 +11055,10 @@ echo "${as_me:-configure}:10400: testing ifdef from value $cf_POSIX_C_SOURCE ...
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_cv_posix_c_source"
-echo "${as_me:-configure}:10408: testing if the second compile does not leave our definition intact error ..." 1>&5
+echo "${as_me:-configure}:11058: testing if the second compile does not leave our definition intact error ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 10411 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11061 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -10422,33 +11072,33 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10426: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11076: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10429: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10432: \"$ac_try\"") >&5
+ echo "$as_me:11079: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11082: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10435: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11085: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:10451: result: $cf_cv_posix_c_source" >&5
+echo "$as_me:11101: result: $cf_cv_posix_c_source" >&5
echo "${ECHO_T}$cf_cv_posix_c_source" >&6
if test "$cf_cv_posix_c_source" != no ; then
@@ -10462,19 +11112,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_cv_posix_c_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -10493,7 +11143,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -10523,7 +11173,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -10562,26 +11212,58 @@ esac
if test -n "$cf_xopen_source" ; then
+for cf_add_cflags in $cf_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+ test -n "$verbose" && echo " removing old option $cf_add_cflags from CFLAGS" 1>&6
+
+echo "${as_me:-configure}:11227: testing removing old option $cf_add_cflags from CFLAGS ..." 1>&5
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+ test -n "$verbose" && echo " removing old option $cf_add_cflags from CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:11239: testing removing old option $cf_add_cflags from CPPFLAGS ..." 1>&5
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -10600,7 +11282,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -10630,7 +11312,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -10642,7 +11324,7 @@ done
if test -n "$cf_new_cflags" ; then
test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-echo "${as_me:-configure}:10645: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+echo "${as_me:-configure}:11327: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
test -n "$CFLAGS" && CFLAGS="$CFLAGS "
CFLAGS="${CFLAGS}$cf_new_cflags"
@@ -10652,7 +11334,7 @@ fi
if test -n "$cf_new_cppflags" ; then
test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-echo "${as_me:-configure}:10655: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+echo "${as_me:-configure}:11337: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
@@ -10662,20 +11344,22 @@ fi
if test -n "$cf_new_extra_cppflags" ; then
test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
-echo "${as_me:-configure}:10665: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+echo "${as_me:-configure}:11347: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
fi
+done
+
fi
if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
- echo "$as_me:10675: checking if _XOPEN_SOURCE really is set" >&5
+ echo "$as_me:11359: checking if _XOPEN_SOURCE really is set" >&5
echo $ECHO_N "checking if _XOPEN_SOURCE really is set... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 10678 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11362 "configure"
#include "confdefs.h"
#include <stdlib.h>
int
@@ -10689,31 +11373,31 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10693: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11377: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10696: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10699: \"$ac_try\"") >&5
+ echo "$as_me:11380: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11383: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10702: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11386: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_XOPEN_SOURCE_set=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_XOPEN_SOURCE_set=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:10711: result: $cf_XOPEN_SOURCE_set" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:11395: result: $cf_XOPEN_SOURCE_set" >&5
echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6
- if test $cf_XOPEN_SOURCE_set = yes
+ if test "$cf_XOPEN_SOURCE_set" = yes
then
- cat >conftest.$ac_ext <<_ACEOF
-#line 10716 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11400 "configure"
#include "confdefs.h"
#include <stdlib.h>
int
@@ -10727,40 +11411,40 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10731: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11415: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10734: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10737: \"$ac_try\"") >&5
+ echo "$as_me:11418: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11421: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10740: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11424: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_XOPEN_SOURCE_set_ok=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_XOPEN_SOURCE_set_ok=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- if test $cf_XOPEN_SOURCE_set_ok = no
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ if test "$cf_XOPEN_SOURCE_set_ok" = no
then
- { echo "$as_me:10751: WARNING: _XOPEN_SOURCE is lower than requested" >&5
+ { echo "$as_me:11435: WARNING: _XOPEN_SOURCE is lower than requested" >&5
echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;}
fi
else
-echo "$as_me:10756: checking if we should define _XOPEN_SOURCE" >&5
+echo "$as_me:11440: checking if we should define _XOPEN_SOURCE" >&5
echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
if test "${cf_cv_xopen_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 10763 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11447 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -10778,29 +11462,29 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10782: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11466: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10785: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10788: \"$ac_try\"") >&5
+ echo "$as_me:11469: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11472: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10791: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11475: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10803 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11487 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -10818,32 +11502,32 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10822: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11506: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10825: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10828: \"$ac_try\"") >&5
+ echo "$as_me:11509: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11512: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10831: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11515: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xopen_source=$cf_XOPEN_SOURCE
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:10846: result: $cf_cv_xopen_source" >&5
+echo "$as_me:11530: result: $cf_cv_xopen_source" >&5
echo "${ECHO_T}$cf_cv_xopen_source" >&6
if test "$cf_cv_xopen_source" != no ; then
@@ -10858,26 +11542,52 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+for cf_add_cflags in $cf_temp_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_temp_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -10896,7 +11606,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -10926,7 +11636,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -10956,6 +11666,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
fi
fi
@@ -10966,14 +11678,14 @@ CPPFLAGS_after_XOPEN="$CPPFLAGS"
# Work around breakage on OS X
-echo "$as_me:10969: checking if SIGWINCH is defined" >&5
+echo "$as_me:11681: checking if SIGWINCH is defined" >&5
echo $ECHO_N "checking if SIGWINCH is defined... $ECHO_C" >&6
if test "${cf_cv_define_sigwinch+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 10976 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11688 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -10982,29 +11694,29 @@ else
int
main (void)
{
-int x = SIGWINCH
+int x = SIGWINCH; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10991: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11703: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10994: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10997: \"$ac_try\"") >&5
+ echo "$as_me:11706: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11709: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11000: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11712: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_define_sigwinch=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 11007 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 11719 "configure"
#include "confdefs.h"
#undef _XOPEN_SOURCE
@@ -11016,40 +11728,40 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = SIGWINCH
+int x = SIGWINCH; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11025: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11737: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11028: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11031: \"$ac_try\"") >&5
+ echo "$as_me:11740: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11743: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11034: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11746: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_define_sigwinch=maybe
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_define_sigwinch=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11048: result: $cf_cv_define_sigwinch" >&5
+echo "$as_me:11760: result: $cf_cv_define_sigwinch" >&5
echo "${ECHO_T}$cf_cv_define_sigwinch" >&6
if test "$cf_cv_define_sigwinch" = maybe ; then
-echo "$as_me:11052: checking for actual SIGWINCH definition" >&5
+echo "$as_me:11764: checking for actual SIGWINCH definition" >&5
echo $ECHO_N "checking for actual SIGWINCH definition... $ECHO_C" >&6
if test "${cf_cv_fixup_sigwinch+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -11057,10 +11769,10 @@ else
cf_cv_fixup_sigwinch=unknown
cf_sigwinch=32
-while test $cf_sigwinch != 1
+while test "$cf_sigwinch" != 1
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 11063 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11775 "configure"
#include "confdefs.h"
#undef _XOPEN_SOURCE
@@ -11076,36 +11788,36 @@ main (void)
#if SIGWINCH != $cf_sigwinch
make an error
#endif
-int x = SIGWINCH
+int x = SIGWINCH; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11085: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11797: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11088: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11091: \"$ac_try\"") >&5
+ echo "$as_me:11800: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11803: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11094: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11806: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_fixup_sigwinch=$cf_sigwinch
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
-cf_sigwinch=`expr $cf_sigwinch - 1`
+cf_sigwinch="`expr "$cf_sigwinch" - 1`"
done
fi
-echo "$as_me:11108: result: $cf_cv_fixup_sigwinch" >&5
+echo "$as_me:11820: result: $cf_cv_fixup_sigwinch" >&5
echo "${ECHO_T}$cf_cv_fixup_sigwinch" >&6
if test "$cf_cv_fixup_sigwinch" != unknown ; then
@@ -11115,47 +11827,47 @@ fi
# Checks for CODESET support.
-echo "$as_me:11118: checking for nl_langinfo and CODESET" >&5
+echo "$as_me:11830: checking for nl_langinfo and CODESET" >&5
echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6
if test "${am_cv_langinfo_codeset+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11124 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11836 "configure"
#include "confdefs.h"
#include <langinfo.h>
int
main (void)
{
-char* cs = nl_langinfo(CODESET);
+char* cs = nl_langinfo(CODESET); (void)cs
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11136: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11848: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11139: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11142: \"$ac_try\"") >&5
+ echo "$as_me:11851: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11854: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11145: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11857: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
am_cv_langinfo_codeset=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
am_cv_langinfo_codeset=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:11156: result: $am_cv_langinfo_codeset" >&5
+echo "$as_me:11868: result: $am_cv_langinfo_codeset" >&5
echo "${ECHO_T}$am_cv_langinfo_codeset" >&6
- if test $am_cv_langinfo_codeset = yes; then
+ if test "$am_cv_langinfo_codeset" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_LANGINFO_CODESET 1
@@ -11167,7 +11879,7 @@ EOF
NCURSES_OK_WCHAR_T=
NCURSES_OK_WINT_T=
-echo "$as_me:11170: checking if you want wide-character code" >&5
+echo "$as_me:11882: checking if you want wide-character code" >&5
echo $ECHO_N "checking if you want wide-character code... $ECHO_C" >&6
# Check whether --enable-widec or --disable-widec was given.
@@ -11177,7 +11889,7 @@ if test "${enable_widec+set}" = set; then
else
with_widec=no
fi;
-echo "$as_me:11180: result: $with_widec" >&5
+echo "$as_me:11892: result: $with_widec" >&5
echo "${ECHO_T}$with_widec" >&6
NCURSES_WCWIDTH_GRAPHICS=1
@@ -11201,24 +11913,24 @@ wctype.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:11204: checking for $ac_header" >&5
+echo "$as_me:11916: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11210 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11922 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:11214: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:11926: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:11220: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:11932: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -11231,14 +11943,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:11239: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:11951: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -11246,14 +11958,14 @@ EOF
fi
done
-echo "$as_me:11249: checking if wchar.h can be used as is" >&5
+echo "$as_me:11961: checking if wchar.h can be used as is" >&5
echo $ECHO_N "checking if wchar.h can be used as is... $ECHO_C" >&6
if test "${cf_cv_wchar_h_okay+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 11256 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 11968 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -11274,36 +11986,36 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11278: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11990: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11281: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11284: \"$ac_try\"") >&5
+ echo "$as_me:11993: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11996: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11287: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11999: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wchar_h_okay=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_wchar_h_okay=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:11297: result: $cf_cv_wchar_h_okay" >&5
+echo "$as_me:12009: result: $cf_cv_wchar_h_okay" >&5
echo "${ECHO_T}$cf_cv_wchar_h_okay" >&6
-if test $cf_cv_wchar_h_okay = no
+if test "$cf_cv_wchar_h_okay" = no
then
-echo "$as_me:11303: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
+echo "$as_me:12015: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 11306 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12018 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -11318,35 +12030,35 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11322: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12034: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11325: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11328: \"$ac_try\"") >&5
+ echo "$as_me:12037: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12040: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11331: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12043: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:11340: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+echo "$as_me:12052: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
if test "$cf_result" = yes ; then
CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
elif test "x" != "x" ; then
- echo "$as_me:11346: checking checking for compatible value versus " >&5
+ echo "$as_me:12058: checking checking for compatible value versus " >&5
echo $ECHO_N "checking checking for compatible value versus ... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 11349 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12061 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -11361,26 +12073,26 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11365: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12077: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11368: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11371: \"$ac_try\"") >&5
+ echo "$as_me:12080: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12083: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11374: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12086: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:11383: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:12095: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
if test "$cf_result" = no ; then
# perhaps we can override it - try...
@@ -11390,7 +12102,7 @@ fi
fi
-echo "$as_me:11393: checking if wcwidth agrees graphics are single-width" >&5
+echo "$as_me:12105: checking if wcwidth agrees graphics are single-width" >&5
echo $ECHO_N "checking if wcwidth agrees graphics are single-width... $ECHO_C" >&6
if test "${cf_cv_wcwidth_graphics+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -11460,8 +12172,8 @@ CF_EOF
if test "$cross_compiling" = yes; then
cf_cv_wcwidth_graphics=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11464 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12176 "configure"
#include "confdefs.h"
#include <locale.h>
@@ -11487,46 +12199,46 @@ main(void)
if ((fp = fopen("conftest.in", "r")) != 0) {
while (fgets(buffer, MY_LEN, fp) != 0) {
if (*buffer == '-') {
- fprintf(stderr, "\t%s", buffer);
+ fprintf(stderr, "\\t%s", buffer);
} else if (sscanf(buffer, "%x %s", &value, notes) == 2) {
++totals;
if (wcwidth(value) == 1)
++passed;
- fprintf(stderr, "%d\t%s", wcwidth(value), buffer);
+ fprintf(stderr, "%d\\t%s", wcwidth(value), buffer);
} else {
- fprintf(stderr, "?\t%s", buffer);
+ fprintf(stderr, "?\\t%s", buffer);
}
}
}
}
- fprintf(stderr, "%d/%d passed wcwidth/graphics check\n", passed, totals);
+ fprintf(stderr, "%d/%d passed wcwidth/graphics check\\n", passed, totals);
return (totals == passed) ? 0 : 1;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:11508: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:12220: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11511: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:11513: \"$ac_try\"") >&5
+ echo "$as_me:12223: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:12225: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11516: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12228: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wcwidth_graphics=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_wcwidth_graphics=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:11529: result: $cf_cv_wcwidth_graphics" >&5
+echo "$as_me:12241: result: $cf_cv_wcwidth_graphics" >&5
echo "${ECHO_T}$cf_cv_wcwidth_graphics" >&6
test "$cf_cv_wcwidth_graphics" = no && NCURSES_WCWIDTH_GRAPHICS=0
@@ -11537,13 +12249,13 @@ echo "${ECHO_T}$cf_cv_wcwidth_graphics" >&6
for ac_func in putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:11540: checking for $ac_func" >&5
+echo "$as_me:12252: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11546 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12258 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -11573,29 +12285,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11577: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12289: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11580: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11583: \"$ac_try\"") >&5
+ echo "$as_me:12292: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12295: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11586: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12298: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:11596: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:12308: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -11605,18 +12317,71 @@ done
if test "x$ac_cv_func_putwc" != xyes ; then
-echo "$as_me:11608: checking for multibyte character support" >&5
+for ac_header in wchar.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:12323: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12329 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:12333: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:12339: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ eval "$as_ac_Header=yes"
+else
+ echo "$as_me: failed program was:" >&5
+ cat "conftest.$ac_ext" >&5
+ eval "$as_ac_Header=no"
+fi
+rm -f conftest.err "conftest.$ac_ext"
+fi
+echo "$as_me:12358: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
+ cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:12368: checking for multibyte character support" >&5
echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6
if test "${cf_cv_utf8_lib+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_save_LIBS="$LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11616 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12376 "configure"
#include "confdefs.h"
#include <stdlib.h>
+#include <stdio.h>
+#ifdef HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+
int
main (void)
{
@@ -11625,34 +12390,34 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11629: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12394: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11632: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11635: \"$ac_try\"") >&5
+ echo "$as_me:12397: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12400: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11638: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12403: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_utf8_lib=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
# will be set on completion of the AC_TRY_LINK below.
cf_cv_header_path_utf8=
cf_cv_library_path_utf8=
-echo "${as_me:-configure}:11650: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:12415: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_LIBS="$LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 11655 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12420 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -11664,18 +12429,18 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11668: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12433: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11671: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11674: \"$ac_try\"") >&5
+ echo "$as_me:12436: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12439: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11677: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12442: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_find_linkage_utf8=yes
cf_cv_header_path_utf8=/usr/include
@@ -11683,12 +12448,12 @@ if { (eval echo "$as_me:11668: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
LIBS="-lutf8 $cf_save_LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 11691 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12456 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -11700,18 +12465,18 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11704: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12469: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11707: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11710: \"$ac_try\"") >&5
+ echo "$as_me:12472: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12475: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11713: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12478: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_find_linkage_utf8=yes
cf_cv_header_path_utf8=/usr/include
@@ -11720,16 +12485,16 @@ if { (eval echo "$as_me:11704: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_find_linkage_utf8=no
LIBS="$cf_save_LIBS"
test -n "$verbose" && echo " find linkage for utf8 library" 1>&6
-echo "${as_me:-configure}:11730: testing find linkage for utf8 library ..." 1>&5
+echo "${as_me:-configure}:12495: testing find linkage for utf8 library ..." 1>&5
-echo "${as_me:-configure}:11732: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:12497: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_CPPFLAGS="$CPPFLAGS"
cf_test_CPPFLAGS="$CPPFLAGS"
@@ -11741,7 +12506,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -11749,11 +12514,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/utf8 && cf_search="$cf_search $cf_header_path/include/utf8"
- test -d $cf_header_path/include/utf8/include && cf_search="$cf_search $cf_header_path/include/utf8/include"
- test -d $cf_header_path/utf8/include && cf_search="$cf_search $cf_header_path/utf8/include"
- test -d $cf_header_path/utf8/include/utf8 && cf_search="$cf_search $cf_header_path/utf8/include/utf8"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/utf8" && cf_search="$cf_search $cf_header_path/include/utf8"
+ test -d "$cf_header_path/include/utf8/include" && cf_search="$cf_search $cf_header_path/include/utf8/include"
+ test -d "$cf_header_path/utf8/include" && cf_search="$cf_search $cf_header_path/utf8/include"
+ test -d "$cf_header_path/utf8/include/utf8" && cf_search="$cf_search $cf_header_path/utf8/include/utf8"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -11770,11 +12535,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/utf8 && cf_search="$cf_search $prefix/include/utf8"
- test -d $prefix/include/utf8/include && cf_search="$cf_search $prefix/include/utf8/include"
- test -d $prefix/utf8/include && cf_search="$cf_search $prefix/utf8/include"
- test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/utf8" && cf_search="$cf_search $prefix/include/utf8"
+ test -d "$prefix/include/utf8/include" && cf_search="$cf_search $prefix/include/utf8/include"
+ test -d "$prefix/utf8/include" && cf_search="$cf_search $prefix/utf8/include"
+ test -d "$prefix/utf8/include/utf8" && cf_search="$cf_search $prefix/utf8/include/utf8"
}
for cf_subdir_prefix in \
@@ -11788,13 +12553,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/utf8 && cf_search="$cf_search $cf_subdir_prefix/include/utf8"
- test -d $cf_subdir_prefix/include/utf8/include && cf_search="$cf_search $cf_subdir_prefix/include/utf8/include"
- test -d $cf_subdir_prefix/utf8/include && cf_search="$cf_search $cf_subdir_prefix/utf8/include"
- test -d $cf_subdir_prefix/utf8/include/utf8 && cf_search="$cf_search $cf_subdir_prefix/utf8/include/utf8"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/utf8" && cf_search="$cf_search $cf_subdir_prefix/include/utf8"
+ test -d "$cf_subdir_prefix/include/utf8/include" && cf_search="$cf_search $cf_subdir_prefix/include/utf8/include"
+ test -d "$cf_subdir_prefix/utf8/include" && cf_search="$cf_search $cf_subdir_prefix/utf8/include"
+ test -d "$cf_subdir_prefix/utf8/include/utf8" && cf_search="$cf_search $cf_subdir_prefix/utf8/include/utf8"
}
done
@@ -11802,33 +12567,33 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/utf8 && cf_search="$cf_search $includedir/utf8"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/utf8" && cf_search="$cf_search $includedir/utf8"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/utf8 && cf_search="$cf_search $oldincludedir/utf8"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/utf8" && cf_search="$cf_search $oldincludedir/utf8"
}
cf_search="$cf_search $cf_header_path_list"
for cf_cv_header_path_utf8 in $cf_search
do
- if test -d $cf_cv_header_path_utf8 ; then
+ if test -d "$cf_cv_header_path_utf8" ; then
test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6
-echo "${as_me:-configure}:11823: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:12588: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
CPPFLAGS="$cf_save_CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_cv_header_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11831 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12596 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -11840,40 +12605,40 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:11844: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12609: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:11847: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:11850: \"$ac_try\"") >&5
+ echo "$as_me:12612: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12615: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11853: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12618: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6
-echo "${as_me:-configure}:11858: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:12623: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
cf_cv_find_linkage_utf8=maybe
cf_test_CPPFLAGS="$CPPFLAGS"
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
done
if test "$cf_cv_find_linkage_utf8" = maybe ; then
-echo "${as_me:-configure}:11876: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:12641: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_LIBS="$LIBS"
cf_save_LDFLAGS="$LDFLAGS"
@@ -11885,7 +12650,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -11893,11 +12658,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/utf8 && cf_search="$cf_search $cf_library_path/lib/utf8"
- test -d $cf_library_path/lib/utf8/lib && cf_search="$cf_search $cf_library_path/lib/utf8/lib"
- test -d $cf_library_path/utf8/lib && cf_search="$cf_search $cf_library_path/utf8/lib"
- test -d $cf_library_path/utf8/lib/utf8 && cf_search="$cf_search $cf_library_path/utf8/lib/utf8"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/utf8" && cf_search="$cf_search $cf_library_path/lib/utf8"
+ test -d "$cf_library_path/lib/utf8/lib" && cf_search="$cf_search $cf_library_path/lib/utf8/lib"
+ test -d "$cf_library_path/utf8/lib" && cf_search="$cf_search $cf_library_path/utf8/lib"
+ test -d "$cf_library_path/utf8/lib/utf8" && cf_search="$cf_search $cf_library_path/utf8/lib/utf8"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -11912,11 +12677,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/utf8 && cf_search="$cf_search $prefix/lib/utf8"
- test -d $prefix/lib/utf8/lib && cf_search="$cf_search $prefix/lib/utf8/lib"
- test -d $prefix/utf8/lib && cf_search="$cf_search $prefix/utf8/lib"
- test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/utf8" && cf_search="$cf_search $prefix/lib/utf8"
+ test -d "$prefix/lib/utf8/lib" && cf_search="$cf_search $prefix/lib/utf8/lib"
+ test -d "$prefix/utf8/lib" && cf_search="$cf_search $prefix/utf8/lib"
+ test -d "$prefix/utf8/lib/utf8" && cf_search="$cf_search $prefix/utf8/lib/utf8"
}
for cf_subdir_prefix in \
@@ -11930,13 +12695,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/utf8 && cf_search="$cf_search $cf_subdir_prefix/lib/utf8"
- test -d $cf_subdir_prefix/lib/utf8/lib && cf_search="$cf_search $cf_subdir_prefix/lib/utf8/lib"
- test -d $cf_subdir_prefix/utf8/lib && cf_search="$cf_search $cf_subdir_prefix/utf8/lib"
- test -d $cf_subdir_prefix/utf8/lib/utf8 && cf_search="$cf_search $cf_subdir_prefix/utf8/lib/utf8"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/utf8" && cf_search="$cf_search $cf_subdir_prefix/lib/utf8"
+ test -d "$cf_subdir_prefix/lib/utf8/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/utf8/lib"
+ test -d "$cf_subdir_prefix/utf8/lib" && cf_search="$cf_search $cf_subdir_prefix/utf8/lib"
+ test -d "$cf_subdir_prefix/utf8/lib/utf8" && cf_search="$cf_search $cf_subdir_prefix/utf8/lib/utf8"
}
done
@@ -11945,16 +12710,16 @@ cf_search="$cf_library_path_list $cf_search"
for cf_cv_library_path_utf8 in $cf_search
do
- if test -d $cf_cv_library_path_utf8 ; then
+ if test -d "$cf_cv_library_path_utf8" ; then
test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6
-echo "${as_me:-configure}:11951: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:12716: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
CPPFLAGS="$cf_test_CPPFLAGS"
LIBS="-lutf8 $cf_save_LIBS"
LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11957 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12722 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -11966,36 +12731,36 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11970: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12735: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11973: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11976: \"$ac_try\"") >&5
+ echo "$as_me:12738: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12741: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11979: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12744: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6
-echo "${as_me:-configure}:11984: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:12749: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
cf_cv_find_linkage_utf8=yes
cf_cv_library_file_utf8="-lutf8"
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
CPPFLAGS="$cf_save_CPPFLAGS"
LIBS="$cf_save_LIBS"
LDFLAGS="$cf_save_LDFLAGS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
done
CPPFLAGS="$cf_save_CPPFLAGS"
@@ -12007,10 +12772,10 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
fi
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
@@ -12021,9 +12786,9 @@ cf_cv_utf8_lib=no
fi
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:12026: result: $cf_cv_utf8_lib" >&5
+echo "$as_me:12791: result: $cf_cv_utf8_lib" >&5
echo "${ECHO_T}$cf_cv_utf8_lib" >&6
# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
@@ -12037,9 +12802,9 @@ EOF
if test -n "$cf_cv_header_path_utf8" ; then
for cf_add_incdir in $cf_cv_header_path_utf8
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -12060,8 +12825,8 @@ if test -n "$cf_cv_header_path_utf8" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 12064 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12829 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -12072,25 +12837,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12076: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12841: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12079: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12082: \"$ac_try\"") >&5
+ echo "$as_me:12844: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12847: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12085: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12850: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -12099,11 +12864,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:12102: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:12867: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -12119,9 +12884,9 @@ fi
if test -n "$cf_cv_library_path_utf8" ; then
for cf_add_libdir in $cf_cv_library_path_utf8
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -12135,7 +12900,7 @@ if test -n "$cf_cv_library_path_utf8" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:12138: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:12903: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -12167,14 +12932,14 @@ fi
fi
# This is needed on Tru64 5.0 to declare mbstate_t
-echo "$as_me:12170: checking if we must include wchar.h to declare mbstate_t" >&5
+echo "$as_me:12935: checking if we must include wchar.h to declare mbstate_t" >&5
echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6
if test "${cf_cv_mbstate_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 12177 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12942 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12191,24 +12956,24 @@ mbstate_t state
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12195: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12960: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12198: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12201: \"$ac_try\"") >&5
+ echo "$as_me:12963: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:12966: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12204: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12969: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_mbstate_t=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 12211 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12976 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12226,29 +12991,29 @@ mbstate_t value
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12230: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:12995: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12233: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12236: \"$ac_try\"") >&5
+ echo "$as_me:12998: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13001: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12239: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13004: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_mbstate_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_mbstate_t=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:12251: result: $cf_cv_mbstate_t" >&5
+echo "$as_me:13016: result: $cf_cv_mbstate_t" >&5
echo "${ECHO_T}$cf_cv_mbstate_t" >&6
if test "$cf_cv_mbstate_t" = yes ; then
@@ -12266,14 +13031,14 @@ if test "$cf_cv_mbstate_t" = unknown ; then
fi
# This is needed on Tru64 5.0 to declare wchar_t
-echo "$as_me:12269: checking if we must include wchar.h to declare wchar_t" >&5
+echo "$as_me:13034: checking if we must include wchar.h to declare wchar_t" >&5
echo $ECHO_N "checking if we must include wchar.h to declare wchar_t... $ECHO_C" >&6
if test "${cf_cv_wchar_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 12276 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13041 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12290,24 +13055,24 @@ wchar_t state
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12294: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13059: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12297: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12300: \"$ac_try\"") >&5
+ echo "$as_me:13062: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13065: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12303: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13068: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wchar_t=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 12310 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13075 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12325,29 +13090,29 @@ wchar_t value
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12329: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13094: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12332: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12335: \"$ac_try\"") >&5
+ echo "$as_me:13097: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13100: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12338: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13103: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wchar_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_wchar_t=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:12350: result: $cf_cv_wchar_t" >&5
+echo "$as_me:13115: result: $cf_cv_wchar_t" >&5
echo "${ECHO_T}$cf_cv_wchar_t" >&6
if test "$cf_cv_wchar_t" = yes ; then
@@ -12370,14 +13135,14 @@ if test "$cf_cv_wchar_t" != unknown ; then
fi
# This is needed on Tru64 5.0 to declare wint_t
-echo "$as_me:12373: checking if we must include wchar.h to declare wint_t" >&5
+echo "$as_me:13138: checking if we must include wchar.h to declare wint_t" >&5
echo $ECHO_N "checking if we must include wchar.h to declare wint_t... $ECHO_C" >&6
if test "${cf_cv_wint_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 12380 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13145 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12394,24 +13159,24 @@ wint_t state
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12398: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13163: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12401: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12404: \"$ac_try\"") >&5
+ echo "$as_me:13166: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13169: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12407: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13172: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wint_t=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 12414 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13179 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -12429,29 +13194,29 @@ wint_t value
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12433: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13198: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12436: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12439: \"$ac_try\"") >&5
+ echo "$as_me:13201: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13204: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12442: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13207: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wint_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_wint_t=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:12454: result: $cf_cv_wint_t" >&5
+echo "$as_me:13219: result: $cf_cv_wint_t" >&5
echo "${ECHO_T}$cf_cv_wint_t" >&6
if test "$cf_cv_wint_t" = yes ; then
@@ -12483,7 +13248,7 @@ EOF
fi
### use option --disable-lp64 to allow long chtype
-echo "$as_me:12486: checking whether to enable _LP64 definition in curses.h" >&5
+echo "$as_me:13251: checking whether to enable _LP64 definition in curses.h" >&5
echo $ECHO_N "checking whether to enable _LP64 definition in curses.h... $ECHO_C" >&6
# Check whether --enable-lp64 or --disable-lp64 was given.
@@ -12493,7 +13258,7 @@ if test "${enable_lp64+set}" = set; then
else
with_lp64=$cf_dft_with_lp64
fi;
-echo "$as_me:12496: result: $with_lp64" >&5
+echo "$as_me:13261: result: $with_lp64" >&5
echo "${ECHO_T}$with_lp64" >&6
if test "x$with_lp64" = xyes ; then
@@ -12509,7 +13274,7 @@ if test "${enable_largefile+set}" = set; then
fi;
if test "$enable_largefile" != no; then
- echo "$as_me:12512: checking for special C compiler options needed for large files" >&5
+ echo "$as_me:13277: checking for special C compiler options needed for large files" >&5
echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_largefile_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -12520,8 +13285,8 @@ else
while :; do
# IRIX 6.2 and later do not support large files by default,
# so use the C compiler's -n32 option if that helps.
- cat >conftest.$ac_ext <<_ACEOF
-#line 12524 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13289 "configure"
#include "confdefs.h"
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -12540,64 +13305,64 @@ main (void)
return 0;
}
_ACEOF
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12544: \"$ac_compile\"") >&5
+ rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13309: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12547: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12550: \"$ac_try\"") >&5
+ echo "$as_me:13312: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13315: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12553: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13318: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext
+rm -f "conftest.$ac_objext"
CC="$CC -n32"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12563: \"$ac_compile\"") >&5
+ rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13328: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12566: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12569: \"$ac_try\"") >&5
+ echo "$as_me:13331: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13334: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12572: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13337: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_largefile_CC=' -n32'; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext
+rm -f "conftest.$ac_objext"
break
done
CC=$ac_save_CC
- rm -f conftest.$ac_ext
+ rm -f "conftest.$ac_ext"
fi
fi
-echo "$as_me:12586: result: $ac_cv_sys_largefile_CC" >&5
+echo "$as_me:13351: result: $ac_cv_sys_largefile_CC" >&5
echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
if test "$ac_cv_sys_largefile_CC" != no; then
CC=$CC$ac_cv_sys_largefile_CC
fi
- echo "$as_me:12592: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+ echo "$as_me:13357: checking for _FILE_OFFSET_BITS value needed for large files" >&5
echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_file_offset_bits+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
while :; do
ac_cv_sys_file_offset_bits=no
- cat >conftest.$ac_ext <<_ACEOF
-#line 12600 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13365 "configure"
#include "confdefs.h"
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -12616,26 +13381,26 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12620: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13385: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12623: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12626: \"$ac_try\"") >&5
+ echo "$as_me:13388: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13391: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12629: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13394: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 12638 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13403 "configure"
#include "confdefs.h"
#define _FILE_OFFSET_BITS 64
#include <sys/types.h>
@@ -12655,28 +13420,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12659: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13424: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12662: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12665: \"$ac_try\"") >&5
+ echo "$as_me:13427: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13430: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12668: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13433: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_file_offset_bits=64; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
break
done
fi
-echo "$as_me:12679: result: $ac_cv_sys_file_offset_bits" >&5
+echo "$as_me:13444: result: $ac_cv_sys_file_offset_bits" >&5
echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
if test "$ac_cv_sys_file_offset_bits" != no; then
@@ -12686,15 +13451,15 @@ EOF
fi
rm -rf conftest*
- echo "$as_me:12689: checking for _LARGE_FILES value needed for large files" >&5
+ echo "$as_me:13454: checking for _LARGE_FILES value needed for large files" >&5
echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_large_files+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
while :; do
ac_cv_sys_large_files=no
- cat >conftest.$ac_ext <<_ACEOF
-#line 12697 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13462 "configure"
#include "confdefs.h"
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -12713,26 +13478,26 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12717: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13482: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12720: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12723: \"$ac_try\"") >&5
+ echo "$as_me:13485: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13488: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12726: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13491: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 12735 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13500 "configure"
#include "confdefs.h"
#define _LARGE_FILES 1
#include <sys/types.h>
@@ -12752,28 +13517,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12756: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13521: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12759: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12762: \"$ac_try\"") >&5
+ echo "$as_me:13524: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13527: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12765: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13530: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_large_files=1; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
break
done
fi
-echo "$as_me:12776: result: $ac_cv_sys_large_files" >&5
+echo "$as_me:13541: result: $ac_cv_sys_large_files" >&5
echo "${ECHO_T}$ac_cv_sys_large_files" >&6
if test "$ac_cv_sys_large_files" != no; then
@@ -12786,15 +13551,15 @@ rm -rf conftest*
fi
if test "$enable_largefile" != no ; then
- echo "$as_me:12789: checking for _LARGEFILE_SOURCE value needed for large files" >&5
+ echo "$as_me:13554: checking for _LARGEFILE_SOURCE value needed for large files" >&5
echo $ECHO_N "checking for _LARGEFILE_SOURCE value needed for large files... $ECHO_C" >&6
if test "${ac_cv_sys_largefile_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
while :; do
ac_cv_sys_largefile_source=no
- cat >conftest.$ac_ext <<_ACEOF
-#line 12797 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13562 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -12805,26 +13570,26 @@ return !fseeko;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12809: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13574: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12812: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12815: \"$ac_try\"") >&5
+ echo "$as_me:13577: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13580: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12818: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13583: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 12827 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13592 "configure"
#include "confdefs.h"
#define _LARGEFILE_SOURCE 1
#include <stdio.h>
@@ -12836,28 +13601,28 @@ return !fseeko;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12840: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13605: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12843: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12846: \"$ac_try\"") >&5
+ echo "$as_me:13608: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13611: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12849: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13614: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sys_largefile_source=1; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
break
done
fi
-echo "$as_me:12860: result: $ac_cv_sys_largefile_source" >&5
+echo "$as_me:13625: result: $ac_cv_sys_largefile_source" >&5
echo "${ECHO_T}$ac_cv_sys_largefile_source" >&6
if test "$ac_cv_sys_largefile_source" != no; then
@@ -12871,13 +13636,13 @@ rm -rf conftest*
# We used to try defining _XOPEN_SOURCE=500 too, to work around a bug
# in glibc 2.1.3, but that breaks too many other things.
# If you want fseeko and ftello with glibc, upgrade to a fixed glibc.
-echo "$as_me:12874: checking for fseeko" >&5
+echo "$as_me:13639: checking for fseeko" >&5
echo $ECHO_N "checking for fseeko... $ECHO_C" >&6
if test "${ac_cv_func_fseeko+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 12880 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13645 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -12888,27 +13653,27 @@ return fseeko && fseeko (stdin, 0, 0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12892: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13657: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12895: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12898: \"$ac_try\"") >&5
+ echo "$as_me:13660: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13663: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12901: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13666: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_fseeko=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_fseeko=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:12911: result: $ac_cv_func_fseeko" >&5
+echo "$as_me:13676: result: $ac_cv_func_fseeko" >&5
echo "${ECHO_T}$ac_cv_func_fseeko" >&6
if test $ac_cv_func_fseeko = yes; then
@@ -12947,14 +13712,14 @@ fi
fi
- echo "$as_me:12950: checking whether to use struct dirent64" >&5
+ echo "$as_me:13715: checking whether to use struct dirent64" >&5
echo $ECHO_N "checking whether to use struct dirent64... $ECHO_C" >&6
if test "${cf_cv_struct_dirent64+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 12957 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13722 "configure"
#include "confdefs.h"
#pragma GCC diagnostic error "-Wincompatible-pointer-types"
@@ -12970,33 +13735,34 @@ main (void)
struct dirent64 *x = readdir((DIR *)0);
struct dirent *y = readdir((DIR *)0);
int z = x - y;
+ (void)z;
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:12979: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:13745: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:12982: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:12985: \"$ac_try\"") >&5
+ echo "$as_me:13748: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:13751: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12988: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13754: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_struct_dirent64=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_struct_dirent64=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:12999: result: $cf_cv_struct_dirent64" >&5
+echo "$as_me:13765: result: $cf_cv_struct_dirent64" >&5
echo "${ECHO_T}$cf_cv_struct_dirent64" >&6
test "$cf_cv_struct_dirent64" = yes &&
cat >>confdefs.h <<\EOF
@@ -13006,7 +13772,7 @@ EOF
fi
### use option --disable-tparm-varargs to make tparm() conform to X/Open
-echo "$as_me:13009: checking if you want tparm not to use X/Open fixed-parameter list" >&5
+echo "$as_me:13775: checking if you want tparm not to use X/Open fixed-parameter list" >&5
echo $ECHO_N "checking if you want tparm not to use X/Open fixed-parameter list... $ECHO_C" >&6
# Check whether --enable-tparm-varargs or --disable-tparm-varargs was given.
@@ -13016,14 +13782,14 @@ if test "${enable_tparm_varargs+set}" = set; then
else
with_tparm_varargs=yes
fi;
-echo "$as_me:13019: result: $with_tparm_varargs" >&5
+echo "$as_me:13785: result: $with_tparm_varargs" >&5
echo "${ECHO_T}$with_tparm_varargs" >&6
NCURSES_TPARM_VARARGS=0
test "x$with_tparm_varargs" = xyes && NCURSES_TPARM_VARARGS=1
### use option --disable-tic-depends to make libtic not explicitly depend on ncurses/ncursesw
if test "$with_ticlib" != no ; then
-echo "$as_me:13026: checking if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library" >&5
+echo "$as_me:13792: checking if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library" >&5
echo $ECHO_N "checking if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library... $ECHO_C" >&6
# Check whether --enable-tic-depends or --disable-tic-depends was given.
@@ -13033,34 +13799,34 @@ if test "${enable_tic_depends+set}" = set; then
else
with_tic_depends=yes
fi;
-echo "$as_me:13036: result: $with_tic_depends" >&5
+echo "$as_me:13802: result: $with_tic_depends" >&5
echo "${ECHO_T}$with_tic_depends" >&6
else
with_tic_depends=no
fi
-### use option --disable-wattr-macros to suppress wattr* macros from curses.h
-echo "$as_me:13043: checking if you want to suppress wattr* macros to help with ncurses5/ncurses6 transition" >&5
-echo $ECHO_N "checking if you want to suppress wattr* macros to help with ncurses5/ncurses6 transition... $ECHO_C" >&6
+### use option --enable-wattr-macros to enable wattr* macros in curses.h
+echo "$as_me:13809: checking if you want to enable wattr* macros" >&5
+echo $ECHO_N "checking if you want to enable wattr* macros... $ECHO_C" >&6
# Check whether --enable-wattr-macros or --disable-wattr-macros was given.
if test "${enable_wattr_macros+set}" = set; then
enableval="$enable_wattr_macros"
with_wattr_macros=$enableval
else
- with_wattr_macros=yes
+ with_wattr_macros=no
fi;
if [ "x$with_wattr_macros" != xyes ]; then
NCURSES_WATTR_MACROS=0
- echo "$as_me:13055: result: yes" >&5
-echo "${ECHO_T}yes" >&6
+ echo "$as_me:13821: result: no" >&5
+echo "${ECHO_T}no" >&6
else
NCURSES_WATTR_MACROS=1
- echo "$as_me:13059: result: no" >&5
-echo "${ECHO_T}no" >&6
+ echo "$as_me:13825: result: yes" >&5
+echo "${ECHO_T}yes" >&6
fi
-echo "$as_me:13063: checking for X11 rgb file" >&5
+echo "$as_me:13829: checking for X11 rgb file" >&5
echo $ECHO_N "checking for X11 rgb file... $ECHO_C" >&6
# Check whether --with-x11-rgb or --without-x11-rgb was given.
@@ -13112,19 +13878,19 @@ case ".$cf_path" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval cf_path="$cf_path"
case ".$cf_path" in
(.NONE/*)
- cf_path=`echo $cf_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_path=`echo "$cf_path" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- cf_path=`echo $cf_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_path=`echo "$cf_path" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:13127: error: expected a pathname, not \"$cf_path\"" >&5
+ { { echo "$as_me:13893: error: expected a pathname, not \"$cf_path\"" >&5
echo "$as_me: error: expected a pathname, not \"$cf_path\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -13132,7 +13898,7 @@ esac
fi
-echo "$as_me:13135: result: $RGB_PATH" >&5
+echo "$as_me:13901: result: $RGB_PATH" >&5
echo "${ECHO_T}$RGB_PATH" >&6
cat >>confdefs.h <<EOF
@@ -13146,7 +13912,7 @@ then
fi
### use option --with-bool to override bool's type
-echo "$as_me:13149: checking for type of bool" >&5
+echo "$as_me:13915: checking for type of bool" >&5
echo $ECHO_N "checking for type of bool... $ECHO_C" >&6
# Check whether --with-bool or --without-bool was given.
@@ -13156,10 +13922,10 @@ if test "${with_bool+set}" = set; then
else
NCURSES_BOOL=auto
fi;
-echo "$as_me:13159: result: $NCURSES_BOOL" >&5
+echo "$as_me:13925: result: $NCURSES_BOOL" >&5
echo "${ECHO_T}$NCURSES_BOOL" >&6
-echo "$as_me:13162: checking for alternate terminal capabilities file" >&5
+echo "$as_me:13928: checking for alternate terminal capabilities file" >&5
echo $ECHO_N "checking for alternate terminal capabilities file... $ECHO_C" >&6
# Check whether --with-caps or --without-caps was given.
@@ -13170,11 +13936,11 @@ else
TERMINFO_CAPS=Caps
fi;
test -f "${srcdir}/include/${TERMINFO_CAPS}" || TERMINFO_CAPS=Caps
-echo "$as_me:13173: result: $TERMINFO_CAPS" >&5
+echo "$as_me:13939: result: $TERMINFO_CAPS" >&5
echo "${ECHO_T}$TERMINFO_CAPS" >&6
### use option --with-chtype to override chtype's type
-echo "$as_me:13177: checking for type of chtype" >&5
+echo "$as_me:13943: checking for type of chtype" >&5
echo $ECHO_N "checking for type of chtype... $ECHO_C" >&6
# Check whether --with-chtype or --without-chtype was given.
@@ -13184,11 +13950,11 @@ if test "${with_chtype+set}" = set; then
else
NCURSES_CHTYPE=$cf_dft_chtype
fi;
-echo "$as_me:13187: result: $NCURSES_CHTYPE" >&5
+echo "$as_me:13953: result: $NCURSES_CHTYPE" >&5
echo "${ECHO_T}$NCURSES_CHTYPE" >&6
### use option --with-ospeed to override ospeed's type
-echo "$as_me:13191: checking for type of ospeed" >&5
+echo "$as_me:13957: checking for type of ospeed" >&5
echo $ECHO_N "checking for type of ospeed... $ECHO_C" >&6
# Check whether --with-ospeed or --without-ospeed was given.
@@ -13198,11 +13964,11 @@ if test "${with_ospeed+set}" = set; then
else
NCURSES_OSPEED=short
fi;
-echo "$as_me:13201: result: $NCURSES_OSPEED" >&5
+echo "$as_me:13967: result: $NCURSES_OSPEED" >&5
echo "${ECHO_T}$NCURSES_OSPEED" >&6
### use option --with-mmask-t to override mmask_t's type
-echo "$as_me:13205: checking for type of mmask_t" >&5
+echo "$as_me:13971: checking for type of mmask_t" >&5
echo $ECHO_N "checking for type of mmask_t... $ECHO_C" >&6
# Check whether --with-mmask-t or --without-mmask-t was given.
@@ -13212,11 +13978,11 @@ if test "${with_mmask_t+set}" = set; then
else
NCURSES_MMASK_T=$cf_dft_mmask_t
fi;
-echo "$as_me:13215: result: $NCURSES_MMASK_T" >&5
+echo "$as_me:13981: result: $NCURSES_MMASK_T" >&5
echo "${ECHO_T}$NCURSES_MMASK_T" >&6
### use option --with-ccharw-max to override CCHARW_MAX size
-echo "$as_me:13219: checking for size CCHARW_MAX" >&5
+echo "$as_me:13985: checking for size CCHARW_MAX" >&5
echo $ECHO_N "checking for size CCHARW_MAX... $ECHO_C" >&6
# Check whether --with-ccharw-max or --without-ccharw-max was given.
@@ -13226,16 +13992,16 @@ if test "${with_ccharw_max+set}" = set; then
else
NCURSES_CCHARW_MAX=5
fi;
-echo "$as_me:13229: result: $NCURSES_CCHARW_MAX" >&5
+echo "$as_me:13995: result: $NCURSES_CCHARW_MAX" >&5
echo "${ECHO_T}$NCURSES_CCHARW_MAX" >&6
-echo "$as_me:13232: checking for ANSI C header files" >&5
+echo "$as_me:13998: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
if test "${ac_cv_header_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13238 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14004 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@@ -13243,14 +14009,14 @@ else
#include <float.h>
_ACEOF
-if { (eval echo "$as_me:13246: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:14012: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:13252: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:14018: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -13263,21 +14029,21 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_stdc=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 13274 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14040 "configure"
#include "confdefs.h"
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "memchr" >/dev/null 2>&1; then
+ $EGREP "memchr" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -13288,14 +14054,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 13292 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14058 "configure"
#include "confdefs.h"
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "free" >/dev/null 2>&1; then
+ $EGREP "free" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -13309,8 +14075,8 @@ if test $ac_cv_header_stdc = yes; then
if test "$cross_compiling" = yes; then
:
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13313 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14079 "configure"
#include "confdefs.h"
#include <ctype.h>
#if ((' ' & 0x0FF) == 0x020)
@@ -13335,29 +14101,29 @@ main (void)
$ac_main_return (0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:13339: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:14105: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:13342: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:13344: \"$ac_try\"") >&5
+ echo "$as_me:14108: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:14110: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13347: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14113: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
fi
-echo "$as_me:13360: result: $ac_cv_header_stdc" >&5
+echo "$as_me:14126: result: $ac_cv_header_stdc" >&5
echo "${ECHO_T}$ac_cv_header_stdc" >&6
if test $ac_cv_header_stdc = yes; then
@@ -13373,40 +14139,40 @@ for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
inttypes.h stdint.h unistd.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:13376: checking for $ac_header" >&5
+echo "$as_me:14142: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13382 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14148 "configure"
#include "confdefs.h"
$ac_includes_default
#include <$ac_header>
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13388: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14154: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13391: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13394: \"$ac_try\"") >&5
+ echo "$as_me:14157: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14160: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13397: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14163: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:13407: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:14173: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -13414,13 +14180,13 @@ EOF
fi
done
-echo "$as_me:13417: checking for signed char" >&5
+echo "$as_me:14183: checking for signed char" >&5
echo $ECHO_N "checking for signed char... $ECHO_C" >&6
if test "${ac_cv_type_signed_char+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13423 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14189 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -13434,30 +14200,30 @@ if (sizeof (signed char))
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13438: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14204: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13441: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13444: \"$ac_try\"") >&5
+ echo "$as_me:14207: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14210: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13447: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14213: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_type_signed_char=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_type_signed_char=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:13457: result: $ac_cv_type_signed_char" >&5
+echo "$as_me:14223: result: $ac_cv_type_signed_char" >&5
echo "${ECHO_T}$ac_cv_type_signed_char" >&6
-echo "$as_me:13460: checking size of signed char" >&5
+echo "$as_me:14226: checking size of signed char" >&5
echo $ECHO_N "checking size of signed char... $ECHO_C" >&6
if test "${ac_cv_sizeof_signed_char+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -13465,8 +14231,8 @@ else
if test "$ac_cv_type_signed_char" = yes; then
if test "$cross_compiling" = yes; then
# Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-#line 13469 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 14235 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -13477,22 +14243,22 @@ int _array_ [1 - 2 * !((sizeof (signed char)) >= 0)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13481: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14247: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13484: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13487: \"$ac_try\"") >&5
+ echo "$as_me:14250: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14253: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13490: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14256: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_lo=0 ac_mid=0
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 13495 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14261 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -13503,33 +14269,33 @@ int _array_ [1 - 2 * !((sizeof (signed char)) <= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13507: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14273: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13510: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13513: \"$ac_try\"") >&5
+ echo "$as_me:14276: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14279: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13516: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14282: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_hi=$ac_mid; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1`
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`; ac_mid=`expr 2 '*' "$ac_mid" + 1`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_hi=-1 ac_mid=-1
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 13532 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14298 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -13540,33 +14306,33 @@ int _array_ [1 - 2 * !((sizeof (signed char)) >= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13544: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14310: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13547: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13550: \"$ac_try\"") >&5
+ echo "$as_me:14313: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14316: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13553: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14319: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_lo=$ac_mid; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid`
+cat "conftest.$ac_ext" >&5
+ac_hi=`expr "$ac_mid" - 1`; ac_mid=`expr 2 '*' "$ac_mid"`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
# Binary search between lo and hi bounds.
while test "x$ac_lo" != "x$ac_hi"; do
- ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
- cat >conftest.$ac_ext <<_ACEOF
-#line 13569 "configure"
+ ac_mid=`expr '(' "$ac_hi" - "$ac_lo" ')' / 2 + "$ac_lo"`
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14335 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -13577,35 +14343,35 @@ int _array_ [1 - 2 * !((sizeof (signed char)) <= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:13581: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:14347: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:13584: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:13587: \"$ac_try\"") >&5
+ echo "$as_me:14350: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:14353: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13590: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14356: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_hi=$ac_mid
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_lo=`expr $ac_mid + 1`
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
ac_cv_sizeof_signed_char=$ac_lo
else
if test "$cross_compiling" = yes; then
- { { echo "$as_me:13603: error: cannot run test program while cross compiling" >&5
+ { { echo "$as_me:14369: error: cannot run test program while cross compiling" >&5
echo "$as_me: error: cannot run test program while cross compiling" >&2;}
{ (exit 1); exit 1; }; }
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 13608 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 14374 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -13614,30 +14380,30 @@ main (void)
FILE *f = fopen ("conftest.val", "w");
if (!f)
$ac_main_return (1);
-fprintf (f, "%d", (sizeof (signed char)));
+fprintf (f, "%ld", (long)(sizeof (signed char)));
fclose (f);
;
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:13624: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:14390: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:13627: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:13629: \"$ac_try\"") >&5
+ echo "$as_me:14393: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:14395: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13632: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14398: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sizeof_signed_char=`cat conftest.val`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
rm -f conftest.val
@@ -13645,7 +14411,7 @@ else
ac_cv_sizeof_signed_char=0
fi
fi
-echo "$as_me:13648: result: $ac_cv_sizeof_signed_char" >&5
+echo "$as_me:14414: result: $ac_cv_sizeof_signed_char" >&5
echo "${ECHO_T}$ac_cv_sizeof_signed_char" >&6
cat >>confdefs.h <<EOF
#define SIZEOF_SIGNED_CHAR $ac_cv_sizeof_signed_char
@@ -13656,7 +14422,7 @@ if test "$ac_cv_sizeof_signed_char" = 1 ; then
else
NCURSES_SBOOL="char"
fi
-echo "$as_me:13659: checking if you want to use signed Boolean array in term.h" >&5
+echo "$as_me:14425: checking if you want to use signed Boolean array in term.h" >&5
echo $ECHO_N "checking if you want to use signed Boolean array in term.h... $ECHO_C" >&6
# Check whether --enable-signed-char or --disable-signed-char was given.
@@ -13666,12 +14432,12 @@ if test "${enable_signed_char+set}" = set; then
else
with_signed_char=no
fi;
-echo "$as_me:13669: result: $with_signed_char" >&5
+echo "$as_me:14435: result: $with_signed_char" >&5
echo "${ECHO_T}$with_signed_char" >&6
test "x$with_signed_char" != xyes && NCURSES_SBOOL="char"
### use option --with-tparm-arg to override tparm's argument type
-echo "$as_me:13674: checking for type of tparm args" >&5
+echo "$as_me:14440: checking for type of tparm args" >&5
echo $ECHO_N "checking for type of tparm args... $ECHO_C" >&6
# Check whether --with-tparm-arg or --without-tparm-arg was given.
@@ -13681,11 +14447,11 @@ if test "${with_tparm_arg+set}" = set; then
else
NCURSES_TPARM_ARG=$cf_dft_tparm_arg
fi;
-echo "$as_me:13684: result: $NCURSES_TPARM_ARG" >&5
+echo "$as_me:14450: result: $NCURSES_TPARM_ARG" >&5
echo "${ECHO_T}$NCURSES_TPARM_ARG" >&6
### Enable compiling-in rcs id's
-echo "$as_me:13688: checking if RCS identifiers should be compiled-in" >&5
+echo "$as_me:14454: checking if RCS identifiers should be compiled-in" >&5
echo $ECHO_N "checking if RCS identifiers should be compiled-in... $ECHO_C" >&6
# Check whether --with-rcs-ids or --without-rcs-ids was given.
@@ -13695,7 +14461,7 @@ if test "${with_rcs_ids+set}" = set; then
else
with_rcs_ids=no
fi;
-echo "$as_me:13698: result: $with_rcs_ids" >&5
+echo "$as_me:14464: result: $with_rcs_ids" >&5
echo "${ECHO_T}$with_rcs_ids" >&6
test "x$with_rcs_ids" = xyes &&
cat >>confdefs.h <<\EOF
@@ -13704,7 +14470,7 @@ EOF
###############################################################################
-echo "$as_me:13707: checking format of man-pages" >&5
+echo "$as_me:14473: checking format of man-pages" >&5
echo $ECHO_N "checking format of man-pages... $ECHO_C" >&6
# Check whether --with-manpage-format or --without-manpage-format was given.
@@ -13720,24 +14486,24 @@ MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'`
cf_unknown=
-case $MANPAGE_FORMAT in
+case "$MANPAGE_FORMAT" in
(unknown)
if test -z "$MANPATH" ; then
MANPATH="/usr/man:/usr/share/man"
fi
- # look for the 'date' man-page (it's most likely to be installed!)
+ # look for the 'date' man-page (it is most likely to be installed!)
MANPAGE_FORMAT=
- cf_preform=no
- cf_catonly=yes
- cf_example=date
+ cf_preform="no"
+ cf_catonly="yes"
+ cf_example="date"
IFS="${IFS:- }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
for cf_dir in $MANPATH; do
test -z "$cf_dir" && cf_dir=/usr/man
for cf_name in $cf_dir/man*/$cf_example.[01]* $cf_dir/cat*/$cf_example.[01]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example
do
- cf_test=`echo $cf_name | sed -e 's/*//'`
+ cf_test=`echo "$cf_name" | sed -e 's/*//'`
if test "x$cf_test" = "x$cf_name" ; then
case "$cf_name" in
@@ -13768,7 +14534,7 @@ case $MANPAGE_FORMAT in
cf_found=yes
;;
esac
- test $cf_found=yes && break
+ test "$cf_found" = yes && break
fi
done
# only check the first directory in $MANPATH where we find manpages
@@ -13782,7 +14548,7 @@ case $MANPAGE_FORMAT in
;;
(*)
for cf_option in $MANPAGE_FORMAT; do
- case $cf_option in
+ case "$cf_option" in
(gzip|compress|BSDI|normal|formatted|catonly)
;;
(*)
@@ -13793,14 +14559,14 @@ case $MANPAGE_FORMAT in
;;
esac
-echo "$as_me:13796: result: $MANPAGE_FORMAT" >&5
+echo "$as_me:14562: result: $MANPAGE_FORMAT" >&5
echo "${ECHO_T}$MANPAGE_FORMAT" >&6
if test -n "$cf_unknown" ; then
- { echo "$as_me:13799: WARNING: Unexpected manpage-format $cf_unknown" >&5
+ { echo "$as_me:14565: WARNING: Unexpected manpage-format $cf_unknown" >&5
echo "$as_me: WARNING: Unexpected manpage-format $cf_unknown" >&2;}
fi
-echo "$as_me:13803: checking for manpage renaming" >&5
+echo "$as_me:14569: checking for manpage renaming" >&5
echo $ECHO_N "checking for manpage renaming... $ECHO_C" >&6
# Check whether --with-manpage-renames or --without-manpage-renames was given.
@@ -13817,7 +14583,7 @@ case ".$MANPAGE_RENAMES" in
(.|.yes)
# Debian 'man' program?
if test -f /etc/debian_version ; then
- MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames
+ MANPAGE_RENAMES=`cd "$srcdir" && pwd`/man/man_db.renames
else
MANPAGE_RENAMES=no
fi
@@ -13825,10 +14591,10 @@ case ".$MANPAGE_RENAMES" in
esac
if test "$MANPAGE_RENAMES" != no ; then
- if test -f $srcdir/man/$MANPAGE_RENAMES ; then
- MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES
- elif test ! -f $MANPAGE_RENAMES ; then
- { { echo "$as_me:13831: error: not a filename: $MANPAGE_RENAMES" >&5
+ if test -f "$srcdir/man/$MANPAGE_RENAMES" ; then
+ MANPAGE_RENAMES=`cd "$srcdir/man" && pwd`/$MANPAGE_RENAMES
+ elif test ! -f "$MANPAGE_RENAMES" ; then
+ { { echo "$as_me:14597: error: not a filename: $MANPAGE_RENAMES" >&5
echo "$as_me: error: not a filename: $MANPAGE_RENAMES" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -13838,14 +14604,14 @@ echo "$as_me: error: not a filename: $MANPAGE_RENAMES" >&2;}
# Construct a sed-script to perform renaming within man-pages
if test -n "$MANPAGE_RENAMES" ; then
test ! -d man && mkdir man
- $SHELL $srcdir/man/make_sed.sh $MANPAGE_RENAMES >./edit_man.sed
+ $SHELL "$srcdir/man/make_sed.sh" "$MANPAGE_RENAMES" >./edit_man.sed
fi
fi
-echo "$as_me:13845: result: $MANPAGE_RENAMES" >&5
+echo "$as_me:14611: result: $MANPAGE_RENAMES" >&5
echo "${ECHO_T}$MANPAGE_RENAMES" >&6
-echo "$as_me:13848: checking if manpage aliases will be installed" >&5
+echo "$as_me:14614: checking if manpage aliases will be installed" >&5
echo $ECHO_N "checking if manpage aliases will be installed... $ECHO_C" >&6
# Check whether --with-manpage-aliases or --without-manpage-aliases was given.
@@ -13856,7 +14622,7 @@ else
MANPAGE_ALIASES=yes
fi;
-echo "$as_me:13859: result: $MANPAGE_ALIASES" >&5
+echo "$as_me:14625: result: $MANPAGE_ALIASES" >&5
echo "${ECHO_T}$MANPAGE_ALIASES" >&6
case "x$LN_S" in
@@ -13870,7 +14636,7 @@ esac
MANPAGE_SYMLINKS=no
if test "$MANPAGE_ALIASES" = yes ; then
-echo "$as_me:13873: checking if manpage symlinks should be used" >&5
+echo "$as_me:14639: checking if manpage symlinks should be used" >&5
echo $ECHO_N "checking if manpage symlinks should be used... $ECHO_C" >&6
# Check whether --with-manpage-symlinks or --without-manpage-symlinks was given.
@@ -13883,17 +14649,17 @@ fi;
if test "$$cf_use_symlinks" = no; then
if test "$MANPAGE_SYMLINKS" = yes ; then
- { echo "$as_me:13886: WARNING: cannot make symlinks" >&5
+ { echo "$as_me:14652: WARNING: cannot make symlinks" >&5
echo "$as_me: WARNING: cannot make symlinks" >&2;}
MANPAGE_SYMLINKS=no
fi
fi
-echo "$as_me:13892: result: $MANPAGE_SYMLINKS" >&5
+echo "$as_me:14658: result: $MANPAGE_SYMLINKS" >&5
echo "${ECHO_T}$MANPAGE_SYMLINKS" >&6
fi
-echo "$as_me:13896: checking for manpage tbl" >&5
+echo "$as_me:14662: checking for manpage tbl" >&5
echo $ECHO_N "checking for manpage tbl... $ECHO_C" >&6
# Check whether --with-manpage-tbl or --without-manpage-tbl was given.
@@ -13904,7 +14670,7 @@ else
MANPAGE_TBL=no
fi;
-echo "$as_me:13907: result: $MANPAGE_TBL" >&5
+echo "$as_me:14673: result: $MANPAGE_TBL" >&5
echo "${ECHO_T}$MANPAGE_TBL" >&6
if test "$prefix" = "NONE" ; then
@@ -13985,7 +14751,7 @@ shift || exit 1
if test "\$form" = normal ; then
if test "$cf_format" = yes ; then
if test "$cf_inboth" = no ; then
- $SHELL \$0 format \$verb \$mandir \$srcdir \$*
+ $SHELL "\$0" format "\$verb" "\$mandir" "\$srcdir" "\$@"
exit $?
fi
fi
@@ -13997,19 +14763,19 @@ else
fi
# process the list of source-files
-for i in \$* ; do
+for i in "\$@" ; do
case \$i in
(*.orig|*.rej) ;;
(*.[0-9]*)
section=\`expr "\$i" : '.*\\.\\([0-9]\\)[xm]*'\`;
- if test \$verb = installing ; then
- if test ! -d \$cf_subdir\${section} ; then
- mkdir -p \$cf_subdir\$section
+ if test "\$verb" = installing ; then
+ if test ! -d "\$cf_subdir\${section}" ; then
+ mkdir -p "\$cf_subdir\$section"
fi
fi
# replace variables in man page
- if test ! -f $cf_man_alias ; then
+ if test ! -f "$cf_man_alias" ; then
cat >>$cf_man_alias <<-CF_EOF2
s,@DATADIR@,\$datadir,g
s,@TERMINFO@,\${TERMINFO:="no default value"},g
@@ -14023,7 +14789,7 @@ CF_EOF
for cf_name in captoinfo clear infocmp infotocap reset tabs tic toe tput tset
do
cf_NAME=`echo "$cf_name" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
- cf_name=`echo $cf_name|sed "$program_transform_name"`
+ cf_name=`echo "$cf_name" | sed "$program_transform_name"`
cat >>$cf_edit_man <<-CF_EOF
s,@$cf_NAME@,$cf_name,g
CF_EOF
@@ -14035,11 +14801,11 @@ CF_EOF2
fi
aliases=
- cf_source=\`basename \$i\`
+ cf_source=\`basename "\$i"\`
inalias=\$cf_source
- test ! -f \$inalias && inalias="\$srcdir/\$inalias"
- if test ! -f \$inalias ; then
- echo .. skipped \$cf_source
+ test ! -f "\$inalias" && inalias="\$srcdir/\$inalias"
+ if test ! -f "\$inalias" ; then
+ echo ".. skipped \$cf_source"
continue
fi
CF_EOF
@@ -14047,8 +14813,8 @@ CF_EOF
if test "$MANPAGE_ALIASES" != no ; then
cat >>$cf_edit_man <<CF_EOF
nCurses=ignore.3x
- test $with_curses_h = yes && nCurses=ncurses.3x
- aliases=\`sed -f \$top_srcdir/man/manlinks.sed \$inalias |sed -f $cf_man_alias | sort -u; test \$inalias = \$nCurses && echo curses\`
+ test "$with_curses_h" = yes && nCurses=ncurses.3x
+ aliases=\`sed -f "\$top_srcdir/man/manlinks.sed" "\$inalias" |sed -f "$cf_man_alias" | sort -u; test "\$inalias" = "\$nCurses" && echo curses\`
CF_EOF
fi
@@ -14065,7 +14831,7 @@ else
cat >>$cf_edit_man <<CF_EOF
cf_target=\`grep "^\$cf_source" $MANPAGE_RENAMES | $AWK '{print \$2}'\`
if test -z "\$cf_target" ; then
- echo '? missing rename for '\$cf_source
+ echo "? missing rename for \$cf_source"
cf_target="\$cf_source"
fi
cf_target="\$cf_subdir\${section}/\${cf_target}"
@@ -14074,16 +14840,16 @@ CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
- sed -f $cf_man_alias \\
+ sed -f "$cf_man_alias" \\
CF_EOF
-if test -f $MANPAGE_RENAMES ; then
+if test -f "$MANPAGE_RENAMES" ; then
cat >>$cf_edit_man <<CF_EOF
- < \$i | sed -f `pwd`/edit_man.sed >\$TMP
+ < "\$i" | sed -f `pwd`/edit_man.sed >\$TMP
CF_EOF
else
cat >>$cf_edit_man <<CF_EOF
- < \$i >\$TMP
+ < "\$i" >\$TMP
CF_EOF
fi
@@ -14094,22 +14860,22 @@ if test \$cf_tables = yes ; then
fi
CF_EOF
-if test $with_overwrite != yes ; then
+if test "$with_overwrite" != yes ; then
cat >>$cf_edit_man <<CF_EOF
- sed -e "/\#[ ]*include/s,<curses.h,<ncurses$LIB_SUFFIX/curses.h," < \$TMP >\$TMP.out
+ sed -e "/\\#[ ]*include/s,<curses.h,<ncurses$LIB_SUFFIX/curses.h," < \$TMP >\$TMP.out
mv \$TMP.out \$TMP
CF_EOF
fi
-if test $with_curses_h != yes ; then
+if test "$with_curses_h" != yes ; then
cat >>$cf_edit_man <<CF_EOF
- sed -e "/\#[ ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
+ sed -e "/\\#[ ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
mv \$TMP.out \$TMP
CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
- if test \$form = format ; then
+ if test "\$form" = format ; then
nroff -man \$TMP >\$TMP.out
mv \$TMP.out \$TMP
fi
@@ -14117,8 +14883,8 @@ CF_EOF
if test -n "$cf_compress" ; then
cat >>$cf_edit_man <<CF_EOF
- if test \$verb = installing ; then
- if ( $cf_compress -f \$TMP )
+ if test "\$verb" = installing ; then
+ if ( "$cf_compress" -f \$TMP )
then
mv \$TMP.$cf_so_strip \$TMP
fi
@@ -14130,50 +14896,50 @@ fi
case "$MANPAGE_FORMAT" in
(*BSDI*)
cat >>$cf_edit_man <<CF_EOF
- if test \$form = format ; then
+ if test "\$form" = format ; then
# BSDI installs only .0 suffixes in the cat directories
- cf_target="\`echo \$cf_target|sed -e 's/\.[1-9]\+[a-z]*/.0/'\`"
+ cf_target="\`echo \$cf_target|sed -e 's/\\.[1-9]\\+[a-z]*/.0/'\`"
fi
CF_EOF
;;
esac
cat >>$cf_edit_man <<CF_EOF
- suffix=\`basename \$cf_target | sed -e 's%^[^.]*%%'\`
- if test \$verb = installing ; then
- echo \$verb \$cf_target
- \$INSTALL_DATA \$TMP \$cf_target
- test -d \$cf_subdir\${section} &&
+ suffix=\`basename "\$cf_target" | sed -e 's%^[^.]*%%'\`
+ if test "\$verb" = installing ; then
+ echo "\$verb \$cf_target"
+ \$INSTALL_DATA \$TMP "\$cf_target"
+ test -d "\$cf_subdir\${section}" &&
test -n "\$aliases" && (
- cd \$cf_subdir\${section} && (
- cf_source=\`echo \$cf_target |sed -e 's%^.*/\([^/][^/]*/[^/][^/]*$\)%\1%'\`
- test -n "$cf_so_strip" && cf_source=\`echo \$cf_source |sed -e 's%\.$cf_so_strip\$%%'\`
- cf_target=\`basename \$cf_target\`
+ cd "\$cf_subdir\${section}" && (
+ cf_source=\`echo "\$cf_target" |sed -e 's%^.*/\\([^/][^/]*/[^/][^/]*$\\)%\\1%'\`
+ test -n "$cf_so_strip" && cf_source=\`echo "\$cf_source" |sed -e 's%\\.$cf_so_strip\$%%'\`
+ cf_target=\`basename "\$cf_target"\`
for cf_alias in \$aliases
do
- if test \$section = 1 ; then
- cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+ if test "\$section" = 1 ; then
+ cf_alias=\`echo "\$cf_alias" |sed "\${transform}"\`
fi
if test "$MANPAGE_SYMLINKS" = yes ; then
- if test -f \$cf_alias\${suffix} ; then
- if ( cmp -s \$cf_target \$cf_alias\${suffix} )
+ if test -f "\$cf_alias\${suffix}" ; then
+ if ( cmp -s "\$cf_target" "\$cf_alias\${suffix}" )
then
continue
fi
fi
- echo .. \$verb alias \$cf_alias\${suffix}
+ echo ".. \$verb alias \$cf_alias\${suffix}"
CF_EOF
case "x$LN_S" in
(*-f)
cat >>$cf_edit_man <<CF_EOF
- $LN_S \$cf_target \$cf_alias\${suffix}
+ $LN_S "\$cf_target" "\$cf_alias\${suffix}"
CF_EOF
;;
(*)
cat >>$cf_edit_man <<CF_EOF
- rm -f \$cf_alias\${suffix}
- $LN_S \$cf_target \$cf_alias\${suffix}
+ rm -f "\$cf_alias\${suffix}"
+ $LN_S "\$cf_target" "\$cf_alias\${suffix}"
CF_EOF
;;
esac
@@ -14184,35 +14950,35 @@ CF_EOF
if test -n "$cf_compress" ; then
cat >>$cf_edit_man <<CF_EOF
if test -n "$cf_so_strip" ; then
- $cf_compress -f \$TMP
+ "$cf_compress" -f \$TMP
mv \$TMP.$cf_so_strip \$TMP
fi
CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
- echo .. \$verb alias \$cf_alias\${suffix}
- rm -f \$cf_alias\${suffix}
- \$INSTALL_DATA \$TMP \$cf_alias\${suffix}
+ echo ".. \$verb alias \$cf_alias\${suffix}"
+ rm -f "\$cf_alias\${suffix}"
+ \$INSTALL_DATA \$TMP "\$cf_alias\${suffix}"
fi
done
)
)
- elif test \$verb = removing ; then
- test -f \$cf_target && (
- echo \$verb \$cf_target
- rm -f \$cf_target
+ elif test "\$verb" = removing ; then
+ test -f "\$cf_target" && (
+ echo "\$verb \$cf_target"
+ rm -f "\$cf_target"
)
- test -d \$cf_subdir\${section} &&
+ test -d "\$cf_subdir\${section}" &&
test -n "\$aliases" && (
- cd \$cf_subdir\${section} && (
+ cd "\$cf_subdir\${section}" && (
for cf_alias in \$aliases
do
- if test \$section = 1 ; then
- cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+ if test "\$section" = 1 ; then
+ cf_alias=\`echo "\$cf_alias" |sed "\${transform}"\`
fi
- echo .. \$verb alias \$cf_alias\${suffix}
- rm -f \$cf_alias\${suffix}
+ echo ".. \$verb alias \$cf_alias\${suffix}"
+ rm -f "\$cf_alias\${suffix}"
done
)
)
@@ -14224,20 +14990,20 @@ cat >>$cf_edit_man <<CF_EOF
esac
done
-if test $cf_inboth = yes ; then
-if test \$form != format ; then
- $SHELL \$0 format \$verb \$mandir \$srcdir \$*
+if test "$cf_inboth" = yes ; then
+if test "\$form" != format ; then
+ $SHELL "\$0" format "\$verb" "\$mandir" "\$srcdir" "\$@"
fi
fi
exit 0
CF_EOF
-chmod 755 $cf_edit_man
+chmod 755 "$cf_edit_man"
###############################################################################
### Note that some functions (such as const) are normally disabled anyway.
-echo "$as_me:14240: checking if you want to build with function extensions" >&5
+echo "$as_me:15006: checking if you want to build with function extensions" >&5
echo $ECHO_N "checking if you want to build with function extensions... $ECHO_C" >&6
# Check whether --enable-ext-funcs or --disable-ext-funcs was given.
@@ -14247,7 +15013,7 @@ if test "${enable_ext_funcs+set}" = set; then
else
with_ext_funcs=yes
fi;
-echo "$as_me:14250: result: $with_ext_funcs" >&5
+echo "$as_me:15016: result: $with_ext_funcs" >&5
echo "${ECHO_T}$with_ext_funcs" >&6
if test "x$with_ext_funcs" = xyes ; then
NCURSES_EXT_FUNCS=1
@@ -14307,7 +15073,7 @@ else
GENERATED_EXT_FUNCS=
fi
-echo "$as_me:14310: checking if you want to build with SCREEN extensions" >&5
+echo "$as_me:15076: checking if you want to build with SCREEN extensions" >&5
echo $ECHO_N "checking if you want to build with SCREEN extensions... $ECHO_C" >&6
# Check whether --enable-sp-funcs or --disable-sp-funcs was given.
@@ -14317,7 +15083,7 @@ if test "${enable_sp_funcs+set}" = set; then
else
with_sp_funcs=$cf_dft_ext_spfuncs
fi;
-echo "$as_me:14320: result: $with_sp_funcs" >&5
+echo "$as_me:15086: result: $with_sp_funcs" >&5
echo "${ECHO_T}$with_sp_funcs" >&6
if test "x$with_sp_funcs" = xyes ; then
NCURSES_SP_FUNCS=1
@@ -14336,7 +15102,7 @@ else
GENERATED_SP_FUNCS=
fi
-echo "$as_me:14339: checking if you want to build with terminal-driver" >&5
+echo "$as_me:15105: checking if you want to build with terminal-driver" >&5
echo $ECHO_N "checking if you want to build with terminal-driver... $ECHO_C" >&6
# Check whether --enable-term-driver or --disable-term-driver was given.
@@ -14346,7 +15112,7 @@ if test "${enable_term_driver+set}" = set; then
else
with_term_driver=no
fi;
-echo "$as_me:14349: result: $with_term_driver" >&5
+echo "$as_me:15115: result: $with_term_driver" >&5
echo "${ECHO_T}$with_term_driver" >&6
if test "x$with_term_driver" = xyes ; then
@@ -14355,19 +15121,19 @@ cat >>confdefs.h <<\EOF
EOF
if test "x$with_termlib" != xno ; then
- { { echo "$as_me:14358: error: The term-driver option conflicts with the termlib option" >&5
+ { { echo "$as_me:15124: error: The term-driver option conflicts with the termlib option" >&5
echo "$as_me: error: The term-driver option conflicts with the termlib option" >&2;}
{ (exit 1); exit 1; }; }
fi
if test "x$with_sp_funcs" != xyes ; then
- { { echo "$as_me:14363: error: The term-driver option relies upon sp-funcs" >&5
+ { { echo "$as_me:15129: error: The term-driver option relies upon sp-funcs" >&5
echo "$as_me: error: The term-driver option relies upon sp-funcs" >&2;}
{ (exit 1); exit 1; }; }
fi
fi
### use option --enable-const to turn on use of const beyond that in XSI.
-echo "$as_me:14370: checking for extended use of const keyword" >&5
+echo "$as_me:15136: checking for extended use of const keyword" >&5
echo $ECHO_N "checking for extended use of const keyword... $ECHO_C" >&6
# Check whether --enable-const or --disable-const was given.
@@ -14377,7 +15143,7 @@ if test "${enable_const+set}" = set; then
else
with_ext_const=$cf_dft_ext_const
fi;
-echo "$as_me:14380: result: $with_ext_const" >&5
+echo "$as_me:15146: result: $with_ext_const" >&5
echo "${ECHO_T}$with_ext_const" >&6
NCURSES_CONST='/*nothing*/'
if test "x$with_ext_const" = xyes ; then
@@ -14385,7 +15151,7 @@ if test "x$with_ext_const" = xyes ; then
fi
### use option --enable-ext-colors to turn on use of colors beyond 16.
-echo "$as_me:14388: checking if you want to use extended colors" >&5
+echo "$as_me:15154: checking if you want to use extended colors" >&5
echo $ECHO_N "checking if you want to use extended colors... $ECHO_C" >&6
# Check whether --enable-ext-colors or --disable-ext-colors was given.
@@ -14395,22 +15161,22 @@ if test "${enable_ext_colors+set}" = set; then
else
with_ext_colors=$cf_dft_ext_colors
fi;
-echo "$as_me:14398: result: $with_ext_colors" >&5
+echo "$as_me:15164: result: $with_ext_colors" >&5
echo "${ECHO_T}$with_ext_colors" >&6
NCURSES_EXT_COLORS=0
if test "x$with_ext_colors" = xyes ; then
if test "x$with_widec" != xyes ; then
- { echo "$as_me:14403: WARNING: This option applies only to wide-character library" >&5
+ { echo "$as_me:15169: WARNING: This option applies only to wide-character library" >&5
echo "$as_me: WARNING: This option applies only to wide-character library" >&2;}
else
# cannot be ABI 5 since it changes sizeof(cchar_t)
if test "${with_abi_version+set}" != set; then
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=6.0
cf_cv_abi_version=6
- { echo "$as_me:14413: WARNING: overriding ABI version to $cf_cv_abi_version" >&5
+ { echo "$as_me:15179: WARNING: overriding ABI version to $cf_cv_abi_version" >&5
echo "$as_me: WARNING: overriding ABI version to $cf_cv_abi_version" >&2;}
;;
esac
@@ -14438,7 +15204,7 @@ EOF
fi
### use option --enable-ext-mouse to modify coding to support 5-button mice
-echo "$as_me:14441: checking if you want to use extended mouse encoding" >&5
+echo "$as_me:15207: checking if you want to use extended mouse encoding" >&5
echo $ECHO_N "checking if you want to use extended mouse encoding... $ECHO_C" >&6
# Check whether --enable-ext-mouse or --disable-ext-mouse was given.
@@ -14448,18 +15214,18 @@ if test "${enable_ext_mouse+set}" = set; then
else
with_ext_mouse=$cf_dft_ext_mouse
fi;
-echo "$as_me:14451: result: $with_ext_mouse" >&5
+echo "$as_me:15217: result: $with_ext_mouse" >&5
echo "${ECHO_T}$with_ext_mouse" >&6
NCURSES_MOUSE_VERSION=1
if test "x$with_ext_mouse" = xyes ; then
NCURSES_MOUSE_VERSION=2
if test "${with_abi_version+set}" != set; then
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=6.0
cf_cv_abi_version=6
- { echo "$as_me:14462: WARNING: overriding ABI version to $cf_cv_abi_version" >&5
+ { echo "$as_me:15228: WARNING: overriding ABI version to $cf_cv_abi_version" >&5
echo "$as_me: WARNING: overriding ABI version to $cf_cv_abi_version" >&2;}
;;
esac
@@ -14468,7 +15234,7 @@ fi
fi
### use option --enable-ext-putwin to turn on extended screendumps
-echo "$as_me:14471: checking if you want to use extended putwin/screendump" >&5
+echo "$as_me:15237: checking if you want to use extended putwin/screendump" >&5
echo $ECHO_N "checking if you want to use extended putwin/screendump... $ECHO_C" >&6
# Check whether --enable-ext-putwin or --disable-ext-putwin was given.
@@ -14478,7 +15244,7 @@ if test "${enable_ext_putwin+set}" = set; then
else
with_ext_putwin=$cf_dft_ext_putwin
fi;
-echo "$as_me:14481: result: $with_ext_putwin" >&5
+echo "$as_me:15247: result: $with_ext_putwin" >&5
echo "${ECHO_T}$with_ext_putwin" >&6
if test "x$with_ext_putwin" = xyes ; then
@@ -14488,7 +15254,7 @@ EOF
fi
-echo "$as_me:14491: checking if you want \$NCURSES_NO_PADDING code" >&5
+echo "$as_me:15257: checking if you want \$NCURSES_NO_PADDING code" >&5
echo $ECHO_N "checking if you want \$NCURSES_NO_PADDING code... $ECHO_C" >&6
# Check whether --enable-no-padding or --disable-no-padding was given.
@@ -14498,7 +15264,7 @@ if test "${enable_no_padding+set}" = set; then
else
with_no_padding=$with_ext_funcs
fi;
-echo "$as_me:14501: result: $with_no_padding" >&5
+echo "$as_me:15267: result: $with_no_padding" >&5
echo "${ECHO_T}$with_no_padding" >&6
test "x$with_no_padding" = xyes &&
cat >>confdefs.h <<\EOF
@@ -14506,7 +15272,7 @@ cat >>confdefs.h <<\EOF
EOF
### use option --enable-sigwinch to turn on use of SIGWINCH logic
-echo "$as_me:14509: checking if you want SIGWINCH handler" >&5
+echo "$as_me:15275: checking if you want SIGWINCH handler" >&5
echo $ECHO_N "checking if you want SIGWINCH handler... $ECHO_C" >&6
# Check whether --enable-sigwinch or --disable-sigwinch was given.
@@ -14516,7 +15282,7 @@ if test "${enable_sigwinch+set}" = set; then
else
with_sigwinch=$with_ext_funcs
fi;
-echo "$as_me:14519: result: $with_sigwinch" >&5
+echo "$as_me:15285: result: $with_sigwinch" >&5
echo "${ECHO_T}$with_sigwinch" >&6
test "x$with_sigwinch" = xyes &&
cat >>confdefs.h <<\EOF
@@ -14524,7 +15290,7 @@ cat >>confdefs.h <<\EOF
EOF
### use option --enable-tcap-names to allow user to define new capabilities
-echo "$as_me:14527: checking if you want user-definable terminal capabilities like termcap" >&5
+echo "$as_me:15293: checking if you want user-definable terminal capabilities like termcap" >&5
echo $ECHO_N "checking if you want user-definable terminal capabilities like termcap... $ECHO_C" >&6
# Check whether --enable-tcap-names or --disable-tcap-names was given.
@@ -14534,14 +15300,14 @@ if test "${enable_tcap_names+set}" = set; then
else
with_tcap_names=$with_ext_funcs
fi;
-echo "$as_me:14537: result: $with_tcap_names" >&5
+echo "$as_me:15303: result: $with_tcap_names" >&5
echo "${ECHO_T}$with_tcap_names" >&6
NCURSES_XNAMES=0
test "x$with_tcap_names" = xyes && NCURSES_XNAMES=1
##############################################################################
-echo "$as_me:14544: checking if you want to link with the pthread library" >&5
+echo "$as_me:15310: checking if you want to link with the pthread library" >&5
echo $ECHO_N "checking if you want to link with the pthread library... $ECHO_C" >&6
# Check whether --with-pthread or --without-pthread was given.
@@ -14551,28 +15317,28 @@ if test "${with_pthread+set}" = set; then
else
with_pthread=no
fi;
-echo "$as_me:14554: result: $with_pthread" >&5
+echo "$as_me:15320: result: $with_pthread" >&5
echo "${ECHO_T}$with_pthread" >&6
if test "$with_pthread" != no ; then
- echo "$as_me:14558: checking for pthread.h" >&5
+ echo "$as_me:15324: checking for pthread.h" >&5
echo $ECHO_N "checking for pthread.h... $ECHO_C" >&6
if test "${ac_cv_header_pthread_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14564 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15330 "configure"
#include "confdefs.h"
#include <pthread.h>
_ACEOF
-if { (eval echo "$as_me:14568: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:15334: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:14574: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:15340: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -14585,14 +15351,14 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_pthread_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_pthread_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:14593: result: $ac_cv_header_pthread_h" >&5
+echo "$as_me:15359: result: $ac_cv_header_pthread_h" >&5
echo "${ECHO_T}$ac_cv_header_pthread_h" >&6
-if test $ac_cv_header_pthread_h = yes; then
+if test "$ac_cv_header_pthread_h" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_PTHREADS_H 1
@@ -14600,7 +15366,7 @@ EOF
for cf_lib_pthread in pthread c_r
do
- echo "$as_me:14603: checking if we can link with the $cf_lib_pthread library" >&5
+ echo "$as_me:15369: checking if we can link with the $cf_lib_pthread library" >&5
echo $ECHO_N "checking if we can link with the $cf_lib_pthread library... $ECHO_C" >&6
cf_save_LIBS="$LIBS"
@@ -14620,8 +15386,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 14624 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15390 "configure"
#include "confdefs.h"
#include <pthread.h>
@@ -14637,27 +15403,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14641: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15407: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14644: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14647: \"$ac_try\"") >&5
+ echo "$as_me:15410: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15413: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14650: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15416: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
with_pthread=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
with_pthread=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
- echo "$as_me:14660: result: $with_pthread" >&5
+ echo "$as_me:15426: result: $with_pthread" >&5
echo "${ECHO_T}$with_pthread" >&6
test "$with_pthread" = yes && break
done
@@ -14685,7 +15451,7 @@ cat >>confdefs.h <<\EOF
EOF
else
- { { echo "$as_me:14688: error: Cannot link with pthread library" >&5
+ { { echo "$as_me:15454: error: Cannot link with pthread library" >&5
echo "$as_me: error: Cannot link with pthread library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -14695,13 +15461,13 @@ fi
fi
if test "x$with_pthread" != xno; then
- echo "$as_me:14698: checking for pthread_kill" >&5
+ echo "$as_me:15464: checking for pthread_kill" >&5
echo $ECHO_N "checking for pthread_kill... $ECHO_C" >&6
if test "${ac_cv_func_pthread_kill+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14704 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15470 "configure"
#include "confdefs.h"
#define pthread_kill autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -14731,31 +15497,31 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14735: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15501: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14738: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14741: \"$ac_try\"") >&5
+ echo "$as_me:15504: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15507: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14744: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15510: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_pthread_kill=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_pthread_kill=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:14754: result: $ac_cv_func_pthread_kill" >&5
+echo "$as_me:15520: result: $ac_cv_func_pthread_kill" >&5
echo "${ECHO_T}$ac_cv_func_pthread_kill" >&6
-if test $ac_cv_func_pthread_kill = yes; then
+if test "$ac_cv_func_pthread_kill" = yes; then
- echo "$as_me:14758: checking if you want to allow EINTR in wgetch with pthreads" >&5
+ echo "$as_me:15524: checking if you want to allow EINTR in wgetch with pthreads" >&5
echo $ECHO_N "checking if you want to allow EINTR in wgetch with pthreads... $ECHO_C" >&6
# Check whether --enable-pthreads-eintr or --disable-pthreads-eintr was given.
@@ -14765,7 +15531,7 @@ if test "${enable_pthreads_eintr+set}" = set; then
else
use_pthreads_eintr=no
fi;
- echo "$as_me:14768: result: $use_pthreads_eintr" >&5
+ echo "$as_me:15534: result: $use_pthreads_eintr" >&5
echo "${ECHO_T}$use_pthreads_eintr" >&6
if test "x$use_pthreads_eintr" = xyes ; then
@@ -14776,7 +15542,7 @@ EOF
fi
fi
- echo "$as_me:14779: checking if you want to use weak-symbols for pthreads" >&5
+ echo "$as_me:15545: checking if you want to use weak-symbols for pthreads" >&5
echo $ECHO_N "checking if you want to use weak-symbols for pthreads... $ECHO_C" >&6
# Check whether --enable-weak-symbols or --disable-weak-symbols was given.
@@ -14786,18 +15552,18 @@ if test "${enable_weak_symbols+set}" = set; then
else
use_weak_symbols=no
fi;
- echo "$as_me:14789: result: $use_weak_symbols" >&5
+ echo "$as_me:15555: result: $use_weak_symbols" >&5
echo "${ECHO_T}$use_weak_symbols" >&6
if test "x$use_weak_symbols" = xyes ; then
-echo "$as_me:14793: checking if $CC supports weak symbols" >&5
+echo "$as_me:15559: checking if $CC supports weak symbols" >&5
echo $ECHO_N "checking if $CC supports weak symbols... $ECHO_C" >&6
if test "${cf_cv_weak_symbols+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 14800 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 15566 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -14822,28 +15588,28 @@ weak_symbol(fopen);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14826: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:15592: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14829: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14832: \"$ac_try\"") >&5
+ echo "$as_me:15595: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:15598: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14835: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15601: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_weak_symbols=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_weak_symbols=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:14846: result: $cf_cv_weak_symbols" >&5
+echo "$as_me:15612: result: $cf_cv_weak_symbols" >&5
echo "${ECHO_T}$cf_cv_weak_symbols" >&6
else
@@ -14893,7 +15659,7 @@ fi
# opaque outside of that, so there is no --enable-opaque option. We can use
# this option without --with-pthreads, but this will be always set for
# pthreads.
-echo "$as_me:14896: checking if you want reentrant code" >&5
+echo "$as_me:15662: checking if you want reentrant code" >&5
echo $ECHO_N "checking if you want reentrant code... $ECHO_C" >&6
# Check whether --enable-reentrant or --disable-reentrant was given.
@@ -14903,7 +15669,7 @@ if test "${enable_reentrant+set}" = set; then
else
with_reentrant=no
fi;
-echo "$as_me:14906: result: $with_reentrant" >&5
+echo "$as_me:15672: result: $with_reentrant" >&5
echo "${ECHO_T}$with_reentrant" >&6
if test "x$with_reentrant" = xyes ; then
cf_cv_enable_reentrant=1
@@ -14987,11 +15753,11 @@ cat >>confdefs.h <<\EOF
EOF
if test "${with_abi_version+set}" != set; then
- case $cf_cv_rel_version in
+ case "$cf_cv_rel_version" in
(5.*)
cf_cv_rel_version=6.0
cf_cv_abi_version=6
- { echo "$as_me:14994: WARNING: overriding ABI version to $cf_cv_abi_version" >&5
+ { echo "$as_me:15760: WARNING: overriding ABI version to $cf_cv_abi_version" >&5
echo "$as_me: WARNING: overriding ABI version to $cf_cv_abi_version" >&2;}
;;
esac
@@ -15003,7 +15769,7 @@ else
NCURSES_SIZE_T=short
fi
-echo "$as_me:15006: checking if you want opaque curses-library structures" >&5
+echo "$as_me:15772: checking if you want opaque curses-library structures" >&5
echo $ECHO_N "checking if you want opaque curses-library structures... $ECHO_C" >&6
# Check whether --enable-opaque-curses or --disable-opaque-curses was given.
@@ -15025,16 +15791,16 @@ else
test "$cf_cv_enable_reentrant" = 1 || enable_opaque_curses=no
fi;
-echo "$as_me:15028: result: $enable_opaque_curses" >&5
+echo "$as_me:15794: result: $enable_opaque_curses" >&5
echo "${ECHO_T}$enable_opaque_curses" >&6
test "$cf_cv_enable_reentrant" = 1 && \
test "$enable_opaque_curses" = no && \
-{ { echo "$as_me:15033: error: reentrant configuration requires opaque library" >&5
+{ { echo "$as_me:15799: error: reentrant configuration requires opaque library" >&5
echo "$as_me: error: reentrant configuration requires opaque library" >&2;}
{ (exit 1); exit 1; }; }
-echo "$as_me:15037: checking if you want opaque form-library structures" >&5
+echo "$as_me:15803: checking if you want opaque form-library structures" >&5
echo $ECHO_N "checking if you want opaque form-library structures... $ECHO_C" >&6
# Check whether --enable-opaque-form or --disable-opaque-form was given.
@@ -15044,10 +15810,10 @@ if test "${enable_opaque_form+set}" = set; then
else
enable_opaque_form=no
fi;
-echo "$as_me:15047: result: $enable_opaque_form" >&5
+echo "$as_me:15813: result: $enable_opaque_form" >&5
echo "${ECHO_T}$enable_opaque_form" >&6
-echo "$as_me:15050: checking if you want opaque menu-library structures" >&5
+echo "$as_me:15816: checking if you want opaque menu-library structures" >&5
echo $ECHO_N "checking if you want opaque menu-library structures... $ECHO_C" >&6
# Check whether --enable-opaque-menu or --disable-opaque-menu was given.
@@ -15057,10 +15823,10 @@ if test "${enable_opaque_menu+set}" = set; then
else
enable_opaque_menu=no
fi;
-echo "$as_me:15060: result: $enable_opaque_menu" >&5
+echo "$as_me:15826: result: $enable_opaque_menu" >&5
echo "${ECHO_T}$enable_opaque_menu" >&6
-echo "$as_me:15063: checking if you want opaque panel-library structures" >&5
+echo "$as_me:15829: checking if you want opaque panel-library structures" >&5
echo $ECHO_N "checking if you want opaque panel-library structures... $ECHO_C" >&6
# Check whether --enable-opaque-panel or --disable-opaque-panel was given.
@@ -15070,7 +15836,7 @@ if test "${enable_opaque_panel+set}" = set; then
else
enable_opaque_panel=no
fi;
-echo "$as_me:15073: result: $enable_opaque_panel" >&5
+echo "$as_me:15839: result: $enable_opaque_panel" >&5
echo "${ECHO_T}$enable_opaque_panel" >&6
NCURSES_OPAQUE=0; test "$enable_opaque_curses" = yes && NCURSES_OPAQUE=1
@@ -15080,7 +15846,7 @@ NCURSES_OPAQUE_PANEL=0; test "$enable_opaque_panel" = yes && NCURSES_OPAQUE_PAN
### Allow using a different wrap-prefix
if test "$cf_cv_enable_reentrant" != 0 || test "$BROKEN_LINKER" = 1 ; then
- echo "$as_me:15083: checking for prefix used to wrap public variables" >&5
+ echo "$as_me:15849: checking for prefix used to wrap public variables" >&5
echo $ECHO_N "checking for prefix used to wrap public variables... $ECHO_C" >&6
# Check whether --with-wrap-prefix or --without-wrap-prefix was given.
@@ -15090,7 +15856,7 @@ if test "${with_wrap_prefix+set}" = set; then
else
NCURSES_WRAP_PREFIX=_nc_
fi;
- echo "$as_me:15093: result: $NCURSES_WRAP_PREFIX" >&5
+ echo "$as_me:15859: result: $NCURSES_WRAP_PREFIX" >&5
echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6
else
NCURSES_WRAP_PREFIX=_nc_
@@ -15103,7 +15869,7 @@ EOF
###############################################################################
# These options are relatively safe to experiment with.
-echo "$as_me:15106: checking if you want all development code" >&5
+echo "$as_me:15872: checking if you want all development code" >&5
echo $ECHO_N "checking if you want all development code... $ECHO_C" >&6
# Check whether --with-develop or --without-develop was given.
@@ -15113,11 +15879,11 @@ if test "${with_develop+set}" = set; then
else
with_develop=no
fi;
-echo "$as_me:15116: result: $with_develop" >&5
+echo "$as_me:15882: result: $with_develop" >&5
echo "${ECHO_T}$with_develop" >&6
### use option --enable-hard-tabs to turn on use of hard-tabs optimize
-echo "$as_me:15120: checking if you want hard-tabs code" >&5
+echo "$as_me:15886: checking if you want hard-tabs code" >&5
echo $ECHO_N "checking if you want hard-tabs code... $ECHO_C" >&6
# Check whether --enable-hard-tabs or --disable-hard-tabs was given.
@@ -15127,7 +15893,7 @@ if test "${enable_hard_tabs+set}" = set; then
else
enable_hard_tabs=$with_develop
fi;
-echo "$as_me:15130: result: $enable_hard_tabs" >&5
+echo "$as_me:15896: result: $enable_hard_tabs" >&5
echo "${ECHO_T}$enable_hard_tabs" >&6
test "x$enable_hard_tabs" = xyes &&
cat >>confdefs.h <<\EOF
@@ -15135,7 +15901,7 @@ cat >>confdefs.h <<\EOF
EOF
### use option --enable-xmc-glitch to turn on use of magic-cookie optimize
-echo "$as_me:15138: checking if you want limited support for xmc" >&5
+echo "$as_me:15904: checking if you want limited support for xmc" >&5
echo $ECHO_N "checking if you want limited support for xmc... $ECHO_C" >&6
# Check whether --enable-xmc-glitch or --disable-xmc-glitch was given.
@@ -15145,7 +15911,7 @@ if test "${enable_xmc_glitch+set}" = set; then
else
enable_xmc_glitch=$with_develop
fi;
-echo "$as_me:15148: result: $enable_xmc_glitch" >&5
+echo "$as_me:15914: result: $enable_xmc_glitch" >&5
echo "${ECHO_T}$enable_xmc_glitch" >&6
test "x$enable_xmc_glitch" = xyes &&
cat >>confdefs.h <<\EOF
@@ -15155,7 +15921,7 @@ EOF
###############################################################################
# These are just experimental, probably should not be in a package:
-echo "$as_me:15158: checking if you do not want to assume colors are white-on-black" >&5
+echo "$as_me:15924: checking if you do not want to assume colors are white-on-black" >&5
echo $ECHO_N "checking if you do not want to assume colors are white-on-black... $ECHO_C" >&6
# Check whether --enable-assumed-color or --disable-assumed-color was given.
@@ -15165,7 +15931,7 @@ if test "${enable_assumed_color+set}" = set; then
else
with_assumed_color=yes
fi;
-echo "$as_me:15168: result: $with_assumed_color" >&5
+echo "$as_me:15934: result: $with_assumed_color" >&5
echo "${ECHO_T}$with_assumed_color" >&6
test "x$with_assumed_color" = xyes &&
cat >>confdefs.h <<\EOF
@@ -15173,7 +15939,7 @@ cat >>confdefs.h <<\EOF
EOF
### use option --enable-hashmap to turn on use of hashmap scrolling logic
-echo "$as_me:15176: checking if you want hashmap scrolling-optimization code" >&5
+echo "$as_me:15942: checking if you want hashmap scrolling-optimization code" >&5
echo $ECHO_N "checking if you want hashmap scrolling-optimization code... $ECHO_C" >&6
# Check whether --enable-hashmap or --disable-hashmap was given.
@@ -15183,7 +15949,7 @@ if test "${enable_hashmap+set}" = set; then
else
with_hashmap=yes
fi;
-echo "$as_me:15186: result: $with_hashmap" >&5
+echo "$as_me:15952: result: $with_hashmap" >&5
echo "${ECHO_T}$with_hashmap" >&6
test "x$with_hashmap" = xyes &&
cat >>confdefs.h <<\EOF
@@ -15191,7 +15957,7 @@ cat >>confdefs.h <<\EOF
EOF
### use option --enable-colorfgbg to turn on use of $COLORFGBG environment
-echo "$as_me:15194: checking if you want colorfgbg code" >&5
+echo "$as_me:15960: checking if you want colorfgbg code" >&5
echo $ECHO_N "checking if you want colorfgbg code... $ECHO_C" >&6
# Check whether --enable-colorfgbg or --disable-colorfgbg was given.
@@ -15201,15 +15967,362 @@ if test "${enable_colorfgbg+set}" = set; then
else
with_colorfgbg=no
fi;
-echo "$as_me:15204: result: $with_colorfgbg" >&5
+echo "$as_me:15970: result: $with_colorfgbg" >&5
echo "${ECHO_T}$with_colorfgbg" >&6
test "x$with_colorfgbg" = xyes &&
cat >>confdefs.h <<\EOF
#define USE_COLORFGBG 1
EOF
+### use option --enable-fvisibility to turn on use of gcc-specific feature
+echo "$as_me:15978: checking if you want to use gcc -fvisibility option" >&5
+echo $ECHO_N "checking if you want to use gcc -fvisibility option... $ECHO_C" >&6
+
+# Check whether --enable-fvisibility or --disable-fvisibility was given.
+if test "${enable_fvisibility+set}" = set; then
+ enableval="$enable_fvisibility"
+ cf_with_fvisibility=$enableval
+else
+ cf_with_fvisibility=no
+fi;
+echo "$as_me:15988: result: $cf_with_fvisibility" >&5
+echo "${ECHO_T}$cf_with_fvisibility" >&6
+
+NCURSES_IMPEXP=
+NCURSES_CXX_IMPEXP=
+if test "x$cf_with_fvisibility" = xyes; then
+
+echo "$as_me:15995: checking if $CC -fvisibility=hidden option works" >&5
+echo $ECHO_N "checking if $CC -fvisibility=hidden option works... $ECHO_C" >&6
+if test "${cf_cv_fvisibility_hidden+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+ cf_save_cflags="$CFLAGS"
+ CFLAGS="$CFLAGS -fvisibility=hidden"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16004 "configure"
+#include "confdefs.h"
+
+__attribute__ ((visibility("default"))) int somefunc() {return 42;}
+
+int
+main (void)
+{
+
+ if (somefunc()) return 1;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16020: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:16023: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16026: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:16029: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_cv_fvisibility_hidden=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_cv_fvisibility_hidden=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ CFLAGS=$cf_save_cflags
+
+fi
+echo "$as_me:16041: result: $cf_cv_fvisibility_hidden" >&5
+echo "${ECHO_T}$cf_cv_fvisibility_hidden" >&6
+
+ if test "x$cf_cv_fvisibility_hidden" = xyes
+ then
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in -fvisibility=hidden
+do
+case "$cf_fix_cppflags" in
+(no)
+ case "$cf_add_cflags" in
+ (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=yes
+
+ if test "$cf_fix_cppflags" = yes ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ elif test "${cf_tst_cflags}" = "\"'" ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ fi
+ ;;
+ esac
+ case "$CPPFLAGS" in
+ (*$cf_add_cflags)
+ ;;
+ (*)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
+
+ ;;
+ esac
+
+ test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
+ cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+ (*)
+
+ test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
+ cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+(yes)
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=no
+ ;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_new_cflags"
+
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+ test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
+ CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
+
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+ test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
+ EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
+
+fi
+
+ NCURSES_IMPEXP="__attribute__ ((visibility(\"default\")))"
+ fi
+ if test -n "$CXX"
+ then
+ ac_ext=cc
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+ac_main_return="return"
+
+echo "$as_me:16156: checking if $CXX -fvisibility=hidden option works" >&5
+echo $ECHO_N "checking if $CXX -fvisibility=hidden option works... $ECHO_C" >&6
+if test "${cf_cv_fvisibility_hidden2+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+ cf_save_cflags="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16165 "configure"
+#include "confdefs.h"
+
+__attribute__ ((visibility("default"))) int somefunc() {return 42;}
+
+int
+main (void)
+{
+
+ if (somefunc()) return 1;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16181: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:16184: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16187: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:16190: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_cv_fvisibility_hidden2=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_cv_fvisibility_hidden2=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ CXXFLAGS=$cf_save_cflags
+
+fi
+echo "$as_me:16202: result: $cf_cv_fvisibility_hidden2" >&5
+echo "${ECHO_T}$cf_cv_fvisibility_hidden2" >&6
+
+ if test "x$cf_cv_fvisibility_hidden2" = xyes
+ then
+
+cf_save_CXXFLAGS="$CFLAGS"
+CFLAGS="$CXXFLAGS"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in -fvisibility=hidden
+do
+case "$cf_fix_cppflags" in
+(no)
+ case "$cf_add_cflags" in
+ (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=yes
+
+ if test "$cf_fix_cppflags" = yes ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ elif test "${cf_tst_cflags}" = "\"'" ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ fi
+ ;;
+ esac
+ case "$CPPFLAGS" in
+ (*$cf_add_cflags)
+ ;;
+ (*)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
+
+ ;;
+ esac
+
+ test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
+ cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+ (*)
+
+ test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
+ cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+(yes)
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=no
+ ;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_new_cflags"
+
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+ test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
+ CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
+
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+ test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
+ EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
+
+fi
+
+CXXFLAGS="$CFLAGS"
+CFLAGS="$cf_save_CXXFLAGS"
+
+ NCURSES_CXX_IMPEXP="__attribute__ ((visibility(\"default\")))"
+ fi
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ac_main_return="return"
+
+ fi
+fi
+
### use option --enable-interop to turn on use of bindings used for interop
-echo "$as_me:15212: checking if you want interop bindings" >&5
+echo "$as_me:16325: checking if you want interop bindings" >&5
echo $ECHO_N "checking if you want interop bindings... $ECHO_C" >&6
# Check whether --enable-interop or --disable-interop was given.
@@ -15219,13 +16332,13 @@ if test "${enable_interop+set}" = set; then
else
with_exp_interop=$cf_dft_interop
fi;
-echo "$as_me:15222: result: $with_exp_interop" >&5
+echo "$as_me:16335: result: $with_exp_interop" >&5
echo "${ECHO_T}$with_exp_interop" >&6
NCURSES_INTEROP_FUNCS=0
test "x$with_exp_interop" = xyes && NCURSES_INTEROP_FUNCS=1
-echo "$as_me:15228: checking if you want experimental safe-sprintf code" >&5
+echo "$as_me:16341: checking if you want experimental safe-sprintf code" >&5
echo $ECHO_N "checking if you want experimental safe-sprintf code... $ECHO_C" >&6
# Check whether --enable-safe-sprintf or --disable-safe-sprintf was given.
@@ -15235,13 +16348,13 @@ if test "${enable_safe_sprintf+set}" = set; then
else
with_safe_sprintf=no
fi;
-echo "$as_me:15238: result: $with_safe_sprintf" >&5
+echo "$as_me:16351: result: $with_safe_sprintf" >&5
echo "${ECHO_T}$with_safe_sprintf" >&6
### use option --disable-scroll-hints to turn off use of scroll-hints scrolling logic
# when hashmap is used scroll hints are useless
if test "$with_hashmap" = no ; then
-echo "$as_me:15244: checking if you want to experiment without scrolling-hints code" >&5
+echo "$as_me:16357: checking if you want to experiment without scrolling-hints code" >&5
echo $ECHO_N "checking if you want to experiment without scrolling-hints code... $ECHO_C" >&6
# Check whether --enable-scroll-hints or --disable-scroll-hints was given.
@@ -15251,7 +16364,7 @@ if test "${enable_scroll_hints+set}" = set; then
else
with_scroll_hints=yes
fi;
-echo "$as_me:15254: result: $with_scroll_hints" >&5
+echo "$as_me:16367: result: $with_scroll_hints" >&5
echo "${ECHO_T}$with_scroll_hints" >&6
test "x$with_scroll_hints" = xyes &&
cat >>confdefs.h <<\EOF
@@ -15260,7 +16373,7 @@ EOF
fi
-echo "$as_me:15263: checking if you want wgetch-events code" >&5
+echo "$as_me:16376: checking if you want wgetch-events code" >&5
echo $ECHO_N "checking if you want wgetch-events code... $ECHO_C" >&6
# Check whether --enable-wgetch-events or --disable-wgetch-events was given.
@@ -15270,18 +16383,58 @@ if test "${enable_wgetch_events+set}" = set; then
else
with_wgetch_events=no
fi;
-echo "$as_me:15273: result: $with_wgetch_events" >&5
+echo "$as_me:16386: result: $with_wgetch_events" >&5
echo "${ECHO_T}$with_wgetch_events" >&6
-test "x$with_wgetch_events" = xyes &&
+if test "x$with_wgetch_events" = xyes ; then
+
cat >>confdefs.h <<\EOF
#define NCURSES_WGETCH_EVENTS 1
EOF
+ NCURSES_WGETCH_EVENTS=1
+else
+ NCURSES_WGETCH_EVENTS=0
+fi
+
+case "$cf_cv_system_name" in
+(*mingw32*|*mingw64*|*-msvc*)
+ echo "$as_me:16401: checking if you want experimental-Windows driver" >&5
+echo $ECHO_N "checking if you want experimental-Windows driver... $ECHO_C" >&6
+
+# Check whether --enable-exp-win32 or --disable-exp-win32 was given.
+if test "${enable_exp_win32+set}" = set; then
+ enableval="$enable_exp_win32"
+ with_exp_win32=$enableval
+else
+ with_exp_win32=no
+fi;
+ echo "$as_me:16411: result: $with_exp_win32" >&5
+echo "${ECHO_T}$with_exp_win32" >&6
+ if test "x$with_exp_win32" = xyes
+ then
+
+cat >>confdefs.h <<\EOF
+#define EXP_WIN32_DRIVER 1
+EOF
+
+ EXP_WIN32_DRIVER=1
+ INTERNALS_HDR='$(INCDIR)/nc_win32.h'
+ else
+ INTERNALS_HDR='$(INCDIR)/nc_mingw.h'
+ EXP_WIN32_DRIVER=0
+ fi
+ ;;
+(*)
+ EXP_WIN32_DRIVER=0
+ INTERNALS_HDR=
+ ;;
+esac
+
###############################################################################
### use option --disable-echo to suppress full display compiling commands
-echo "$as_me:15284: checking if you want to see long compiling messages" >&5
+echo "$as_me:16437: checking if you want to see long compiling messages" >&5
echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6
# Check whether --enable-echo or --disable-echo was given.
@@ -15315,7 +16468,7 @@ else
ECHO_CC=''
fi;
-echo "$as_me:15318: result: $enableval" >&5
+echo "$as_me:16471: result: $enableval" >&5
echo "${ECHO_T}$enableval" >&6
if test "x$enable_echo" = xyes; then
@@ -15328,7 +16481,7 @@ fi
# --disable-stripping is used for debugging
-echo "$as_me:15331: checking if you want to install stripped executables" >&5
+echo "$as_me:16484: checking if you want to install stripped executables" >&5
echo $ECHO_N "checking if you want to install stripped executables... $ECHO_C" >&6
# Check whether --enable-stripping or --disable-stripping was given.
@@ -15336,33 +16489,33 @@ if test "${enable_stripping+set}" = set; then
enableval="$enable_stripping"
test "$enableval" != no && enableval=yes
if test "$enableval" != "yes" ; then
- with_stripping=no
+ enable_stripping=no
else
- with_stripping=yes
+ enable_stripping=yes
fi
else
enableval=yes
- with_stripping=yes
+ enable_stripping=yes
fi;
-echo "$as_me:15348: result: $with_stripping" >&5
-echo "${ECHO_T}$with_stripping" >&6
+echo "$as_me:16501: result: $enable_stripping" >&5
+echo "${ECHO_T}$enable_stripping" >&6
-if test "$with_stripping" = yes
+if test "$enable_stripping" = yes
then
INSTALL_OPT_S="-s"
else
INSTALL_OPT_S=
fi
-: ${INSTALL:=install}
-echo "$as_me:15359: checking if install accepts -p option" >&5
+: "${INSTALL:=install}"
+echo "$as_me:16512: checking if install accepts -p option" >&5
echo $ECHO_N "checking if install accepts -p option... $ECHO_C" >&6
if test "${cf_cv_install_p+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- rm -rf conftest*
+ rm -rf ./conftest*
date >conftest.in
mkdir conftest.out
sleep 3
@@ -15384,13 +16537,13 @@ else
else
cf_cv_install_p=no
fi
- rm -rf conftest*
+ rm -rf ./conftest*
fi
-echo "$as_me:15390: result: $cf_cv_install_p" >&5
+echo "$as_me:16543: result: $cf_cv_install_p" >&5
echo "${ECHO_T}$cf_cv_install_p" >&6
-echo "$as_me:15393: checking if install needs to be told about ownership" >&5
+echo "$as_me:16546: checking if install needs to be told about ownership" >&5
echo $ECHO_N "checking if install needs to be told about ownership... $ECHO_C" >&6
case `$ac_config_guess` in
(*minix)
@@ -15401,11 +16554,11 @@ case `$ac_config_guess` in
;;
esac
-echo "$as_me:15404: result: $with_install_o" >&5
+echo "$as_me:16557: result: $with_install_o" >&5
echo "${ECHO_T}$with_install_o" >&6
if test "x$with_install_o" = xyes
then
- INSTALL_OPT_O=`id root|sed -e 's/uid=[0-9]*(/ -o /' -e 's/gid=[0-9]*(/ -g /' -e 's/ [^=[:space:]][^=[:space:]]*=.*/ /' -e 's/)//g'`
+ INSTALL_OPT_O="`id root|sed -e 's/uid=[0-9]*(/ -o /' -e 's/gid=[0-9]*(/ -g /' -e 's/ [^=[:space:]][^=[:space:]]*=.*/ /' -e 's/)//g'`"
else
INSTALL_OPT_O=
fi
@@ -15425,20 +16578,233 @@ then
fi
### use option --enable-warnings to turn on all gcc warnings
-echo "$as_me:15428: checking if you want to see compiler warnings" >&5
-echo $ECHO_N "checking if you want to see compiler warnings... $ECHO_C" >&6
+
+echo "$as_me:16582: checking if you want to use C11 _Noreturn feature" >&5
+echo $ECHO_N "checking if you want to use C11 _Noreturn feature... $ECHO_C" >&6
+
+# Check whether --enable-stdnoreturn or --disable-stdnoreturn was given.
+if test "${enable_stdnoreturn+set}" = set; then
+ enableval="$enable_stdnoreturn"
+ test "$enableval" != yes && enableval=no
+ if test "$enableval" != "no" ; then
+ enable_stdnoreturn=yes
+ else
+ enable_stdnoreturn=no
+ fi
+else
+ enableval=no
+ enable_stdnoreturn=no
+
+fi;
+echo "$as_me:16599: result: $enable_stdnoreturn" >&5
+echo "${ECHO_T}$enable_stdnoreturn" >&6
+
+if test $enable_stdnoreturn = yes; then
+echo "$as_me:16603: checking for C11 _Noreturn feature" >&5
+echo $ECHO_N "checking for C11 _Noreturn feature... $ECHO_C" >&6
+if test "${cf_cv_c11_noreturn+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16609 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdnoreturn.h>
+static _Noreturn void giveup(void) { exit(0); }
+
+int
+main (void)
+{
+if (feof(stdin)) giveup()
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16626: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:16629: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16632: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:16635: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_cv_c11_noreturn=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_cv_c11_noreturn=no
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+
+fi
+echo "$as_me:16646: result: $cf_cv_c11_noreturn" >&5
+echo "${ECHO_T}$cf_cv_c11_noreturn" >&6
+else
+ cf_cv_c11_noreturn=no,
+fi
+
+if test "$cf_cv_c11_noreturn" = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_STDNORETURN_H 1
+EOF
+
+cat >>confdefs.h <<EOF
+#define STDC_NORETURN _Noreturn
+EOF
+
+ HAVE_STDNORETURN_H=1
+else
+ HAVE_STDNORETURN_H=0
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $CFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing CFLAGS: $CFLAGS" 1>&6
+
+echo "${as_me:-configure}:16676: testing repairing CFLAGS: $CFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $CFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ CFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $CFLAGS" 1>&6
+
+echo "${as_me:-configure}:16699: testing ... fixed $CFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:16703: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $CPPFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing CPPFLAGS: $CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:16715: testing repairing CPPFLAGS: $CPPFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $CPPFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ CPPFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:16738: testing ... fixed $CPPFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:16742: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $LDFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing LDFLAGS: $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:16754: testing repairing LDFLAGS: $LDFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $LDFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ LDFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:16777: testing ... fixed $LDFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:16781: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+echo "$as_me:16787: checking if you want to turn on gcc warnings" >&5
+echo $ECHO_N "checking if you want to turn on gcc warnings... $ECHO_C" >&6
# Check whether --enable-warnings or --disable-warnings was given.
if test "${enable_warnings+set}" = set; then
enableval="$enable_warnings"
- with_warnings=$enableval
-fi;
-echo "$as_me:15436: result: $with_warnings" >&5
-echo "${ECHO_T}$with_warnings" >&6
-
-if test "x$with_warnings" = "xyes"; then
+ test "$enableval" != yes && enableval=no
+ if test "$enableval" != "no" ; then
+ enable_warnings=yes
+ else
+ enable_warnings=no
+ fi
+else
+ enableval=no
+ enable_warnings=no
- ADAFLAGS="$ADAFLAGS -gnatg"
+fi;
+echo "$as_me:16804: result: $enable_warnings" >&5
+echo "${ECHO_T}$enable_warnings" >&6
+if test "$enable_warnings" = "yes"
+then
if test "x$have_x" = xyes; then
@@ -15458,8 +16824,8 @@ do
esac
done
-cat >conftest.$ac_ext <<_ACEOF
-#line 15462 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16828 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -15468,32 +16834,32 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-String foo = malloc(1)
+String foo = malloc(1); free((void*)foo)
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15477: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16843: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15480: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:15483: \"$ac_try\"") >&5
+ echo "$as_me:16846: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16849: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15486: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16852: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
-echo "$as_me:15489: checking for X11/Xt const-feature" >&5
+echo "$as_me:16855: checking for X11/Xt const-feature" >&5
echo $ECHO_N "checking for X11/Xt const-feature... $ECHO_C" >&6
if test "${cf_cv_const_x_string+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15496 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16862 "configure"
#include "confdefs.h"
#define _CONST_X_STRING /* X11R7.8 (perhaps) */
@@ -15509,39 +16875,39 @@ String foo = malloc(1); *foo = 0
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15513: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:16879: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15516: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:15519: \"$ac_try\"") >&5
+ echo "$as_me:16882: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:16885: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15522: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16888: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_const_x_string=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_const_x_string=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:15537: result: $cf_cv_const_x_string" >&5
+echo "$as_me:16903: result: $cf_cv_const_x_string" >&5
echo "${ECHO_T}$cf_cv_const_x_string" >&6
LIBS="$cf_save_LIBS_CF_CONST_X_STRING"
CFLAGS="$cf_save_CFLAGS_CF_CONST_X_STRING"
CPPFLAGS="$cf_save_CPPFLAGS_CF_CONST_X_STRING"
-case $cf_cv_const_x_string in
+case "$cf_cv_const_x_string" in
(no)
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
@@ -15558,12 +16924,12 @@ esac
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-cat > conftest.$ac_ext <<EOF
-#line 15566 "${as_me:-configure}"
+cat > "conftest.$ac_ext" <<EOF
+#line 16932 "${as_me:-configure}"
int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
EOF
if test "$INTEL_COMPILER" = yes
@@ -15579,10 +16945,10 @@ then
# remark #981: operands are evaluated in unspecified order
# warning #279: controlling expression is constant
- { echo "$as_me:15582: checking for $CC warning options..." >&5
+ { echo "$as_me:16948: checking for $CC warning options..." >&5
echo "$as_me: checking for $CC warning options..." >&6;}
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wall"
for cf_opt in \
wd1419 \
wd1683 \
@@ -15595,12 +16961,12 @@ echo "$as_me: checking for $CC warning options..." >&6;}
wd981
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if { (eval echo "$as_me:15598: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:16964: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15601: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:15603: result: ... -$cf_opt" >&5
+ echo "$as_me:16967: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:16969: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
fi
@@ -15608,10 +16974,9 @@ echo "${ECHO_T}... -$cf_opt" >&6
CFLAGS="$cf_save_CFLAGS"
elif test "$GCC" = yes && test "$GCC_VERSION" != "unknown"
then
- { echo "$as_me:15611: checking for $CC warning options..." >&5
+ { echo "$as_me:16977: checking for $CC warning options..." >&5
echo "$as_me: checking for $CC warning options..." >&6;}
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS=
cf_warn_CONST=""
test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
@@ -15632,30 +16997,30 @@ echo "$as_me: checking for $CC warning options..." >&6;}
Wundef Wno-inline $cf_gcc_warnings $cf_warn_CONST Wno-unknown-pragmas Wswitch-enum
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if { (eval echo "$as_me:15635: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:17000: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15638: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:15640: result: ... -$cf_opt" >&5
+ echo "$as_me:17003: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:17005: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
- case $cf_opt in
+ case "$cf_opt" in
(Winline)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([34].*)
test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-echo "${as_me:-configure}:15648: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
+echo "${as_me:-configure}:17013: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
continue;;
esac
;;
(Wpointer-arith)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([12].*)
test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-echo "${as_me:-configure}:15658: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
+echo "${as_me:-configure}:17023: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
continue;;
esac
@@ -15666,21 +17031,163 @@ echo "${as_me:-configure}:15658: testing feature is broken in gcc $GCC_VERSION .
done
CFLAGS="$cf_save_CFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
+
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+cat > conftest.i <<EOF
+#ifndef GCC_PRINTF
+#define GCC_PRINTF 0
+#endif
+#ifndef GCC_SCANF
+#define GCC_SCANF 0
+#endif
+#ifndef GCC_NORETURN
+#define GCC_NORETURN /* nothing */
+#endif
+#ifndef GCC_UNUSED
+#define GCC_UNUSED /* nothing */
+#endif
+EOF
+if test "$GCC" = yes
+then
+ { echo "$as_me:17056: checking for $CC __attribute__ directives..." >&5
+echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
+cat > "conftest.$ac_ext" <<EOF
+#line 17059 "${as_me:-configure}"
+#include "confdefs.h"
+#include "conftest.h"
+#include "conftest.i"
+#if GCC_PRINTF
+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
+#else
+#define GCC_PRINTFLIKE(fmt,var) /*nothing*/
+#endif
+#if GCC_SCANF
+#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
+#else
+#define GCC_SCANFLIKE(fmt,var) /*nothing*/
+#endif
+extern void wow(char *,...) GCC_SCANFLIKE(1,2);
+extern GCC_NORETURN void oops(char *,...) GCC_PRINTFLIKE(1,2);
+extern GCC_NORETURN void foo(void);
+int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { (void)argc; (void)argv; return 0; }
+EOF
+ cf_printf_attribute=no
+ cf_scanf_attribute=no
+ for cf_attribute in scanf printf unused noreturn
+ do
+
+cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+ cf_directive="__attribute__(($cf_attribute))"
+ echo "checking for $CC $cf_directive" 1>&5
+
+ case "$cf_attribute" in
+ (printf)
+ cf_printf_attribute=yes
+ cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE 1
+EOF
+ ;;
+ (scanf)
+ cf_scanf_attribute=yes
+ cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE 1
+EOF
+ ;;
+ (*)
+ cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE $cf_directive
+EOF
+ ;;
+ esac
+
+ if { (eval echo "$as_me:17108: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:17111: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:17113: result: ... $cf_attribute" >&5
+echo "${ECHO_T}... $cf_attribute" >&6
+ cat conftest.h >>confdefs.h
+ case "$cf_attribute" in
+ (noreturn)
+
+cat >>confdefs.h <<EOF
+#define GCC_NORETURN $cf_directive
+EOF
+
+ ;;
+ (printf)
+ cf_value='/* nothing */'
+ if test "$cf_printf_attribute" != no ; then
+ cf_value='__attribute__((format(printf,fmt,var)))'
+
+cat >>confdefs.h <<\EOF
+#define GCC_PRINTF 1
+EOF
+
+ fi
+
+cat >>confdefs.h <<EOF
+#define GCC_PRINTFLIKE(fmt,var) $cf_value
+EOF
+
+ ;;
+ (scanf)
+ cf_value='/* nothing */'
+ if test "$cf_scanf_attribute" != no ; then
+ cf_value='__attribute__((format(scanf,fmt,var)))'
+
+cat >>confdefs.h <<\EOF
+#define GCC_SCANF 1
+EOF
+
+ fi
+
+cat >>confdefs.h <<EOF
+#define GCC_SCANFLIKE(fmt,var) $cf_value
+EOF
+
+ ;;
+ (unused)
+
+cat >>confdefs.h <<EOF
+#define GCC_UNUSED $cf_directive
+EOF
+
+ ;;
+ esac
+ fi
+ done
+else
+ ${FGREP-fgrep} define conftest.i >>confdefs.h
+fi
+rm -rf ./conftest*
+fi
+
+fi
+
+if test "x$enable_warnings" = "xyes"; then
+
+ ADAFLAGS="$ADAFLAGS -gnatg"
if test "x$cf_with_cxx" = xyes ; then
INTEL_CPLUSPLUS=no
if test "$GCC" = yes ; then
- case $host_os in
+ case "$host_os" in
(linux*|gnu*)
- echo "$as_me:15678: checking if this is really Intel C++ compiler" >&5
+ echo "$as_me:17185: checking if this is really Intel C++ compiler" >&5
echo $ECHO_N "checking if this is really Intel C++ compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CXXFLAGS"
CXXFLAGS="$CXXFLAGS -no-gcc"
- cat >conftest.$ac_ext <<_ACEOF
-#line 15683 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17190 "configure"
#include "confdefs.h"
int
@@ -15696,28 +17203,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15700: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:17207: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15703: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:15706: \"$ac_try\"") >&5
+ echo "$as_me:17210: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:17213: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15709: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17216: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
INTEL_CPLUSPLUS=yes
cf_save_CFLAGS="$cf_save_CFLAGS -we147"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CXXFLAGS="$cf_save_CFLAGS"
- echo "$as_me:15720: result: $INTEL_CPLUSPLUS" >&5
+ echo "$as_me:17227: result: $INTEL_CPLUSPLUS" >&5
echo "${ECHO_T}$INTEL_CPLUSPLUS" >&6
;;
esac
@@ -15726,12 +17233,11 @@ fi
CLANG_CPLUSPLUS=no
if test "$GCC" = yes ; then
- echo "$as_me:15729: checking if this is really Clang C++ compiler" >&5
+ echo "$as_me:17236: checking if this is really Clang C++ compiler" >&5
echo $ECHO_N "checking if this is really Clang C++ compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -Qunused-arguments"
- cat >conftest.$ac_ext <<_ACEOF
-#line 15734 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17240 "configure"
#include "confdefs.h"
int
@@ -15747,40 +17253,116 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15751: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:17257: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15754: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:15757: \"$ac_try\"") >&5
+ echo "$as_me:17260: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:17263: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15760: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17266: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
CLANG_CPLUSPLUS=yes
-cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CXXFLAGS="$cf_save_CFLAGS"
- echo "$as_me:15771: result: $CLANG_CPLUSPLUS" >&5
+ echo "$as_me:17276: result: $CLANG_CPLUSPLUS" >&5
echo "${ECHO_T}$CLANG_CPLUSPLUS" >&6
fi
+CLANG_VERSION=none
+
+if test "x$CLANG_CPLUSPLUS" = "xyes" ; then
+ case "$CC" in
+ (c[1-9][0-9]|*/c[1-9][0-9])
+ { echo "$as_me:17285: WARNING: replacing broken compiler alias $CC" >&5
+echo "$as_me: WARNING: replacing broken compiler alias $CC" >&2;}
+ CFLAGS="$CFLAGS -std=`echo "$CC" | sed -e 's%.*/%%'`"
+ CC=clang
+ ;;
+ esac
+
+ echo "$as_me:17292: checking version of $CC" >&5
+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
+ CLANG_VERSION="`$CC --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(CLANG[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
+ test -z "$CLANG_VERSION" && CLANG_VERSION=unknown
+ echo "$as_me:17296: result: $CLANG_VERSION" >&5
+echo "${ECHO_T}$CLANG_VERSION" >&6
+
+ for cf_clang_opt in \
+ -Qunused-arguments \
+ -Wno-error=implicit-function-declaration
+ do
+ echo "$as_me:17303: checking if option $cf_clang_opt works" >&5
+echo $ECHO_N "checking if option $cf_clang_opt works... $ECHO_C" >&6
+ cf_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $cf_clang_opt"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17308 "configure"
+#include "confdefs.h"
+
+ #include <stdio.h>
+int
+main (void)
+{
+
+ printf("hello!\\n");
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17322: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:17325: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17328: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:17331: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+
+ cf_clang_optok=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+
+ cf_clang_optok=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:17342: result: $cf_clang_optok" >&5
+echo "${ECHO_T}$cf_clang_optok" >&6
+ CFLAGS="$cf_save_CFLAGS"
+ if test "$cf_clang_optok" = yes; then
+ test -n "$verbose" && echo " adding option $cf_clang_opt" 1>&6
+
+echo "${as_me:-configure}:17348: testing adding option $cf_clang_opt ..." 1>&5
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_clang_opt"
+
+ fi
+ done
+fi
+
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
cat > conftest.$ac_ext <<EOF
-#line 15783 "configure"
+#line 17365 "configure"
int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
EOF
@@ -15798,7 +17380,7 @@ then
# remark #981: operands are evaluated in unspecified order
# warning #269: invalid format string conversion
- { echo "$as_me:15801: checking for $CC warning options..." >&5
+ { echo "$as_me:17383: checking for $CC warning options..." >&5
echo "$as_me: checking for $CC warning options..." >&6;}
cf_save_CXXFLAGS="$CXXFLAGS"
EXTRA_CXXFLAGS="-Wall"
@@ -15815,12 +17397,12 @@ echo "$as_me: checking for $CC warning options..." >&6;}
wd981
do
CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -$cf_opt"
- if { (eval echo "$as_me:15818: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:17400: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15821: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:15823: result: ... -$cf_opt" >&5
+ echo "$as_me:17403: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:17405: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt"
fi
@@ -15829,13 +17411,13 @@ echo "${ECHO_T}... -$cf_opt" >&6
elif test "$GXX" = yes
then
- { echo "$as_me:15832: checking for $CXX warning options..." >&5
+ { echo "$as_me:17414: checking for $CXX warning options..." >&5
echo "$as_me: checking for $CXX warning options..." >&6;}
cf_save_CXXFLAGS="$CXXFLAGS"
EXTRA_CXXFLAGS="-W -Wall"
cf_gxx_extra_warnings=""
test "$with_ext_const" = yes && cf_gxx_extra_warnings="Wwrite-strings"
- case "$GCC_VERSION" in
+ case "$GXX_VERSION" in
([1-2].*)
;;
(*)
@@ -15859,195 +17441,61 @@ echo "$as_me: checking for $CXX warning options..." >&6;}
Wundef $cf_gxx_extra_warnings Wno-unused
do
CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -Werror -$cf_opt"
- if { (eval echo "$as_me:15862: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:17444: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15865: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:15867: result: ... -$cf_opt" >&5
+ echo "$as_me:17447: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:17449: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt"
else
- test -n "$verbose" && echo "$as_me:15871: result: ... no -$cf_opt" >&5
+ test -n "$verbose" && echo "$as_me:17453: result: ... no -$cf_opt" >&5
echo "${ECHO_T}... no -$cf_opt" >&6
fi
done
CXXFLAGS="$cf_save_CXXFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
fi
fi
-if test "$GCC" = yes
-then
-cat > conftest.i <<EOF
-#ifndef GCC_PRINTF
-#define GCC_PRINTF 0
-#endif
-#ifndef GCC_SCANF
-#define GCC_SCANF 0
-#endif
-#ifndef GCC_NORETURN
-#define GCC_NORETURN /* nothing */
-#endif
-#ifndef GCC_UNUSED
-#define GCC_UNUSED /* nothing */
-#endif
-EOF
-if test "$GCC" = yes
-then
- { echo "$as_me:15907: checking for $CC __attribute__ directives..." >&5
-echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
-cat > conftest.$ac_ext <<EOF
-#line 15910 "${as_me:-configure}"
-#include "confdefs.h"
-#include "conftest.h"
-#include "conftest.i"
-#if GCC_PRINTF
-#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
-#else
-#define GCC_PRINTFLIKE(fmt,var) /*nothing*/
-#endif
-#if GCC_SCANF
-#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
-#else
-#define GCC_SCANFLIKE(fmt,var) /*nothing*/
-#endif
-extern void wow(char *,...) GCC_SCANFLIKE(1,2);
-extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
-extern void foo(void) GCC_NORETURN;
-int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; }
-EOF
- cf_printf_attribute=no
- cf_scanf_attribute=no
- for cf_attribute in scanf printf unused noreturn
- do
-
-cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
- cf_directive="__attribute__(($cf_attribute))"
- echo "checking for $CC $cf_directive" 1>&5
-
- case $cf_attribute in
- (printf)
- cf_printf_attribute=yes
- cat >conftest.h <<EOF
-#define GCC_$cf_ATTRIBUTE 1
-EOF
- ;;
- (scanf)
- cf_scanf_attribute=yes
- cat >conftest.h <<EOF
-#define GCC_$cf_ATTRIBUTE 1
-EOF
- ;;
- (*)
- cat >conftest.h <<EOF
-#define GCC_$cf_ATTRIBUTE $cf_directive
-EOF
- ;;
- esac
-
- if { (eval echo "$as_me:15959: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- echo "$as_me:15962: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:15964: result: ... $cf_attribute" >&5
-echo "${ECHO_T}... $cf_attribute" >&6
- cat conftest.h >>confdefs.h
- case $cf_attribute in
- (noreturn)
-
-cat >>confdefs.h <<EOF
-#define GCC_NORETURN $cf_directive
-EOF
-
- ;;
- (printf)
- cf_value='/* nothing */'
- if test "$cf_printf_attribute" != no ; then
- cf_value='__attribute__((format(printf,fmt,var)))'
-
-cat >>confdefs.h <<\EOF
-#define GCC_PRINTF 1
-EOF
-
- fi
-
-cat >>confdefs.h <<EOF
-#define GCC_PRINTFLIKE(fmt,var) $cf_value
-EOF
-
- ;;
- (scanf)
- cf_value='/* nothing */'
- if test "$cf_scanf_attribute" != no ; then
- cf_value='__attribute__((format(scanf,fmt,var)))'
-
-cat >>confdefs.h <<\EOF
-#define GCC_SCANF 1
-EOF
-
- fi
-
-cat >>confdefs.h <<EOF
-#define GCC_SCANFLIKE(fmt,var) $cf_value
-EOF
-
- ;;
- (unused)
-
-cat >>confdefs.h <<EOF
-#define GCC_UNUSED $cf_directive
-EOF
-
- ;;
- esac
- fi
- done
-else
- fgrep define conftest.i >>confdefs.h
-fi
-rm -rf conftest*
-fi
-
-echo "$as_me:16023: checking if you want to work around bogus compiler/loader warnings" >&5
+echo "$as_me:17471: checking if you want to work around bogus compiler/loader warnings" >&5
echo $ECHO_N "checking if you want to work around bogus compiler/loader warnings... $ECHO_C" >&6
# Check whether --enable-string-hacks or --disable-string-hacks was given.
if test "${enable_string_hacks+set}" = set; then
enableval="$enable_string_hacks"
- with_string_hacks=$enableval
+ enable_string_hacks=$enableval
else
- with_string_hacks=no
+ enable_string_hacks=no
fi;
-echo "$as_me:16033: result: $with_string_hacks" >&5
-echo "${ECHO_T}$with_string_hacks" >&6
+echo "$as_me:17481: result: $enable_string_hacks" >&5
+echo "${ECHO_T}$enable_string_hacks" >&6
-if test "x$with_string_hacks" = "xyes"; then
+if test "x$enable_string_hacks" = "xyes"; then
cat >>confdefs.h <<\EOF
#define USE_STRING_HACKS 1
EOF
- { echo "$as_me:16042: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&5
+ { echo "$as_me:17490: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&5
echo "$as_me: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&2;}
- echo "$as_me:16044: checking for strlcat" >&5
+ echo "$as_me:17492: checking for strlcat" >&5
echo $ECHO_N "checking for strlcat... $ECHO_C" >&6
if test "${ac_cv_func_strlcat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16050 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17498 "configure"
#include "confdefs.h"
#define strlcat autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -16077,29 +17525,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16081: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17529: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16084: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16087: \"$ac_try\"") >&5
+ echo "$as_me:17532: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17535: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16090: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17538: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_strlcat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_strlcat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:16100: result: $ac_cv_func_strlcat" >&5
+echo "$as_me:17548: result: $ac_cv_func_strlcat" >&5
echo "${ECHO_T}$ac_cv_func_strlcat" >&6
-if test $ac_cv_func_strlcat = yes; then
+if test "$ac_cv_func_strlcat" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_STRLCAT 1
@@ -16107,15 +17555,15 @@ EOF
else
- echo "$as_me:16110: checking for strlcat in -lbsd" >&5
+ echo "$as_me:17558: checking for strlcat in -lbsd" >&5
echo $ECHO_N "checking for strlcat in -lbsd... $ECHO_C" >&6
if test "${ac_cv_lib_bsd_strlcat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lbsd $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 16118 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 17566 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -16133,30 +17581,30 @@ strlcat ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16137: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17585: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16140: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16143: \"$ac_try\"") >&5
+ echo "$as_me:17588: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17591: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16146: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17594: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_bsd_strlcat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_bsd_strlcat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:16157: result: $ac_cv_lib_bsd_strlcat" >&5
+echo "$as_me:17605: result: $ac_cv_lib_bsd_strlcat" >&5
echo "${ECHO_T}$ac_cv_lib_bsd_strlcat" >&6
-if test $ac_cv_lib_bsd_strlcat = yes; then
+if test "$ac_cv_lib_bsd_strlcat" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -16177,24 +17625,24 @@ LIBS="$cf_add_libs"
for ac_header in bsd/string.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:16180: checking for $ac_header" >&5
+echo "$as_me:17628: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16186 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17634 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:16190: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:17638: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:16196: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:17644: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -16207,14 +17655,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:16215: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:17663: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -16233,13 +17681,13 @@ fi
for ac_func in strlcpy snprintf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:16236: checking for $ac_func" >&5
+echo "$as_me:17684: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16242 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17690 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -16269,29 +17717,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16273: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17721: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16276: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16279: \"$ac_try\"") >&5
+ echo "$as_me:17724: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17727: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16282: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17730: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:16292: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:17740: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -16302,7 +17750,7 @@ done
fi
### use option --enable-assertions to turn on generation of assertion code
-echo "$as_me:16305: checking if you want to enable runtime assertions" >&5
+echo "$as_me:17753: checking if you want to enable runtime assertions" >&5
echo $ECHO_N "checking if you want to enable runtime assertions... $ECHO_C" >&6
# Check whether --enable-assertions or --disable-assertions was given.
@@ -16312,7 +17760,7 @@ if test "${enable_assertions+set}" = set; then
else
with_assertions=no
fi;
-echo "$as_me:16315: result: $with_assertions" >&5
+echo "$as_me:17763: result: $with_assertions" >&5
echo "${ECHO_T}$with_assertions" >&6
if test -n "$GCC"
then
@@ -16328,27 +17776,32 @@ fi
### use option --disable-leaks to suppress "permanent" leaks, for testing
-echo "$as_me:16331: checking if you want to use dmalloc for testing" >&5
+echo "$as_me:17779: checking if you want to use dmalloc for testing" >&5
echo $ECHO_N "checking if you want to use dmalloc for testing... $ECHO_C" >&6
# Check whether --with-dmalloc or --without-dmalloc was given.
if test "${with_dmalloc+set}" = set; then
withval="$with_dmalloc"
+ case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_dmalloc=yes
cat >>confdefs.h <<EOF
#define USE_DMALLOC 1
EOF
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_dmalloc=yes
+ ;;
+ esac
else
with_dmalloc=
fi;
-echo "$as_me:16348: result: ${with_dmalloc:-no}" >&5
+echo "$as_me:17801: result: ${with_dmalloc:-no}" >&5
echo "${ECHO_T}${with_dmalloc:-no}" >&6
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -16362,19 +17815,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -g
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -16393,7 +17846,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -16423,7 +17876,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -16459,24 +17912,24 @@ fi
esac
if test "$with_dmalloc" = yes ; then
- echo "$as_me:16462: checking for dmalloc.h" >&5
+ echo "$as_me:17915: checking for dmalloc.h" >&5
echo $ECHO_N "checking for dmalloc.h... $ECHO_C" >&6
if test "${ac_cv_header_dmalloc_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16468 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17921 "configure"
#include "confdefs.h"
#include <dmalloc.h>
_ACEOF
-if { (eval echo "$as_me:16472: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:17925: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:16478: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:17931: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -16489,24 +17942,24 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_dmalloc_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_dmalloc_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:16497: result: $ac_cv_header_dmalloc_h" >&5
+echo "$as_me:17950: result: $ac_cv_header_dmalloc_h" >&5
echo "${ECHO_T}$ac_cv_header_dmalloc_h" >&6
-if test $ac_cv_header_dmalloc_h = yes; then
+if test "$ac_cv_header_dmalloc_h" = yes; then
-echo "$as_me:16501: checking for dmalloc_debug in -ldmalloc" >&5
+echo "$as_me:17954: checking for dmalloc_debug in -ldmalloc" >&5
echo $ECHO_N "checking for dmalloc_debug in -ldmalloc... $ECHO_C" >&6
if test "${ac_cv_lib_dmalloc_dmalloc_debug+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldmalloc $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 16509 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 17962 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -16524,30 +17977,30 @@ dmalloc_debug ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16528: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17981: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16531: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16534: \"$ac_try\"") >&5
+ echo "$as_me:17984: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17987: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16537: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17990: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dmalloc_dmalloc_debug=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dmalloc_dmalloc_debug=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:16548: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
+echo "$as_me:18001: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
echo "${ECHO_T}$ac_cv_lib_dmalloc_dmalloc_debug" >&6
-if test $ac_cv_lib_dmalloc_dmalloc_debug = yes; then
+if test "$ac_cv_lib_dmalloc_dmalloc_debug" = yes; then
cat >>confdefs.h <<EOF
#define HAVE_LIBDMALLOC 1
EOF
@@ -16560,27 +18013,32 @@ fi
fi
-echo "$as_me:16563: checking if you want to use dbmalloc for testing" >&5
+echo "$as_me:18016: checking if you want to use dbmalloc for testing" >&5
echo $ECHO_N "checking if you want to use dbmalloc for testing... $ECHO_C" >&6
# Check whether --with-dbmalloc or --without-dbmalloc was given.
if test "${with_dbmalloc+set}" = set; then
withval="$with_dbmalloc"
+ case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_dbmalloc=yes
cat >>confdefs.h <<EOF
#define USE_DBMALLOC 1
EOF
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_dbmalloc=yes
+ ;;
+ esac
else
with_dbmalloc=
fi;
-echo "$as_me:16580: result: ${with_dbmalloc:-no}" >&5
+echo "$as_me:18038: result: ${with_dbmalloc:-no}" >&5
echo "${ECHO_T}${with_dbmalloc:-no}" >&6
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -16594,19 +18052,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -g
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -16625,7 +18083,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -16655,7 +18113,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -16691,24 +18149,24 @@ fi
esac
if test "$with_dbmalloc" = yes ; then
- echo "$as_me:16694: checking for dbmalloc.h" >&5
+ echo "$as_me:18152: checking for dbmalloc.h" >&5
echo $ECHO_N "checking for dbmalloc.h... $ECHO_C" >&6
if test "${ac_cv_header_dbmalloc_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16700 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18158 "configure"
#include "confdefs.h"
#include <dbmalloc.h>
_ACEOF
-if { (eval echo "$as_me:16704: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:18162: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:16710: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:18168: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -16721,24 +18179,24 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_dbmalloc_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_dbmalloc_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:16729: result: $ac_cv_header_dbmalloc_h" >&5
+echo "$as_me:18187: result: $ac_cv_header_dbmalloc_h" >&5
echo "${ECHO_T}$ac_cv_header_dbmalloc_h" >&6
-if test $ac_cv_header_dbmalloc_h = yes; then
+if test "$ac_cv_header_dbmalloc_h" = yes; then
-echo "$as_me:16733: checking for debug_malloc in -ldbmalloc" >&5
+echo "$as_me:18191: checking for debug_malloc in -ldbmalloc" >&5
echo $ECHO_N "checking for debug_malloc in -ldbmalloc... $ECHO_C" >&6
if test "${ac_cv_lib_dbmalloc_debug_malloc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldbmalloc $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 16741 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 18199 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -16756,30 +18214,30 @@ debug_malloc ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16760: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18218: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16763: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16766: \"$ac_try\"") >&5
+ echo "$as_me:18221: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18224: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16769: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18227: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dbmalloc_debug_malloc=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dbmalloc_debug_malloc=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:16780: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
+echo "$as_me:18238: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
echo "${ECHO_T}$ac_cv_lib_dbmalloc_debug_malloc" >&6
-if test $ac_cv_lib_dbmalloc_debug_malloc = yes; then
+if test "$ac_cv_lib_dbmalloc_debug_malloc" = yes; then
cat >>confdefs.h <<EOF
#define HAVE_LIBDBMALLOC 1
EOF
@@ -16792,27 +18250,32 @@ fi
fi
-echo "$as_me:16795: checking if you want to use valgrind for testing" >&5
+echo "$as_me:18253: checking if you want to use valgrind for testing" >&5
echo $ECHO_N "checking if you want to use valgrind for testing... $ECHO_C" >&6
# Check whether --with-valgrind or --without-valgrind was given.
if test "${with_valgrind+set}" = set; then
withval="$with_valgrind"
+ case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_valgrind=yes
cat >>confdefs.h <<EOF
#define USE_VALGRIND 1
EOF
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_valgrind=yes
+ ;;
+ esac
else
with_valgrind=
fi;
-echo "$as_me:16812: result: ${with_valgrind:-no}" >&5
+echo "$as_me:18275: result: ${with_valgrind:-no}" >&5
echo "${ECHO_T}${with_valgrind:-no}" >&6
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -16826,19 +18289,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -g
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -16857,7 +18320,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -16887,7 +18350,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -16922,20 +18385,21 @@ fi
;;
esac
-echo "$as_me:16925: checking if you want to perform memory-leak testing" >&5
+echo "$as_me:18388: checking if you want to perform memory-leak testing" >&5
echo $ECHO_N "checking if you want to perform memory-leak testing... $ECHO_C" >&6
# Check whether --enable-leaks or --disable-leaks was given.
if test "${enable_leaks+set}" = set; then
enableval="$enable_leaks"
- if test "x$enableval" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi
+ enable_leaks=$enableval
else
- : ${with_no_leaks:=no}
+ enable_leaks=yes
fi;
-echo "$as_me:16935: result: $with_no_leaks" >&5
+if test "x$enable_leaks" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi
+echo "$as_me:18399: result: $with_no_leaks" >&5
echo "${ECHO_T}$with_no_leaks" >&6
-if test "$with_no_leaks" = yes ; then
+if test "$enable_leaks" = no ; then
cat >>confdefs.h <<\EOF
#define NO_LEAKS 1
@@ -16984,7 +18448,7 @@ case "$CFLAGS $CPPFLAGS" in
;;
esac
-echo "$as_me:16987: checking whether to add trace feature to all models" >&5
+echo "$as_me:18451: checking whether to add trace feature to all models" >&5
echo $ECHO_N "checking whether to add trace feature to all models... $ECHO_C" >&6
# Check whether --with-trace or --without-trace was given.
@@ -16994,7 +18458,7 @@ if test "${with_trace+set}" = set; then
else
cf_with_trace=$cf_all_traces
fi;
-echo "$as_me:16997: result: $cf_with_trace" >&5
+echo "$as_me:18461: result: $cf_with_trace" >&5
echo "${ECHO_T}$cf_with_trace" >&6
if test "x$cf_with_trace" = xyes ; then
@@ -17008,19 +18472,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -DTRACE
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -17039,7 +18503,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -17069,7 +18533,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -17108,7 +18572,7 @@ else
ADA_TRACE=FALSE
fi
-echo "$as_me:17111: checking if we want to use GNAT projects" >&5
+echo "$as_me:18575: checking if we want to use GNAT projects" >&5
echo $ECHO_N "checking if we want to use GNAT projects... $ECHO_C" >&6
# Check whether --enable-gnat-projects or --disable-gnat-projects was given.
@@ -17125,23 +18589,27 @@ else
enable_gnat_projects=yes
fi;
-echo "$as_me:17128: result: $enable_gnat_projects" >&5
+echo "$as_me:18592: result: $enable_gnat_projects" >&5
echo "${ECHO_T}$enable_gnat_projects" >&6
### Checks for libraries.
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(*mingw32*|*mingw64*)
+ if test "x$with_exp_win32" = xyes ; then
+ CPPFLAGS="$CPPFLAGS -DWINVER=0x0600 -DWIN32_LEAN_AND_MEAN"
+ else
CPPFLAGS="$CPPFLAGS -DWINVER=0x0501 -DWIN32_LEAN_AND_MEAN"
+ fi
# Note: WINVER may be a problem with Windows 10
;;
(*)
-echo "$as_me:17138: checking for gettimeofday" >&5
+echo "$as_me:18606: checking for gettimeofday" >&5
echo $ECHO_N "checking for gettimeofday... $ECHO_C" >&6
if test "${ac_cv_func_gettimeofday+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17144 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18612 "configure"
#include "confdefs.h"
#define gettimeofday autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -17171,29 +18639,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17175: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18643: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17178: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17181: \"$ac_try\"") >&5
+ echo "$as_me:18646: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18649: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17184: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18652: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_gettimeofday=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_gettimeofday=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:17194: result: $ac_cv_func_gettimeofday" >&5
+echo "$as_me:18662: result: $ac_cv_func_gettimeofday" >&5
echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6
-if test $ac_cv_func_gettimeofday = yes; then
+if test "$ac_cv_func_gettimeofday" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_GETTIMEOFDAY 1
@@ -17201,15 +18669,15 @@ EOF
else
-echo "$as_me:17204: checking for gettimeofday in -lbsd" >&5
+echo "$as_me:18672: checking for gettimeofday in -lbsd" >&5
echo $ECHO_N "checking for gettimeofday in -lbsd... $ECHO_C" >&6
if test "${ac_cv_lib_bsd_gettimeofday+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lbsd $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 17212 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 18680 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -17227,30 +18695,30 @@ gettimeofday ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17231: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18699: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17234: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17237: \"$ac_try\"") >&5
+ echo "$as_me:18702: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18705: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17240: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18708: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_bsd_gettimeofday=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_bsd_gettimeofday=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:17251: result: $ac_cv_lib_bsd_gettimeofday" >&5
+echo "$as_me:18719: result: $ac_cv_lib_bsd_gettimeofday" >&5
echo "${ECHO_T}$ac_cv_lib_bsd_gettimeofday" >&6
-if test $ac_cv_lib_bsd_gettimeofday = yes; then
+if test "$ac_cv_lib_bsd_gettimeofday" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_GETTIMEOFDAY 1
@@ -17278,14 +18746,14 @@ fi
;;
esac
-echo "$as_me:17281: checking if -lm needed for math functions" >&5
+echo "$as_me:18749: checking if -lm needed for math functions" >&5
echo $ECHO_N "checking if -lm needed for math functions... $ECHO_C" >&6
if test "${cf_cv_need_libm+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17288 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18756 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -17295,32 +18763,32 @@ else
int
main (void)
{
-double x = rand(); printf("result = %g\n", pow(sin(x),x))
+double x = rand(); printf("result = %g\\n", pow(sin(x),x))
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17304: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18772: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17307: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17310: \"$ac_try\"") >&5
+ echo "$as_me:18775: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18778: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17313: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18781: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_need_libm=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_need_libm=yes
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:17323: result: $cf_cv_need_libm" >&5
+echo "$as_me:18791: result: $cf_cv_need_libm" >&5
echo "${ECHO_T}$cf_cv_need_libm" >&6
if test "$cf_cv_need_libm" = yes
then
@@ -17328,13 +18796,13 @@ MATH_LIB=-lm
fi
### Checks for header files.
-echo "$as_me:17331: checking for ANSI C header files" >&5
+echo "$as_me:18799: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
if test "${ac_cv_header_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17337 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18805 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@@ -17342,14 +18810,14 @@ else
#include <float.h>
_ACEOF
-if { (eval echo "$as_me:17345: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:18813: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:17351: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:18819: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -17362,21 +18830,21 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_stdc=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 17373 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18841 "configure"
#include "confdefs.h"
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "memchr" >/dev/null 2>&1; then
+ $EGREP "memchr" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -17387,14 +18855,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 17391 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18859 "configure"
#include "confdefs.h"
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "free" >/dev/null 2>&1; then
+ $EGREP "free" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -17408,8 +18876,8 @@ if test $ac_cv_header_stdc = yes; then
if test "$cross_compiling" = yes; then
:
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17412 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18880 "configure"
#include "confdefs.h"
#include <ctype.h>
#if ((' ' & 0x0FF) == 0x020)
@@ -17434,29 +18902,29 @@ main (void)
$ac_main_return (0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:17438: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:18906: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17441: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:17443: \"$ac_try\"") >&5
+ echo "$as_me:18909: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:18911: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17446: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18914: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
fi
-echo "$as_me:17459: result: $ac_cv_header_stdc" >&5
+echo "$as_me:18927: result: $ac_cv_header_stdc" >&5
echo "${ECHO_T}$ac_cv_header_stdc" >&6
if test $ac_cv_header_stdc = yes; then
@@ -17469,13 +18937,13 @@ fi
ac_header_dirent=no
for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-echo "$as_me:17472: checking for $ac_hdr that defines DIR" >&5
+echo "$as_me:18940: checking for $ac_hdr that defines DIR" >&5
echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17478 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18946 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <$ac_hdr>
@@ -17489,29 +18957,29 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17493: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18961: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17496: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17499: \"$ac_try\"") >&5
+ echo "$as_me:18964: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18967: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17502: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18970: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:17512: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:18980: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
EOF
@@ -17522,15 +18990,15 @@ fi
done
# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
if test $ac_header_dirent = dirent.h; then
- echo "$as_me:17525: checking for opendir in -ldir" >&5
+ echo "$as_me:18993: checking for opendir in -ldir" >&5
echo $ECHO_N "checking for opendir in -ldir... $ECHO_C" >&6
if test "${ac_cv_lib_dir_opendir+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldir $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 17533 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19001 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -17548,43 +19016,43 @@ opendir ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17552: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19020: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17555: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17558: \"$ac_try\"") >&5
+ echo "$as_me:19023: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19026: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17561: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19029: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dir_opendir=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dir_opendir=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:17572: result: $ac_cv_lib_dir_opendir" >&5
+echo "$as_me:19040: result: $ac_cv_lib_dir_opendir" >&5
echo "${ECHO_T}$ac_cv_lib_dir_opendir" >&6
-if test $ac_cv_lib_dir_opendir = yes; then
+if test "$ac_cv_lib_dir_opendir" = yes; then
LIBS="$LIBS -ldir"
fi
else
- echo "$as_me:17579: checking for opendir in -lx" >&5
+ echo "$as_me:19047: checking for opendir in -lx" >&5
echo $ECHO_N "checking for opendir in -lx... $ECHO_C" >&6
if test "${ac_cv_lib_x_opendir+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lx $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 17587 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19055 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -17602,42 +19070,42 @@ opendir ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17606: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19074: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17609: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17612: \"$ac_try\"") >&5
+ echo "$as_me:19077: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19080: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17615: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19083: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_x_opendir=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_x_opendir=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:17626: result: $ac_cv_lib_x_opendir" >&5
+echo "$as_me:19094: result: $ac_cv_lib_x_opendir" >&5
echo "${ECHO_T}$ac_cv_lib_x_opendir" >&6
-if test $ac_cv_lib_x_opendir = yes; then
+if test "$ac_cv_lib_x_opendir" = yes; then
LIBS="$LIBS -lx"
fi
fi
-echo "$as_me:17634: checking whether time.h and sys/time.h may both be included" >&5
+echo "$as_me:19102: checking whether time.h and sys/time.h may both be included" >&5
echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6
if test "${ac_cv_header_time+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17640 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19108 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/time.h>
@@ -17652,27 +19120,27 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17656: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:19124: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17659: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17662: \"$ac_try\"") >&5
+ echo "$as_me:19127: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:19130: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17665: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19133: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_header_time=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_time=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:17675: result: $ac_cv_header_time" >&5
+echo "$as_me:19143: result: $ac_cv_header_time" >&5
echo "${ECHO_T}$ac_cv_header_time" >&6
if test $ac_cv_header_time = yes; then
@@ -17683,21 +19151,370 @@ EOF
fi
cf_regex_func=no
-
-cf_regex_libs="regex re"
-case $host_os in
+cf_regex_libs=
+case "$host_os" in
(mingw*)
- cf_regex_libs="gnurx $cf_regex_libs"
- ;;
-esac
+ # -lsystre -ltre -lintl -liconv
+ echo "$as_me:19158: checking for regcomp in -lsystre" >&5
+echo $ECHO_N "checking for regcomp in -lsystre... $ECHO_C" >&6
+if test "${ac_cv_lib_systre_regcomp+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsystre $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19166 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char regcomp ();
+int
+main (void)
+{
+regcomp ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19185: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:19188: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19191: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:19194: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_systre_regcomp=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_systre_regcomp=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:19205: result: $ac_cv_lib_systre_regcomp" >&5
+echo "${ECHO_T}$ac_cv_lib_systre_regcomp" >&6
+if test "$ac_cv_lib_systre_regcomp" = yes; then
+
+ echo "$as_me:19209: checking for libiconv_open in -liconv" >&5
+echo $ECHO_N "checking for libiconv_open in -liconv... $ECHO_C" >&6
+if test "${ac_cv_lib_iconv_libiconv_open+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-liconv $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19217 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char libiconv_open ();
+int
+main (void)
+{
+libiconv_open ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19236: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:19239: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19242: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:19245: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_iconv_libiconv_open=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_iconv_libiconv_open=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:19256: result: $ac_cv_lib_iconv_libiconv_open" >&5
+echo "${ECHO_T}$ac_cv_lib_iconv_libiconv_open" >&6
+if test "$ac_cv_lib_iconv_libiconv_open" = yes; then
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in -liconv; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+fi
+
+ echo "$as_me:19278: checking for libintl_gettext in -lintl" >&5
+echo $ECHO_N "checking for libintl_gettext in -lintl... $ECHO_C" >&6
+if test "${ac_cv_lib_intl_libintl_gettext+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lintl $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19286 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char libintl_gettext ();
+int
+main (void)
+{
+libintl_gettext ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19305: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:19308: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19311: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:19314: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_intl_libintl_gettext=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_intl_libintl_gettext=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:19325: result: $ac_cv_lib_intl_libintl_gettext" >&5
+echo "${ECHO_T}$ac_cv_lib_intl_libintl_gettext" >&6
+if test "$ac_cv_lib_intl_libintl_gettext" = yes; then
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in -lintl; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+fi
+
+ echo "$as_me:19347: checking for tre_regcomp in -ltre" >&5
+echo $ECHO_N "checking for tre_regcomp in -ltre... $ECHO_C" >&6
+if test "${ac_cv_lib_tre_tre_regcomp+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ltre $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19355 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char tre_regcomp ();
+int
+main (void)
+{
+tre_regcomp ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19374: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:19377: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19380: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:19383: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_tre_tre_regcomp=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_tre_tre_regcomp=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:19394: result: $ac_cv_lib_tre_tre_regcomp" >&5
+echo "${ECHO_T}$ac_cv_lib_tre_tre_regcomp" >&6
+if test "$ac_cv_lib_tre_tre_regcomp" = yes; then
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in -ltre; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+fi
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in -lsystre; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+ cf_regex_func=regcomp
+
+else
+
+ echo "$as_me:19436: checking for regcomp in -lgnurx" >&5
+echo $ECHO_N "checking for regcomp in -lgnurx... $ECHO_C" >&6
+if test "${ac_cv_lib_gnurx_regcomp+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgnurx $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19444 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char regcomp ();
+int
+main (void)
+{
+regcomp ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19463: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:19466: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19469: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:19472: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_gnurx_regcomp=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_gnurx_regcomp=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:19483: result: $ac_cv_lib_gnurx_regcomp" >&5
+echo "${ECHO_T}$ac_cv_lib_gnurx_regcomp" >&6
+if test "$ac_cv_lib_gnurx_regcomp" = yes; then
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in -lgnurx; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+ cf_regex_func=regcomp
+fi
+
+fi
-echo "$as_me:17694: checking for regcomp" >&5
+ ;;
+(*)
+ cf_regex_libs="regex re"
+ echo "$as_me:19511: checking for regcomp" >&5
echo $ECHO_N "checking for regcomp... $ECHO_C" >&6
if test "${ac_cv_func_regcomp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17700 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19517 "configure"
#include "confdefs.h"
#define regcomp autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -17727,44 +19544,44 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17731: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19548: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17734: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17737: \"$ac_try\"") >&5
+ echo "$as_me:19551: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19554: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17740: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19557: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_regcomp=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_regcomp=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:17750: result: $ac_cv_func_regcomp" >&5
+echo "$as_me:19567: result: $ac_cv_func_regcomp" >&5
echo "${ECHO_T}$ac_cv_func_regcomp" >&6
-if test $ac_cv_func_regcomp = yes; then
+if test "$ac_cv_func_regcomp" = yes; then
cf_regex_func=regcomp
else
- for cf_regex_lib in $cf_regex_libs
- do
- as_ac_Lib=`echo "ac_cv_lib_$cf_regex_lib''_regcomp" | $as_tr_sh`
-echo "$as_me:17759: checking for regcomp in -l$cf_regex_lib" >&5
+ for cf_regex_lib in $cf_regex_libs
+ do
+ as_ac_Lib=`echo "ac_cv_lib_$cf_regex_lib''_regcomp" | $as_tr_sh`
+echo "$as_me:19576: checking for regcomp in -l$cf_regex_lib" >&5
echo $ECHO_N "checking for regcomp in -l$cf_regex_lib... $ECHO_C" >&6
if eval "test \"\${$as_ac_Lib+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-l$cf_regex_lib $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 17767 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19584 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -17782,30 +19599,30 @@ regcomp ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17786: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19603: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17789: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17792: \"$ac_try\"") >&5
+ echo "$as_me:19606: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19609: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17795: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19612: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Lib=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Lib=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:17806: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+echo "$as_me:19623: result: `eval echo '${'"$as_ac_Lib"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Lib"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Lib"'}'`" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -17823,22 +19640,25 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cf_regex_func=regcomp
- break
+ cf_regex_func=regcomp
+ break
fi
- done
+ done
fi
+ ;;
+esac
+
if test "$cf_regex_func" = no ; then
- echo "$as_me:17835: checking for compile" >&5
+ echo "$as_me:19655: checking for compile" >&5
echo $ECHO_N "checking for compile... $ECHO_C" >&6
if test "${ac_cv_func_compile+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17841 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19661 "configure"
#include "confdefs.h"
#define compile autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -17868,41 +19688,41 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17872: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19692: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17875: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17878: \"$ac_try\"") >&5
+ echo "$as_me:19695: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19698: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17881: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19701: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_compile=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_compile=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:17891: result: $ac_cv_func_compile" >&5
+echo "$as_me:19711: result: $ac_cv_func_compile" >&5
echo "${ECHO_T}$ac_cv_func_compile" >&6
-if test $ac_cv_func_compile = yes; then
+if test "$ac_cv_func_compile" = yes; then
cf_regex_func=compile
else
- echo "$as_me:17897: checking for compile in -lgen" >&5
+ echo "$as_me:19717: checking for compile in -lgen" >&5
echo $ECHO_N "checking for compile in -lgen... $ECHO_C" >&6
if test "${ac_cv_lib_gen_compile+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgen $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 17905 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19725 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -17920,30 +19740,30 @@ compile ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17924: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19744: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17927: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17930: \"$ac_try\"") >&5
+ echo "$as_me:19747: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19750: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17933: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19753: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gen_compile=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gen_compile=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:17944: result: $ac_cv_lib_gen_compile" >&5
+echo "$as_me:19764: result: $ac_cv_lib_gen_compile" >&5
echo "${ECHO_T}$ac_cv_lib_gen_compile" >&6
-if test $ac_cv_lib_gen_compile = yes; then
+if test "$ac_cv_lib_gen_compile" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -17969,23 +19789,23 @@ fi
fi
if test "$cf_regex_func" = no ; then
- { echo "$as_me:17972: WARNING: cannot find regular expression library" >&5
+ { echo "$as_me:19792: WARNING: cannot find regular expression library" >&5
echo "$as_me: WARNING: cannot find regular expression library" >&2;}
fi
-echo "$as_me:17976: checking for regular-expression headers" >&5
+echo "$as_me:19796: checking for regular-expression headers" >&5
echo $ECHO_N "checking for regular-expression headers... $ECHO_C" >&6
if test "${cf_cv_regex_hdrs+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_cv_regex_hdrs=no
-case $cf_regex_func in
+case "$cf_regex_func" in
(compile)
for cf_regex_hdr in regexp.h regexpr.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 17988 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19808 "configure"
#include "confdefs.h"
#include <$cf_regex_hdr>
int
@@ -17994,39 +19814,41 @@ main (void)
char *p = compile("", "", "", 0);
int x = step("", "");
+ (void)p;
+ (void)x;
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18003: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19825: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18006: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18009: \"$ac_try\"") >&5
+ echo "$as_me:19828: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19831: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18012: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19834: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_regex_hdrs=$cf_regex_hdr
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
;;
(*)
for cf_regex_hdr in regex.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 18029 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19851 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <$cf_regex_hdr>
@@ -18034,46 +19856,48 @@ int
main (void)
{
- regex_t *p;
+ regex_t *p = 0;
int x = regcomp(p, "", 0);
int y = regexec(p, "", 0, 0, 0);
+ (void)x;
+ (void)y;
regfree(p);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18047: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19871: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18050: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18053: \"$ac_try\"") >&5
+ echo "$as_me:19874: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19877: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18056: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19880: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_regex_hdrs=$cf_regex_hdr
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
;;
esac
fi
-echo "$as_me:18072: result: $cf_cv_regex_hdrs" >&5
+echo "$as_me:19896: result: $cf_cv_regex_hdrs" >&5
echo "${ECHO_T}$cf_cv_regex_hdrs" >&6
-case $cf_cv_regex_hdrs in
- (no) { echo "$as_me:18076: WARNING: no regular expression header found" >&5
+case "$cf_cv_regex_hdrs" in
+ (no) { echo "$as_me:19900: WARNING: no regular expression header found" >&5
echo "$as_me: WARNING: no regular expression header found" >&2;} ;;
(regex.h)
cat >>confdefs.h <<\EOF
@@ -18099,7 +19923,6 @@ limits.h \
locale.h \
math.h \
poll.h \
-sys/bsdtypes.h \
sys/ioctl.h \
sys/param.h \
sys/poll.h \
@@ -18112,24 +19935,24 @@ wctype.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:18115: checking for $ac_header" >&5
+echo "$as_me:19938: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18121 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19944 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:18125: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:19948: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:18131: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:19954: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -18142,14 +19965,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:18150: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:19973: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -18160,24 +19983,24 @@ done
for ac_header in unistd.h getopt.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:18163: checking for $ac_header" >&5
+echo "$as_me:19986: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18169 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19992 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:18173: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:19996: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:18179: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:20002: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -18190,14 +20013,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:18198: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:20021: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -18205,7 +20028,7 @@ EOF
fi
done
-echo "$as_me:18208: checking for header declaring getopt variables" >&5
+echo "$as_me:20031: checking for header declaring getopt variables" >&5
echo $ECHO_N "checking for header declaring getopt variables... $ECHO_C" >&6
if test "${cf_cv_getopt_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -18214,51 +20037,51 @@ else
cf_cv_getopt_header=none
for cf_header in stdio.h stdlib.h unistd.h getopt.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 18218 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20041 "configure"
#include "confdefs.h"
#include <$cf_header>
int
main (void)
{
-int x = optind; char *y = optarg
+int x = optind; char *y = optarg; (void)x; (void)y
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18231: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20054: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18234: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18237: \"$ac_try\"") >&5
+ echo "$as_me:20057: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20060: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18240: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20063: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_getopt_header=$cf_header
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:18252: result: $cf_cv_getopt_header" >&5
+echo "$as_me:20075: result: $cf_cv_getopt_header" >&5
echo "${ECHO_T}$cf_cv_getopt_header" >&6
-if test $cf_cv_getopt_header != none ; then
+if test "$cf_cv_getopt_header" != none ; then
cat >>confdefs.h <<\EOF
#define HAVE_GETOPT_HEADER 1
EOF
fi
-if test $cf_cv_getopt_header = getopt.h ; then
+if test "$cf_cv_getopt_header" = getopt.h ; then
cat >>confdefs.h <<\EOF
#define NEED_GETOPT_H 1
@@ -18266,14 +20089,14 @@ EOF
fi
-echo "$as_me:18269: checking if external environ is declared" >&5
+echo "$as_me:20092: checking if external environ is declared" >&5
echo $ECHO_N "checking if external environ is declared... $ECHO_C" >&6
if test "${cf_cv_dcl_environ+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18276 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20099 "configure"
#include "confdefs.h"
#ifdef HAVE_STDLIB_H
@@ -18288,28 +20111,28 @@ int x = (int) environ
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18292: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20115: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18295: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18298: \"$ac_try\"") >&5
+ echo "$as_me:20118: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20121: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18301: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20124: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_dcl_environ=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_dcl_environ=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:18312: result: $cf_cv_dcl_environ" >&5
+echo "$as_me:20135: result: $cf_cv_dcl_environ" >&5
echo "${ECHO_T}$cf_cv_dcl_environ" >&6
if test "$cf_cv_dcl_environ" = no ; then
@@ -18324,14 +20147,14 @@ fi
# It's possible (for near-UNIX clones) that the data doesn't exist
-echo "$as_me:18327: checking if external environ exists" >&5
+echo "$as_me:20150: checking if external environ exists" >&5
echo $ECHO_N "checking if external environ exists... $ECHO_C" >&6
if test "${cf_cv_have_environ+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18334 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20157 "configure"
#include "confdefs.h"
#undef environ
@@ -18345,28 +20168,28 @@ environ = 2
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18349: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:20172: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18352: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18355: \"$ac_try\"") >&5
+ echo "$as_me:20175: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:20178: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18358: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20181: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have_environ=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have_environ=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:18369: result: $cf_cv_have_environ" >&5
+echo "$as_me:20192: result: $cf_cv_have_environ" >&5
echo "${ECHO_T}$cf_cv_have_environ" >&6
if test "$cf_cv_have_environ" = yes ; then
@@ -18379,13 +20202,13 @@ EOF
fi
-echo "$as_me:18382: checking for getenv" >&5
+echo "$as_me:20205: checking for getenv" >&5
echo $ECHO_N "checking for getenv... $ECHO_C" >&6
if test "${ac_cv_func_getenv+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18388 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20211 "configure"
#include "confdefs.h"
#define getenv autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -18415,39 +20238,39 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18419: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:20242: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18422: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18425: \"$ac_try\"") >&5
+ echo "$as_me:20245: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:20248: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18428: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20251: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_getenv=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_getenv=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:18438: result: $ac_cv_func_getenv" >&5
+echo "$as_me:20261: result: $ac_cv_func_getenv" >&5
echo "${ECHO_T}$ac_cv_func_getenv" >&6
for ac_func in putenv setenv strdup
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:18444: checking for $ac_func" >&5
+echo "$as_me:20267: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18450 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20273 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -18477,29 +20300,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18481: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:20304: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18484: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18487: \"$ac_try\"") >&5
+ echo "$as_me:20307: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:20310: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18490: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20313: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:18500: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:20323: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -18507,7 +20330,7 @@ EOF
fi
done
-echo "$as_me:18510: checking if getenv returns consistent values" >&5
+echo "$as_me:20333: checking if getenv returns consistent values" >&5
echo $ECHO_N "checking if getenv returns consistent values... $ECHO_C" >&6
if test "${cf_cv_consistent_getenv+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -18516,8 +20339,8 @@ else
if test "$cross_compiling" = yes; then
cf_cv_consistent_getenv=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18520 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20343 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -18566,7 +20389,7 @@ int main(void)
mynames[j] = str_alloc(environ[j]);
equals = strchr(mynames[j], '=');
if (equals != 0) {
- *equals++ = '\0';
+ *equals++ = '\\0';
myvalues[j] = str_alloc(equals);
} else {
myvalues[j] = str_alloc("");
@@ -18600,13 +20423,13 @@ int main(void)
char *value = getenv(mynames[j]);
if (pass) {
if (value == 0) {
- fprintf(stderr, "getenv returned null for %s\n", mynames[j]);
+ fprintf(stderr, "getenv returned null for %s\\n", mynames[j]);
${cf_cv_main_return:-return}(1);
} else if (value != mypointer[j]) {
- fprintf(stderr, "getenv returned different pointer for %s\n", mynames[j]);
+ fprintf(stderr, "getenv returned different pointer for %s\\n", mynames[j]);
${cf_cv_main_return:-return}(1);
} else if (strcmp(value, myvalues[j])) {
- fprintf(stderr, "getenv returned different value for %s\n", mynames[j]);
+ fprintf(stderr, "getenv returned different value for %s\\n", mynames[j]);
${cf_cv_main_return:-return}(1);
}
} else {
@@ -18614,7 +20437,7 @@ int main(void)
mypointer[j] = value;
for (k = 0; k < j; ++k) {
if (mypointer[j] == mypointer[k]) {
- fprintf(stderr, "getenv returned same pointer for %s and %s\n", mynames[j], mynames[k]);
+ fprintf(stderr, "getenv returned same pointer for %s and %s\\n", mynames[j], mynames[k]);
${cf_cv_main_return:-return}(1);
}
}
@@ -18625,29 +20448,29 @@ int main(void)
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:18629: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:20452: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18632: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:18634: \"$ac_try\"") >&5
+ echo "$as_me:20455: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:20457: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18637: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20460: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_consistent_getenv=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_consistent_getenv=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:18650: result: $cf_cv_consistent_getenv" >&5
+echo "$as_me:20473: result: $cf_cv_consistent_getenv" >&5
echo "${ECHO_T}$cf_cv_consistent_getenv" >&6
if test "x$cf_cv_consistent_getenv" = xno
@@ -18662,143 +20485,18 @@ fi
if test "x$cf_cv_consistent_getenv" = xno && \
test "x$cf_with_trace" = xyes
then
- { echo "$as_me:18665: WARNING: The NCURSES_TRACE environment variable is not supported with this configuration" >&5
+ { echo "$as_me:20488: WARNING: The NCURSES_TRACE environment variable is not supported with this configuration" >&5
echo "$as_me: WARNING: The NCURSES_TRACE environment variable is not supported with this configuration" >&2;}
fi
-# check for ISC (this may also define _POSIX_SOURCE)
-# Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set
-if test "x$ISC" = xyes ; then
-
-echo "$as_me:18673: checking for main in -lcposix" >&5
-echo $ECHO_N "checking for main in -lcposix... $ECHO_C" >&6
-if test "${ac_cv_lib_cposix_main+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcposix $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 18681 "configure"
-#include "confdefs.h"
-
-int
-main (void)
-{
-main ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18693: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:18696: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18699: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:18702: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_cposix_main=yes
-else
- echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_cv_lib_cposix_main=no
-fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:18713: result: $ac_cv_lib_cposix_main" >&5
-echo "${ECHO_T}$ac_cv_lib_cposix_main" >&6
-if test $ac_cv_lib_cposix_main = yes; then
- cat >>confdefs.h <<EOF
-#define HAVE_LIBCPOSIX 1
-EOF
-
- LIBS="-lcposix $LIBS"
-
-fi
-
- echo "$as_me:18724: checking for bzero in -linet" >&5
-echo $ECHO_N "checking for bzero in -linet... $ECHO_C" >&6
-if test "${ac_cv_lib_inet_bzero+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-linet $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 18732 "configure"
-#include "confdefs.h"
-
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char bzero ();
-int
-main (void)
-{
-bzero ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18751: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:18754: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18757: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:18760: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_inet_bzero=yes
-else
- echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_cv_lib_inet_bzero=no
-fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:18771: result: $ac_cv_lib_inet_bzero" >&5
-echo "${ECHO_T}$ac_cv_lib_inet_bzero" >&6
-if test $ac_cv_lib_inet_bzero = yes; then
-
-cf_add_libs="$LIBS"
-# reverse order
-cf_add_0lib=
-for cf_add_1lib in -linet; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
-# filter duplicates
-for cf_add_1lib in $cf_add_0lib; do
- for cf_add_2lib in $cf_add_libs; do
- if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
- cf_add_1lib=
- break
- fi
- done
- test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
-done
-LIBS="$cf_add_libs"
-
-fi
-fi
-
-echo "$as_me:18794: checking if sys/time.h works with sys/select.h" >&5
+echo "$as_me:20492: checking if sys/time.h works with sys/select.h" >&5
echo $ECHO_N "checking if sys/time.h works with sys/select.h... $ECHO_C" >&6
if test "${cf_cv_sys_time_select+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 18801 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20499 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -18817,29 +20515,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18821: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20519: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18824: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18827: \"$ac_try\"") >&5
+ echo "$as_me:20522: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20525: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18830: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20528: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_sys_time_select=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_sys_time_select=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:18842: result: $cf_cv_sys_time_select" >&5
+echo "$as_me:20540: result: $cf_cv_sys_time_select" >&5
echo "${ECHO_T}$cf_cv_sys_time_select" >&6
test "$cf_cv_sys_time_select" = yes &&
cat >>confdefs.h <<\EOF
@@ -18849,18 +20547,18 @@ EOF
### checks for compiler characteristics
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
-echo "$as_me:18857: checking for an ANSI C-conforming const" >&5
+echo "$as_me:20555: checking for an ANSI C-conforming const" >&5
echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
if test "${ac_cv_c_const+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18863 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20561 "configure"
#include "confdefs.h"
int
@@ -18917,27 +20615,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18921: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20619: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18924: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18927: \"$ac_try\"") >&5
+ echo "$as_me:20622: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20625: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18930: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20628: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_c_const=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_c_const=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:18940: result: $ac_cv_c_const" >&5
+echo "$as_me:20638: result: $ac_cv_c_const" >&5
echo "${ECHO_T}$ac_cv_c_const" >&6
if test $ac_cv_c_const = no; then
@@ -18947,15 +20645,15 @@ EOF
fi
-echo "$as_me:18950: checking for inline" >&5
+echo "$as_me:20648: checking for inline" >&5
echo $ECHO_N "checking for inline... $ECHO_C" >&6
if test "${ac_cv_c_inline+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_cv_c_inline=no
for ac_kw in inline __inline__ __inline; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 18958 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20656 "configure"
#include "confdefs.h"
#ifndef __cplusplus
static $ac_kw int static_foo () {return 0; }
@@ -18963,28 +20661,28 @@ $ac_kw int foo () {return 0; }
#endif
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18967: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20665: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18970: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18973: \"$ac_try\"") >&5
+ echo "$as_me:20668: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20671: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18976: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20674: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_c_inline=$ac_kw; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:18987: result: $ac_cv_c_inline" >&5
+echo "$as_me:20685: result: $ac_cv_c_inline" >&5
echo "${ECHO_T}$ac_cv_c_inline" >&6
case $ac_cv_c_inline in
inline | yes) ;;
@@ -19010,7 +20708,7 @@ if test "$ac_cv_c_inline" != no ; then
:
elif test "$GCC" = yes
then
- echo "$as_me:19013: checking if $CC supports options to tune inlining" >&5
+ echo "$as_me:20711: checking if $CC supports options to tune inlining" >&5
echo $ECHO_N "checking if $CC supports options to tune inlining... $ECHO_C" >&6
if test "${cf_cv_gcc_inline+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -19018,8 +20716,8 @@ else
cf_save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS --param max-inline-insns-single=1200"
- cat >conftest.$ac_ext <<_ACEOF
-#line 19022 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20720 "configure"
#include "confdefs.h"
inline int foo(void) { return 1; }
int
@@ -19030,29 +20728,29 @@ ${cf_cv_main_return:-return} foo()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19034: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20732: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19037: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19040: \"$ac_try\"") >&5
+ echo "$as_me:20735: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20738: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19043: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20741: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gcc_inline=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gcc_inline=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS=$cf_save_CFLAGS
fi
-echo "$as_me:19055: result: $cf_cv_gcc_inline" >&5
+echo "$as_me:20753: result: $cf_cv_gcc_inline" >&5
echo "${ECHO_T}$cf_cv_gcc_inline" >&6
if test "$cf_cv_gcc_inline" = yes ; then
@@ -19063,19 +20761,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in --param max-inline-insns-single=1200
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -19094,7 +20792,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -19124,7 +20822,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -19158,7 +20856,7 @@ fi
fi
fi
-echo "$as_me:19161: checking for signal global datatype" >&5
+echo "$as_me:20859: checking for signal global datatype" >&5
echo $ECHO_N "checking for signal global datatype... $ECHO_C" >&6
if test "${cf_cv_sig_atomic_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -19169,8 +20867,8 @@ else
"sig_atomic_t" \
"int"
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 19173 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20871 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -19181,6 +20879,7 @@ extern $cf_type x;
$cf_type x;
static void handler(int sig)
{
+ (void)sig;
x = 5;
}
int
@@ -19192,40 +20891,40 @@ signal(SIGINT, handler);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19196: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20895: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19199: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19202: \"$ac_try\"") >&5
+ echo "$as_me:20898: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20901: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19205: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20904: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_sig_atomic_t=$cf_type
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_sig_atomic_t=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_sig_atomic_t" != no && break
done
fi
-echo "$as_me:19219: result: $cf_cv_sig_atomic_t" >&5
+echo "$as_me:20918: result: $cf_cv_sig_atomic_t" >&5
echo "${ECHO_T}$cf_cv_sig_atomic_t" >&6
test "$cf_cv_sig_atomic_t" != no &&
cat >>confdefs.h <<EOF
#define SIG_ATOMIC_T $cf_cv_sig_atomic_t
EOF
-if test $NCURSES_CHTYPE = auto ; then
+if test "$NCURSES_CHTYPE" = auto ; then
-echo "$as_me:19228: checking for type of chtype" >&5
+echo "$as_me:20927: checking for type of chtype" >&5
echo $ECHO_N "checking for type of chtype... $ECHO_C" >&6
if test "${cf_cv_typeof_chtype+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -19234,8 +20933,8 @@ else
if test "$cross_compiling" = yes; then
cf_cv_typeof_chtype=long
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19238 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20937 "configure"
#include "confdefs.h"
#define WANT_BITS 31
@@ -19269,31 +20968,31 @@ int main(void)
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:19273: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:20972: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19276: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:19278: \"$ac_try\"") >&5
+ echo "$as_me:20975: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:20977: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19281: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20980: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_typeof_chtype=`cat cf_test.out`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_typeof_chtype=long
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
rm -f cf_test.out
fi
-echo "$as_me:19296: result: $cf_cv_typeof_chtype" >&5
+echo "$as_me:20995: result: $cf_cv_typeof_chtype" >&5
echo "${ECHO_T}$cf_cv_typeof_chtype" >&6
cat >>confdefs.h <<EOF
@@ -19305,14 +21004,14 @@ else
fi
test "$cf_cv_typeof_chtype" = unsigned && cf_cv_typeof_chtype=""
-echo "$as_me:19308: checking if unsigned literals are legal" >&5
+echo "$as_me:21007: checking if unsigned literals are legal" >&5
echo $ECHO_N "checking if unsigned literals are legal... $ECHO_C" >&6
if test "${cf_cv_unsigned_literals+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19315 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21014 "configure"
#include "confdefs.h"
int
@@ -19323,36 +21022,36 @@ long x = 1L + 1UL + 1U + 1
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19327: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:21026: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19330: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19333: \"$ac_try\"") >&5
+ echo "$as_me:21029: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:21032: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19336: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21035: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_unsigned_literals=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_unsigned_literals=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:19348: result: $cf_cv_unsigned_literals" >&5
+echo "$as_me:21047: result: $cf_cv_unsigned_literals" >&5
echo "${ECHO_T}$cf_cv_unsigned_literals" >&6
cf_cv_1UL="1"
test ".$cf_cv_unsigned_literals" = .yes && cf_cv_1UL="${cf_cv_1UL}U"
test ".$cf_cv_typeof_chtype" = .long && cf_cv_1UL="${cf_cv_1UL}L"
-if test $NCURSES_MMASK_T = auto ; then
+if test "$NCURSES_MMASK_T" = auto ; then
cf_cv_typeof_mmask_t=long
else
cf_cv_typeof_mmask_t=$NCURSES_MMASK_T
@@ -19361,14 +21060,14 @@ test "$cf_cv_typeof_mmask_t" = unsigned && cf_cv_typeof_mmask_t=""
### Checks for external-data
-echo "$as_me:19364: checking if external errno is declared" >&5
+echo "$as_me:21063: checking if external errno is declared" >&5
echo $ECHO_N "checking if external errno is declared... $ECHO_C" >&6
if test "${cf_cv_dcl_errno+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19371 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21070 "configure"
#include "confdefs.h"
#ifdef HAVE_STDLIB_H
@@ -19380,33 +21079,33 @@ else
int
main (void)
{
-int x = (int) errno
+int x = (int) errno; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19389: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:21088: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19392: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19395: \"$ac_try\"") >&5
+ echo "$as_me:21091: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:21094: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19398: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21097: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_dcl_errno=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_dcl_errno=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:19409: result: $cf_cv_dcl_errno" >&5
+echo "$as_me:21108: result: $cf_cv_dcl_errno" >&5
echo "${ECHO_T}$cf_cv_dcl_errno" >&6
if test "$cf_cv_dcl_errno" = no ; then
@@ -19421,14 +21120,14 @@ fi
# It's possible (for near-UNIX clones) that the data doesn't exist
-echo "$as_me:19424: checking if external errno exists" >&5
+echo "$as_me:21123: checking if external errno exists" >&5
echo $ECHO_N "checking if external errno exists... $ECHO_C" >&6
if test "${cf_cv_have_errno+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19431 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21130 "configure"
#include "confdefs.h"
#undef errno
@@ -19442,28 +21141,28 @@ errno = 2
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:19446: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21145: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19449: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:19452: \"$ac_try\"") >&5
+ echo "$as_me:21148: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21151: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19455: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21154: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have_errno=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have_errno=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:19466: result: $cf_cv_have_errno" >&5
+echo "$as_me:21165: result: $cf_cv_have_errno" >&5
echo "${ECHO_T}$cf_cv_have_errno" >&6
if test "$cf_cv_have_errno" = yes ; then
@@ -19476,7 +21175,7 @@ EOF
fi
-echo "$as_me:19479: checking if data-only library module links" >&5
+echo "$as_me:21178: checking if data-only library module links" >&5
echo $ECHO_N "checking if data-only library module links... $ECHO_C" >&6
if test "${cf_cv_link_dataonly+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -19484,20 +21183,20 @@ else
rm -f conftest.a
cat >conftest.$ac_ext <<EOF
-#line 19487 "configure"
+#line 21186 "configure"
int testdata[3] = { 123, 456, 789 };
EOF
- if { (eval echo "$as_me:19490: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:21189: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19493: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
+ echo "$as_me:21192: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
mv conftest.o data.o && \
( $AR $ARFLAGS conftest.a data.o ) 2>&5 1>/dev/null
fi
rm -f conftest.$ac_ext data.o
cat >conftest.$ac_ext <<EOF
-#line 19500 "configure"
+#line 21199 "configure"
int testfunc(void)
{
#if defined(NeXT)
@@ -19510,11 +21209,11 @@ int testfunc(void)
#endif
}
EOF
- if { (eval echo "$as_me:19513: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:21212: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19516: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:21215: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
mv conftest.o func.o && \
( $AR $ARFLAGS conftest.a func.o ) 2>&5 1>/dev/null
fi
@@ -19525,8 +21224,8 @@ EOF
if test "$cross_compiling" = yes; then
cf_cv_link_dataonly=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19529 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21228 "configure"
#include "confdefs.h"
int main(void)
@@ -19536,31 +21235,31 @@ else
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:19540: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:21239: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19543: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:19545: \"$ac_try\"") >&5
+ echo "$as_me:21242: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:21244: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19548: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21247: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_link_dataonly=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_link_dataonly=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
LIBS="$cf_saveLIBS"
fi
-echo "$as_me:19563: result: $cf_cv_link_dataonly" >&5
+echo "$as_me:21262: result: $cf_cv_link_dataonly" >&5
echo "${ECHO_T}$cf_cv_link_dataonly" >&6
if test "$cf_cv_link_dataonly" = no ; then
@@ -19589,9 +21288,11 @@ select \
setbuf \
setbuffer \
setenv \
+setfsuid \
setvbuf \
sigaction \
sigvec \
+snprintf \
strdup \
strstr \
sysconf \
@@ -19602,13 +21303,13 @@ vsnprintf \
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:19605: checking for $ac_func" >&5
+echo "$as_me:21306: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19611 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21312 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -19638,29 +21339,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:19642: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21343: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19645: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:19648: \"$ac_try\"") >&5
+ echo "$as_me:21346: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21349: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19651: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21352: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:19661: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:21362: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -19670,7 +21371,7 @@ done
if test "x$ac_cv_func_getopt" = xno && \
test "x$cf_with_progs$cf_with_tests" != xnono; then
- { { echo "$as_me:19673: error: getopt is required for building programs" >&5
+ { { echo "$as_me:21374: error: getopt is required for building programs" >&5
echo "$as_me: error: getopt is required for building programs" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -19679,7 +21380,7 @@ if test "x$with_safe_sprintf" = xyes
then
if test "x$ac_cv_func_vsnprintf" = xyes
then
- { echo "$as_me:19682: WARNING: will use vsnprintf instead of safe-sprintf option" >&5
+ { echo "$as_me:21383: WARNING: will use vsnprintf instead of safe-sprintf option" >&5
echo "$as_me: WARNING: will use vsnprintf instead of safe-sprintf option" >&2;}
else
@@ -19692,14 +21393,14 @@ fi
if test "x$with_getcap" = "xyes" ; then
-echo "$as_me:19695: checking for terminal-capability database functions" >&5
+echo "$as_me:21396: checking for terminal-capability database functions" >&5
echo $ECHO_N "checking for terminal-capability database functions... $ECHO_C" >&6
if test "${cf_cv_cgetent+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 19702 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21403 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -19718,28 +21419,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:19722: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21423: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19725: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:19728: \"$ac_try\"") >&5
+ echo "$as_me:21426: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21429: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19731: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21432: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_cgetent=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_cgetent=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:19742: result: $cf_cv_cgetent" >&5
+echo "$as_me:21443: result: $cf_cv_cgetent" >&5
echo "${ECHO_T}$cf_cv_cgetent" >&6
if test "$cf_cv_cgetent" = yes
@@ -19749,14 +21450,14 @@ cat >>confdefs.h <<\EOF
#define HAVE_BSD_CGETENT 1
EOF
-echo "$as_me:19752: checking if cgetent uses const parameter" >&5
+echo "$as_me:21453: checking if cgetent uses const parameter" >&5
echo $ECHO_N "checking if cgetent uses const parameter... $ECHO_C" >&6
if test "${cf_cv_cgetent_const+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 19759 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21460 "configure"
#include "confdefs.h"
#pragma GCC diagnostic error "-Wincompatible-pointer-types-discards-qualifiers"
@@ -19778,28 +21479,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:19782: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21483: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19785: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:19788: \"$ac_try\"") >&5
+ echo "$as_me:21486: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21489: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19791: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21492: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_cgetent_const=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_cgetent_const=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:19802: result: $cf_cv_cgetent_const" >&5
+echo "$as_me:21503: result: $cf_cv_cgetent_const" >&5
echo "${ECHO_T}$cf_cv_cgetent_const" >&6
if test "$cf_cv_cgetent_const" = yes
then
@@ -19813,14 +21514,14 @@ fi
fi
-echo "$as_me:19816: checking for isascii" >&5
+echo "$as_me:21517: checking for isascii" >&5
echo $ECHO_N "checking for isascii... $ECHO_C" >&6
if test "${cf_cv_have_isascii+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19823 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21524 "configure"
#include "confdefs.h"
#include <ctype.h>
int
@@ -19831,28 +21532,28 @@ int x = isascii(' ')
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:19835: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21536: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19838: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:19841: \"$ac_try\"") >&5
+ echo "$as_me:21539: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21542: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19844: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21545: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have_isascii=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have_isascii=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:19855: result: $cf_cv_have_isascii" >&5
+echo "$as_me:21556: result: $cf_cv_have_isascii" >&5
echo "${ECHO_T}$cf_cv_have_isascii" >&6
test "$cf_cv_have_isascii" = yes &&
cat >>confdefs.h <<\EOF
@@ -19860,10 +21561,10 @@ cat >>confdefs.h <<\EOF
EOF
if test "$ac_cv_func_sigaction" = yes; then
-echo "$as_me:19863: checking whether sigaction needs _POSIX_SOURCE" >&5
+echo "$as_me:21564: checking whether sigaction needs _POSIX_SOURCE" >&5
echo $ECHO_N "checking whether sigaction needs _POSIX_SOURCE... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 19866 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21567 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -19876,25 +21577,25 @@ struct sigaction act
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19880: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:21581: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19883: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19886: \"$ac_try\"") >&5
+ echo "$as_me:21584: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:21587: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19889: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21590: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
sigact_bad=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 19897 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21598 "configure"
#include "confdefs.h"
#define _POSIX_SOURCE
@@ -19908,18 +21609,18 @@ struct sigaction act
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19912: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:21613: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19915: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19918: \"$ac_try\"") >&5
+ echo "$as_me:21616: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:21619: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19921: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21622: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
sigact_bad=yes
cat >>confdefs.h <<\EOF
@@ -19928,17 +21629,17 @@ EOF
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
sigact_bad=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:19937: result: $sigact_bad" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+echo "$as_me:21638: result: $sigact_bad" >&5
echo "${ECHO_T}$sigact_bad" >&6
fi
-echo "$as_me:19941: checking if nanosleep really works" >&5
+echo "$as_me:21642: checking if nanosleep really works" >&5
echo $ECHO_N "checking if nanosleep really works... $ECHO_C" >&6
if test "${cf_cv_func_nanosleep+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -19947,8 +21648,8 @@ else
if test "$cross_compiling" = yes; then
cf_cv_func_nanosleep=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19951 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21652 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -19972,28 +21673,28 @@ int main(void) {
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:19976: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:21677: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19979: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:19981: \"$ac_try\"") >&5
+ echo "$as_me:21680: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:21682: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19984: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21685: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_nanosleep=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_func_nanosleep=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:19996: result: $cf_cv_func_nanosleep" >&5
+echo "$as_me:21697: result: $cf_cv_func_nanosleep" >&5
echo "${ECHO_T}$cf_cv_func_nanosleep" >&6
test "$cf_cv_func_nanosleep" = "yes" &&
@@ -20010,24 +21711,24 @@ sys/termio.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:20013: checking for $ac_header" >&5
+echo "$as_me:21714: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20019 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21720 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:20023: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:21724: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:20029: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:21730: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -20040,14 +21741,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:20048: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:21749: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -20062,39 +21763,39 @@ if test "$ac_cv_header_termios_h" = yes ; then
(*) termios_bad=maybe ;;
esac
if test "$termios_bad" = maybe ; then
- echo "$as_me:20065: checking whether termios.h needs _POSIX_SOURCE" >&5
+ echo "$as_me:21766: checking whether termios.h needs _POSIX_SOURCE" >&5
echo $ECHO_N "checking whether termios.h needs _POSIX_SOURCE... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 20068 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21769 "configure"
#include "confdefs.h"
#include <termios.h>
int
main (void)
{
-struct termios foo; int x = foo.c_iflag
+struct termios foo; int x = foo.c_iflag = 1; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:20080: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:21781: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:20083: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:20086: \"$ac_try\"") >&5
+ echo "$as_me:21784: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:21787: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20089: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21790: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
termios_bad=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 20097 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21798 "configure"
#include "confdefs.h"
#define _POSIX_SOURCE
@@ -20102,50 +21803,50 @@ cat conftest.$ac_ext >&5
int
main (void)
{
-struct termios foo; int x = foo.c_iflag
+struct termios foo; int x = foo.c_iflag = 2; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:20111: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:21812: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:20114: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:20117: \"$ac_try\"") >&5
+ echo "$as_me:21815: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:21818: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20120: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21821: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
termios_bad=unknown
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
termios_bad=yes
cat >>confdefs.h <<\EOF
#define _POSIX_SOURCE 1
EOF
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:20136: result: $termios_bad" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:21837: result: $termios_bad" >&5
echo "${ECHO_T}$termios_bad" >&6
fi
fi
-echo "$as_me:20141: checking for tcgetattr" >&5
+echo "$as_me:21842: checking for tcgetattr" >&5
echo $ECHO_N "checking for tcgetattr... $ECHO_C" >&6
if test "${cf_cv_have_tcgetattr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 20148 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21849 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -20172,41 +21873,41 @@ tcgetattr(1, &foo);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20176: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21877: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20179: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20182: \"$ac_try\"") >&5
+ echo "$as_me:21880: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21883: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20185: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21886: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have_tcgetattr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have_tcgetattr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:20195: result: $cf_cv_have_tcgetattr" >&5
+echo "$as_me:21896: result: $cf_cv_have_tcgetattr" >&5
echo "${ECHO_T}$cf_cv_have_tcgetattr" >&6
test "$cf_cv_have_tcgetattr" = yes &&
cat >>confdefs.h <<\EOF
#define HAVE_TCGETATTR 1
EOF
-echo "$as_me:20202: checking for vsscanf function or workaround" >&5
+echo "$as_me:21903: checking for vsscanf function or workaround" >&5
echo $ECHO_N "checking for vsscanf function or workaround... $ECHO_C" >&6
if test "${cf_cv_func_vsscanf+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 20209 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21910 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -20221,25 +21922,25 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20225: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21926: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20228: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20231: \"$ac_try\"") >&5
+ echo "$as_me:21929: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21932: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20234: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21935: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_vsscanf=vsscanf
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 20242 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21943 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -20260,25 +21961,25 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20264: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21965: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20267: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20270: \"$ac_try\"") >&5
+ echo "$as_me:21968: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21971: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20273: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:21974: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_vsscanf=vfscanf
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 20281 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21982 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -20299,35 +22000,35 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20303: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22004: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20306: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20309: \"$ac_try\"") >&5
+ echo "$as_me:22007: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22010: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20312: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22013: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_vsscanf=_doscan
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_func_vsscanf=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:20327: result: $cf_cv_func_vsscanf" >&5
+echo "$as_me:22028: result: $cf_cv_func_vsscanf" >&5
echo "${ECHO_T}$cf_cv_func_vsscanf" >&6
-case $cf_cv_func_vsscanf in
+case "$cf_cv_func_vsscanf" in
(vsscanf)
cat >>confdefs.h <<\EOF
#define HAVE_VSSCANF 1
@@ -20350,24 +22051,24 @@ unistd.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:20353: checking for $ac_header" >&5
+echo "$as_me:22054: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20359 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22060 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:20363: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:22064: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:20369: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:22070: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -20380,14 +22081,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:20388: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:22089: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -20395,18 +22096,18 @@ EOF
fi
done
-echo "$as_me:20398: checking for working mkstemp" >&5
+echo "$as_me:22099: checking for working mkstemp" >&5
echo $ECHO_N "checking for working mkstemp... $ECHO_C" >&6
if test "${cf_cv_func_mkstemp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-rm -rf conftest*
+rm -rf ./conftest*
if test "$cross_compiling" = yes; then
cf_cv_func_mkstemp=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20409 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22110 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -20446,40 +22147,40 @@ int main(void)
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:20450: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:22151: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20453: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:20455: \"$ac_try\"") >&5
+ echo "$as_me:22154: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:22156: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20458: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22159: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_mkstemp=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_func_mkstemp=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:20473: result: $cf_cv_func_mkstemp" >&5
+echo "$as_me:22174: result: $cf_cv_func_mkstemp" >&5
echo "${ECHO_T}$cf_cv_func_mkstemp" >&6
if test "x$cf_cv_func_mkstemp" = xmaybe ; then
- echo "$as_me:20476: checking for mkstemp" >&5
+ echo "$as_me:22177: checking for mkstemp" >&5
echo $ECHO_N "checking for mkstemp... $ECHO_C" >&6
if test "${ac_cv_func_mkstemp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20482 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22183 "configure"
#include "confdefs.h"
#define mkstemp autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -20509,27 +22210,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20513: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22214: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20516: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20519: \"$ac_try\"") >&5
+ echo "$as_me:22217: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22220: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20522: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22223: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_mkstemp=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_mkstemp=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:20532: result: $ac_cv_func_mkstemp" >&5
+echo "$as_me:22233: result: $ac_cv_func_mkstemp" >&5
echo "${ECHO_T}$ac_cv_func_mkstemp" >&6
fi
@@ -20550,21 +22251,21 @@ else
fi
if test "x$cross_compiling" = xyes ; then
- { echo "$as_me:20553: WARNING: cross compiling: assume setvbuf params not reversed" >&5
+ { echo "$as_me:22254: WARNING: cross compiling: assume setvbuf params not reversed" >&5
echo "$as_me: WARNING: cross compiling: assume setvbuf params not reversed" >&2;}
else
- echo "$as_me:20556: checking whether setvbuf arguments are reversed" >&5
+ echo "$as_me:22257: checking whether setvbuf arguments are reversed" >&5
echo $ECHO_N "checking whether setvbuf arguments are reversed... $ECHO_C" >&6
if test "${ac_cv_func_setvbuf_reversed+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test "$cross_compiling" = yes; then
- { { echo "$as_me:20562: error: cannot run test program while cross compiling" >&5
+ { { echo "$as_me:22263: error: cannot run test program while cross compiling" >&5
echo "$as_me: error: cannot run test program while cross compiling" >&2;}
{ (exit 1); exit 1; }; }
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20567 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22268 "configure"
#include "confdefs.h"
#include <stdio.h>
/* If setvbuf has the reversed format, exit 0. */
@@ -20580,29 +22281,29 @@ main (void)
$ac_main_return(0); /* Non-reversed systems segv here. */
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:20584: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:22285: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20587: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:20589: \"$ac_try\"") >&5
+ echo "$as_me:22288: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:22290: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20592: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22293: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_setvbuf_reversed=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_setvbuf_reversed=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f core core.* *.core
+rm -f core ./core.* ./*.core
fi
-echo "$as_me:20605: result: $ac_cv_func_setvbuf_reversed" >&5
+echo "$as_me:22306: result: $ac_cv_func_setvbuf_reversed" >&5
echo "${ECHO_T}$ac_cv_func_setvbuf_reversed" >&6
if test $ac_cv_func_setvbuf_reversed = yes; then
@@ -20613,13 +22314,13 @@ EOF
fi
fi
-echo "$as_me:20616: checking for intptr_t" >&5
+echo "$as_me:22317: checking for intptr_t" >&5
echo $ECHO_N "checking for intptr_t... $ECHO_C" >&6
if test "${ac_cv_type_intptr_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20622 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22323 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -20633,29 +22334,29 @@ if (sizeof (intptr_t))
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:20637: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:22338: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:20640: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:20643: \"$ac_try\"") >&5
+ echo "$as_me:22341: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:22344: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20646: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22347: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_type_intptr_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_type_intptr_t=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:20656: result: $ac_cv_type_intptr_t" >&5
+echo "$as_me:22357: result: $ac_cv_type_intptr_t" >&5
echo "${ECHO_T}$ac_cv_type_intptr_t" >&6
-if test $ac_cv_type_intptr_t = yes; then
+if test "$ac_cv_type_intptr_t" = yes; then
:
else
@@ -20665,13 +22366,13 @@ EOF
fi
-echo "$as_me:20668: checking for ssize_t" >&5
+echo "$as_me:22369: checking for ssize_t" >&5
echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6
if test "${ac_cv_type_ssize_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20674 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22375 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -20685,29 +22386,29 @@ if (sizeof (ssize_t))
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:20689: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:22390: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:20692: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:20695: \"$ac_try\"") >&5
+ echo "$as_me:22393: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:22396: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20698: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22399: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_type_ssize_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_type_ssize_t=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:20708: result: $ac_cv_type_ssize_t" >&5
+echo "$as_me:22409: result: $ac_cv_type_ssize_t" >&5
echo "${ECHO_T}$ac_cv_type_ssize_t" >&6
-if test $ac_cv_type_ssize_t = yes; then
+if test "$ac_cv_type_ssize_t" = yes; then
:
else
@@ -20717,14 +22418,14 @@ EOF
fi
-echo "$as_me:20720: checking for type sigaction_t" >&5
+echo "$as_me:22421: checking for type sigaction_t" >&5
echo $ECHO_N "checking for type sigaction_t... $ECHO_C" >&6
if test "${cf_cv_type_sigaction+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20727 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22428 "configure"
#include "confdefs.h"
#include <signal.h>
@@ -20736,35 +22437,35 @@ sigaction_t x
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:20740: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:22441: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:20743: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:20746: \"$ac_try\"") >&5
+ echo "$as_me:22444: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:22447: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20749: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22450: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_type_sigaction=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_type_sigaction=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:20760: result: $cf_cv_type_sigaction" >&5
+echo "$as_me:22461: result: $cf_cv_type_sigaction" >&5
echo "${ECHO_T}$cf_cv_type_sigaction" >&6
test "$cf_cv_type_sigaction" = yes &&
cat >>confdefs.h <<\EOF
#define HAVE_TYPE_SIGACTION 1
EOF
-echo "$as_me:20767: checking declaration of size-change" >&5
+echo "$as_me:22468: checking declaration of size-change" >&5
echo $ECHO_N "checking declaration of size-change... $ECHO_C" >&6
if test "${cf_cv_sizechange+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -20784,8 +22485,8 @@ do
CPPFLAGS="${CPPFLAGS}-D$cf_opts"
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 20788 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22489 "configure"
#include "confdefs.h"
#include <sys/types.h>
#ifdef HAVE_TERMIOS_H
@@ -20798,7 +22499,7 @@ do
#ifdef NEED_PTEM_H
/* This is a workaround for SCO: they neglected to define struct winsize in
- * termios.h -- it's only in termio.h and ptem.h
+ * termios.h -- it is only in termio.h and ptem.h
*/
#include <sys/stream.h>
#include <sys/ptem.h>
@@ -20814,13 +22515,17 @@ main (void)
#ifdef TIOCGSIZE
struct ttysize win; /* SunOS 3.0... */
- int y = win.ts_lines;
- int x = win.ts_cols;
+ int y = win.ts_lines = 2;
+ int x = win.ts_cols = 1;
+ (void)y;
+ (void)x;
#else
#ifdef TIOCGWINSZ
struct winsize win; /* everything else */
- int y = win.ws_row;
- int x = win.ws_col;
+ int y = win.ws_row = 2;
+ int x = win.ws_col = 1;
+ (void)y;
+ (void)x;
#else
no TIOCGSIZE or TIOCGWINSZ
#endif /* TIOCGWINSZ */
@@ -20830,25 +22535,25 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:20834: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:22539: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:20837: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:20840: \"$ac_try\"") >&5
+ echo "$as_me:22542: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:22545: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20843: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22548: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_sizechange=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_sizechange=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save_CPPFLAGS"
if test "$cf_cv_sizechange" = yes ; then
@@ -20859,7 +22564,7 @@ rm -f conftest.$ac_objext conftest.$ac_ext
done
fi
-echo "$as_me:20862: result: $cf_cv_sizechange" >&5
+echo "$as_me:22567: result: $cf_cv_sizechange" >&5
echo "${ECHO_T}$cf_cv_sizechange" >&6
if test "$cf_cv_sizechange" != no ; then
@@ -20867,7 +22572,7 @@ cat >>confdefs.h <<\EOF
#define HAVE_SIZECHANGE 1
EOF
- case $cf_cv_sizechange in
+ case "$cf_cv_sizechange" in
(NEED*)
cat >>confdefs.h <<EOF
#define $cf_cv_sizechange 1
@@ -20877,13 +22582,13 @@ EOF
esac
fi
-echo "$as_me:20880: checking for memmove" >&5
+echo "$as_me:22585: checking for memmove" >&5
echo $ECHO_N "checking for memmove... $ECHO_C" >&6
if test "${ac_cv_func_memmove+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20886 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22591 "configure"
#include "confdefs.h"
#define memmove autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -20913,39 +22618,39 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20917: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22622: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20920: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20923: \"$ac_try\"") >&5
+ echo "$as_me:22625: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22628: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20926: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22631: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_memmove=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_memmove=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:20936: result: $ac_cv_func_memmove" >&5
+echo "$as_me:22641: result: $ac_cv_func_memmove" >&5
echo "${ECHO_T}$ac_cv_func_memmove" >&6
-if test $ac_cv_func_memmove = yes; then
+if test "$ac_cv_func_memmove" = yes; then
:
else
-echo "$as_me:20942: checking for bcopy" >&5
+echo "$as_me:22647: checking for bcopy" >&5
echo $ECHO_N "checking for bcopy... $ECHO_C" >&6
if test "${ac_cv_func_bcopy+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20948 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22653 "configure"
#include "confdefs.h"
#define bcopy autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -20975,31 +22680,31 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20979: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22684: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20982: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20985: \"$ac_try\"") >&5
+ echo "$as_me:22687: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22690: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20988: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22693: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_bcopy=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_bcopy=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:20998: result: $ac_cv_func_bcopy" >&5
+echo "$as_me:22703: result: $ac_cv_func_bcopy" >&5
echo "${ECHO_T}$ac_cv_func_bcopy" >&6
-if test $ac_cv_func_bcopy = yes; then
+if test "$ac_cv_func_bcopy" = yes; then
- echo "$as_me:21002: checking if bcopy does overlapping moves" >&5
+ echo "$as_me:22707: checking if bcopy does overlapping moves" >&5
echo $ECHO_N "checking if bcopy does overlapping moves... $ECHO_C" >&6
if test "${cf_cv_good_bcopy+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -21008,8 +22713,8 @@ else
if test "$cross_compiling" = yes; then
cf_cv_good_bcopy=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21012 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22717 "configure"
#include "confdefs.h"
int main(void) {
@@ -21022,29 +22727,29 @@ int main(void) {
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:21026: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:22731: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21029: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:21031: \"$ac_try\"") >&5
+ echo "$as_me:22734: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:22736: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21034: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22739: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_good_bcopy=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_good_bcopy=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:21047: result: $cf_cv_good_bcopy" >&5
+echo "$as_me:22752: result: $cf_cv_good_bcopy" >&5
echo "${ECHO_T}$cf_cv_good_bcopy" >&6
else
@@ -21067,17 +22772,17 @@ EOF
fi
-tty 2>&1 >/dev/null || {
+tty >/dev/null 2>&1 || {
for ac_func in posix_openpt
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:21074: checking for $ac_func" >&5
+echo "$as_me:22779: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21080 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22785 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -21107,29 +22812,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21111: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22816: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21114: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21117: \"$ac_try\"") >&5
+ echo "$as_me:22819: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22822: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21120: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22825: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:21130: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:22835: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -21137,7 +22842,7 @@ EOF
fi
done
}
-echo "$as_me:21140: checking if poll really works" >&5
+echo "$as_me:22845: checking if poll really works" >&5
echo $ECHO_N "checking if poll really works... $ECHO_C" >&6
if test "${cf_cv_working_poll+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -21146,8 +22851,8 @@ else
if test "$cross_compiling" = yes; then
cf_cv_working_poll=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21150 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22855 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -21198,42 +22903,42 @@ int main(void) {
${cf_cv_main_return:-return}(ret < 0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:21202: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:22907: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21205: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:21207: \"$ac_try\"") >&5
+ echo "$as_me:22910: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:22912: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21210: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22915: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_working_poll=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_working_poll=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:21222: result: $cf_cv_working_poll" >&5
+echo "$as_me:22927: result: $cf_cv_working_poll" >&5
echo "${ECHO_T}$cf_cv_working_poll" >&6
test "$cf_cv_working_poll" = "yes" &&
cat >>confdefs.h <<\EOF
#define HAVE_WORKING_POLL 1
EOF
-echo "$as_me:21229: checking for va_copy" >&5
+echo "$as_me:22934: checking for va_copy" >&5
echo $ECHO_N "checking for va_copy... $ECHO_C" >&6
if test "${cf_cv_have_va_copy+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 21236 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 22941 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -21249,27 +22954,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21253: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22958: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21256: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21259: \"$ac_try\"") >&5
+ echo "$as_me:22961: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22964: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21262: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22967: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have_va_copy=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have_va_copy=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:21272: result: $cf_cv_have_va_copy" >&5
+echo "$as_me:22977: result: $cf_cv_have_va_copy" >&5
echo "${ECHO_T}$cf_cv_have_va_copy" >&6
if test "$cf_cv_have_va_copy" = yes;
@@ -21281,14 +22986,14 @@ EOF
else # !cf_cv_have_va_copy
-echo "$as_me:21284: checking for __va_copy" >&5
+echo "$as_me:22989: checking for __va_copy" >&5
echo $ECHO_N "checking for __va_copy... $ECHO_C" >&6
if test "${cf_cv_have___va_copy+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 21291 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 22996 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -21304,27 +23009,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21308: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23013: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21311: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21314: \"$ac_try\"") >&5
+ echo "$as_me:23016: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23019: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21317: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23022: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have___va_copy=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have___va_copy=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:21327: result: $cf_cv_have___va_copy" >&5
+echo "$as_me:23032: result: $cf_cv_have___va_copy" >&5
echo "${ECHO_T}$cf_cv_have___va_copy" >&6
if test "$cf_cv_have___va_copy" = yes
@@ -21336,14 +23041,14 @@ EOF
else # !cf_cv_have___va_copy
-echo "$as_me:21339: checking for __builtin_va_copy" >&5
+echo "$as_me:23044: checking for __builtin_va_copy" >&5
echo $ECHO_N "checking for __builtin_va_copy... $ECHO_C" >&6
if test "${cf_cv_have___builtin_va_copy+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 21346 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 23051 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -21359,27 +23064,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21363: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23068: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21366: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21369: \"$ac_try\"") >&5
+ echo "$as_me:23071: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23074: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21372: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23077: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have___builtin_va_copy=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have___builtin_va_copy=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:21382: result: $cf_cv_have___builtin_va_copy" >&5
+echo "$as_me:23087: result: $cf_cv_have___builtin_va_copy" >&5
echo "${ECHO_T}$cf_cv_have___builtin_va_copy" >&6
test "$cf_cv_have___builtin_va_copy" = yes &&
@@ -21397,14 +23102,14 @@ case "${cf_cv_have_va_copy}${cf_cv_have___va_copy}${cf_cv_have___builtin_va_copy
;;
(*)
- echo "$as_me:21400: checking if we can simply copy va_list" >&5
+ echo "$as_me:23105: checking if we can simply copy va_list" >&5
echo $ECHO_N "checking if we can simply copy va_list... $ECHO_C" >&6
if test "${cf_cv_pointer_va_list+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 21407 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 23112 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -21420,39 +23125,39 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21424: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23129: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21427: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21430: \"$ac_try\"") >&5
+ echo "$as_me:23132: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23135: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21433: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23138: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_pointer_va_list=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_pointer_va_list=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:21443: result: $cf_cv_pointer_va_list" >&5
+echo "$as_me:23148: result: $cf_cv_pointer_va_list" >&5
echo "${ECHO_T}$cf_cv_pointer_va_list" >&6
if test "$cf_cv_pointer_va_list" = no
then
- echo "$as_me:21448: checking if we can copy va_list indirectly" >&5
+ echo "$as_me:23153: checking if we can copy va_list indirectly" >&5
echo $ECHO_N "checking if we can copy va_list indirectly... $ECHO_C" >&6
if test "${cf_cv_array_va_list+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 21455 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 23160 "configure"
#include "confdefs.h"
#include <stdarg.h>
@@ -21468,27 +23173,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21472: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23177: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21475: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21478: \"$ac_try\"") >&5
+ echo "$as_me:23180: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23183: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21481: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23186: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_array_va_list=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_array_va_list=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:21491: result: $cf_cv_array_va_list" >&5
+echo "$as_me:23196: result: $cf_cv_array_va_list" >&5
echo "${ECHO_T}$cf_cv_array_va_list" >&6
test "$cf_cv_array_va_list" = yes &&
cat >>confdefs.h <<\EOF
@@ -21499,13 +23204,13 @@ EOF
;;
esac
-echo "$as_me:21502: checking for pid_t" >&5
+echo "$as_me:23207: checking for pid_t" >&5
echo $ECHO_N "checking for pid_t... $ECHO_C" >&6
if test "${ac_cv_type_pid_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21508 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23213 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -21519,29 +23224,29 @@ if (sizeof (pid_t))
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:21523: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:23228: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:21526: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:21529: \"$ac_try\"") >&5
+ echo "$as_me:23231: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:23234: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21532: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23237: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_type_pid_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_type_pid_t=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:21542: result: $ac_cv_type_pid_t" >&5
+echo "$as_me:23247: result: $ac_cv_type_pid_t" >&5
echo "${ECHO_T}$ac_cv_type_pid_t" >&6
-if test $ac_cv_type_pid_t = yes; then
+if test "$ac_cv_type_pid_t" = yes; then
:
else
@@ -21554,24 +23259,24 @@ fi
for ac_header in unistd.h vfork.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:21557: checking for $ac_header" >&5
+echo "$as_me:23262: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21563 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23268 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:21567: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:23272: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:21573: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:23278: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -21584,14 +23289,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:21592: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:23297: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -21602,13 +23307,13 @@ done
for ac_func in fork vfork
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:21605: checking for $ac_func" >&5
+echo "$as_me:23310: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21611 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23316 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -21638,29 +23343,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21642: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23347: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21645: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21648: \"$ac_try\"") >&5
+ echo "$as_me:23350: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23353: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21651: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23356: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:21661: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:23366: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -21670,7 +23375,7 @@ done
ac_cv_func_fork_works=$ac_cv_func_fork
if test "x$ac_cv_func_fork" = xyes; then
- echo "$as_me:21673: checking for working fork" >&5
+ echo "$as_me:23378: checking for working fork" >&5
echo $ECHO_N "checking for working fork... $ECHO_C" >&6
if test "${ac_cv_func_fork_works+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -21678,7 +23383,7 @@ else
if test "$cross_compiling" = yes; then
ac_cv_func_fork_works=cross
else
- cat >conftest.$ac_ext <<_ACEOF
+ cat >"conftest.$ac_ext" <<_ACEOF
/* By Rüdiger Kuhlmann. */
#include <sys/types.h>
#if HAVE_UNISTD_H
@@ -21692,28 +23397,28 @@ else
$ac_main_return (0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:21696: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:23401: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21699: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:21701: \"$ac_try\"") >&5
+ echo "$as_me:23404: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:23406: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21704: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23409: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_fork_works=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_fork_works=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:21716: result: $ac_cv_func_fork_works" >&5
+echo "$as_me:23421: result: $ac_cv_func_fork_works" >&5
echo "${ECHO_T}$ac_cv_func_fork_works" >&6
fi
@@ -21727,12 +23432,12 @@ if test "x$ac_cv_func_fork_works" = xcross; then
ac_cv_func_fork_works=yes
;;
esac
- { echo "$as_me:21730: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&5
+ { echo "$as_me:23435: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&5
echo "$as_me: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&2;}
fi
ac_cv_func_vfork_works=$ac_cv_func_vfork
if test "x$ac_cv_func_vfork" = xyes; then
- echo "$as_me:21735: checking for working vfork" >&5
+ echo "$as_me:23440: checking for working vfork" >&5
echo $ECHO_N "checking for working vfork... $ECHO_C" >&6
if test "${ac_cv_func_vfork_works+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -21740,8 +23445,8 @@ else
if test "$cross_compiling" = yes; then
ac_cv_func_vfork_works=cross
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21744 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23449 "configure"
#include "confdefs.h"
/* Thanks to Paul Eggert for this test. */
#include <stdio.h>
@@ -21837,34 +23542,34 @@ main (void)
}
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:21841: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:23546: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21844: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:21846: \"$ac_try\"") >&5
+ echo "$as_me:23549: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:23551: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21849: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23554: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_vfork_works=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_vfork_works=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:21861: result: $ac_cv_func_vfork_works" >&5
+echo "$as_me:23566: result: $ac_cv_func_vfork_works" >&5
echo "${ECHO_T}$ac_cv_func_vfork_works" >&6
fi;
if test "x$ac_cv_func_fork_works" = xcross; then
ac_cv_func_vfork_works=ac_cv_func_vfork
- { echo "$as_me:21867: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&5
+ { echo "$as_me:23572: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&5
echo "$as_me: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&2;}
fi
@@ -21889,7 +23594,7 @@ EOF
fi
-echo "$as_me:21892: checking if fopen accepts explicit binary mode" >&5
+echo "$as_me:23597: checking if fopen accepts explicit binary mode" >&5
echo $ECHO_N "checking if fopen accepts explicit binary mode... $ECHO_C" >&6
if test "${cf_cv_fopen_bin_r+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -21898,8 +23603,8 @@ else
if test "$cross_compiling" = yes; then
cf_cv_fopen_bin_r=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 21902 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23607 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -21931,29 +23636,29 @@ int main(void) {
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:21935: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:23640: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21938: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:21940: \"$ac_try\"") >&5
+ echo "$as_me:23643: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:23645: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:21943: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23648: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_fopen_bin_r=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_fopen_bin_r=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:21956: result: $cf_cv_fopen_bin_r" >&5
+echo "$as_me:23661: result: $cf_cv_fopen_bin_r" >&5
echo "${ECHO_T}$cf_cv_fopen_bin_r" >&6
test "x$cf_cv_fopen_bin_r" != xno &&
cat >>confdefs.h <<\EOF
@@ -21962,15 +23667,15 @@ EOF
# special check for test/ditto.c
-echo "$as_me:21965: checking for openpty in -lutil" >&5
+echo "$as_me:23670: checking for openpty in -lutil" >&5
echo $ECHO_N "checking for openpty in -lutil... $ECHO_C" >&6
if test "${ac_cv_lib_util_openpty+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lutil $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 21973 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 23678 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -21988,43 +23693,43 @@ openpty ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:21992: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23697: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:21995: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:21998: \"$ac_try\"") >&5
+ echo "$as_me:23700: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23703: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22001: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23706: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_util_openpty=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_util_openpty=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:22012: result: $ac_cv_lib_util_openpty" >&5
+echo "$as_me:23717: result: $ac_cv_lib_util_openpty" >&5
echo "${ECHO_T}$ac_cv_lib_util_openpty" >&6
-if test $ac_cv_lib_util_openpty = yes; then
+if test "$ac_cv_lib_util_openpty" = yes; then
cf_cv_lib_util=yes
else
cf_cv_lib_util=no
fi
-echo "$as_me:22020: checking for openpty header" >&5
+echo "$as_me:23725: checking for openpty header" >&5
echo $ECHO_N "checking for openpty header... $ECHO_C" >&6
if test "${cf_cv_func_openpty+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_save_LIBS="$LIBS"
- test $cf_cv_lib_util = yes && {
+ test "$cf_cv_lib_util" = yes && {
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
@@ -22043,8 +23748,8 @@ LIBS="$cf_add_libs"
}
for cf_header in pty.h libutil.h util.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 22047 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23752 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -22060,35 +23765,35 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:22064: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23769: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:22067: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:22070: \"$ac_try\"") >&5
+ echo "$as_me:23772: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23775: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22073: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23778: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_openpty=$cf_header
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_func_openpty=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
LIBS="$cf_save_LIBS"
fi
-echo "$as_me:22091: result: $cf_cv_func_openpty" >&5
+echo "$as_me:23796: result: $cf_cv_func_openpty" >&5
echo "${ECHO_T}$cf_cv_func_openpty" >&6
if test "$cf_cv_func_openpty" != no ; then
@@ -22137,9 +23842,9 @@ case $with_hashed_db in
if test -n "$with_hashed_db/include" ; then
for cf_add_incdir in $with_hashed_db/include
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -22160,8 +23865,8 @@ if test -n "$with_hashed_db/include" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 22164 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23869 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -22172,25 +23877,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:22176: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:23881: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:22179: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:22182: \"$ac_try\"") >&5
+ echo "$as_me:23884: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:23887: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22185: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23890: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -22199,11 +23904,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:22202: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:23907: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -22219,9 +23924,9 @@ fi
if test -n "$with_hashed_db/lib" ; then
for cf_add_libdir in $with_hashed_db/lib
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -22235,7 +23940,7 @@ if test -n "$with_hashed_db/lib" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:22238: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:23943: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -22246,7 +23951,7 @@ fi
else
case "$with_hashed_db" in
(./*|../*|/*)
- { echo "$as_me:22249: WARNING: no such directory $with_hashed_db" >&5
+ { echo "$as_me:23954: WARNING: no such directory $with_hashed_db" >&5
echo "$as_me: WARNING: no such directory $with_hashed_db" >&2;}
;;
(*)
@@ -22257,11 +23962,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/$with_hashed_db && cf_search="$cf_search $prefix/include/$with_hashed_db"
- test -d $prefix/include/$with_hashed_db/include && cf_search="$cf_search $prefix/include/$with_hashed_db/include"
- test -d $prefix/$with_hashed_db/include && cf_search="$cf_search $prefix/$with_hashed_db/include"
- test -d $prefix/$with_hashed_db/include/$with_hashed_db && cf_search="$cf_search $prefix/$with_hashed_db/include/$with_hashed_db"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/$with_hashed_db" && cf_search="$cf_search $prefix/include/$with_hashed_db"
+ test -d "$prefix/include/$with_hashed_db/include" && cf_search="$cf_search $prefix/include/$with_hashed_db/include"
+ test -d "$prefix/$with_hashed_db/include" && cf_search="$cf_search $prefix/$with_hashed_db/include"
+ test -d "$prefix/$with_hashed_db/include/$with_hashed_db" && cf_search="$cf_search $prefix/$with_hashed_db/include/$with_hashed_db"
}
for cf_subdir_prefix in \
@@ -22275,28 +23980,28 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/$with_hashed_db && cf_search="$cf_search $cf_subdir_prefix/include/$with_hashed_db"
- test -d $cf_subdir_prefix/include/$with_hashed_db/include && cf_search="$cf_search $cf_subdir_prefix/include/$with_hashed_db/include"
- test -d $cf_subdir_prefix/$with_hashed_db/include && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/include"
- test -d $cf_subdir_prefix/$with_hashed_db/include/$with_hashed_db && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/include/$with_hashed_db"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/$with_hashed_db" && cf_search="$cf_search $cf_subdir_prefix/include/$with_hashed_db"
+ test -d "$cf_subdir_prefix/include/$with_hashed_db/include" && cf_search="$cf_search $cf_subdir_prefix/include/$with_hashed_db/include"
+ test -d "$cf_subdir_prefix/$with_hashed_db/include" && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/include"
+ test -d "$cf_subdir_prefix/$with_hashed_db/include/$with_hashed_db" && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/include/$with_hashed_db"
}
done
for cf_item in $cf_search
do
- case $cf_item in
+ case "$cf_item" in
(*/$with_hashed_db)
if test -n "$cf_item" ; then
for cf_add_incdir in $cf_item
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -22317,8 +24022,8 @@ if test -n "$cf_item" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 22321 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24026 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -22329,25 +24034,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:22333: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:24038: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:22336: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:22339: \"$ac_try\"") >&5
+ echo "$as_me:24041: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:24044: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22342: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24047: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -22356,11 +24061,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:22359: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:24064: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -22383,11 +24088,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/$with_hashed_db && cf_search="$cf_search $prefix/lib/$with_hashed_db"
- test -d $prefix/lib/$with_hashed_db/lib && cf_search="$cf_search $prefix/lib/$with_hashed_db/lib"
- test -d $prefix/$with_hashed_db/lib && cf_search="$cf_search $prefix/$with_hashed_db/lib"
- test -d $prefix/$with_hashed_db/lib/$with_hashed_db && cf_search="$cf_search $prefix/$with_hashed_db/lib/$with_hashed_db"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/$with_hashed_db" && cf_search="$cf_search $prefix/lib/$with_hashed_db"
+ test -d "$prefix/lib/$with_hashed_db/lib" && cf_search="$cf_search $prefix/lib/$with_hashed_db/lib"
+ test -d "$prefix/$with_hashed_db/lib" && cf_search="$cf_search $prefix/$with_hashed_db/lib"
+ test -d "$prefix/$with_hashed_db/lib/$with_hashed_db" && cf_search="$cf_search $prefix/$with_hashed_db/lib/$with_hashed_db"
}
for cf_subdir_prefix in \
@@ -22401,28 +24106,28 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/$with_hashed_db && cf_search="$cf_search $cf_subdir_prefix/lib/$with_hashed_db"
- test -d $cf_subdir_prefix/lib/$with_hashed_db/lib && cf_search="$cf_search $cf_subdir_prefix/lib/$with_hashed_db/lib"
- test -d $cf_subdir_prefix/$with_hashed_db/lib && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/lib"
- test -d $cf_subdir_prefix/$with_hashed_db/lib/$with_hashed_db && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/lib/$with_hashed_db"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/$with_hashed_db" && cf_search="$cf_search $cf_subdir_prefix/lib/$with_hashed_db"
+ test -d "$cf_subdir_prefix/lib/$with_hashed_db/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/$with_hashed_db/lib"
+ test -d "$cf_subdir_prefix/$with_hashed_db/lib" && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/lib"
+ test -d "$cf_subdir_prefix/$with_hashed_db/lib/$with_hashed_db" && cf_search="$cf_search $cf_subdir_prefix/$with_hashed_db/lib/$with_hashed_db"
}
done
for cf_item in $cf_search
do
- case $cf_item in
+ case "$cf_item" in
(*/$with_hashed_db)
if test -n "$cf_item" ; then
for cf_add_libdir in $cf_item
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -22436,7 +24141,7 @@ if test -n "$cf_item" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:22439: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:24144: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -22453,24 +24158,24 @@ fi
fi
esac
-echo "$as_me:22456: checking for db.h" >&5
+echo "$as_me:24161: checking for db.h" >&5
echo $ECHO_N "checking for db.h... $ECHO_C" >&6
if test "${ac_cv_header_db_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 22462 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24167 "configure"
#include "confdefs.h"
#include <db.h>
_ACEOF
-if { (eval echo "$as_me:22466: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:24171: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:22472: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:24177: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -22483,16 +24188,16 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_db_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_db_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:22491: result: $ac_cv_header_db_h" >&5
+echo "$as_me:24196: result: $ac_cv_header_db_h" >&5
echo "${ECHO_T}$ac_cv_header_db_h" >&6
-if test $ac_cv_header_db_h = yes; then
+if test "$ac_cv_header_db_h" = yes; then
-echo "$as_me:22495: checking for version of db" >&5
+echo "$as_me:24200: checking for version of db" >&5
echo $ECHO_N "checking for version of db... $ECHO_C" >&6
if test "${cf_cv_hashed_db_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -22503,10 +24208,10 @@ cf_cv_hashed_db_version=unknown
for cf_db_version in 1 2 3 4 5 6
do
-echo "${as_me:-configure}:22506: testing checking for db version $cf_db_version ..." 1>&5
+echo "${as_me:-configure}:24211: testing checking for db version $cf_db_version ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 22509 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24214 "configure"
#include "confdefs.h"
$ac_includes_default
@@ -22535,40 +24240,40 @@ DBT *foo = 0
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:22539: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:24244: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:22542: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:22545: \"$ac_try\"") >&5
+ echo "$as_me:24247: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:24250: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22548: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24253: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_hashed_db_version=$cf_db_version
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:22562: result: $cf_cv_hashed_db_version" >&5
+echo "$as_me:24267: result: $cf_cv_hashed_db_version" >&5
echo "${ECHO_T}$cf_cv_hashed_db_version" >&6
if test "$cf_cv_hashed_db_version" = unknown ; then
- { { echo "$as_me:22566: error: Cannot determine version of db" >&5
+ { { echo "$as_me:24271: error: Cannot determine version of db" >&5
echo "$as_me: error: Cannot determine version of db" >&2;}
{ (exit 1); exit 1; }; }
else
-echo "$as_me:22571: checking for db libraries" >&5
+echo "$as_me:24276: checking for db libraries" >&5
echo $ECHO_N "checking for db libraries... $ECHO_C" >&6
if test "${cf_cv_hashed_db_libs+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -22598,10 +24303,10 @@ LIBS="$cf_add_libs"
fi
-echo "${as_me:-configure}:22601: testing checking for library "$cf_db_libs" ..." 1>&5
+echo "${as_me:-configure}:24306: testing checking for library $cf_db_libs ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 22604 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24309 "configure"
#include "confdefs.h"
$ac_includes_default
@@ -22655,18 +24360,18 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:22659: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:24364: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:22662: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:22665: \"$ac_try\"") >&5
+ echo "$as_me:24367: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:24370: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22668: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24373: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test -n "$cf_db_libs" ; then
cf_cv_hashed_db_libs=$cf_db_libs
@@ -22678,18 +24383,18 @@ if { (eval echo "$as_me:22659: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_libs"
done
fi
-echo "$as_me:22688: result: $cf_cv_hashed_db_libs" >&5
+echo "$as_me:24393: result: $cf_cv_hashed_db_libs" >&5
echo "${ECHO_T}$cf_cv_hashed_db_libs" >&6
if test "$cf_cv_hashed_db_libs" = unknown ; then
- { { echo "$as_me:22692: error: Cannot determine library for db" >&5
+ { { echo "$as_me:24397: error: Cannot determine library for db" >&5
echo "$as_me: error: Cannot determine library for db" >&2;}
{ (exit 1); exit 1; }; }
elif test "$cf_cv_hashed_db_libs" != default ; then
@@ -22715,7 +24420,7 @@ fi
else
- { { echo "$as_me:22718: error: Cannot find db.h" >&5
+ { { echo "$as_me:24423: error: Cannot find db.h" >&5
echo "$as_me: error: Cannot find db.h" >&2;}
{ (exit 1); exit 1; }; }
@@ -22723,22 +24428,22 @@ fi
fi
-if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then
- CFLAGS=`echo ${CFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
- CXXFLAGS=`echo ${CXXFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
+if test -z "$cf_user_CFLAGS" && test "$enable_leaks" = yes ; then
+ CFLAGS=`echo "${CFLAGS}" | sed -e 's%-g %%' -e 's%-g$%%' -e 's%[ ]% %g' -e 's% [ ]*% %g' -e 's%^ %%' -e 's% $%%'`
+ CXXFLAGS=`echo "${CXXFLAGS}" | sed -e 's%-g %%' -e 's%-g$%%' -e 's%[ ]% %g' -e 's% [ ]*% %g' -e 's%^ %%' -e 's% $%%'`
fi
# Just in case, check if the C compiler has a bool type.
-echo "$as_me:22733: checking if we should include stdbool.h" >&5
+echo "$as_me:24438: checking if we should include stdbool.h" >&5
echo $ECHO_N "checking if we should include stdbool.h... $ECHO_C" >&6
if test "${cf_cv_header_stdbool_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 22741 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24446 "configure"
#include "confdefs.h"
int
@@ -22749,24 +24454,24 @@ bool foo = false
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:22753: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:24458: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:22756: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:22759: \"$ac_try\"") >&5
+ echo "$as_me:24461: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:24464: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22762: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24467: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_header_stdbool_h=0
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 22769 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 24474 "configure"
#include "confdefs.h"
#ifndef __BEOS__
@@ -22781,45 +24486,45 @@ bool foo = false
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:22785: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:24490: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:22788: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:22791: \"$ac_try\"") >&5
+ echo "$as_me:24493: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:24496: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22794: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24499: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_header_stdbool_h=1
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_header_stdbool_h=0
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
if test "$cf_cv_header_stdbool_h" = 1
-then echo "$as_me:22808: result: yes" >&5
+then echo "$as_me:24513: result: yes" >&5
echo "${ECHO_T}yes" >&6
-else echo "$as_me:22810: result: no" >&5
+else echo "$as_me:24515: result: no" >&5
echo "${ECHO_T}no" >&6
fi
-echo "$as_me:22814: checking for builtin bool type" >&5
+echo "$as_me:24519: checking for builtin bool type" >&5
echo $ECHO_N "checking for builtin bool type... $ECHO_C" >&6
if test "${cf_cv_cc_bool_type+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 22822 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24527 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -22833,32 +24538,32 @@ bool x = false
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:22837: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:24542: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:22840: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:22843: \"$ac_try\"") >&5
+ echo "$as_me:24545: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:24548: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22846: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24551: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_cc_bool_type=1
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_cc_bool_type=0
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
if test "$cf_cv_cc_bool_type" = 1
-then echo "$as_me:22859: result: yes" >&5
+then echo "$as_me:24564: result: yes" >&5
echo "${ECHO_T}yes" >&6
-else echo "$as_me:22861: result: no" >&5
+else echo "$as_me:24566: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -22866,19 +24571,19 @@ fi
if test -n "$CXX" ; then
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test -n "$GXX" ; then
cf_save="$LIBS"
LIBS="$LIBS $CXXLIBS"
- echo "$as_me:22878: checking if we already have C++ library" >&5
+ echo "$as_me:24583: checking if we already have C++ library" >&5
echo $ECHO_N "checking if we already have C++ library... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 22881 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24586 "configure"
#include "confdefs.h"
#include <iostream>
@@ -22891,32 +24596,32 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:22895: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:24600: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:22898: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:22901: \"$ac_try\"") >&5
+ echo "$as_me:24603: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:24606: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22904: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24609: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_libstdcpp=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_libstdcpp=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:22913: result: $cf_have_libstdcpp" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:24618: result: $cf_have_libstdcpp" >&5
echo "${ECHO_T}$cf_have_libstdcpp" >&6
LIBS="$cf_save"
- if test $cf_have_libstdcpp != yes
+ if test "$cf_have_libstdcpp" != yes
then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(os2*)
if test -z "`g++ -dM -E - < /dev/null | grep __KLIBC__`"; then
cf_stdcpp_libname=stdcpp
@@ -22929,7 +24634,7 @@ echo "${ECHO_T}$cf_have_libstdcpp" >&6
;;
esac
- echo "$as_me:22932: checking for library $cf_stdcpp_libname" >&5
+ echo "$as_me:24637: checking for library $cf_stdcpp_libname" >&5
echo $ECHO_N "checking for library $cf_stdcpp_libname... $ECHO_C" >&6
if test "${cf_cv_libstdcpp+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -22954,8 +24659,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 22958 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24663 "configure"
#include "confdefs.h"
#include <iostream>
@@ -22968,29 +24673,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:22972: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:24677: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:22975: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:22978: \"$ac_try\"") >&5
+ echo "$as_me:24680: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:24683: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:22981: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24686: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_libstdcpp=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_libstdcpp=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save"
fi
-echo "$as_me:22993: result: $cf_cv_libstdcpp" >&5
+echo "$as_me:24698: result: $cf_cv_libstdcpp" >&5
echo "${ECHO_T}$cf_cv_libstdcpp" >&6
test "$cf_cv_libstdcpp" = yes && {
cf_add_libs="$CXXLIBS"
@@ -23012,7 +24717,7 @@ CXXLIBS="$cf_add_libs"
fi
fi
- echo "$as_me:23015: checking whether $CXX understands -c and -o together" >&5
+ echo "$as_me:24720: checking whether $CXX understands -c and -o together" >&5
echo $ECHO_N "checking whether $CXX understands -c and -o together... $ECHO_C" >&6
if test "${cf_cv_prog_CXX_c_o+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -23027,40 +24732,40 @@ CF_EOF
# We do the test twice because some compilers refuse to overwrite an
# existing .o file with -o, though they will create one.
ac_try='$CXX $CXXFLAGS $CPPFLAGS -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
-if { (eval echo "$as_me:23030: \"$ac_try\"") >&5
+if { (eval echo "$as_me:24735: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23033: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- test -f conftest2.$ac_objext && { (eval echo "$as_me:23035: \"$ac_try\"") >&5
+ echo "$as_me:24738: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ test -f conftest2.$ac_objext && { (eval echo "$as_me:24740: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23038: \$? = $ac_status" >&5
- (exit $ac_status); };
+ echo "$as_me:24743: \$? = $ac_status" >&5
+ (exit "$ac_status"); };
then
eval cf_cv_prog_CXX_c_o=yes
else
eval cf_cv_prog_CXX_c_o=no
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
-if test $cf_cv_prog_CXX_c_o = yes; then
- echo "$as_me:23049: result: yes" >&5
+if test "$cf_cv_prog_CXX_c_o" = yes; then
+ echo "$as_me:24754: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:23052: result: no" >&5
+ echo "$as_me:24757: result: no" >&5
echo "${ECHO_T}no" >&6
fi
- case $GXX_VERSION in
- (1*|2.0-6*)
+ case "$GXX_VERSION" in
+ (1.*|2.[0-6]*|[1-9][0-9].*)
cf_cxx_library=yes
;;
(*-2.7*|2.7*)
cf_cxx_library=unknown
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(os2*)
cf_gpp_libname=gpp
;;
@@ -23069,7 +24774,7 @@ case $cf_cv_system_name in
;;
esac
if test "$GXX" = yes; then
- echo "$as_me:23072: checking for lib$cf_gpp_libname" >&5
+ echo "$as_me:24777: checking for lib$cf_gpp_libname" >&5
echo $ECHO_N "checking for lib$cf_gpp_libname... $ECHO_C" >&6
cf_save="$LIBS"
@@ -23089,8 +24794,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 23093 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24798 "configure"
#include "confdefs.h"
#include <$cf_gpp_libname/builtin.h>
@@ -23103,18 +24808,18 @@ two_arg_error_handler_t foo2 = lib_error_handler
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:23107: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:24812: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:23110: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:23113: \"$ac_try\"") >&5
+ echo "$as_me:24815: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:24818: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23116: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24821: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cxx_library=yes
cf_add_libs="$CXXLIBS"
@@ -23148,9 +24853,9 @@ EOF
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 23153 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 24858 "configure"
#include "confdefs.h"
#include <builtin.h>
@@ -23163,18 +24868,18 @@ two_arg_error_handler_t foo2 = lib_error_handler
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:23167: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:24872: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:23170: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:23173: \"$ac_try\"") >&5
+ echo "$as_me:24875: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:24878: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23176: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:24881: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cxx_library=yes
cf_add_libs="$CXXLIBS"
@@ -23199,14 +24904,14 @@ EOF
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cxx_library=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save"
- echo "$as_me:23209: result: $cf_cxx_library" >&5
+ echo "$as_me:24914: result: $cf_cxx_library" >&5
echo "${ECHO_T}$cf_cxx_library" >&6
fi
@@ -23218,11 +24923,11 @@ fi
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
-echo "$as_me:23225: checking how to run the C++ preprocessor" >&5
+ac_main_return="return"
+echo "$as_me:24930: checking how to run the C++ preprocessor" >&5
echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6
if test -z "$CXXCPP"; then
if test "${ac_cv_prog_CXXCPP+set}" = set; then
@@ -23238,20 +24943,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 23242 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24947 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:23247: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:24952: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:23253: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:24958: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_cxx_preproc_warn_flag
else
@@ -23264,27 +24969,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 23276 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 24981 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:23280: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:24985: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:23286: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:24991: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_cxx_preproc_warn_flag
else
@@ -23298,16 +25003,16 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
break
fi
@@ -23320,7 +25025,7 @@ fi
else
ac_cv_prog_CXXCPP=$CXXCPP
fi
-echo "$as_me:23323: result: $CXXCPP" >&5
+echo "$as_me:25028: result: $CXXCPP" >&5
echo "${ECHO_T}$CXXCPP" >&6
ac_preproc_ok=false
for ac_cxx_preproc_warn_flag in '' yes
@@ -23329,20 +25034,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 23333 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25038 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:23338: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:25043: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:23344: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:25049: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_cxx_preproc_warn_flag
else
@@ -23355,27 +25060,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 23367 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25072 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:23371: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:25076: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:23377: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:25082: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_cxx_preproc_warn_flag
else
@@ -23389,52 +25094,52 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
:
else
- { { echo "$as_me:23405: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5
+ { { echo "$as_me:25110: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5
echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&2;}
{ (exit 1); exit 1; }; }
fi
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
for ac_header in typeinfo
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:23420: checking for $ac_header" >&5
+echo "$as_me:25125: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 23426 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25131 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:23430: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:25135: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:23436: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:25141: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_cxx_preproc_warn_flag
else
@@ -23447,14 +25152,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:23455: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:25160: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -23465,24 +25170,24 @@ done
for ac_header in iostream
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:23468: checking for $ac_header" >&5
+echo "$as_me:25173: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 23474 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25179 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:23478: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:25183: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:23484: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:25189: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_cxx_preproc_warn_flag
else
@@ -23495,14 +25200,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:23503: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:25208: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -23511,10 +25216,10 @@ fi
done
if test x"$ac_cv_header_iostream" = xyes ; then
- echo "$as_me:23514: checking if iostream uses std-namespace" >&5
+ echo "$as_me:25219: checking if iostream uses std-namespace" >&5
echo $ECHO_N "checking if iostream uses std-namespace... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 23517 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25222 "configure"
#include "confdefs.h"
#include <iostream>
@@ -23530,26 +25235,26 @@ cerr << "testing" << endl;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:23534: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25239: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:23537: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:23540: \"$ac_try\"") >&5
+ echo "$as_me:25242: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25245: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23543: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:25248: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_iostream_namespace=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_iostream_namespace=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:23552: result: $cf_iostream_namespace" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:25257: result: $cf_iostream_namespace" >&5
echo "${ECHO_T}$cf_iostream_namespace" >&6
if test "$cf_iostream_namespace" = yes ; then
@@ -23560,15 +25265,15 @@ EOF
fi
fi
-echo "$as_me:23563: checking if we should include stdbool.h" >&5
+echo "$as_me:25268: checking if we should include stdbool.h" >&5
echo $ECHO_N "checking if we should include stdbool.h... $ECHO_C" >&6
if test "${cf_cv_header_stdbool_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 23571 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25276 "configure"
#include "confdefs.h"
int
@@ -23579,24 +25284,24 @@ bool foo = false
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:23583: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25288: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:23586: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:23589: \"$ac_try\"") >&5
+ echo "$as_me:25291: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25294: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23592: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:25297: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_header_stdbool_h=0
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 23599 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 25304 "configure"
#include "confdefs.h"
#ifndef __BEOS__
@@ -23611,45 +25316,45 @@ bool foo = false
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:23615: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25320: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:23618: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:23621: \"$ac_try\"") >&5
+ echo "$as_me:25323: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25326: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23624: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:25329: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_header_stdbool_h=1
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_header_stdbool_h=0
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
if test "$cf_cv_header_stdbool_h" = 1
-then echo "$as_me:23638: result: yes" >&5
+then echo "$as_me:25343: result: yes" >&5
echo "${ECHO_T}yes" >&6
-else echo "$as_me:23640: result: no" >&5
+else echo "$as_me:25345: result: no" >&5
echo "${ECHO_T}no" >&6
fi
-echo "$as_me:23644: checking for builtin bool type" >&5
+echo "$as_me:25349: checking for builtin bool type" >&5
echo $ECHO_N "checking for builtin bool type... $ECHO_C" >&6
if test "${cf_cv_builtin_bool+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 23652 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25357 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -23663,47 +25368,418 @@ bool x = false
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:23667: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25372: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:23670: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:23673: \"$ac_try\"") >&5
+ echo "$as_me:25375: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25378: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23676: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:25381: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_builtin_bool=1
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_builtin_bool=0
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
if test "$cf_cv_builtin_bool" = 1
-then echo "$as_me:23689: result: yes" >&5
+then echo "$as_me:25394: result: yes" >&5
echo "${ECHO_T}yes" >&6
-else echo "$as_me:23691: result: no" >&5
+else echo "$as_me:25396: result: no" >&5
echo "${ECHO_T}no" >&6
fi
-echo "$as_me:23695: checking for size of bool" >&5
-echo $ECHO_N "checking for size of bool... $ECHO_C" >&6
+echo "$as_me:25400: checking for bool" >&5
+echo $ECHO_N "checking for bool... $ECHO_C" >&6
+if test "${ac_cv_type_bool+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25406 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+if ((bool *) 0)
+ return 0;
+if (sizeof (bool))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25442: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:25445: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25448: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:25451: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_type_bool=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_type_bool=no
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+echo "$as_me:25461: result: $ac_cv_type_bool" >&5
+echo "${ECHO_T}$ac_cv_type_bool" >&6
+
+echo "$as_me:25464: checking size of bool" >&5
+echo $ECHO_N "checking size of bool... $ECHO_C" >&6
+if test "${ac_cv_sizeof_bool+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test "$ac_cv_type_bool" = yes; then
+ if test "$cross_compiling" = yes; then
+ # Depending upon the size, compute the lo and hi bounds.
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 25473 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) >= 0)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25506: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:25509: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25512: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:25515: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_lo=0 ac_mid=0
+ while :; do
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25520 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) <= $ac_mid)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25553: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:25556: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25559: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:25562: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_hi=$ac_mid; break
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`; ac_mid=`expr 2 '*' "$ac_mid" + 1`
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ done
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_hi=-1 ac_mid=-1
+ while :; do
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25578 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) >= $ac_mid)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25611: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:25614: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25617: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:25620: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_lo=$ac_mid; break
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_hi=`expr "$ac_mid" - 1`; ac_mid=`expr 2 '*' "$ac_mid"`
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ done
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+ ac_mid=`expr '(' "$ac_hi" - "$ac_lo" ')' / 2 + "$ac_lo"`
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25636 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) <= $ac_mid)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25669: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:25672: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25675: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:25678: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_hi=$ac_mid
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+done
+ac_cv_sizeof_bool=$ac_lo
+else
+ if test "$cross_compiling" = yes; then
+ { { echo "$as_me:25691: error: cannot run test program while cross compiling" >&5
+echo "$as_me: error: cannot run test program while cross compiling" >&2;}
+ { (exit 1); exit 1; }; }
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25696 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+FILE *f = fopen ("conftest.val", "w");
+if (!f)
+ $ac_main_return (1);
+fprintf (f, "%ld", (long)(sizeof (bool)));
+fclose (f);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:25733: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:25736: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:25738: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:25741: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_sizeof_bool=`cat conftest.val`
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+fi
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+fi
+rm -f conftest.val
+else
+ ac_cv_sizeof_bool=0
+fi
+fi
+echo "$as_me:25757: result: $ac_cv_sizeof_bool" >&5
+echo "${ECHO_T}$ac_cv_sizeof_bool" >&6
+cat >>confdefs.h <<EOF
+#define SIZEOF_BOOL $ac_cv_sizeof_bool
+EOF
+
+echo "$as_me:25763: checking for type of bool" >&5
+echo $ECHO_N "checking for type of bool... $ECHO_C" >&6
if test "${cf_cv_type_of_bool+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
rm -f cf_test.out
if test "$cross_compiling" = yes; then
- cf_cv_type_of_bool=unknown
+
+ case x$ac_cv_sizeof_bool in
+ (x1) cf_cv_type_of_bool="unsigned char";;
+ (x2) cf_cv_type_of_bool="unsigned short";;
+ (x4) cf_cv_type_of_bool="unsigned int";;
+ (x8) cf_cv_type_of_bool="unsigned long";;
+ (*) cf_cv_type_of_bool=unknown;;
+ esac
+
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 23706 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25782 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -23744,17 +25820,17 @@ int main(void)
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:23748: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:25824: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:23751: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:23753: \"$ac_try\"") >&5
+ echo "$as_me:25827: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:25829: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23756: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:25832: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_type_of_bool=`cat cf_test.out`
if test -z "$cf_cv_type_of_bool"; then
cf_cv_type_of_bool=unknown
@@ -23762,27 +25838,27 @@ if { (eval echo "$as_me:23748: \"$ac_link\"") >&5
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_type_of_bool=unknown
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
+ rm -f cf_test.out
fi
-
- rm -f cf_test.out
-echo "$as_me:23774: result: $cf_cv_type_of_bool" >&5
+echo "$as_me:25849: result: $cf_cv_type_of_bool" >&5
echo "${ECHO_T}$cf_cv_type_of_bool" >&6
+
if test "$cf_cv_type_of_bool" = unknown ; then
case .$NCURSES_BOOL in
(.auto|.) NCURSES_BOOL=unsigned;;
esac
- { echo "$as_me:23780: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
+ { echo "$as_me:25856: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
echo "$as_me: WARNING: Assuming $NCURSES_BOOL for type of bool" >&2;}
cf_cv_type_of_bool=$NCURSES_BOOL
fi
-echo "$as_me:23785: checking for special defines needed for etip.h" >&5
+echo "$as_me:25861: checking for special defines needed for etip.h" >&5
echo $ECHO_N "checking for special defines needed for etip.h... $ECHO_C" >&6
cf_save_CXXFLAGS="$CXXFLAGS"
cf_result="none"
@@ -23790,7 +25866,7 @@ cf_result="none"
# etip.h includes ncurses.h which includes ncurses_dll.h
# But ncurses_dll.h is generated - fix here.
test -d include || mkdir include
-test -f include/ncurses_dll.h || sed -e 's/@NCURSES_WRAP_PREFIX@/'$NCURSES_WRAP_PREFIX'/g' ${srcdir}/include/ncurses_dll.h.in >include/ncurses_dll.h
+test -f include/ncurses_dll.h || sed -e 's/@NCURSES_WRAP_PREFIX@/'$NCURSES_WRAP_PREFIX'/g' "${srcdir}/include/ncurses_dll.h.in" >include/ncurses_dll.h
for cf_math in "" MATH_H
do
@@ -23799,8 +25875,8 @@ do
CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -Iinclude -I${srcdir}/include"
test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}"
test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}"
-cat >conftest.$ac_ext <<_ACEOF
-#line 23803 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 25879 "configure"
#include "confdefs.h"
#include <etip.h.in>
@@ -23813,18 +25889,18 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:23817: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:25893: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:23820: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:23823: \"$ac_try\"") >&5
+ echo "$as_me:25896: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:25899: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23826: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:25902: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$cf_math" && cat >>confdefs.h <<EOF
#define ETIP_NEEDS_${cf_math} 1
@@ -23839,17 +25915,17 @@ EOF
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
done
-echo "$as_me:23847: result: $cf_result" >&5
+echo "$as_me:25923: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
CXXFLAGS="$cf_save_CXXFLAGS"
if test -n "$CXX"; then
-echo "$as_me:23852: checking if $CXX accepts parameter initialization" >&5
+echo "$as_me:25928: checking if $CXX accepts parameter initialization" >&5
echo $ECHO_N "checking if $CXX accepts parameter initialization... $ECHO_C" >&6
if test "${cf_cv_cpp_param_init+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -23857,16 +25933,16 @@ else
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test "$cross_compiling" = yes; then
cf_cv_cpp_param_init=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 23869 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 25945 "configure"
#include "confdefs.h"
class TEST {
@@ -23884,35 +25960,35 @@ TEST::TEST(int x = 1) // some compilers do not like second initializer
int main(void) { }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:23888: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:25964: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:23891: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:23893: \"$ac_try\"") >&5
+ echo "$as_me:25967: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:25969: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23896: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:25972: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_cpp_param_init=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_cpp_param_init=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
fi
-echo "$as_me:23915: result: $cf_cv_cpp_param_init" >&5
+echo "$as_me:25991: result: $cf_cv_cpp_param_init" >&5
echo "${ECHO_T}$cf_cv_cpp_param_init" >&6
fi
test "$cf_cv_cpp_param_init" = yes &&
@@ -23922,7 +25998,7 @@ EOF
if test -n "$CXX"; then
-echo "$as_me:23925: checking if $CXX accepts static_cast" >&5
+echo "$as_me:26001: checking if $CXX accepts static_cast" >&5
echo $ECHO_N "checking if $CXX accepts static_cast... $ECHO_C" >&6
if test "${cf_cv_cpp_static_cast+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -23930,13 +26006,13 @@ else
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
- cat >conftest.$ac_ext <<_ACEOF
-#line 23939 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 26015 "configure"
#include "confdefs.h"
class NCursesPanel
@@ -23979,35 +26055,35 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:23983: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:26059: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:23986: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:23989: \"$ac_try\"") >&5
+ echo "$as_me:26062: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:26065: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:23992: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:26068: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_cpp_static_cast=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_cpp_static_cast=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_ext=cc
ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CXX -o "conftest$ac_exeext" $CXXFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
fi
-echo "$as_me:24010: result: $cf_cv_cpp_static_cast" >&5
+echo "$as_me:26086: result: $cf_cv_cpp_static_cast" >&5
echo "${ECHO_T}$cf_cv_cpp_static_cast" >&6
fi
@@ -24019,7 +26095,7 @@ EOF
CXX_AR='$(AR)'
CXX_ARFLAGS='$(ARFLAGS)'
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GXX" != yes ; then
CXX_AR='$(CXX)'
@@ -24056,18 +26132,389 @@ else
else
if test "$cf_cv_header_stdbool_h" = 1 ; then
-echo "$as_me:24059: checking for size of bool" >&5
-echo $ECHO_N "checking for size of bool... $ECHO_C" >&6
+echo "$as_me:26135: checking for bool" >&5
+echo $ECHO_N "checking for bool... $ECHO_C" >&6
+if test "${ac_cv_type_bool+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 26141 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+if ((bool *) 0)
+ return 0;
+if (sizeof (bool))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:26177: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:26180: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:26183: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:26186: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_type_bool=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_type_bool=no
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+echo "$as_me:26196: result: $ac_cv_type_bool" >&5
+echo "${ECHO_T}$ac_cv_type_bool" >&6
+
+echo "$as_me:26199: checking size of bool" >&5
+echo $ECHO_N "checking size of bool... $ECHO_C" >&6
+if test "${ac_cv_sizeof_bool+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test "$ac_cv_type_bool" = yes; then
+ if test "$cross_compiling" = yes; then
+ # Depending upon the size, compute the lo and hi bounds.
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 26208 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) >= 0)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:26241: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:26244: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:26247: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:26250: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_lo=0 ac_mid=0
+ while :; do
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 26255 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) <= $ac_mid)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:26288: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:26291: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:26294: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:26297: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_hi=$ac_mid; break
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`; ac_mid=`expr 2 '*' "$ac_mid" + 1`
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ done
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_hi=-1 ac_mid=-1
+ while :; do
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 26313 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) >= $ac_mid)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:26346: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:26349: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:26352: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:26355: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_lo=$ac_mid; break
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_hi=`expr "$ac_mid" - 1`; ac_mid=`expr 2 '*' "$ac_mid"`
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ done
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+ ac_mid=`expr '(' "$ac_hi" - "$ac_lo" ')' / 2 + "$ac_lo"`
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 26371 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+int _array_ [1 - 2 * !((sizeof (bool)) <= $ac_mid)]
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:26404: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:26407: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:26410: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:26413: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_hi=$ac_mid
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+done
+ac_cv_sizeof_bool=$ac_lo
+else
+ if test "$cross_compiling" = yes; then
+ { { echo "$as_me:26426: error: cannot run test program while cross compiling" >&5
+echo "$as_me: error: cannot run test program while cross compiling" >&2;}
+ { (exit 1); exit 1; }; }
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 26431 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#if defined(__cplusplus)
+
+#ifdef HAVE_GXX_BUILTIN_H
+#include <g++/builtin.h>
+#elif HAVE_GPP_BUILTIN_H
+#include <gpp/builtin.h>
+#elif HAVE_BUILTIN_H
+#include <builtin.h>
+#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
+int
+main (void)
+{
+FILE *f = fopen ("conftest.val", "w");
+if (!f)
+ $ac_main_return (1);
+fprintf (f, "%ld", (long)(sizeof (bool)));
+fclose (f);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:26468: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:26471: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:26473: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:26476: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_sizeof_bool=`cat conftest.val`
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+fi
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+fi
+rm -f conftest.val
+else
+ ac_cv_sizeof_bool=0
+fi
+fi
+echo "$as_me:26492: result: $ac_cv_sizeof_bool" >&5
+echo "${ECHO_T}$ac_cv_sizeof_bool" >&6
+cat >>confdefs.h <<EOF
+#define SIZEOF_BOOL $ac_cv_sizeof_bool
+EOF
+
+echo "$as_me:26498: checking for type of bool" >&5
+echo $ECHO_N "checking for type of bool... $ECHO_C" >&6
if test "${cf_cv_type_of_bool+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
rm -f cf_test.out
if test "$cross_compiling" = yes; then
- cf_cv_type_of_bool=unknown
+
+ case x$ac_cv_sizeof_bool in
+ (x1) cf_cv_type_of_bool="unsigned char";;
+ (x2) cf_cv_type_of_bool="unsigned short";;
+ (x4) cf_cv_type_of_bool="unsigned int";;
+ (x8) cf_cv_type_of_bool="unsigned long";;
+ (*) cf_cv_type_of_bool=unknown;;
+ esac
+
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 24070 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 26517 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -24108,17 +26555,17 @@ int main(void)
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:24112: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:26559: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:24115: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:24117: \"$ac_try\"") >&5
+ echo "$as_me:26562: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:26564: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:24120: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:26567: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_type_of_bool=`cat cf_test.out`
if test -z "$cf_cv_type_of_bool"; then
cf_cv_type_of_bool=unknown
@@ -24126,34 +26573,34 @@ if { (eval echo "$as_me:24112: \"$ac_link\"") >&5
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_type_of_bool=unknown
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
+ rm -f cf_test.out
fi
-
- rm -f cf_test.out
-echo "$as_me:24138: result: $cf_cv_type_of_bool" >&5
+echo "$as_me:26584: result: $cf_cv_type_of_bool" >&5
echo "${ECHO_T}$cf_cv_type_of_bool" >&6
+
if test "$cf_cv_type_of_bool" = unknown ; then
case .$NCURSES_BOOL in
(.auto|.) NCURSES_BOOL=unsigned;;
esac
- { echo "$as_me:24144: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
+ { echo "$as_me:26591: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
echo "$as_me: WARNING: Assuming $NCURSES_BOOL for type of bool" >&2;}
cf_cv_type_of_bool=$NCURSES_BOOL
fi
else
- echo "$as_me:24150: checking for fallback type of bool" >&5
+ echo "$as_me:26597: checking for fallback type of bool" >&5
echo $ECHO_N "checking for fallback type of bool... $ECHO_C" >&6
case "$host_cpu" in
(i?86) cf_cv_type_of_bool=char ;;
(*) cf_cv_type_of_bool=int ;;
esac
- echo "$as_me:24156: result: $cf_cv_type_of_bool" >&5
+ echo "$as_me:26603: result: $cf_cv_type_of_bool" >&5
echo "${ECHO_T}$cf_cv_type_of_bool" >&6
fi
fi
@@ -24165,11 +26612,11 @@ fi
# specify the type of bool in a configure-script option and postpone
# integration with the C++ compiler provided that the types are compatible.
USE_CXX_BOOL=1
-if test $cf_cv_cc_bool_type = 1
+if test "$cf_cv_cc_bool_type" = 1
then
# oops: C has a bool. Unlikely, but C++ could differ.
USE_CXX_BOOL=0
-elif test $cf_cv_builtin_bool = 0
+elif test "$cf_cv_builtin_bool" = 0
then
# C++ has no bool
USE_CXX_BOOL=0
@@ -24182,7 +26629,7 @@ if test -f "${srcdir}/Ada95/Makefile.in" ; then
if test "$cf_with_ada" != "no" ; then
if test "$with_libtool" != "no"; then
- { echo "$as_me:24185: WARNING: libtool does not support Ada - disabling feature" >&5
+ { echo "$as_me:26632: WARNING: libtool does not support Ada - disabling feature" >&5
echo "$as_me: WARNING: libtool does not support Ada - disabling feature" >&2;}
cf_with_ada=no
fi
@@ -24199,7 +26646,7 @@ cf_upper_prog_gnat=`echo "${cf_prog_gnat}" | sed y%abcdefghijklmnopqrstuvwxyz./-
unset cf_TEMP_gnat
# Extract the first word of "$cf_prog_gnat", so it can be a program name with args.
set dummy $cf_prog_gnat; ac_word=$2
-echo "$as_me:24202: checking for $ac_word" >&5
+echo "$as_me:26649: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_cf_TEMP_gnat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -24216,7 +26663,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_cf_TEMP_gnat="$ac_dir/$ac_word"
- echo "$as_me:24219: found $ac_dir/$ac_word" >&5
+ echo "$as_me:26666: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -24228,20 +26675,20 @@ fi
cf_TEMP_gnat=$ac_cv_path_cf_TEMP_gnat
if test -n "$cf_TEMP_gnat"; then
- echo "$as_me:24231: result: $cf_TEMP_gnat" >&5
+ echo "$as_me:26678: result: $cf_TEMP_gnat" >&5
echo "${ECHO_T}$cf_TEMP_gnat" >&6
else
- echo "$as_me:24234: result: no" >&5
+ echo "$as_me:26681: result: no" >&5
echo "${ECHO_T}no" >&6
fi
- eval cf_cv_PATH_$cf_upper_prog_gnat=$ac_cv_path_cf_TEMP_gnat
+ eval "cf_cv_PATH_$cf_upper_prog_gnat=$ac_cv_path_cf_TEMP_gnat"
if test "x$cf_TEMP_gnat" != xno; then
unset cf_cv_gnat_version
unset cf_TEMP_gnat
-echo "$as_me:24244: checking for $cf_prog_gnat version" >&5
+echo "$as_me:26691: checking for $cf_prog_gnat version" >&5
echo $ECHO_N "checking for $cf_prog_gnat version... $ECHO_C" >&6
if test "${cf_cv_gnat_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -24252,13 +26699,13 @@ cf_cv_gnat_version=`$cf_prog_gnat --version 2>&1 | \
sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'`
fi
-echo "$as_me:24255: result: $cf_cv_gnat_version" >&5
+echo "$as_me:26702: result: $cf_cv_gnat_version" >&5
echo "${ECHO_T}$cf_cv_gnat_version" >&6
test -z "$cf_cv_gnat_version" && cf_cv_gnat_version=no
eval cf_TEMP_gnat=$cf_cv_gnat_version; unset cf_cv_gnat_version
fi
- eval cf_cv_VERSION_$cf_upper_prog_gnat=$cf_TEMP_gnat
+ eval "cf_cv_VERSION_$cf_upper_prog_gnat=$cf_TEMP_gnat"
unset cf_TEMP_gnat
unset cf_cv_gnat_version
@@ -24274,21 +26721,21 @@ else
# gprconfig is newer than gnatmake; we can continue...
cf_ada_config="##"
else
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src
then
cf_ada_config=""
cd conftest.src
for cf_gprconfig in Ada C
do
- echo "$as_me:24284: checking for gprconfig name for $cf_gprconfig" >&5
+ echo "$as_me:26731: checking for gprconfig name for $cf_gprconfig" >&5
echo $ECHO_N "checking for gprconfig name for $cf_gprconfig... $ECHO_C" >&6
- if test $cf_gprconfig = C
+ if test "$cf_gprconfig" = C
then
for cf_gprconfig_param in \
- $cf_gprconfig,,,,GNATGCC \
- $cf_gprconfig,,,,GCC \
- $cf_gprconfig
+ "$cf_gprconfig,,,,GNATGCC" \
+ "$cf_gprconfig,,,,GCC" \
+ "$cf_gprconfig"
do
cf_gprconfig_value=`echo s| gprconfig --config=$cf_gprconfig_param 2>&5 | ${AWK:-awk} '/^\*/{print $3;}' | head -n 1`
test -n "$cf_gprconfig_value" && break
@@ -24299,24 +26746,24 @@ echo $ECHO_N "checking for gprconfig name for $cf_gprconfig... $ECHO_C" >&6
fi
if test -n "$cf_gprconfig_value"
then
- eval cf_ada_config_$cf_gprconfig=$cf_gprconfig_value
- echo "$as_me:24303: result: $cf_gprconfig_value" >&5
+ eval "cf_ada_config_$cf_gprconfig=$cf_gprconfig_value"
+ echo "$as_me:26750: result: $cf_gprconfig_value" >&5
echo "${ECHO_T}$cf_gprconfig_value" >&6
else
- echo "$as_me:24306: result: missing" >&5
+ echo "$as_me:26753: result: missing" >&5
echo "${ECHO_T}missing" >&6
cf_ada_config="#"
break
fi
done
cd ..
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
fi
fi
if test "x$cf_ada_config" != "x#"
then
-echo "$as_me:24319: checking for gnat version" >&5
+echo "$as_me:26766: checking for gnat version" >&5
echo $ECHO_N "checking for gnat version... $ECHO_C" >&6
if test "${cf_cv_gnat_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -24327,16 +26774,16 @@ cf_cv_gnat_version=`${cf_ada_make:-gnatmake} --version 2>&1 | \
sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'`
fi
-echo "$as_me:24330: result: $cf_cv_gnat_version" >&5
+echo "$as_me:26777: result: $cf_cv_gnat_version" >&5
echo "${ECHO_T}$cf_cv_gnat_version" >&6
test -z "$cf_cv_gnat_version" && cf_cv_gnat_version=no
-case $cf_cv_gnat_version in
-(3.1[1-9]*|3.[2-9]*|[4-9].*|20[0-9][0-9])
+case "$cf_cv_gnat_version" in
+(3.1[1-9]*|3.[2-9]*|[4-9].*|[1-9][0-9].[0-9]*|20[0-9][0-9])
cf_cv_prog_gnat_correct=yes
;;
(*)
- { echo "$as_me:24339: WARNING: Unsupported GNAT version $cf_cv_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
+ { echo "$as_me:26786: WARNING: Unsupported GNAT version $cf_cv_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
echo "$as_me: WARNING: Unsupported GNAT version $cf_cv_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&2;}
cf_cv_prog_gnat_correct=no
;;
@@ -24344,7 +26791,7 @@ esac
# Extract the first word of "m4", so it can be a program name with args.
set dummy m4; ac_word=$2
-echo "$as_me:24347: checking for $ac_word" >&5
+echo "$as_me:26794: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_M4_exists+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -24359,7 +26806,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_M4_exists="yes"
-echo "$as_me:24362: found $ac_dir/$ac_word" >&5
+echo "$as_me:26809: found $ac_dir/$ac_word" >&5
break
done
@@ -24368,23 +26815,23 @@ fi
fi
M4_exists=$ac_cv_prog_M4_exists
if test -n "$M4_exists"; then
- echo "$as_me:24371: result: $M4_exists" >&5
+ echo "$as_me:26818: result: $M4_exists" >&5
echo "${ECHO_T}$M4_exists" >&6
else
- echo "$as_me:24374: result: no" >&5
+ echo "$as_me:26821: result: no" >&5
echo "${ECHO_T}no" >&6
fi
if test "$ac_cv_prog_M4_exists" = no; then
cf_cv_prog_gnat_correct=no
- { echo "$as_me:24380: WARNING: Ada95 binding required program m4 not found. Ada95 binding disabled" >&5
+ { echo "$as_me:26827: WARNING: Ada95 binding required program m4 not found. Ada95 binding disabled" >&5
echo "$as_me: WARNING: Ada95 binding required program m4 not found. Ada95 binding disabled" >&2;}
fi
if test "$cf_cv_prog_gnat_correct" = yes; then
- echo "$as_me:24384: checking if GNAT works" >&5
+ echo "$as_me:26831: checking if GNAT works" >&5
echo $ECHO_N "checking if GNAT works... $ECHO_C" >&6
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
procedure conftest;
CF_EOF
@@ -24398,7 +26845,7 @@ begin
GNAT.OS_Lib.OS_Exit (0);
end conftest;
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&5 2>&1 ) ; then
if ( ./conftest 1>&5 2>&1 ) ; then
cf_cv_prog_gnat_correct=yes
else
@@ -24407,9 +26854,9 @@ if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
else
cf_cv_prog_gnat_correct=no
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
- echo "$as_me:24412: result: $cf_cv_prog_gnat_correct" >&5
+ echo "$as_me:26859: result: $cf_cv_prog_gnat_correct" >&5
echo "${ECHO_T}$cf_cv_prog_gnat_correct" >&6
fi
else
@@ -24421,7 +26868,7 @@ fi
ADAFLAGS="$ADAFLAGS -gnatpn"
- echo "$as_me:24424: checking optimization options for ADAFLAGS" >&5
+ echo "$as_me:26871: checking optimization options for ADAFLAGS" >&5
echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6
case "$CFLAGS" in
(*-g*)
@@ -24438,10 +26885,10 @@ echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6
;;
esac
- echo "$as_me:24441: result: $ADAFLAGS" >&5
+ echo "$as_me:26888: result: $ADAFLAGS" >&5
echo "${ECHO_T}$ADAFLAGS" >&6
-echo "$as_me:24444: checking if GNATPREP supports -T option" >&5
+echo "$as_me:26891: checking if GNATPREP supports -T option" >&5
echo $ECHO_N "checking if GNATPREP supports -T option... $ECHO_C" >&6
if test "${cf_cv_gnatprep_opt_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -24451,21 +26898,21 @@ cf_cv_gnatprep_opt_t=no
gnatprep -T 2>/dev/null >/dev/null && cf_cv_gnatprep_opt_t=yes
fi
-echo "$as_me:24454: result: $cf_cv_gnatprep_opt_t" >&5
+echo "$as_me:26901: result: $cf_cv_gnatprep_opt_t" >&5
echo "${ECHO_T}$cf_cv_gnatprep_opt_t" >&6
test "$cf_cv_gnatprep_opt_t" = yes && GNATPREP_OPTS="-T $GNATPREP_OPTS"
-echo "$as_me:24458: checking if GNAT supports generics" >&5
+echo "$as_me:26905: checking if GNAT supports generics" >&5
echo $ECHO_N "checking if GNAT supports generics... $ECHO_C" >&6
-case $cf_cv_gnat_version in
-(3.[1-9]*|[4-9].*)
+case "$cf_cv_gnat_version" in
+(3.1[1-9]*|3.[2-9]*|[4-9].*|[1-9][0-9].[0-9]*|20[0-9][0-9])
cf_gnat_generics=yes
;;
(*)
cf_gnat_generics=no
;;
esac
-echo "$as_me:24468: result: $cf_gnat_generics" >&5
+echo "$as_me:26915: result: $cf_gnat_generics" >&5
echo "${ECHO_T}$cf_gnat_generics" >&6
if test "$cf_gnat_generics" = yes
@@ -24477,13 +26924,13 @@ else
cf_generic_objects=
fi
-echo "$as_me:24480: checking if GNAT supports SIGINT" >&5
+echo "$as_me:26927: checking if GNAT supports SIGINT" >&5
echo $ECHO_N "checking if GNAT supports SIGINT... $ECHO_C" >&6
if test "${cf_cv_gnat_sigint+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
cat >>conftest.ads <<CF_EOF
with Ada.Interrupts.Names;
@@ -24517,18 +26964,18 @@ package body ConfTest is
end Process;
end ConfTest;
CF_EOF
-if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
+if ( "$cf_ada_make" $ADAFLAGS conftest 1>&5 2>&1 ) ; then
cf_cv_gnat_sigint=yes
else
cf_cv_gnat_sigint=no
fi
-rm -rf conftest* *~conftest*
+rm -rf ./conftest* ./*~conftest*
fi
-echo "$as_me:24528: result: $cf_cv_gnat_sigint" >&5
+echo "$as_me:26975: result: $cf_cv_gnat_sigint" >&5
echo "${ECHO_T}$cf_cv_gnat_sigint" >&6
-if test $cf_cv_gnat_sigint = yes ; then
+if test "$cf_cv_gnat_sigint" = yes ; then
USE_GNAT_SIGINT=""
else
USE_GNAT_SIGINT="#"
@@ -24538,21 +26985,21 @@ cf_gnat_libraries=no
cf_gnat_projects=no
if test "$enable_gnat_projects" != no ; then
-echo "$as_me:24541: checking if GNAT supports project files" >&5
+echo "$as_me:26988: checking if GNAT supports project files" >&5
echo $ECHO_N "checking if GNAT supports project files... $ECHO_C" >&6
-case $cf_cv_gnat_version in
+case "$cf_cv_gnat_version" in
(3.[0-9]*)
;;
(*)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin*|msys*)
;;
(*)
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
if mkdir conftest.src conftest.bin conftest.lib
then
cd conftest.src
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
cat >>library.gpr <<CF_EOF
project Library is
Kind := External ("LIB_KIND");
@@ -24581,11 +27028,11 @@ package body ConfPackage is
end conftest;
end ConfPackage;
CF_EOF
- if ( $cf_ada_make $ADAFLAGS \
+ if ( "$cf_ada_make" $ADAFLAGS \
-Plibrary.gpr \
- -XBUILD_DIR=`cd ../conftest.bin;pwd` \
- -XLIBRARY_DIR=`cd ../conftest.lib;pwd` \
- -XSOURCE_DIR=`pwd` \
+ -XBUILD_DIR="`cd ../conftest.bin;pwd`" \
+ -XLIBRARY_DIR="`cd ../conftest.lib;pwd`" \
+ -XSOURCE_DIR="`pwd`" \
-XSONAME=libConfTest.so.1 \
-XLIB_KIND=static 1>&5 2>&1 ) ; then
cf_gnat_projects=yes
@@ -24596,30 +27043,42 @@ CF_EOF
then
cf_gnat_libraries=yes
fi
- rm -rf conftest* *~conftest*
+ rm -rf ./conftest* ./*~conftest*
;;
esac
;;
esac
-echo "$as_me:24604: result: $cf_gnat_projects" >&5
+echo "$as_me:27051: result: $cf_gnat_projects" >&5
echo "${ECHO_T}$cf_gnat_projects" >&6
fi # enable_gnat_projects
-if test $cf_gnat_projects = yes
+if test "$cf_gnat_projects" = yes
then
- echo "$as_me:24610: checking if GNAT supports libraries" >&5
+ echo "$as_me:27057: checking if GNAT supports libraries" >&5
echo $ECHO_N "checking if GNAT supports libraries... $ECHO_C" >&6
- echo "$as_me:24612: result: $cf_gnat_libraries" >&5
+ echo "$as_me:27059: result: $cf_gnat_libraries" >&5
echo "${ECHO_T}$cf_gnat_libraries" >&6
fi
+USE_OLD_MAKERULES=""
+USE_GNAT_PROJECTS="#"
+USE_GNAT_MAKE_GPR="#"
+USE_GNAT_GPRBUILD="#"
+
if test "$cf_gnat_projects" = yes
then
USE_OLD_MAKERULES="#"
USE_GNAT_PROJECTS=""
-else
- USE_OLD_MAKERULES=""
- USE_GNAT_PROJECTS="#"
+ if test "$cf_cv_VERSION_GPRBUILD" != no
+ then
+ USE_GNAT_GPRBUILD=""
+ elif test "$cf_cv_VERSION_GNATMAKE" != no
+ then
+ USE_GNAT_MAKE_GPR=""
+ else
+ { echo "$as_me:27079: WARNING: use old makefile rules since tools are missing" >&5
+echo "$as_me: WARNING: use old makefile rules since tools are missing" >&2;}
+ fi
fi
if test "$cf_gnat_libraries" = yes
@@ -24629,7 +27088,7 @@ else
USE_GNAT_LIBRARIES="#"
fi
-echo "$as_me:24632: checking for ada-compiler" >&5
+echo "$as_me:27091: checking for ada-compiler" >&5
echo $ECHO_N "checking for ada-compiler... $ECHO_C" >&6
# Check whether --with-ada-compiler or --without-ada-compiler was given.
@@ -24640,12 +27099,12 @@ else
cf_ada_compiler=gnatmake
fi;
-echo "$as_me:24643: result: $cf_ada_compiler" >&5
+echo "$as_me:27102: result: $cf_ada_compiler" >&5
echo "${ECHO_T}$cf_ada_compiler" >&6
cf_ada_package=terminal_interface
-echo "$as_me:24648: checking for ada-include" >&5
+echo "$as_me:27107: checking for ada-include" >&5
echo $ECHO_N "checking for ada-include... $ECHO_C" >&6
# Check whether --with-ada-include or --without-ada-include was given.
@@ -24669,19 +27128,19 @@ case ".$withval" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval withval="$withval"
case ".$withval" in
(.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:24684: error: expected a pathname, not \"$withval\"" >&5
+ { { echo "$as_me:27143: error: expected a pathname, not \"$withval\"" >&5
echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -24690,10 +27149,10 @@ esac
fi
eval ADA_INCLUDE="$withval"
-echo "$as_me:24693: result: $ADA_INCLUDE" >&5
+echo "$as_me:27152: result: $ADA_INCLUDE" >&5
echo "${ECHO_T}$ADA_INCLUDE" >&6
-echo "$as_me:24696: checking for ada-objects" >&5
+echo "$as_me:27155: checking for ada-objects" >&5
echo $ECHO_N "checking for ada-objects... $ECHO_C" >&6
# Check whether --with-ada-objects or --without-ada-objects was given.
@@ -24717,19 +27176,19 @@ case ".$withval" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval withval="$withval"
case ".$withval" in
(.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:24732: error: expected a pathname, not \"$withval\"" >&5
+ { { echo "$as_me:27191: error: expected a pathname, not \"$withval\"" >&5
echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -24738,10 +27197,10 @@ esac
fi
eval ADA_OBJECTS="$withval"
-echo "$as_me:24741: result: $ADA_OBJECTS" >&5
+echo "$as_me:27200: result: $ADA_OBJECTS" >&5
echo "${ECHO_T}$ADA_OBJECTS" >&6
-echo "$as_me:24744: checking if an Ada95 shared-library should be built" >&5
+echo "$as_me:27203: checking if an Ada95 shared-library should be built" >&5
echo $ECHO_N "checking if an Ada95 shared-library should be built... $ECHO_C" >&6
# Check whether --with-ada-sharedlib or --without-ada-sharedlib was given.
@@ -24751,14 +27210,14 @@ if test "${with_ada_sharedlib+set}" = set; then
else
with_ada_sharedlib=no
fi;
-echo "$as_me:24754: result: $with_ada_sharedlib" >&5
+echo "$as_me:27213: result: $with_ada_sharedlib" >&5
echo "${ECHO_T}$with_ada_sharedlib" >&6
if test "x$with_ada_sharedlib" != xno
then
if test "x$cf_gnat_projects" != xyes
then
- { echo "$as_me:24761: WARNING: disabling shared-library since GNAT projects are not supported" >&5
+ { echo "$as_me:27220: WARNING: disabling shared-library since GNAT projects are not supported" >&5
echo "$as_me: WARNING: disabling shared-library since GNAT projects are not supported" >&2;}
with_ada_sharedlib=no
fi
@@ -24778,7 +27237,7 @@ fi
# allow the Ada binding to be renamed
-echo "$as_me:24781: checking for ada-libname" >&5
+echo "$as_me:27240: checking for ada-libname" >&5
echo $ECHO_N "checking for ada-libname... $ECHO_C" >&6
# Check whether --with-ada-libname or --without-ada-libname was given.
@@ -24794,7 +27253,7 @@ case "x$ADA_LIBNAME" in
;;
esac
-echo "$as_me:24797: result: $ADA_LIBNAME" >&5
+echo "$as_me:27256: result: $ADA_LIBNAME" >&5
echo "${ECHO_T}$ADA_LIBNAME" >&6
fi
@@ -24805,13 +27264,13 @@ fi
# do this "late" to avoid conflict with header-checks
if test "x$with_widec" = xyes ; then
- echo "$as_me:24808: checking for wchar_t" >&5
+ echo "$as_me:27267: checking for wchar_t" >&5
echo $ECHO_N "checking for wchar_t... $ECHO_C" >&6
if test "${ac_cv_type_wchar_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 24814 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 27273 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -24825,30 +27284,30 @@ if (sizeof (wchar_t))
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:24829: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:27288: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:24832: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:24835: \"$ac_try\"") >&5
+ echo "$as_me:27291: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:27294: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:24838: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:27297: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_type_wchar_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_type_wchar_t=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:24848: result: $ac_cv_type_wchar_t" >&5
+echo "$as_me:27307: result: $ac_cv_type_wchar_t" >&5
echo "${ECHO_T}$ac_cv_type_wchar_t" >&6
-echo "$as_me:24851: checking size of wchar_t" >&5
+echo "$as_me:27310: checking size of wchar_t" >&5
echo $ECHO_N "checking size of wchar_t... $ECHO_C" >&6
if test "${ac_cv_sizeof_wchar_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -24856,8 +27315,8 @@ else
if test "$ac_cv_type_wchar_t" = yes; then
if test "$cross_compiling" = yes; then
# Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-#line 24860 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 27319 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -24868,22 +27327,22 @@ int _array_ [1 - 2 * !((sizeof (wchar_t)) >= 0)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:24872: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:27331: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:24875: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:24878: \"$ac_try\"") >&5
+ echo "$as_me:27334: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:27337: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:24881: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:27340: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_lo=0 ac_mid=0
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 24886 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 27345 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -24894,33 +27353,33 @@ int _array_ [1 - 2 * !((sizeof (wchar_t)) <= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:24898: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:27357: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:24901: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:24904: \"$ac_try\"") >&5
+ echo "$as_me:27360: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:27363: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:24907: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:27366: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_hi=$ac_mid; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1`
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`; ac_mid=`expr 2 '*' "$ac_mid" + 1`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_hi=-1 ac_mid=-1
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 24923 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 27382 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -24931,33 +27390,33 @@ int _array_ [1 - 2 * !((sizeof (wchar_t)) >= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:24935: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:27394: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:24938: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:24941: \"$ac_try\"") >&5
+ echo "$as_me:27397: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:27400: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:24944: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:27403: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_lo=$ac_mid; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid`
+cat "conftest.$ac_ext" >&5
+ac_hi=`expr "$ac_mid" - 1`; ac_mid=`expr 2 '*' "$ac_mid"`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
# Binary search between lo and hi bounds.
while test "x$ac_lo" != "x$ac_hi"; do
- ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
- cat >conftest.$ac_ext <<_ACEOF
-#line 24960 "configure"
+ ac_mid=`expr '(' "$ac_hi" - "$ac_lo" ')' / 2 + "$ac_lo"`
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 27419 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -24968,35 +27427,35 @@ int _array_ [1 - 2 * !((sizeof (wchar_t)) <= $ac_mid)]
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:24972: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:27431: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:24975: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:24978: \"$ac_try\"") >&5
+ echo "$as_me:27434: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:27437: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:24981: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:27440: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_hi=$ac_mid
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-ac_lo=`expr $ac_mid + 1`
+cat "conftest.$ac_ext" >&5
+ac_lo=`expr "$ac_mid" + 1`
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
ac_cv_sizeof_wchar_t=$ac_lo
else
if test "$cross_compiling" = yes; then
- { { echo "$as_me:24994: error: cannot run test program while cross compiling" >&5
+ { { echo "$as_me:27453: error: cannot run test program while cross compiling" >&5
echo "$as_me: error: cannot run test program while cross compiling" >&2;}
{ (exit 1); exit 1; }; }
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 24999 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 27458 "configure"
#include "confdefs.h"
$ac_includes_default
int
@@ -25005,30 +27464,30 @@ main (void)
FILE *f = fopen ("conftest.val", "w");
if (!f)
$ac_main_return (1);
-fprintf (f, "%d", (sizeof (wchar_t)));
+fprintf (f, "%ld", (long)(sizeof (wchar_t)));
fclose (f);
;
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:25015: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:27474: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:25018: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:25020: \"$ac_try\"") >&5
+ echo "$as_me:27477: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:27479: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:25023: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:27482: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_sizeof_wchar_t=`cat conftest.val`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
rm -f conftest.val
@@ -25036,7 +27495,7 @@ else
ac_cv_sizeof_wchar_t=0
fi
fi
-echo "$as_me:25039: result: $ac_cv_sizeof_wchar_t" >&5
+echo "$as_me:27498: result: $ac_cv_sizeof_wchar_t" >&5
echo "${ECHO_T}$ac_cv_sizeof_wchar_t" >&6
cat >>confdefs.h <<EOF
#define SIZEOF_WCHAR_T $ac_cv_sizeof_wchar_t
@@ -25049,7 +27508,7 @@ EOF
then
test -n "$verbose" && echo " test failed (assume 2)" 1>&6
-echo "${as_me:-configure}:25052: testing test failed (assume 2) ..." 1>&5
+echo "${as_me:-configure}:27511: testing test failed (assume 2) ..." 1>&5
sed /SIZEOF_WCHAR_T/d confdefs.h >confdefs.tmp
mv confdefs.tmp confdefs.h
@@ -25067,7 +27526,7 @@ fi
### chooses to split module lists into libraries.
###
### (see CF_LIB_RULES).
-echo "$as_me:25070: checking for library subsets" >&5
+echo "$as_me:27529: checking for library subsets" >&5
echo $ECHO_N "checking for library subsets... $ECHO_C" >&6
LIB_SUBSETS=
@@ -25095,21 +27554,33 @@ LIB_SUBSETS="${LIB_SUBSETS}base"
# base library (so it resides in base).
if test "$with_term_driver" != no ; then
LIB_SUBSETS="${LIB_SUBSETS}+port_drivers"
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(*mingw32*|*mingw64*)
- LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con"
+ if test "x$with_exp_win32" = xyes ; then
+ LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32"
+ else
+ LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con"
+ fi
CPPFLAGS="$CPPFLAGS -DUSE_WIN32CON_DRIVER"
;;
(*)
LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo"
;;
esac
+elif test "x$with_exp_win32" = xyes ; then
+ case "$cf_cv_system_name" in
+ (*mingw32*|*mingw64*)
+ LIB_SUBSETS="${LIB_SUBSETS}+port_win32"
+ ;;
+ (*)
+ ;;
+ esac
fi
test "x$with_widec" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs"
-echo "$as_me:25112: result: $LIB_SUBSETS" >&5
+echo "$as_me:27583: result: $LIB_SUBSETS" >&5
echo "${ECHO_T}$LIB_SUBSETS" >&6
### Construct the list of include-directories to be generated
@@ -25140,7 +27611,7 @@ elif test "$includedir" != "/usr/include"; then
fi
### Build up pieces for makefile rules
-echo "$as_me:25143: checking default library suffix" >&5
+echo "$as_me:27614: checking default library suffix" >&5
echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
case $DFT_LWR_MODEL in
@@ -25151,10 +27622,10 @@ echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
(shared) DFT_ARG_SUFFIX='' ;;
esac
test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}"
-echo "$as_me:25154: result: $DFT_ARG_SUFFIX" >&5
+echo "$as_me:27625: result: $DFT_ARG_SUFFIX" >&5
echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6
-echo "$as_me:25157: checking default library-dependency suffix" >&5
+echo "$as_me:27628: checking default library-dependency suffix" >&5
echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
case X$DFT_LWR_MODEL in
@@ -25163,19 +27634,37 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(Xdebug)
- DFT_LIB_SUFFIX='_g.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ DFT_LIB_SUFFIX='_g.lib'
+ ;;
+ (*)
+ DFT_LIB_SUFFIX='_g.a'
+ ;;
+ esac
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(Xprofile)
- DFT_LIB_SUFFIX='_p.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ DFT_LIB_SUFFIX='_p.lib'
+ ;;
+ (*)
+ DFT_LIB_SUFFIX='_p.a'
+ ;;
+ esac
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(Xshared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[5-7]*)
DFT_LIB_SUFFIX='.so'
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
+ (*-msvc*)
+ DFT_LIB_SUFFIX='.dll'
+ DFT_DEP_SUFFIX='.dll.lib'
+ ;;
(cygwin*|msys*|mingw*)
DFT_LIB_SUFFIX='.dll'
DFT_DEP_SUFFIX='.dll.a'
@@ -25185,7 +27674,7 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
(hpux*)
- case $target in
+ case "$target" in
(ia64*)
DFT_LIB_SUFFIX='.so'
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
@@ -25203,7 +27692,14 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
esac
;;
(*)
- DFT_LIB_SUFFIX='.a'
+ case "$target" in
+ (*-msvc*)
+ DFT_LIB_SUFFIX='.lib'
+ ;;
+ (*)
+ DFT_LIB_SUFFIX='.a'
+ ;;
+ esac
DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
;;
esac
@@ -25212,10 +27708,10 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
DFT_LIB_SUFFIX="${LIB_SUFFIX}${EXTRA_SUFFIX}${DFT_LIB_SUFFIX}"
DFT_DEP_SUFFIX="${LIB_SUFFIX}${EXTRA_SUFFIX}${DFT_DEP_SUFFIX}"
fi
-echo "$as_me:25215: result: $DFT_DEP_SUFFIX" >&5
+echo "$as_me:27711: result: $DFT_DEP_SUFFIX" >&5
echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6
-echo "$as_me:25218: checking default object directory" >&5
+echo "$as_me:27714: checking default object directory" >&5
echo $ECHO_N "checking default object directory... $ECHO_C" >&6
case $DFT_LWR_MODEL in
@@ -25224,18 +27720,18 @@ echo $ECHO_N "checking default object directory... $ECHO_C" >&6
(debug) DFT_OBJ_SUBDIR='obj_g' ;;
(profile) DFT_OBJ_SUBDIR='obj_p' ;;
(shared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin|msys)
DFT_OBJ_SUBDIR='objects' ;;
(*)
DFT_OBJ_SUBDIR='obj_s' ;;
esac
esac
-echo "$as_me:25234: result: $DFT_OBJ_SUBDIR" >&5
+echo "$as_me:27730: result: $DFT_OBJ_SUBDIR" >&5
echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6
if test "x$cf_with_cxx" = xyes ; then
-echo "$as_me:25238: checking c++ library-dependency suffix" >&5
+echo "$as_me:27734: checking c++ library-dependency suffix" >&5
echo $ECHO_N "checking c++ library-dependency suffix... $ECHO_C" >&6
if test "$with_libtool" != "no"; then
# libtool thinks it can make c++ shared libraries (perhaps only g++)
@@ -25252,19 +27748,37 @@ else
CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
;;
(Xdebug)
- CXX_LIB_SUFFIX='_g.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ CXX_LIB_SUFFIX='_g.lib'
+ ;;
+ (*)
+ CXX_LIB_SUFFIX='_g.a'
+ ;;
+ esac
CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
;;
(Xprofile)
- CXX_LIB_SUFFIX='_p.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ CXX_LIB_SUFFIX='_p.lib'
+ ;;
+ (*)
+ CXX_LIB_SUFFIX='_p.a'
+ ;;
+ esac
CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
;;
(Xshared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[5-7]*)
CXX_LIB_SUFFIX='.so'
CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
;;
+ (*-msvc*)
+ CXX_LIB_SUFFIX='.dll'
+ CXX_DEP_SUFFIX='.dll.lib'
+ ;;
(cygwin*|msys*|mingw*)
CXX_LIB_SUFFIX='.dll'
CXX_DEP_SUFFIX='.dll.a'
@@ -25274,7 +27788,7 @@ else
CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
;;
(hpux*)
- case $target in
+ case "$target" in
(ia64*)
CXX_LIB_SUFFIX='.so'
CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
@@ -25292,7 +27806,14 @@ else
esac
;;
(*)
- CXX_LIB_SUFFIX='.a'
+ case "$target" in
+ (*-msvc*)
+ CXX_LIB_SUFFIX='.lib'
+ ;;
+ (*)
+ CXX_LIB_SUFFIX='.a'
+ ;;
+ esac
CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
;;
esac
@@ -25303,15 +27824,15 @@ else
fi
fi
-echo "$as_me:25306: result: $CXX_LIB_SUFFIX" >&5
+echo "$as_me:27827: result: $CXX_LIB_SUFFIX" >&5
echo "${ECHO_T}$CXX_LIB_SUFFIX" >&6
fi
# do not want -ldl in build except as needed for -lncurses dependency
if test "x$with_dlsym" = xyes ; then
-if test $DFT_LWR_MODEL = shared || \
- test $DFT_LWR_MODEL = libtool ; then
+if test "$DFT_LWR_MODEL" = shared || \
+ test "$DFT_LWR_MODEL" = libtool ; then
# remove dl library from $LIBS
LIBS=`echo "$LIBS" | sed -e 's/-ldl[ ]//g' -e 's/-ldl$//'`
@@ -25342,9 +27863,9 @@ if test "$with_ticlib" != no ; then
if test "x$with_ticlib" != xyes ; then
TICS_NAME=$with_ticlib
- TICS_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${USE_LIB_SUFFIX}//"`"
- TICS_ARG_SUFFIX="${with_ticlib}`echo ${USE_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TICS_DEP_SUFFIX="${with_ticlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
+ TICS_SUFFIX="`echo "${DFT_LIB_SUFFIX}" |sed -e "s/^${USE_LIB_SUFFIX}//"`"
+ TICS_ARG_SUFFIX="${with_ticlib}`echo "${USE_ARG_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
+ TICS_DEP_SUFFIX="${with_ticlib}`echo "${DFT_DEP_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
TICS_LIB_SUFFIX="${with_ticlib}"
else
TICS_SUFFIX=${DFT_LIB_SUFFIX}
@@ -25364,9 +27885,9 @@ if test "$with_termlib" != no ; then
if test "x$with_termlib" != xyes ; then
TINFO_NAME=$with_termlib
- TINFO_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${USE_LIB_SUFFIX}//"`"
- TINFO_ARG_SUFFIX="${with_termlib}`echo ${USE_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TINFO_DEP_SUFFIX="${with_termlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
+ TINFO_SUFFIX="`echo "${DFT_LIB_SUFFIX}" |sed -e "s/^${USE_LIB_SUFFIX}//"`"
+ TINFO_ARG_SUFFIX="${with_termlib}`echo "${USE_ARG_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
+ TINFO_DEP_SUFFIX="${with_termlib}`echo "${DFT_DEP_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
TINFO_LIB_SUFFIX="${with_termlib}"
else
TINFO_SUFFIX=${DFT_LIB_SUFFIX}
@@ -25414,7 +27935,7 @@ else
fi
if test "$DFT_LWR_MODEL" = shared ; then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin*|msys*)
# "lib" files have ".dll.a" suffix, "cyg"or "msys-" files have ".dll"
TINFO_SUFFIX=.dll
@@ -25436,11 +27957,11 @@ fi
# needed for Ada95
TINFO_LDFLAGS2=`echo "$TINFO_LDFLAGS" | sed -e 's,-L\.\./,-L../../,'`
-case $DFT_LWR_MODEL in
+case "$DFT_LWR_MODEL" in
(normal|debug|profile)
if test "$GCC" = yes ; then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(OS/2*|os2*|aix[4]*|solaris2.1[0-9]|darwin*)
LDFLAGS_STATIC=
LDFLAGS_SHARED=
@@ -25451,7 +27972,7 @@ if test "$GCC" = yes ; then
;;
esac
else
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[4-7]*) # from ld manpage
LDFLAGS_STATIC=-bstatic
LDFLAGS_SHARED=-bdynamic
@@ -25479,20 +28000,20 @@ fi
if test -n "$LDFLAGS_STATIC" && test -n "$LDFLAGS_SHARED"
then
- echo "$as_me:25482: checking if linker supports switching between static/dynamic" >&5
+ echo "$as_me:28003: checking if linker supports switching between static/dynamic" >&5
echo $ECHO_N "checking if linker supports switching between static/dynamic... $ECHO_C" >&6
rm -f libconftest.a
cat >conftest.$ac_ext <<EOF
-#line 25487 "configure"
+#line 28008 "configure"
#include <stdio.h>
int cf_ldflags_static(FILE *fp) { return fflush(fp); }
EOF
- if { (eval echo "$as_me:25491: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:28012: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:25494: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
+ echo "$as_me:28015: \$? = $ac_status" >&5
+ (exit "$ac_status"); } ; then
( $AR $ARFLAGS libconftest.a conftest.o ) 2>&5 1>/dev/null
( eval $RANLIB libconftest.a ) 2>&5 >/dev/null
fi
@@ -25501,11 +28022,11 @@ EOF
cf_save_LIBS="$LIBS"
LIBS="$LDFLAGS_STATIC -L`pwd` -lconftest $LDFLAGS_DYNAMIC $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 25505 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 28026 "configure"
#include "confdefs.h"
-#line 25508 "configure"
+#line 28029 "configure"
#include <stdio.h>
int cf_ldflags_static(FILE *fp);
@@ -25519,21 +28040,21 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:25523: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:28044: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:25526: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:25529: \"$ac_try\"") >&5
+ echo "$as_me:28047: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:28050: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:25532: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:28053: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
# some linkers simply ignore the -dynamic
- case x`file conftest$ac_exeext 2>/dev/null` in
+ case x`file "conftest$ac_exeext" 2>/dev/null` in
(*static*)
cf_ldflags_static=no
;;
@@ -25544,18 +28065,18 @@ if { (eval echo "$as_me:25523: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_ldflags_static=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
rm -f libconftest.*
LIBS="$cf_save_LIBS"
- echo "$as_me:25555: result: $cf_ldflags_static" >&5
+ echo "$as_me:28076: result: $cf_ldflags_static" >&5
echo "${ECHO_T}$cf_ldflags_static" >&6
- if test $cf_ldflags_static != yes
+ if test "$cf_ldflags_static" != yes
then
LDFLAGS_STATIC=
LDFLAGS_SHARED=
@@ -25568,17 +28089,17 @@ fi
;;
esac
-echo "$as_me:25571: checking where we will install curses.h" >&5
+echo "$as_me:28092: checking where we will install curses.h" >&5
echo $ECHO_N "checking where we will install curses.h... $ECHO_C" >&6
includesubdir=
if test "$with_overwrite" = no && \
- ( test "x$includedir" = 'x${prefix}/include' || \
- test "x$includedir" = "x${prefix}/include" )
+ { test "x$includedir" = 'x${prefix}/include' || \
+ test "x$includedir" = "x${prefix}/include"; }
then
includesubdir="/ncurses${USE_LIB_SUFFIX}"
fi
-echo "$as_me:25581: result: ${includedir}${includesubdir}" >&5
+echo "$as_me:28102: result: ${includedir}${includesubdir}" >&5
echo "${ECHO_T}${includedir}${includesubdir}" >&6
### Resolve a conflict between normal and wide-curses by forcing applications
@@ -25586,12 +28107,23 @@ echo "${ECHO_T}${includedir}${includesubdir}" >&6
if test "$with_overwrite" != no ; then
if test "$NCURSES_LIBUTF8" = 1 ; then
NCURSES_LIBUTF8='defined(HAVE_LIBUTF8_H)'
- { echo "$as_me:25589: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5
+ { echo "$as_me:28110: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5
echo "$as_me: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&2;}
fi
fi
WITH_OVERWRITE=$with_overwrite
+### At least on MinGW a shared library build without libtool
+### requires adding the additional libs to the link list.
+case "$cf_cv_system_name" in
+(*mingw32*|*mingw64*)
+ if test "$DFT_LWR_MODEL" != "libtool"; then
+ SHLIB_LIST="$SHLIB_LIST ${LIBS}"
+ fi
+ ;;
+*) ;;
+esac
+
# used to separate tack out of the tree
NCURSES_TREE=
@@ -25601,10 +28133,104 @@ cat >>confdefs.h <<\EOF
#define HAVE_SLK_COLOR 1
EOF
+# pkgsrc uses these
+
+echo "$as_me:28138: checking for desired basename for form library" >&5
+echo $ECHO_N "checking for desired basename for form library... $ECHO_C" >&6
+
+# Check whether --with-form-libname or --without-form-libname was given.
+if test "${with_form_libname+set}" = set; then
+ withval="$with_form_libname"
+ with_lib_basename=$withval
+else
+ with_lib_basename=form
+fi;
+FORM_NAME="$with_lib_basename"
+
+case "x$FORM_NAME" in
+(x|xno|xnone|xyes)
+ FORM_NAME=form
+ ;;
+(*)
+ ;;
+esac
+
+echo "$as_me:28158: result: $FORM_NAME" >&5
+echo "${ECHO_T}$FORM_NAME" >&6
+
+echo "$as_me:28161: checking for desired basename for menu library" >&5
+echo $ECHO_N "checking for desired basename for menu library... $ECHO_C" >&6
+
+# Check whether --with-menu-libname or --without-menu-libname was given.
+if test "${with_menu_libname+set}" = set; then
+ withval="$with_menu_libname"
+ with_lib_basename=$withval
+else
+ with_lib_basename=menu
+fi;
+MENU_NAME="$with_lib_basename"
+
+case "x$MENU_NAME" in
+(x|xno|xnone|xyes)
+ MENU_NAME=menu
+ ;;
+(*)
+ ;;
+esac
+
+echo "$as_me:28181: result: $MENU_NAME" >&5
+echo "${ECHO_T}$MENU_NAME" >&6
+
+echo "$as_me:28184: checking for desired basename for panel library" >&5
+echo $ECHO_N "checking for desired basename for panel library... $ECHO_C" >&6
+
+# Check whether --with-panel-libname or --without-panel-libname was given.
+if test "${with_panel_libname+set}" = set; then
+ withval="$with_panel_libname"
+ with_lib_basename=$withval
+else
+ with_lib_basename=panel
+fi;
+PANEL_NAME="$with_lib_basename"
+
+case "x$PANEL_NAME" in
+(x|xno|xnone|xyes)
+ PANEL_NAME=panel
+ ;;
+(*)
+ ;;
+esac
+
+echo "$as_me:28204: result: $PANEL_NAME" >&5
+echo "${ECHO_T}$PANEL_NAME" >&6
+
+echo "$as_me:28207: checking for desired basename for cxx library" >&5
+echo $ECHO_N "checking for desired basename for cxx library... $ECHO_C" >&6
+
+# Check whether --with-cxx-libname or --without-cxx-libname was given.
+if test "${with_cxx_libname+set}" = set; then
+ withval="$with_cxx_libname"
+ with_lib_basename=$withval
+else
+ with_lib_basename=ncurses++
+fi;
+CXX_NAME="$with_lib_basename"
+
+case "x$CXX_NAME" in
+(x|xno|xnone|xyes)
+ CXX_NAME=ncurses++
+ ;;
+(*)
+ ;;
+esac
+
+echo "$as_me:28227: result: $CXX_NAME" >&5
+echo "${ECHO_T}$CXX_NAME" >&6
+
### Construct the list of subdirectories for which we'll customize makefiles
### with the appropriate compile-rules.
-echo "$as_me:25607: checking for src modules" >&5
+echo "$as_me:28233: checking for src modules" >&5
echo $ECHO_N "checking for src modules... $ECHO_C" >&6
# dependencies and linker-arguments for test-programs
@@ -25622,11 +28248,11 @@ PC_MODULES_TO_MAKE="ncurses${USE_ARG_SUFFIX}"
cf_cv_src_modules=
for cf_dir in $modules_to_build
do
- if test -f $srcdir/$cf_dir/modules; then
+ if test -f "$srcdir/$cf_dir/modules" ; then
# We may/may not have tack in the distribution, though the
# makefile is.
- if test $cf_dir = tack ; then
+ if test "$cf_dir" = tack ; then
if test "x$cf_with_tack" != "xyes"; then
continue
fi
@@ -25642,9 +28268,9 @@ do
# well. These are header files that are the same name as their
# directory. Ncurses is the only library that does not follow
# that pattern.
- if test $cf_dir = tack ; then
+ if test "$cf_dir" = tack ; then
continue
- elif test -f $srcdir/${cf_dir}/${cf_dir}.h; then
+ elif test -f "$srcdir/${cf_dir}/${cf_dir}.h" ; then
cf_have_include=`echo "$cf_dir" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -25656,20 +28282,24 @@ EOF
#define HAVE_LIB${cf_have_include} 1
EOF
- TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEPS"
- TEST_DEP2="${LIB_2ND}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEP2"
+cf_map_lib_basename=`echo "$cf_dir" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+eval TEST_ROOT="\$${cf_map_lib_basename}_NAME"
+
+ TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${TEST_ROOT}${DFT_DEP_SUFFIX} $TEST_DEPS"
+ TEST_DEP2="${LIB_2ND}/${LIB_PREFIX}${TEST_ROOT}${DFT_DEP_SUFFIX} $TEST_DEP2"
if test "$DFT_LWR_MODEL" = "libtool"; then
TEST_ARGS="${TEST_DEPS}"
TEST_ARG2="${TEST_DEP2}"
else
- TEST_ARGS="-l${cf_dir}${USE_ARG_SUFFIX} $TEST_ARGS"
- TEST_ARG2="-l${cf_dir}${USE_ARG_SUFFIX} $TEST_ARG2"
+ TEST_ARGS="-l${TEST_ROOT}${USE_ARG_SUFFIX} $TEST_ARGS"
+ TEST_ARG2="-l${TEST_ROOT}${USE_ARG_SUFFIX} $TEST_ARG2"
fi
PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ${cf_dir}${USE_ARG_SUFFIX}"
fi
fi
done
-echo "$as_me:25672: result: $cf_cv_src_modules" >&5
+echo "$as_me:28302: result: $cf_cv_src_modules" >&5
echo "${ECHO_T}$cf_cv_src_modules" >&6
TEST_ARGS="-L${LIB_DIR} $TEST_ARGS"
@@ -25698,7 +28328,7 @@ test "x$with_termlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TINFO_A
test "x$with_ticlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TICS_ARG_SUFFIX"
ADA_SUBDIRS=
-if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = xyes && test -f $srcdir/Ada95/Makefile.in; then
+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = xyes && test -f "$srcdir/Ada95/Makefile.in" ; then
SRC_SUBDIRS="$SRC_SUBDIRS Ada95"
ADA_SUBDIRS="gen src"
if test "x$cf_with_tests" != "xno" ; then
@@ -25736,7 +28366,7 @@ do
(debug) cf_subdir='obj_g' ;;
(profile) cf_subdir='obj_p' ;;
(shared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin|msys)
cf_subdir='objects' ;;
(*)
@@ -25746,13 +28376,13 @@ do
for cf_item2 in $DIRS_TO_MAKE
do
- test $cf_item2 = $cf_subdir && break
+ test "$cf_item2" = "$cf_subdir" && break
done
test ".$cf_item2" != ".$cf_subdir" && DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir"
done
for cf_dir in $DIRS_TO_MAKE
do
- test ! -d $cf_dir && mkdir $cf_dir
+ test ! -d "$cf_dir" && mkdir "$cf_dir"
done
# symbols that differ when compiling Ada95 by itself.
@@ -25768,106 +28398,6 @@ cat >>confdefs.h <<EOF
#define NCURSES_VERSION_STRING "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}"
EOF
-### Now that we're done running tests, add the compiler-warnings, if any
-
-cf_fix_cppflags=no
-cf_new_cflags=
-cf_new_cppflags=
-cf_new_extra_cppflags=
-
-for cf_add_cflags in $EXTRA_CFLAGS
-do
-case $cf_fix_cppflags in
-(no)
- case $cf_add_cflags in
- (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
- (-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
- if test $cf_fix_cppflags = yes ; then
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- continue
- elif test "${cf_tst_cflags}" = "\"'" ; then
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- continue
- fi
- ;;
- esac
- case "$CPPFLAGS" in
- (*$cf_add_cflags)
- ;;
- (*)
- case $cf_add_cflags in
- (-D*)
- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-
-CPPFLAGS=`echo "$CPPFLAGS" | \
- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
-
- ;;
- esac
-
- test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
- cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
-
- ;;
- esac
- ;;
- (*)
-
- test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
- cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
-
- ;;
- esac
- ;;
-(yes)
-
- test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
- cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-esac
-done
-
-if test -n "$cf_new_cflags" ; then
-
- test -n "$CFLAGS" && CFLAGS="$CFLAGS "
- CFLAGS="${CFLAGS}$cf_new_cflags"
-
-fi
-
-if test -n "$cf_new_cppflags" ; then
-
- test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
- CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
-
-fi
-
-if test -n "$cf_new_extra_cppflags" ; then
-
- test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
- EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
-
-fi
-
### Define substitutions for header files to avoid name-pollution
if test "x$cf_cv_have_tcgetattr" = xyes ; then
@@ -25913,14 +28443,8 @@ fi
ADAHTML_DIR=../../doc/html/ada
-# these could be configurable, but are not currently
-PANEL_NAME=panel
-MENU_NAME=menu
-FORM_NAME=form
-CXX_NAME=ncurses++
-
# workaround for OS/2 (20151017)
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(os2*)
LIBTOOL_OPTS_CXX="-os2dllname ncurs++"
;;
@@ -25930,13 +28454,13 @@ case $cf_cv_system_name in
esac
# workaround for g++ versus Solaris (20131116)
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(solaris2*)
case "x$CPPFLAGS" in
(*-D_XOPEN_SOURCE_EXTENDED*)
test -n "$verbose" && echo " moving _XOPEN_SOURCE_EXTENDED to work around g++ problem" 1>&6
-echo "${as_me:-configure}:25939: testing moving _XOPEN_SOURCE_EXTENDED to work around g++ problem ..." 1>&5
+echo "${as_me:-configure}:28463: testing moving _XOPEN_SOURCE_EXTENDED to work around g++ problem ..." 1>&5
CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED"
CPPFLAGS=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/-D_XOPEN_SOURCE_EXTENDED//'`
@@ -25947,7 +28471,7 @@ esac
# Help to automatically enable the extended curses features when using either
# the *-config or the ".pc" files by adding defines.
-echo "$as_me:25950: checking for defines to add to ncurses${USE_CFG_SUFFIX}-config script" >&5
+echo "$as_me:28474: checking for defines to add to ncurses${USE_CFG_SUFFIX}-config script" >&5
echo $ECHO_N "checking for defines to add to ncurses${USE_CFG_SUFFIX}-config script... $ECHO_C" >&6
PKG_CFLAGS=
for cf_loop1 in $CPPFLAGS_after_XOPEN
@@ -25963,7 +28487,7 @@ do
done
test "$cf_found" = no && PKG_CFLAGS="$PKG_CFLAGS $cf_loop1"
done
-echo "$as_me:25966: result: $PKG_CFLAGS" >&5
+echo "$as_me:28490: result: $PKG_CFLAGS" >&5
echo "${ECHO_T}$PKG_CFLAGS" >&6
# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this.
@@ -26024,7 +28548,7 @@ then
cf_filter_syms=$cf_dft_filter_syms
test -n "$verbose" && echo " will map symbols to ABI=$cf_cv_abi_version" 1>&6
-echo "${as_me:-configure}:26027: testing will map symbols to ABI=$cf_cv_abi_version ..." 1>&5
+echo "${as_me:-configure}:28551: testing will map symbols to ABI=$cf_cv_abi_version ..." 1>&5
fi
@@ -26036,7 +28560,7 @@ fi
test "x$cf_with_trace" = xyes && NCURSES_INLINE=
UNALTERED_SYMS=`echo "$RESULTING_SYMS" | sed -e 's/\\$/\\\\$/g'`
-if test $cf_filter_syms = yes
+if test "$cf_filter_syms" = yes
then
RESULTING_SYMS=resulting.map
fi
@@ -26051,7 +28575,7 @@ fi
# This is used for the *-config script and *.pc data files.
-echo "$as_me:26054: checking for linker search path" >&5
+echo "$as_me:28578: checking for linker search path" >&5
echo $ECHO_N "checking for linker search path... $ECHO_C" >&6
if test "${cf_cv_ld_searchpath+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -26065,14 +28589,14 @@ cf_pathlist=`ld --verbose 2>/dev/null | grep SEARCH_DIR | sed -e 's,SEARCH_DIR[(
# The -NX options tell newer versions of Linux ldconfig to not attempt to
# update the cache, which makes it run faster.
test -z "$cf_pathlist" && \
- cf_pathlist=`ldconfig -NX -v 2>/dev/null | sed -e '/^[ ]/d' -e 's/:$//' | sort -u`
+ cf_pathlist=`(ldconfig -NX -v) 2>/dev/null | sed -e '/^[ ]/d' -e 's/:$//' | sort -u`
test -z "$cf_pathlist" &&
- cf_pathlist=`ldconfig -v 2>/dev/null | sed -n -e '/^[ ]/d' -e 's/:$//p' | sort -u`
+ cf_pathlist=`(ldconfig -v) 2>/dev/null | sed -n -e '/^[ ]/d' -e 's/:$//p' | sort -u`
# This works with OpenBSD 6.5, which lists only filenames
test -z "$cf_pathlist" &&
- cf_pathlist=`ldconfig -v 2>/dev/null | sed -n -e 's,^Adding \(.*\)/.*$,\1,p' | sort -u`
+ cf_pathlist=`(ldconfig -v) 2>/dev/null | sed -n -e 's,^Adding \(.*\)/.*$,\1,p' | sort -u`
if test -z "$cf_pathlist"
then
@@ -26087,13 +28611,38 @@ fi
if test -z "$cf_pathlist"
then
- # Solaris is hardcoded
- if test -d /opt/SUNWspro/lib
+ # Solaris is "SunOS"
+ if test -f /usr/bin/isainfo && test "x`uname -s`" = xSunOS
then
- cf_pathlist="/opt/SUNWspro/lib /usr/ccs/lib /usr/lib"
- elif test -d /usr/ccs/lib
+ case x`(isainfo -b)` in
+ (x64)
+ cf_pathlist="$cf_pathlist /lib/64 /usr/lib/64"
+ ;;
+ (x32)
+ test -d /usr/ccs/lib && cf_pathlist="$cf_pathlist /usr/ccs/lib"
+ cf_pathlist="$cf_pathlist /lib /usr/lib"
+ ;;
+ (*)
+ { echo "$as_me:28626: WARNING: problem with Solaris architecture" >&5
+echo "$as_me: WARNING: problem with Solaris architecture" >&2;}
+ ;;
+ esac
+ fi
+fi
+
+if test -z "$cf_pathlist"
+then
+ # HP-UX
+ if test x"`uname -s`" = xHP-UX
then
- cf_pathlist="/usr/ccs/lib /usr/lib"
+ case x`getconf LONG_BIT` in
+ (x64)
+ cf_pathlist="/usr/lib/hpux64"
+ ;;
+ (x*)
+ cf_pathlist="/usr/lib/hpux32"
+ ;;
+ esac
fi
fi
@@ -26115,7 +28664,7 @@ done
test -z "$cf_cv_ld_searchpath" && cf_cv_ld_searchpath=/usr/lib
fi
-echo "$as_me:26118: result: $cf_cv_ld_searchpath" >&5
+echo "$as_me:28667: result: $cf_cv_ld_searchpath" >&5
echo "${ECHO_T}$cf_cv_ld_searchpath" >&6
LD_SEARCHPATH=`echo "$cf_cv_ld_searchpath"|sed -e 's/ /|/g'`
@@ -26202,12 +28751,12 @@ fi
DEFS=-DHAVE_CONFIG_H
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:26208: creating $CONFIG_STATUS" >&5
+{ echo "$as_me:28757: creating $CONFIG_STATUS" >&5
echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
+cat >"$CONFIG_STATUS" <<_ACEOF
#! $SHELL
# Generated automatically by configure.
# Run this file to recreate the current configuration.
@@ -26218,9 +28767,11 @@ debug=false
SHELL=\${CONFIG_SHELL-$SHELL}
ac_cs_invocation="\$0 \$@"
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>"$CONFIG_STATUS" <<\_ACEOF
# Be Bourne compatible
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
@@ -26260,9 +28811,9 @@ as_executable_p="test -f"
# Support unset when possible.
if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
+ as_unset="unset"
else
- as_unset=false
+ as_unset="false"
fi
# NLS nuisances.
@@ -26290,22 +28841,22 @@ _ACEOF
# Files that config.status was made for.
if test -n "$ac_config_files"; then
- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+ echo "config_files=\"$ac_config_files\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_headers"; then
- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+ echo "config_headers=\"$ac_config_headers\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_links"; then
- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+ echo "config_links=\"$ac_config_links\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_commands"; then
- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+ echo "config_commands=\"$ac_config_commands\"" >>"$CONFIG_STATUS"
fi
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
ac_cs_usage="\
\`$as_me' instantiates files from templates according to the
@@ -26334,21 +28885,22 @@ $config_commands
Report bugs to <dickey@invisible-island.net>."
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
ac_cs_version="\\
config.status
-configured by $0, generated by GNU Autoconf 2.52.20200111,
+configured by $0, generated by GNU Autoconf 2.52.20210509,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+Copyright 2003-2020,2021 Thomas E. Dickey
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
+srcdir="$srcdir"
INSTALL="$INSTALL"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
# If no file are specified by the user, then we need to provide default
# value. By we need to know if files were specified by the user.
ac_need_defaults=:
@@ -26371,17 +28923,17 @@ do
case $1 in
# Handling of the options.
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion"
exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;;
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
--version | --vers* | -V )
echo "$ac_cs_version"; exit 0 ;;
--he | --h)
# Conflict between --help and --header
- { { echo "$as_me:26384: error: ambiguous option: $1
+ { { echo "$as_me:28936: error: ambiguous option: $1
Try \`$0 --help' for more information." >&5
echo "$as_me: error: ambiguous option: $1
Try \`$0 --help' for more information." >&2;}
@@ -26400,7 +28952,7 @@ Try \`$0 --help' for more information." >&2;}
ac_need_defaults=false;;
# This is an error.
- -*) { { echo "$as_me:26403: error: unrecognized option: $1
+ -*) { { echo "$as_me:28955: error: unrecognized option: $1
Try \`$0 --help' for more information." >&5
echo "$as_me: error: unrecognized option: $1
Try \`$0 --help' for more information." >&2;}
@@ -26419,18 +28971,18 @@ cat >&5 << _ACEOF
## Running config.status. ##
## ----------------------- ##
-This file was extended by $as_me 2.52.20200111, executed with
+This file was extended by $as_me 2.52.20210509, executed with
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
CONFIG_LINKS = $CONFIG_LINKS
CONFIG_COMMANDS = $CONFIG_COMMANDS
- > $ac_cs_invocation
+ > "$ac_cs_invocation"
on `(hostname || uname -n) 2>/dev/null | sed 1q`
_ACEOF
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
#
# INIT-COMMANDS section.
#
@@ -26438,12 +28990,14 @@ cat >>$CONFIG_STATUS <<EOF
### Special initialization commands, used to pass information from the
### configuration-run into config.status
-AWK="$AWK"
ALTERNATE_SYMS="$ALTERNATE_SYMS"
+AWK="$AWK"
+CXX_NAME="$CXX_NAME"
DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
DFT_LWR_MODEL="$DFT_LWR_MODEL"
ECHO_LD="$ECHO_LD"
EXTRA_SUFFIX="$EXTRA_SUFFIX"
+FORM_NAME="$FORM_NAME"
LDCONFIG="$LDCONFIG"
LIBTOOL_VERSION="$LIBTOOL_VERSION"
LIB_NAME="$LIB_NAME"
@@ -26453,10 +29007,12 @@ LIB_SUFFIX="$LIB_SUFFIX"
LIB_TRACING="$LIB_TRACING"
LN_S="$LN_S"
MAKE_TERMINFO="$MAKE_TERMINFO"
+MENU_NAME="$MENU_NAME"
NCURSES_MAJOR="$NCURSES_MAJOR"
NCURSES_MINOR="$NCURSES_MINOR"
NCURSES_OSPEED="$NCURSES_OSPEED"
NCURSES_PATCH="$NCURSES_PATCH"
+PANEL_NAME="$PANEL_NAME"
SRC_SUBDIRS="$SRC_SUBDIRS"
TERMINFO="$TERMINFO"
TICS_ARG_SUFFIX="$TICS_ARG_SUFFIX"
@@ -26478,12 +29034,15 @@ WITH_CURSES_H="$with_curses_h"
WITH_ECHO="${enable_echo:=yes}"
WITH_OVERWRITE="$with_overwrite"
cf_LIST_MODELS="$cf_list_models"
+cf_cv_VERSION_GNATMAKE=$cf_cv_VERSION_GNATMAKE
+cf_cv_VERSION_GPRBUILD=$cf_cv_VERSION_GPRBUILD
cf_cv_abi_version="$cf_cv_abi_version"
cf_cv_do_relink="$cf_cv_do_relink"
cf_cv_do_reranlib="$cf_cv_do_reranlib"
cf_cv_do_symlinks="$cf_cv_do_symlinks"
cf_cv_enable_lp64="$cf_cv_enable_lp64"
cf_cv_enable_opaque="$cf_cv_enable_opaque"
+cf_cv_make_PHONY="$cf_cv_make_PHONY"
cf_cv_prog_CC_c_o=$cf_cv_prog_CC_c_o
cf_cv_prog_CXX_c_o=$cf_cv_prog_CXX_c_o
cf_cv_prog_gnat_correct=$cf_cv_prog_gnat_correct
@@ -26505,7 +29064,7 @@ with_shared_cxx="$with_shared_cxx"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
for ac_config_target in $ac_config_targets
do
case "$ac_config_target" in
@@ -26519,7 +29078,7 @@ do
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
"include/ncurses_cfg.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/ncurses_cfg.h:include/ncurses_cfg.hin" ;;
- *) { { echo "$as_me:26522: error: invalid argument: $ac_config_target" >&5
+ *) { { echo "$as_me:29081: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
@@ -26529,7 +29088,7 @@ done
# then the envvar interface is used. Set only those that are not.
# We use the long form for the default assignment because of an extremely
# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
+if "$ac_need_defaults"; then
test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
@@ -26559,7 +29118,7 @@ $debug ||
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
#
# CONFIG_FILES section.
@@ -26604,6 +29163,7 @@ s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
s,@DEFS@,$DEFS,;t t
s,@LIBS@,$LIBS,;t t
s,@top_builddir@,$top_builddir,;t t
+s,@GREP@,$GREP,;t t
s,@EGREP@,$EGREP,;t t
s,@NCURSES_MAJOR@,$NCURSES_MAJOR,;t t
s,@NCURSES_MINOR@,$NCURSES_MINOR,;t t
@@ -26630,6 +29190,7 @@ s,@target@,$target,;t t
s,@target_cpu@,$target_cpu,;t t
s,@target_vendor@,$target_vendor,;t t
s,@target_os@,$target_os,;t t
+s,@FGREP@,$FGREP,;t t
s,@CC@,$CC,;t t
s,@CFLAGS@,$CFLAGS,;t t
s,@LDFLAGS@,$LDFLAGS,;t t
@@ -26657,6 +29218,8 @@ s,@PKG_CONFIG_LIBDIR@,$PKG_CONFIG_LIBDIR,;t t
s,@MAKE_PC_FILES@,$MAKE_PC_FILES,;t t
s,@PC_MODULE_SUFFIX@,$PC_MODULE_SUFFIX,;t t
s,@SET_MAKE@,$SET_MAKE,;t t
+s,@MAKE_NO_PHONY@,$MAKE_NO_PHONY,;t t
+s,@MAKE_PHONY@,$MAKE_PHONY,;t t
s,@CTAGS@,$CTAGS,;t t
s,@ETAGS@,$ETAGS,;t t
s,@MAKE_LOWER_TAGS@,$MAKE_LOWER_TAGS,;t t
@@ -26725,13 +29288,16 @@ s,@RESULTING_SYMS@,$RESULTING_SYMS,;t t
s,@VERSIONED_SYMS@,$VERSIONED_SYMS,;t t
s,@WILDCARD_SYMS@,$WILDCARD_SYMS,;t t
s,@cf_ldd_prog@,$cf_ldd_prog,;t t
+s,@EXTRA_PKG_LDFLAGS@,$EXTRA_PKG_LDFLAGS,;t t
s,@EXTRA_SUFFIX@,$EXTRA_SUFFIX,;t t
s,@TERMINFO_SRC@,$TERMINFO_SRC,;t t
s,@NCURSES_USE_DATABASE@,$NCURSES_USE_DATABASE,;t t
-s,@FALLBACK_LIST@,$FALLBACK_LIST,;t t
-s,@USE_FALLBACKS@,$USE_FALLBACKS,;t t
s,@TIC@,$TIC,;t t
+s,@ac_ct_TIC@,$ac_ct_TIC,;t t
s,@INFOCMP@,$INFOCMP,;t t
+s,@ac_ct_INFOCMP@,$ac_ct_INFOCMP,;t t
+s,@FALLBACK_LIST@,$FALLBACK_LIST,;t t
+s,@USE_FALLBACKS@,$USE_FALLBACKS,;t t
s,@WHICH_XTERM@,$WHICH_XTERM,;t t
s,@XTERM_KBS@,$XTERM_KBS,;t t
s,@TERMINFO_DIRS@,$TERMINFO_DIRS,;t t
@@ -26779,7 +29345,12 @@ s,@NCURSES_OPAQUE_FORM@,$NCURSES_OPAQUE_FORM,;t t
s,@NCURSES_OPAQUE_MENU@,$NCURSES_OPAQUE_MENU,;t t
s,@NCURSES_OPAQUE_PANEL@,$NCURSES_OPAQUE_PANEL,;t t
s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t
+s,@NCURSES_IMPEXP@,$NCURSES_IMPEXP,;t t
+s,@NCURSES_CXX_IMPEXP@,$NCURSES_CXX_IMPEXP,;t t
s,@NCURSES_INTEROP_FUNCS@,$NCURSES_INTEROP_FUNCS,;t t
+s,@NCURSES_WGETCH_EVENTS@,$NCURSES_WGETCH_EVENTS,;t t
+s,@EXP_WIN32_DRIVER@,$EXP_WIN32_DRIVER,;t t
+s,@INTERNALS_HDR@,$INTERNALS_HDR,;t t
s,@ECHO_LT@,$ECHO_LT,;t t
s,@ECHO_LD@,$ECHO_LD,;t t
s,@RULE_CC@,$RULE_CC,;t t
@@ -26789,8 +29360,10 @@ s,@ECHO_LINK@,$ECHO_LINK,;t t
s,@INSTALL_OPT_S@,$INSTALL_OPT_S,;t t
s,@INSTALL_OPT_O@,$INSTALL_OPT_O,;t t
s,@INSTALL_OPT_P@,$INSTALL_OPT_P,;t t
-s,@ADAFLAGS@,$ADAFLAGS,;t t
s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t
+s,@HAVE_STDNORETURN_H@,$HAVE_STDNORETURN_H,;t t
+s,@STDC_NORETURN@,$STDC_NORETURN,;t t
+s,@ADAFLAGS@,$ADAFLAGS,;t t
s,@EXTRA_CXXFLAGS@,$EXTRA_CXXFLAGS,;t t
s,@ADA_TRACE@,$ADA_TRACE,;t t
s,@MATH_LIB@,$MATH_LIB,;t t
@@ -26820,6 +29393,8 @@ s,@USE_GNAT_SIGINT@,$USE_GNAT_SIGINT,;t t
s,@USE_OLD_MAKERULES@,$USE_OLD_MAKERULES,;t t
s,@USE_GNAT_PROJECTS@,$USE_GNAT_PROJECTS,;t t
s,@USE_GNAT_LIBRARIES@,$USE_GNAT_LIBRARIES,;t t
+s,@USE_GNAT_MAKE_GPR@,$USE_GNAT_MAKE_GPR,;t t
+s,@USE_GNAT_GPRBUILD@,$USE_GNAT_GPRBUILD,;t t
s,@cf_ada_compiler@,$cf_ada_compiler,;t t
s,@cf_ada_package@,$cf_ada_package,;t t
s,@ADA_INCLUDE@,$ADA_INCLUDE,;t t
@@ -26854,6 +29429,10 @@ s,@TICS_LIST@,$TICS_LIST,;t t
s,@TINFO_LIST@,$TINFO_LIST,;t t
s,@SHLIB_LIST@,$SHLIB_LIST,;t t
s,@NCURSES_TREE@,$NCURSES_TREE,;t t
+s,@FORM_NAME@,$FORM_NAME,;t t
+s,@MENU_NAME@,$MENU_NAME,;t t
+s,@PANEL_NAME@,$PANEL_NAME,;t t
+s,@CXX_NAME@,$CXX_NAME,;t t
s,@TEST_ARGS@,$TEST_ARGS,;t t
s,@TEST_DEPS@,$TEST_DEPS,;t t
s,@TEST_ARG2@,$TEST_ARG2,;t t
@@ -26869,10 +29448,6 @@ s,@HAVE_TERMIOS_H@,$HAVE_TERMIOS_H,;t t
s,@cross_compiling@,$cross_compiling,;t t
s,@MAKE_TESTS@,$MAKE_TESTS,;t t
s,@ADAHTML_DIR@,$ADAHTML_DIR,;t t
-s,@PANEL_NAME@,$PANEL_NAME,;t t
-s,@MENU_NAME@,$MENU_NAME,;t t
-s,@FORM_NAME@,$FORM_NAME,;t t
-s,@CXX_NAME@,$CXX_NAME,;t t
s,@LIBTOOL_OPTS_CXX@,$LIBTOOL_OPTS_CXX,;t t
s,@PKG_CFLAGS@,$PKG_CFLAGS,;t t
s,@MISC_INSTALL_DATA@,$MISC_INSTALL_DATA,;t t
@@ -26887,7 +29462,7 @@ CEOF
EOF
- cat >>$CONFIG_STATUS <<\EOF
+ cat >>"$CONFIG_STATUS" <<\EOF
# Split the substitutions into bite-sized pieces for seds with
# small command number limits, like on Digital OSF/1 and HP-UX.
ac_max_sed_lines=48
@@ -26896,8 +29471,8 @@ EOF
ac_end=$ac_max_sed_lines # Line after last line for current file.
ac_more_lines=:
ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
+ while "$ac_more_lines"; do
+ if test "$ac_beg" -gt 1; then
sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
else
sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
@@ -26914,15 +29489,15 @@ EOF
# It is possible to make a multiline substitution using escaped newlines.
# Ensure that we do not split the substitution between script fragments.
ac_BEG=$ac_end
- ac_END=`expr $ac_end + $ac_max_sed_lines`
+ ac_END=`expr "$ac_end" + "$ac_max_sed_lines"`
sed "1,${ac_BEG}d; ${ac_END}p; q" $tmp/subs.sed >$tmp/subs.next
if test -s $tmp/subs.next; then
grep '^s,@[^@,][^@,]*@,.*\\$' $tmp/subs.next >$tmp/subs.edit
if test ! -s $tmp/subs.edit; then
grep "^s,@[^@,][^@,]*@,.*,;t t$" $tmp/subs.next >$tmp/subs.edit
if test ! -s $tmp/subs.edit; then
- if test $ac_beg -gt 1; then
- ac_end=`expr $ac_end - 1`
+ if test "$ac_beg" -gt 1; then
+ ac_end=`expr "$ac_end" - 1`
continue
fi
fi
@@ -26934,9 +29509,9 @@ EOF
else
ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
+ ac_sed_frag=`expr "$ac_sed_frag" + 1`
ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
+ ac_end=`expr "$ac_end" + "$ac_max_sed_lines"`
fi
done
if test -z "$ac_sed_cmds"; then
@@ -26945,10 +29520,10 @@ EOF
fi # test -n "$CONFIG_FILES"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
+ case "$ac_file" in
- | *:- | *:-:* ) # input from stdin
cat >$tmp/stdin
ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
@@ -26994,19 +29569,19 @@ done; }
ac_dir_suffix= ac_dots=
fi
- case $srcdir in
+ case "$srcdir" in
.) ac_srcdir=.
if test -z "$ac_dots"; then
ac_top_srcdir=.
else
- ac_top_srcdir=`echo $ac_dots | sed 's,/$,,'`
+ ac_top_srcdir=`echo "$ac_dots" | sed 's,/$,,'`
fi ;;
[\\/]* | ?:[\\/]* )
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
+ ac_srcdir="$srcdir$ac_dir_suffix";
+ ac_top_srcdir="$srcdir" ;;
*) # Relative path.
- ac_srcdir=$ac_dots$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_dots$srcdir ;;
+ ac_srcdir="$ac_dots$srcdir$ac_dir_suffix"
+ ac_top_srcdir="$ac_dots$srcdir" ;;
esac
case $INSTALL in
@@ -27015,7 +29590,7 @@ done; }
esac
if test x"$ac_file" != x-; then
- { echo "$as_me:27018: creating $ac_file" >&5
+ { echo "$as_me:29593: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
rm -f "$ac_file"
fi
@@ -27033,7 +29608,7 @@ echo "$as_me: creating $ac_file" >&6;}
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:27036: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:29611: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
@@ -27043,35 +29618,35 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
echo $f
elif test -f "$srcdir/$f"; then
# Source tree
- echo $srcdir/$f
+ echo "$srcdir/$f"
else
# /dev/null tree
- { { echo "$as_me:27049: error: cannot find input file: $f" >&5
+ { { echo "$as_me:29624: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
esac
done` || { (exit 1); exit 1; }
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
ac_warn_datarootdir=no
if test x"$ac_file" != x-; then
for ac_item in $ac_file_inputs
do
- ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' $ac_item`
+ ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' "$ac_item"`
if test -n "$ac_seen"; then
- ac_used=`grep '@datarootdir@' $ac_item`
+ ac_used=`grep '@datarootdir@' "$ac_item"`
if test -z "$ac_used"; then
- { echo "$as_me:27065: WARNING: datarootdir was used implicitly but not set:
+ { echo "$as_me:29640: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&5
echo "$as_me: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&2;}
ac_warn_datarootdir=yes
fi
fi
- ac_seen=`grep '${datarootdir}' $ac_item`
+ ac_seen=`grep '${datarootdir}' "$ac_item"`
if test -n "$ac_seen"; then
- { echo "$as_me:27074: WARNING: datarootdir was used explicitly but not set:
+ { echo "$as_me:29649: WARNING: datarootdir was used explicitly but not set:
$ac_seen" >&5
echo "$as_me: WARNING: datarootdir was used explicitly but not set:
$ac_seen" >&2;}
@@ -27085,11 +29660,11 @@ if test "x$ac_warn_datarootdir" = xyes; then
fi
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
sed "$ac_vpsub
$extrasub
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
:t
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
s,@configure_input@,$configure_input,;t t
@@ -27099,27 +29674,27 @@ s,@INSTALL@,$ac_INSTALL,;t t
" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
rm -f $tmp/stdin
if test x"$ac_file" != x-; then
- cp $tmp/out $ac_file
+ cp "$tmp/out" "$ac_file"
for ac_name in prefix exec_prefix datarootdir
do
- ac_seen=`fgrep -n '${'$ac_name'[:=].*}' $ac_file`
+ ac_seen=`${FGREP-fgrep} -n '${'$ac_name'[:=].*}' "$ac_file"`
if test -n "$ac_seen"; then
- ac_init=`egrep '[ ]*'$ac_name'[ ]*=' $ac_file`
+ ac_init=`${EGREP-egrep} '[ ]*'$ac_name'[ ]*=' "$ac_file"`
if test -z "$ac_init"; then
ac_seen=`echo "$ac_seen" |sed -e 's,^,'$ac_file':,'`
- { echo "$as_me:27111: WARNING: Variable $ac_name is used but was not set:
+ { echo "$as_me:29686: WARNING: Variable $ac_name is used but was not set:
$ac_seen" >&5
echo "$as_me: WARNING: Variable $ac_name is used but was not set:
$ac_seen" >&2;}
fi
fi
done
- egrep -n '@[a-z_][a-z_0-9]+@' $ac_file >$tmp/out
- egrep -n '@[A-Z_][A-Z_0-9]+@' $ac_file >>$tmp/out
+ ${EGREP-egrep} -n '@[a-z_][a-z_0-9]+@' "$ac_file" >$tmp/out
+ ${EGREP-egrep} -n '@[A-Z_][A-Z_0-9]+@' "$ac_file" >>$tmp/out
if test -s $tmp/out; then
ac_seen=`sed -e 's,^,'$ac_file':,' < $tmp/out`
- { echo "$as_me:27122: WARNING: Some variables may not be substituted:
+ { echo "$as_me:29697: WARNING: Some variables may not be substituted:
$ac_seen" >&5
echo "$as_me: WARNING: Some variables may not be substituted:
$ac_seen" >&2;}
@@ -27131,7 +29706,7 @@ $ac_seen" >&2;}
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
#
# CONFIG_HEADER section.
@@ -27158,7 +29733,7 @@ ac_uD=',;t'
for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
+ case "$ac_file" in
- | *:- | *:-:* ) # input from stdin
cat >$tmp/stdin
ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
@@ -27168,7 +29743,7 @@ for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
* ) ac_file_in=$ac_file.in ;;
esac
- test x"$ac_file" != x- && { echo "$as_me:27171: creating $ac_file" >&5
+ test x"$ac_file" != x- && { echo "$as_me:29746: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
# First look for the input files in the build tree, otherwise in the
@@ -27179,7 +29754,7 @@ echo "$as_me: creating $ac_file" >&6;}
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:27182: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:29757: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
@@ -27189,10 +29764,10 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
echo $f
elif test -f "$srcdir/$f"; then
# Source tree
- echo $srcdir/$f
+ echo "$srcdir/$f"
else
# /dev/null tree
- { { echo "$as_me:27195: error: cannot find input file: $f" >&5
+ { { echo "$as_me:29770: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
@@ -27212,14 +29787,14 @@ cat confdefs.h | uniq >conftest.vals
# the size of here documents, and old seds have small limits too.
rm -f conftest.tail
-echo ' rm -f conftest.frag' >> $CONFIG_STATUS
+echo ' rm -f conftest.frag' >> "$CONFIG_STATUS"
while grep . conftest.vals >/dev/null
do
# Write chunks of a limited-size here document to conftest.frag.
- echo ' cat >> conftest.frag <<CEOF' >> $CONFIG_STATUS
- sed ${ac_max_here_lines}q conftest.vals | sed -e 's/#ifdef.*/#if 0/' >> $CONFIG_STATUS
- echo 'CEOF' >> $CONFIG_STATUS
- sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
+ echo ' cat >> conftest.frag <<CEOF' >> "$CONFIG_STATUS"
+ sed "${ac_max_here_lines}q" conftest.vals | sed -e 's/#ifdef.*/#if 0/' >> "$CONFIG_STATUS"
+ echo 'CEOF' >> "$CONFIG_STATUS"
+ sed "1,${ac_max_here_lines}d" conftest.vals > conftest.tail
rm -f conftest.vals
mv conftest.tail conftest.vals
done
@@ -27235,9 +29810,9 @@ sed -f conftest.edit $tmp/in > $tmp/out
rm -f $tmp/in
mv $tmp/out $tmp/in
rm -f conftest.edit conftest.frag
-' >> $CONFIG_STATUS
+' >> "$CONFIG_STATUS"
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
# Let's still pretend it is `configure' which instantiates (i.e., don't
# use $as_me), people would be surprised to read:
# /* config.h. Generated automatically by config.status. */
@@ -27249,8 +29824,8 @@ cat >>$CONFIG_STATUS <<\EOF
cat $tmp/in >>$tmp/config.h
rm -f $tmp/in
if test x"$ac_file" != x-; then
- if cmp -s $ac_file $tmp/config.h 2>/dev/null; then
- { echo "$as_me:27253: $ac_file is unchanged" >&5
+ if cmp -s "$ac_file" "$tmp/config.h" 2>/dev/null; then
+ { echo "$as_me:29828: $ac_file is unchanged" >&5
echo "$as_me: $ac_file is unchanged" >&6;}
else
ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
@@ -27282,8 +29857,8 @@ for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
done; }
fi
- rm -f $ac_file
- mv $tmp/config.h $ac_file
+ rm -f "$ac_file"
+ mv "$tmp/config.h" "$ac_file"
fi
else
cat $tmp/config.h
@@ -27291,7 +29866,7 @@ done; }
fi
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
#
# CONFIG_COMMANDS section.
#
@@ -27299,16 +29874,16 @@ for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
- case $ac_dest in
+ case "$ac_dest" in
default )
if test "x$cf_with_tests" != xno ; then
for cf_dir in test
do
- if test ! -d $srcdir/$cf_dir; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
- elif test -f $srcdir/$cf_dir/programs; then
- $AWK -f $srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LD" $srcdir/$cf_dir/programs >>$cf_dir/Makefile
+ elif test -f "$srcdir/$cf_dir/programs" ; then
+ $AWK -f "$srcdir/test/mk-test.awk" INSTALL=no ECHO_LINK="$ECHO_LD" "$srcdir/$cf_dir/programs" >>$cf_dir/Makefile
fi
done
@@ -27316,35 +29891,35 @@ fi
cf_prefix=$LIB_PREFIX
-case $cf_cv_shlib_version in
-(cygdll|msysdll|mingw)
+case "$cf_cv_shlib_version" in
+(cygdll|msysdll|mingw|msvcdll)
TINFO_NAME=$TINFO_ARG_SUFFIX
TINFO_SUFFIX=.dll
;;
esac
if test -n "$TINFO_SUFFIX" ; then
- case $TINFO_SUFFIX in
+ case "$TINFO_SUFFIX" in
(tw*)
TINFO_NAME="${TINFO_NAME}tw${EXTRA_SUFFIX}"
- TINFO_SUFFIX=`echo $TINFO_SUFFIX | sed 's/^tw'$EXTRA_SUFFIX'//'`
+ TINFO_SUFFIX=`echo "$TINFO_SUFFIX" | sed 's/^tw'$EXTRA_SUFFIX'//'`
;;
(t*)
TINFO_NAME="${TINFO_NAME}t${EXTRA_SUFFIX}"
- TINFO_SUFFIX=`echo $TINFO_SUFFIX | sed 's/^t'$EXTRA_SUFFIX'//'`
+ TINFO_SUFFIX=`echo "$TINFO_SUFFIX" | sed 's/^t'$EXTRA_SUFFIX'//'`
;;
(w*)
TINFO_NAME="${TINFO_NAME}w${EXTRA_SUFFIX}"
- TINFO_SUFFIX=`echo $TINFO_SUFFIX | sed 's/^w'$EXTRA_SUFFIX'//'`
+ TINFO_SUFFIX=`echo "$TINFO_SUFFIX" | sed 's/^w'$EXTRA_SUFFIX'//'`
;;
esac
fi
for cf_dir in $SRC_SUBDIRS
do
- if test ! -d $srcdir/$cf_dir ; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
- elif test -f $srcdir/$cf_dir/modules; then
+ elif test -f "$srcdir/$cf_dir/modules" ; then
SHARED_LIB=
Libs_To_Make=
@@ -27374,7 +29949,7 @@ resulting.map: $UNALTERED_SYMS
$cf_awk_program \
{ if ( last != "" && ( skip == 0 || \$\$0 !~ /}/ ) ) { print last; }\
skip = 0; last = \$\$0; } \
-END { print last; }' < $UNALTERED_SYMS >\$@
+END { print last; }' < "$UNALTERED_SYMS" >\$@
distclean::
rm -f resulting.map
@@ -27390,19 +29965,37 @@ CF_EOF
cf_depsuf=$cf_suffix
;;
(Xdebug)
- cf_suffix='_g.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_suffix='_g.lib'
+ ;;
+ (*)
+ cf_suffix='_g.a'
+ ;;
+ esac
cf_depsuf=$cf_suffix
;;
(Xprofile)
- cf_suffix='_p.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_suffix='_p.lib'
+ ;;
+ (*)
+ cf_suffix='_p.a'
+ ;;
+ esac
cf_depsuf=$cf_suffix
;;
(Xshared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[5-7]*)
cf_suffix='.so'
cf_depsuf=$cf_suffix
;;
+ (*-msvc*)
+ cf_suffix='.dll'
+ cf_depsuf='.dll.lib'
+ ;;
(cygwin*|msys*|mingw*)
cf_suffix='.dll'
cf_depsuf='.dll.a'
@@ -27412,7 +30005,7 @@ CF_EOF
cf_depsuf=$cf_suffix
;;
(hpux*)
- case $target in
+ case "$target" in
(ia64*)
cf_suffix='.so'
cf_depsuf=$cf_suffix
@@ -27430,7 +30023,14 @@ CF_EOF
esac
;;
(*)
- cf_suffix='.a'
+ case "$target" in
+ (*-msvc*)
+ cf_suffix='.lib'
+ ;;
+ (*)
+ cf_suffix='.a'
+ ;;
+ esac
cf_depsuf=$cf_suffix
;;
esac
@@ -27440,9 +30040,22 @@ CF_EOF
cf_depsuf="${LIB_SUFFIX}${EXTRA_SUFFIX}${cf_depsuf}"
fi
- cf_libname=$cf_dir
- test "$cf_dir" = c++ && cf_libname=ncurses++
- if test $cf_item = shared ; then
+ if test "$cf_dir" = "c++"
+ then
+
+cf_map_lib_basename=`echo "cxx" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+eval cf_libname="\$${cf_map_lib_basename}_NAME"
+
+ else
+
+cf_map_lib_basename=`echo "$cf_dir" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+eval cf_libname="\$${cf_map_lib_basename}_NAME"
+
+ fi
+ test -z "$cf_libname" && cf_libname="$cf_dir"
+ if test "$cf_item" = shared ; then
if test -n "${LIB_SUFFIX}"
then
cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${USE_LIB_SUFFIX}"'//'`
@@ -27483,7 +30096,7 @@ CF_EOF
# cygwin needs import library, and has unique naming convention
# use autodetected ${cf_prefix} for import lib and static lib, but
# use 'cyg' prefix for shared lib.
- case $cf_cv_shlib_version in
+ case "$cf_cv_shlib_version" in
(cygdll)
cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
cf_add_lib="../lib/cyg${cf_libname}${cf_cygsuf}"
@@ -27496,6 +30109,10 @@ CF_EOF
cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
cf_add_lib="../lib/lib${cf_libname}${cf_cygsuf}"
;;
+ (msvcdll)
+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
+ cf_add_lib="../lib/${cf_libname}${cf_cygsuf}"
+ ;;
(*)
cf_add_lib=
;;
@@ -27510,7 +30127,7 @@ CF_EOF
Libs_To_Make="$Libs_To_Make $cf_add_lib"
done
- if test $cf_dir = ncurses ; then
+ if test "$cf_dir" = ncurses ; then
cf_subsets="$LIB_SUBSETS"
cf_r_parts="$cf_subsets"
cf_liblist="$Libs_To_Make"
@@ -27521,12 +30138,12 @@ CF_EOF
cf_r_parts=`echo "$cf_r_parts" |sed -e 's/^[^ ]* //'`
if test "$cf_l_parts" != "$cf_r_parts" ; then
cf_add_lib=
- case $cf_l_parts in
+ case "$cf_l_parts" in
(*termlib*)
- cf_add_lib=`echo $cf_liblist |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TINFO_LIB_SUFFIX}%g`
+ cf_add_lib=`echo "$cf_liblist" |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TINFO_LIB_SUFFIX}%g`
;;
(*ticlib*)
- cf_add_lib=`echo $cf_liblist |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TICS_LIB_SUFFIX}%g`
+ cf_add_lib=`echo "$cf_liblist" |sed -e s%${LIB_NAME}${USE_LIB_SUFFIX}%${TICS_LIB_SUFFIX}%g`
;;
(*)
break
@@ -27543,12 +30160,12 @@ CF_EOF
cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'`
fi
- if test $cf_dir = c++; then
+ if test "$cf_dir" = c++; then
if test "x$with_shared_cxx" != xyes && test -n "$cf_shared_suffix"; then
cf_list=
for cf_item in $Libs_To_Make
do
- case $cf_item in
+ case "$cf_item" in
(*.a)
;;
(*)
@@ -27572,12 +30189,12 @@ CF_EOF
sed -e "s%@Libs_To_Make@%$Libs_To_Make%" \
-e "s%@SHARED_LIB@%$SHARED_LIB%" \
- $cf_dir/Makefile >$cf_dir/Makefile.out
- mv $cf_dir/Makefile.out $cf_dir/Makefile
+ "$cf_dir/Makefile" >$cf_dir/Makefile.out
+ mv "$cf_dir/Makefile.out" "$cf_dir/Makefile"
- $AWK -f $srcdir/mk-0th.awk \
+ $AWK -f "$srcdir/mk-0th.awk" \
libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" ticlib="$TICS_LIB_SUFFIX" termlib="$TINFO_LIB_SUFFIX" \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/modules" >>$cf_dir/Makefile
for cf_subset in $cf_subsets
do
@@ -27591,11 +30208,11 @@ cf_ITEM=`echo "$cf_item" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQ
CXX_MODEL=$cf_ITEM
if test "$CXX_MODEL" = SHARED; then
- case $cf_cv_shlib_version in
- (cygdll|msysdll|mingw)
+ case "$cf_cv_shlib_version" in
+ (cygdll|msysdll|mingw|msvcdll)
test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6
-echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&5
+echo "${as_me:-configure}:30215: testing overriding CXX_MODEL to SHARED ..." 1>&5
with_shared_cxx=yes
;;
@@ -27611,19 +30228,37 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
cf_depsuf=$cf_suffix
;;
(Xdebug)
- cf_suffix='_g.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_suffix='_g.lib'
+ ;;
+ (*)
+ cf_suffix='_g.a'
+ ;;
+ esac
cf_depsuf=$cf_suffix
;;
(Xprofile)
- cf_suffix='_p.a'
+ case "$cf_cv_system_name" in
+ (*-msvc*)
+ cf_suffix='_p.lib'
+ ;;
+ (*)
+ cf_suffix='_p.a'
+ ;;
+ esac
cf_depsuf=$cf_suffix
;;
(Xshared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(aix[5-7]*)
cf_suffix='.so'
cf_depsuf=$cf_suffix
;;
+ (*-msvc*)
+ cf_suffix='.dll'
+ cf_depsuf='.dll.lib'
+ ;;
(cygwin*|msys*|mingw*)
cf_suffix='.dll'
cf_depsuf='.dll.a'
@@ -27633,7 +30268,7 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
cf_depsuf=$cf_suffix
;;
(hpux*)
- case $target in
+ case "$target" in
(ia64*)
cf_suffix='.so'
cf_depsuf=$cf_suffix
@@ -27651,7 +30286,14 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
esac
;;
(*)
- cf_suffix='.a'
+ case "$target" in
+ (*-msvc*)
+ cf_suffix='.lib'
+ ;;
+ (*)
+ cf_suffix='.a'
+ ;;
+ esac
cf_depsuf=$cf_suffix
;;
esac
@@ -27667,7 +30309,7 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
(debug) cf_subdir='obj_g' ;;
(profile) cf_subdir='obj_p' ;;
(shared)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin|msys)
cf_subdir='objects' ;;
(*)
@@ -27677,8 +30319,8 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
# Test for case where we build libtinfo with a different name.
cf_libname=$cf_dir
- if test $cf_dir = ncurses ; then
- case $cf_subset in
+ if test "$cf_dir" = ncurses ; then
+ case "$cf_subset" in
(*base*)
cf_libname=${cf_libname}$USE_LIB_SUFFIX
;;
@@ -27689,14 +30331,24 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
cf_libname=$TICS_LIB_SUFFIX
;;
esac
- elif test $cf_dir = c++ ; then
- cf_libname=ncurses++$USE_LIB_SUFFIX
+ elif test "$cf_dir" = c++ ; then
+
+cf_map_lib_basename=`echo "cxx" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+eval cf_libname="\$${cf_map_lib_basename}_NAME"
+
+ cf_libname=${cf_libname}$USE_LIB_SUFFIX
else
+
+cf_map_lib_basename=`echo "$cf_dir" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+eval cf_libname="\$${cf_map_lib_basename}_NAME"
+
cf_libname=${cf_libname}$USE_LIB_SUFFIX
fi
if test -n "${USE_ARG_SUFFIX}" ; then
# undo $USE_LIB_SUFFIX add-on in CF_LIB_SUFFIX
- cf_suffix=`echo $cf_suffix |sed -e "s%^${USE_LIB_SUFFIX}%%"`
+ cf_suffix=`echo "$cf_suffix" |sed -e "s%^${USE_LIB_SUFFIX}%%"`
fi
# These dependencies really are for development, not
@@ -27708,9 +30360,9 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
cf_reldir="\${srcdir}"
fi
- if test -f $srcdir/$cf_dir/$cf_dir.priv.h; then
+ if test -f "$srcdir/$cf_dir/$cf_dir.priv.h" ; then
cf_depend="$cf_depend $cf_reldir/$cf_dir.priv.h"
- elif test -f $srcdir/$cf_dir/curses.priv.h; then
+ elif test -f "$srcdir/$cf_dir/curses.priv.h" ; then
cf_depend="$cf_depend $cf_reldir/curses.priv.h"
fi
@@ -27718,36 +30370,39 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
old_cf_suffix="$cf_suffix"
if test "$cf_cv_shlib_version_infix" = yes ; then
if test -n "$USE_LIB_SUFFIX" ; then
- case $USE_LIB_SUFFIX in
+ case "$USE_LIB_SUFFIX" in
(tw*)
- cf_libname=`echo $cf_libname | sed 's/tw'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^tw'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/tw'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^tw'$EXTRA_SUFFIX'//'`
cf_dir_suffix=tw$EXTRA_SUFFIX
;;
(t*)
- cf_libname=`echo $cf_libname | sed 's/t'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^t'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/t'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^t'$EXTRA_SUFFIX'//'`
cf_dir_suffix=t$EXTRA_SUFFIX
;;
(w*)
- cf_libname=`echo $cf_libname | sed 's/w'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^w'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/w'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^w'$EXTRA_SUFFIX'//'`
cf_dir_suffix=w$EXTRA_SUFFIX
;;
(*)
- cf_libname=`echo $cf_libname | sed 's/'$EXTRA_SUFFIX'$//'`
- cf_suffix=`echo $cf_suffix | sed 's/^'$EXTRA_SUFFIX'//'`
+ cf_libname=`echo "$cf_libname" | sed 's/'$EXTRA_SUFFIX'$//'`
+ cf_suffix=`echo "$cf_suffix" | sed 's/^'$EXTRA_SUFFIX'//'`
cf_dir_suffix=$EXTRA_SUFFIX
;;
esac
fi
fi
- $AWK -f $srcdir/mk-1st.awk \
+ $AWK -f "$srcdir/mk-1st.awk" \
name=${cf_libname}${cf_dir_suffix} \
traces=$LIB_TRACING \
MODEL=$cf_ITEM \
CXX_MODEL=$CXX_MODEL \
+ LIB_SUFFIX=$LIB_SUFFIX \
+ USE_LIB_SUFFIX=$USE_LIB_SUFFIX \
+ make_phony="${cf_cv_make_PHONY:-no}" \
model=$cf_subdir \
prefix=$cf_prefix \
suffix=$cf_suffix \
@@ -27767,16 +30422,16 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
depend="$cf_depend" \
host="$host" \
libtool_version="$LIBTOOL_VERSION" \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/modules" >>$cf_dir/Makefile
cf_suffix="$old_cf_suffix"
for cf_subdir2 in $cf_subdirs lib
do
- test $cf_subdir = $cf_subdir2 && break
+ test "$cf_subdir" = "$cf_subdir2" && break
done
test "${cf_subset}.${cf_subdir2}" != "${cf_subset}.${cf_subdir}" && \
- $AWK -f $srcdir/mk-2nd.awk \
+ $AWK -f "$srcdir/mk-2nd.awk" \
name=$cf_dir \
traces=$LIB_TRACING \
MODEL=$cf_ITEM \
@@ -27786,53 +30441,76 @@ echo "${as_me:-configure}:27598: testing overriding CXX_MODEL to SHARED ..." 1>&
echo=$WITH_ECHO \
crenames=$cf_cv_prog_CC_c_o \
cxxrenames=$cf_cv_prog_CXX_c_o \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/modules" >>$cf_dir/Makefile
cf_subdirs="$cf_subdirs $cf_subdir"
done
done
fi
- echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@' >>Makefile
+ echo ' ( cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@ )' >>Makefile
done
+echo >> Makefile
+echo '# generated by CF_LIB_RULES' >> Makefile
+
+if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : libs
+ .PHONY : lintlib
+ .PHONY : install.includes
+ .PHONY : uninstall.includes
+ .PHONY : install.libs
+ .PHONY : uninstall.libs
+CF_EOF
+fi
+
for cf_dir in $SRC_SUBDIRS
do
- if test ! -d $srcdir/$cf_dir ; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
fi
- if test -f $cf_dir/Makefile ; then
+ if test -f "$cf_dir/Makefile" ; then
case "$cf_dir" in
(Ada95)
echo 'libs \' >> Makefile
echo 'install.libs \' >> Makefile
echo 'uninstall.libs ::' >> Makefile
- echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@' >> Makefile
+ echo ' ( cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@ )' >> Makefile
;;
esac
fi
- if test -f $srcdir/$cf_dir/modules; then
+ if test -f "$srcdir/$cf_dir/modules" ; then
+
+ if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : install.$cf_dir
+ .PHONY : uninstall.$cf_dir
+CF_EOF
+ fi
+
echo >> Makefile
- if test -f $srcdir/$cf_dir/headers; then
+ if test -f "$srcdir/$cf_dir/headers" ; then
cat >> Makefile <<CF_EOF
install.includes \\
uninstall.includes \\
CF_EOF
fi
-if test "$cf_dir" != "c++" ; then
-echo 'lint \' >> Makefile
-fi
+
cat >> Makefile <<CF_EOF
+lint \\
libs \\
lintlib \\
install.libs \\
uninstall.libs \\
install.$cf_dir \\
uninstall.$cf_dir ::
- cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \$@
+ ( cd "$cf_dir" && \${MAKE} \${TOP_MFLAGS} \$@ )
CF_EOF
- elif test -f $srcdir/$cf_dir/headers; then
+ elif test -f "$srcdir/$cf_dir/headers" ; then
cat >> Makefile <<CF_EOF
libs \\
@@ -27840,32 +30518,49 @@ install.libs \\
uninstall.libs \\
install.includes \\
uninstall.includes ::
- cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \$@
+ ( cd "$cf_dir" && \${MAKE} \${TOP_MFLAGS} \$@ )
CF_EOF
fi
done
+if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : install.data
+ .PHONY : uninstall.data
+CF_EOF
+fi
+
if test "x$cf_with_db_install" = xyes; then
cat >> Makefile <<CF_EOF
install.libs uninstall.libs \\
install.data uninstall.data ::
-$MAKE_TERMINFO cd misc && \${MAKE} \${TOP_MFLAGS} \$@
+$MAKE_TERMINFO ( cd misc && \${MAKE} \${TOP_MFLAGS} \$@ )
CF_EOF
else
cat >> Makefile <<CF_EOF
install.libs uninstall.libs ::
- cd misc && \${MAKE} \${TOP_MFLAGS} \$@
+ ( cd misc && \${MAKE} \${TOP_MFLAGS} \$@ )
CF_EOF
fi
if test "x$cf_with_manpages" = xyes; then
+
+if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> Makefile <<-CF_EOF
+
+ .PHONY : install.man
+ .PHONY : uninstall.man
+CF_EOF
+fi
+
cat >> Makefile <<CF_EOF
install.man \\
uninstall.man ::
- cd man && \${MAKE} \${TOP_MFLAGS} \$@
+ ( cd man && \${MAKE} \${TOP_MFLAGS} \$@ )
CF_EOF
fi
@@ -27885,7 +30580,7 @@ cat >> Makefile <<CF_EOF
install.man \\
uninstall.man ::
- cd tack && \${MAKE} \${TOP_MFLAGS} \$@
+ ( cd tack && \${MAKE} \${TOP_MFLAGS} \$@ )
CF_EOF
fi
fi
@@ -27912,12 +30607,12 @@ TMPSED=\${TMPDIR:-/tmp}/headers.sed\$\$
echo installing \$SRC in \$DST
CF_EOF
-if test $WITH_CURSES_H = yes; then
+if test "$WITH_CURSES_H" = yes; then
cat >>headers.sh <<CF_EOF
case \$DST in
(/*/include/*)
END=\`basename \$DST\`
- for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
+ for i in \`cat \$REF/../*/headers |${FGREP-fgrep} -v "#"\`
do
NAME=\`basename \$i\`
echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED
@@ -27934,7 +30629,7 @@ else
case \$DST in
(/*/include/*)
END=\`basename \$DST\`
- for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
+ for i in \`cat \$REF/../*/headers |${FGREP-fgrep} -v "#"\`
do
NAME=\`basename \$i\`
if test "\$NAME" = "curses.h"
@@ -27956,7 +30651,7 @@ rm -f \$TMPSRC
sed -f \$TMPSED \$SRC > \$TMPSRC
NAME=\`basename \$SRC\`
CF_EOF
-if test $WITH_CURSES_H != yes; then
+if test "$WITH_CURSES_H" != yes; then
cat >>headers.sh <<CF_EOF
test "\$NAME" = "curses.h" && NAME=ncurses.h
CF_EOF
@@ -27973,19 +30668,26 @@ chmod 0755 headers.sh
for cf_dir in $SRC_SUBDIRS
do
- if test ! -d $srcdir/$cf_dir ; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
fi
- if test -f $srcdir/$cf_dir/headers; then
- $AWK -f $srcdir/mk-hdr.awk \
+ if test -f "$srcdir/$cf_dir/headers" ; then
+ $AWK -f "$srcdir/mk-hdr.awk" \
subset="$LIB_SUBSETS" \
compat="$WITH_CURSES_H" \
- $srcdir/$cf_dir/headers >>$cf_dir/Makefile
+ "$srcdir/$cf_dir/headers" >>$cf_dir/Makefile
fi
- if test -f $srcdir/$cf_dir/modules; then
+ if test -f "$srcdir/$cf_dir/modules" ; then
if test "$cf_dir" != "c++" ; then
+ if test "x$cf_cv_make_PHONY" = xyes ; then
+ cat >> $cf_dir/Makefile <<-CF_EOF
+
+ .PHONY : depend
+CF_EOF
+ fi
+
cat >>$cf_dir/Makefile <<"CF_EOF"
depend : ${AUTO_SRC}
makedepend -- ${CPPFLAGS} -- ${C_SRC}
@@ -27998,7 +30700,7 @@ done
if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then
if test -z "$USE_OLD_MAKERULES" ; then
- $AWK -f $srcdir/Ada95/mk-1st.awk <$srcdir/Ada95/src/modules >>Ada95/src/Makefile
+ $AWK -f "$srcdir/Ada95/mk-1st.awk" <"$srcdir/Ada95/src/modules" >>Ada95/src/Makefile
fi
fi
;;
@@ -28006,11 +30708,11 @@ fi
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
{ (exit 0); exit 0; }
EOF
-chmod +x $CONFIG_STATUS
+chmod +x "$CONFIG_STATUS"
ac_clean_files=$ac_clean_files_save
# configure is writing to config.log, and then calls config.status.
@@ -28024,10 +30726,10 @@ ac_clean_files=$ac_clean_files_save
if test "$no_create" != yes; then
ac_cs_success=:
exec 5>/dev/null
- $SHELL $CONFIG_STATUS || ac_cs_success=false
+ $SHELL "$CONFIG_STATUS" || ac_cs_success=false
exec 5>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
+ "$ac_cs_success" || { (exit 1); exit 1; }
fi
${MAKE:-make} preinstall
diff --git a/configure.in b/configure.in
index 2183a97..798b95a 100644
--- a/configure.in
+++ b/configure.in
@@ -1,5 +1,5 @@
dnl***************************************************************************
-dnl Copyright 2018-2019,2020 Thomas E. Dickey *
+dnl Copyright 2018-2020,2021 Thomas E. Dickey *
dnl Copyright 1998-2017,2018 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: configure.in,v 1.697 2020/02/08 20:56:13 tom Exp $
+dnl $Id: configure.in,v 1.736 2021/07/18 22:17:57 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl For additional information, see
@@ -37,8 +37,8 @@ dnl https://invisible-island.net/autoconf/
dnl https://invisible-island.net/autoconf/my-autoconf.html
dnl
dnl ---------------------------------------------------------------------------
-AC_PREREQ(2.52.20200111)
-AC_REVISION($Revision: 1.697 $)
+AC_PREREQ(2.52.20210101)
+AC_REVISION($Revision: 1.736 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
@@ -144,10 +144,10 @@ else
fi
CF_GXX_VERSION
-case $GXX_VERSION in
-(1*|2.[[0-6]]*)
- # GXX=""; CXX=""; ac_cv_prog_gxx=no
- # cf_cxx_library=no
+case "$GXX_VERSION" in
+([[1-9]][[0-9]].*)
+ ;;
+(1.*|2.[[0-6]]*)
AC_MSG_WARN(templates do not work)
;;
esac
@@ -183,7 +183,7 @@ AC_ARG_WITH(progs,
[cf_with_progs=yes])
AC_MSG_RESULT($cf_with_progs)
-if test -f $srcdir/tack/tack.h; then
+if test -f "$srcdir/tack/tack.h" ; then
if test "x$cross_compiling" = xyes ; then
CF_VERBOSE(ignoring tack because we are cross-compiling)
cf_with_tack=no
@@ -221,7 +221,6 @@ modules_to_build="$modules_to_build panel menu form"
AC_ARG_PROGRAM
CF_PROG_AWK
-CF_PROG_EGREP
CF_PROG_INSTALL
CF_PROG_LINT
CF_PROG_LN_S
@@ -281,6 +280,7 @@ fi
# do this after mixed-case option (tags/TAGS is not as important as tic).
AC_PROG_MAKE_SET
+CF_MAKE_PHONY
CF_MAKE_TAGS
CF_MAKEFLAGS
@@ -311,6 +311,14 @@ CF_HELP_MESSAGE(Build-Tools Needed to Compile Temporary Applications for Cross-c
# If we're cross-compiling, allow the user to override the tools and their
# options. The configure script is oriented toward identifying the host
# compiler, etc., but we need a build compiler to generate parts of the source.
+
+case "$cf_cv_system_name" in
+(*-msvc*)
+ LDFLAGS="$LDFLAGS user32.lib"
+ export LDFLAGS
+ ;;
+esac
+
CF_BUILD_CC
###############################################################################
@@ -443,7 +451,7 @@ fi
AC_SUBST(CXX_G_OPT)
AC_MSG_CHECKING(for default loader flags)
-case $DFT_LWR_MODEL in
+case "$DFT_LWR_MODEL" in
(libtool) LD_MODEL='' ;;
(normal) LD_MODEL='' ;;
(debug) LD_MODEL=$CC_G_OPT ;;
@@ -453,7 +461,7 @@ esac
AC_SUBST(LD_MODEL)dnl the type of link (e.g., -g or -pg)
AC_MSG_RESULT($LD_MODEL)
-case $DFT_LWR_MODEL in
+case "$DFT_LWR_MODEL" in
(shared)
CF_ENABLE_RPATH
AC_MSG_CHECKING(if shared libraries should be relinked during install)
@@ -468,8 +476,8 @@ esac
# we will build libraries one-level down.
rel_builddir=..
CF_SHARED_OPTS
-for model in $cf_list_models; do
- case $model in
+for model in $cf_list_models ; do
+ case "$model" in
(libtool)
CF_WITH_LIBTOOL_OPTS
CF_WITH_EXPORT_SYMS
@@ -482,7 +490,7 @@ for model in $cf_list_models; do
AC_MSG_CHECKING(if current CFLAGS link properly)
AC_TRY_LINK(
[#include <stdio.h>],
- [printf("Hello work\n");],
+ [printf("Hello work\\n");],
[cf_cflags_work=yes],
[cf_cflags_work=no])
AC_MSG_RESULT($cf_cflags_work)
@@ -543,6 +551,23 @@ if test "$DFT_LWR_MODEL" = "shared" && test "x$cf_cv_enable_rpath" != xno; then
CF_DISABLE_RPATH_HACK
fi
+### Depending on the system, someone may use rpath to build ncurses but not
+# want users of the package to rely upon that feature. Give those people an
+# option to suppress that detail from EXTRA_LDFLAGS.
+EXTRA_PKG_LDFLAGS="$LDFLAGS $EXTRA_LDFLAGS"
+if test -n "$EXTRA_PKG_LDFLAGS"
+then
+ AC_MSG_CHECKING(if you want to disable extra LDFLAGS for package-scripts)
+ CF_ARG_DISABLE(pkg-ldflags,
+ [ --disable-pkg-ldflags disable extra LDFLAGS for package-scripts],
+ [disable_pkg_ldflags=yes],
+ [disable_pkg_ldflags=no],
+ no)
+ AC_MSG_RESULT($disable_pkg_ldflags)
+ test "$disable_pkg_ldflags" = yes && EXTRA_PKG_LDFLAGS=
+fi
+AC_SUBST(EXTRA_PKG_LDFLAGS)
+
###############################################################################
CF_HELP_MESSAGE(Fine-Tuning Your Configuration:)
@@ -552,7 +577,7 @@ EXTRA_SUFFIX=
AC_ARG_WITH(extra-suffix,
[ --with-extra-suffix=X append extra suffix to header/library paths],
[case x$withval in
- (no)
+ (xno)
;;
(xyes|x)
EXTRA_SUFFIX=$cf_cv_abi_version
@@ -580,7 +605,7 @@ AC_ARG_ENABLE(database,
[use_database=yes])
AC_MSG_RESULT($use_database)
-case $host_os in
+case "$host_os" in
(os2*)
TERMINFO_SRC='${top_srcdir}/misc/emx.src'
;;
@@ -629,33 +654,38 @@ case ".$with_fallback" in
;;
esac
-USE_FALLBACKS=
-test -z "$FALLBACK_LIST" && USE_FALLBACKS="#"
-AC_SUBST(FALLBACK_LIST)
-AC_SUBST(USE_FALLBACKS)
-
# The fallback feature in ncurses relies upon tic/infocmp outside the build
# tree for generating the terminal descriptions that will be compiled into the
# library. If your toolchain is old, it may not handle current terminal
# databases. Use configure-options to point to the tools which will be used,
# rather than the first ones found on the $PATH.
+AC_CHECK_TOOL(TIC, tic)
+AC_CHECK_TOOL(INFOCMP, infocmp)
if test -n "$FALLBACK_LIST"
then
CF_WITH_PATH_PROG(TIC, tic, [for fallbacks], $PATH:/usr/local/ncurses/bin)
CF_WITH_PATH_PROG(INFOCMP, infocmp, [for fallbacks], $PATH:/usr/local/ncurses/bin)
-else
- : ${TIC:=tic}
- : ${INFOCMP:=infocmp}
+ test -z "$TIC" && FALLBACK_LIST=
+ test -z "$INFOCMP" && FALLBACK_LIST=
+ if test -z "$FALLBACK_LIST"
+ then
+ AC_MSG_WARN(ignoring fallback option because tic/infocmp are not available)
+ fi
fi
AC_SUBST(TIC)
AC_SUBST(INFOCMP)
+USE_FALLBACKS=
+test -z "$FALLBACK_LIST" && USE_FALLBACKS="#"
+AC_SUBST(FALLBACK_LIST)
+AC_SUBST(USE_FALLBACKS)
+
AC_MSG_CHECKING(if you want modern xterm or antique)
AC_ARG_WITH(xterm-new,
[ --without-xterm-new specify if xterm terminfo should be old version],
[with_xterm_new=$withval],
[with_xterm_new=yes])
-case $with_xterm_new in
+case "$with_xterm_new" in
(no) with_xterm_new=xterm-old;;
(*) with_xterm_new=xterm-new;;
esac
@@ -815,13 +845,21 @@ AC_ARG_ENABLE(home-terminfo,
AC_MSG_RESULT($with_home_terminfo)
test "x$with_home_terminfo" = "xyes" && AC_DEFINE(USE_HOME_TERMINFO,1,[Define to 1 if $HOME/.terminfo feature is wanted])
-AC_MSG_CHECKING(if you want to use restricted environment when running as root)
+AC_MSG_CHECKING(if you want to permit root to use ncurses environment variables)
AC_ARG_ENABLE(root-environ,
- [ --disable-root-environ restrict environment when running as root],
+ [ --disable-root-environ restrict root use of ncurses environment variables],
[with_root_environ=$enableval],
[with_root_environ=yes])
AC_MSG_RESULT($with_root_environ)
-test "x$with_root_environ" = xyes && AC_DEFINE(USE_ROOT_ENVIRON,1,[Define to 1 if environment should be restricted for root user])
+test "x$with_root_environ" = xyes && AC_DEFINE(USE_ROOT_ENVIRON,1,[Define to 1 if root is allowed to use ncurses environment])
+
+AC_MSG_CHECKING(if you want to permit setuid programs to access all files)
+AC_ARG_ENABLE(root-environ,
+ [ --disable-root-access restrict file-access when running setuid],
+ [with_root_access=$enableval],
+ [with_root_access=yes])
+AC_MSG_RESULT($with_root_access)
+test "x$with_root_access" = xyes && AC_DEFINE(USE_ROOT_ACCESS,1,[Define to 1 if setuid is allowed all file-access])
### Use option --enable-symlinks to make tic use symlinks, not hard links
### to reduce storage requirements for the terminfo database.
@@ -981,18 +1019,18 @@ else
with_tic_depends=no
fi
-### use option --disable-wattr-macros to suppress wattr* macros from curses.h
-AC_MSG_CHECKING(if you want to suppress wattr* macros to help with ncurses5/ncurses6 transition)
+### use option --enable-wattr-macros to enable wattr* macros in curses.h
+AC_MSG_CHECKING(if you want to enable wattr* macros)
AC_ARG_ENABLE(wattr-macros,
- [ --disable-wattr-macros suppress wattr* macros to help with ncurses5/ncurses6 transition],
+ [ --enable-wattr-macros enable wattr* macros],
[with_wattr_macros=$enableval],
- [with_wattr_macros=yes])
+ [with_wattr_macros=no])
if [[ "x$with_wattr_macros" != xyes ]]; then
NCURSES_WATTR_MACROS=0
- AC_MSG_RESULT(yes)
+ AC_MSG_RESULT(no)
else
NCURSES_WATTR_MACROS=1
- AC_MSG_RESULT(no)
+ AC_MSG_RESULT(yes)
fi
AC_SUBST(NCURSES_WATTR_MACROS)
@@ -1447,6 +1485,38 @@ AC_ARG_ENABLE(colorfgbg,
AC_MSG_RESULT($with_colorfgbg)
test "x$with_colorfgbg" = xyes && AC_DEFINE(USE_COLORFGBG,1,[Define to 1 to compile-in experimental $COLORFGBG code])
+### use option --enable-fvisibility to turn on use of gcc-specific feature
+AC_MSG_CHECKING(if you want to use gcc -fvisibility option)
+AC_ARG_ENABLE(fvisibility,
+ [ --enable-fvisibility compile with -fvisibility=hidden],
+ [cf_with_fvisibility=$enableval],
+ [cf_with_fvisibility=no])
+AC_MSG_RESULT($cf_with_fvisibility)
+
+NCURSES_IMPEXP=
+NCURSES_CXX_IMPEXP=
+if test "x$cf_with_fvisibility" = xyes; then
+ CF_CHECK_FVISIBILITY($CC,CFLAGS,cf_cv_fvisibility_hidden)
+ if test "x$cf_cv_fvisibility_hidden" = xyes
+ then
+ CF_ADD_CFLAGS([-fvisibility=hidden])
+ NCURSES_IMPEXP="__attribute__ ((visibility(\"default\")))"
+ fi
+ if test -n "$CXX"
+ then
+ AC_LANG_PUSH(C++)
+ CF_CHECK_FVISIBILITY($CXX,CXXFLAGS,cf_cv_fvisibility_hidden2)
+ if test "x$cf_cv_fvisibility_hidden2" = xyes
+ then
+ CF_ADD_CXXFLAGS([-fvisibility=hidden])
+ NCURSES_CXX_IMPEXP="__attribute__ ((visibility(\"default\")))"
+ fi
+ AC_LANG_POP
+ fi
+fi
+AC_SUBST(NCURSES_IMPEXP)
+AC_SUBST(NCURSES_CXX_IMPEXP)
+
### use option --enable-interop to turn on use of bindings used for interop
AC_MSG_CHECKING(if you want interop bindings)
AC_ARG_ENABLE(interop,
@@ -1485,7 +1555,39 @@ AC_ARG_ENABLE(wgetch-events,
[with_wgetch_events=$enableval],
[with_wgetch_events=no])
AC_MSG_RESULT($with_wgetch_events)
-test "x$with_wgetch_events" = xyes && AC_DEFINE(NCURSES_WGETCH_EVENTS,1,[Define to 1 to compile with wgetch-events code])
+if test "x$with_wgetch_events" = xyes ; then
+ AC_DEFINE(NCURSES_WGETCH_EVENTS,1,[Define to 1 to compile with wgetch-events code])
+ NCURSES_WGETCH_EVENTS=1
+else
+ NCURSES_WGETCH_EVENTS=0
+fi
+AC_SUBST(NCURSES_WGETCH_EVENTS)
+
+case "$cf_cv_system_name" in
+(*mingw32*|*mingw64*|*-msvc*)
+ AC_MSG_CHECKING(if you want experimental-Windows driver)
+ AC_ARG_ENABLE(exp-win32,
+ [ --enable-exp-win32 compile with experimental-Windows driver],
+ [with_exp_win32=$enableval],
+ [with_exp_win32=no])
+ AC_MSG_RESULT($with_exp_win32)
+ if test "x$with_exp_win32" = xyes
+ then
+ AC_DEFINE(EXP_WIN32_DRIVER,1,[Define to 1 to compile with experimental win32 driver])
+ EXP_WIN32_DRIVER=1
+ INTERNALS_HDR='[$](INCDIR)/nc_win32.h'
+ else
+ INTERNALS_HDR='[$](INCDIR)/nc_mingw.h'
+ EXP_WIN32_DRIVER=0
+ fi
+ ;;
+(*)
+ EXP_WIN32_DRIVER=0
+ INTERNALS_HDR=
+ ;;
+esac
+AC_SUBST(EXP_WIN32_DRIVER)
+AC_SUBST(INTERNALS_HDR)
###############################################################################
CF_HELP_MESSAGE(Testing/development Options:)
@@ -1520,20 +1622,14 @@ fi
AC_SUBST(INSTALL_OPT_P)
### use option --enable-warnings to turn on all gcc warnings
-AC_MSG_CHECKING(if you want to see compiler warnings)
-AC_ARG_ENABLE(warnings,
- [ --enable-warnings build: turn on GCC compiler warnings],
- [with_warnings=$enableval])
-AC_MSG_RESULT($with_warnings)
+CF_ENABLE_WARNINGS(Wno-unknown-pragmas Wswitch-enum,yes)
-if test "x$with_warnings" = "xyes"; then
+if test "x$enable_warnings" = "xyes"; then
CF_ADD_ADAFLAGS(-gnatg)
- CF_GCC_WARNINGS(Wno-unknown-pragmas Wswitch-enum)
if test "x$cf_with_cxx" = xyes ; then
CF_GXX_WARNINGS(Wno-unused)
fi
fi
-CF_GCC_ATTRIBUTES
CF_ENABLE_STRING_HACKS
### use option --enable-assertions to turn on generation of assertion code
@@ -1598,9 +1694,13 @@ AC_SUBST(ADA_TRACE)
CF_DISABLE_GNAT_PROJECTS
### Checks for libraries.
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(*mingw32*|*mingw64*)
+ if test "x$with_exp_win32" = xyes ; then
+ CPPFLAGS="$CPPFLAGS -DWINVER=0x0600 -DWIN32_LEAN_AND_MEAN"
+ else
CPPFLAGS="$CPPFLAGS -DWINVER=0x0501 -DWIN32_LEAN_AND_MEAN"
+ fi
# Note: WINVER may be a problem with Windows 10
;;
(*)
@@ -1630,7 +1730,6 @@ limits.h \
locale.h \
math.h \
poll.h \
-sys/bsdtypes.h \
sys/ioctl.h \
sys/param.h \
sys/poll.h \
@@ -1652,13 +1751,6 @@ then
AC_MSG_WARN(The NCURSES_TRACE environment variable is not supported with this configuration)
fi
-# check for ISC (this may also define _POSIX_SOURCE)
-# Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set
-if test "x$ISC" = xyes ; then
- AC_CHECK_LIB(cposix,main)
- AC_CHECK_LIB(inet,bzero,CF_ADD_LIB(inet))dnl also 'select()'
-fi
-
CF_SYS_TIME_SELECT
### checks for compiler characteristics
@@ -1667,7 +1759,7 @@ AC_C_CONST
CF_C_INLINE(NCURSES_INLINE,1200)
CF_SIG_ATOMIC_T
-if test $NCURSES_CHTYPE = auto ; then
+if test "$NCURSES_CHTYPE" = auto ; then
CF_TYPEOF_CHTYPE
else
cf_cv_typeof_chtype=$NCURSES_CHTYPE
@@ -1681,7 +1773,7 @@ test ".$cf_cv_unsigned_literals" = .yes && cf_cv_1UL="${cf_cv_1UL}U"
test ".$cf_cv_typeof_chtype" = .long && cf_cv_1UL="${cf_cv_1UL}L"
AC_SUBST(cf_cv_1UL)
-if test $NCURSES_MMASK_T = auto ; then
+if test "$NCURSES_MMASK_T" = auto ; then
cf_cv_typeof_mmask_t=long
else
cf_cv_typeof_mmask_t=$NCURSES_MMASK_T
@@ -1709,9 +1801,11 @@ select \
setbuf \
setbuffer \
setenv \
+setfsuid \
setvbuf \
sigaction \
sigvec \
+snprintf \
strdup \
strstr \
sysconf \
@@ -1784,7 +1878,7 @@ if test "$with_hashed_db" != no ; then
fi
dnl We'll do our own -g libraries, unless the user's overridden via $CFLAGS
-if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then
+if test -z "$cf_user_CFLAGS" && test "$enable_leaks" = yes ; then
CF_STRIP_G_OPT(CFLAGS)
CF_STRIP_G_OPT(CXXFLAGS)
fi
@@ -1798,8 +1892,8 @@ if test -n "$CXX" ; then
CF_STDCPP_LIBRARY
CF_PROG_CC_C_O(CXX,[$CXXFLAGS $CPPFLAGS])
- case $GXX_VERSION in
- (1*|2.[0-6]*)
+ case "$GXX_VERSION" in
+ (1.*|2.[[0-6]]*|[[1-9]][[0-9]].*)
cf_cxx_library=yes
;;
(*-2.7*|2.7*)
@@ -1855,11 +1949,11 @@ AC_SUBST(CXXLIBS)
# specify the type of bool in a configure-script option and postpone
# integration with the C++ compiler provided that the types are compatible.
USE_CXX_BOOL=1
-if test $cf_cv_cc_bool_type = 1
+if test "$cf_cv_cc_bool_type" = 1
then
# oops: C has a bool. Unlikely, but C++ could differ.
USE_CXX_BOOL=0
-elif test $cf_cv_builtin_bool = 0
+elif test "$cf_cv_builtin_bool" = 0
then
# C++ has no bool
USE_CXX_BOOL=0
@@ -1968,15 +2062,27 @@ LIB_SUBSETS="${LIB_SUBSETS}base"
# base library (so it resides in base).
if test "$with_term_driver" != no ; then
LIB_SUBSETS="${LIB_SUBSETS}+port_drivers"
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(*mingw32*|*mingw64*)
- LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con"
+ if test "x$with_exp_win32" = xyes ; then
+ LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32"
+ else
+ LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con"
+ fi
CPPFLAGS="$CPPFLAGS -DUSE_WIN32CON_DRIVER"
;;
(*)
LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo"
;;
esac
+elif test "x$with_exp_win32" = xyes ; then
+ case "$cf_cv_system_name" in
+ (*mingw32*|*mingw64*)
+ LIB_SUBSETS="${LIB_SUBSETS}+port_win32"
+ ;;
+ (*)
+ ;;
+ esac
fi
test "x$with_widec" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
@@ -2022,8 +2128,8 @@ fi
# do not want -ldl in build except as needed for -lncurses dependency
if test "x$with_dlsym" = xyes ; then
-if test $DFT_LWR_MODEL = shared || \
- test $DFT_LWR_MODEL = libtool ; then
+if test "$DFT_LWR_MODEL" = shared || \
+ test "$DFT_LWR_MODEL" = libtool ; then
CF_REMOVE_LIB(LIBS,$LIBS,dl)
fi
fi
@@ -2051,9 +2157,9 @@ if test "$with_ticlib" != no ; then
if test "x$with_ticlib" != xyes ; then
TICS_NAME=$with_ticlib
- TICS_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${USE_LIB_SUFFIX}//"`"
- TICS_ARG_SUFFIX="${with_ticlib}`echo ${USE_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TICS_DEP_SUFFIX="${with_ticlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
+ TICS_SUFFIX="`echo "${DFT_LIB_SUFFIX}" |sed -e "s/^${USE_LIB_SUFFIX}//"`"
+ TICS_ARG_SUFFIX="${with_ticlib}`echo "${USE_ARG_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
+ TICS_DEP_SUFFIX="${with_ticlib}`echo "${DFT_DEP_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
TICS_LIB_SUFFIX="${with_ticlib}"
else
TICS_SUFFIX=${DFT_LIB_SUFFIX}
@@ -2078,9 +2184,9 @@ if test "$with_termlib" != no ; then
if test "x$with_termlib" != xyes ; then
TINFO_NAME=$with_termlib
- TINFO_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${USE_LIB_SUFFIX}//"`"
- TINFO_ARG_SUFFIX="${with_termlib}`echo ${USE_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TINFO_DEP_SUFFIX="${with_termlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
+ TINFO_SUFFIX="`echo "${DFT_LIB_SUFFIX}" |sed -e "s/^${USE_LIB_SUFFIX}//"`"
+ TINFO_ARG_SUFFIX="${with_termlib}`echo "${USE_ARG_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
+ TINFO_DEP_SUFFIX="${with_termlib}`echo "${DFT_DEP_SUFFIX}" |sed -e "s/^${LIB_SUFFIX}//"`"
TINFO_LIB_SUFFIX="${with_termlib}"
else
TINFO_SUFFIX=${DFT_LIB_SUFFIX}
@@ -2128,7 +2234,7 @@ else
fi
if test "$DFT_LWR_MODEL" = shared ; then
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(cygwin*|msys*)
# "lib" files have ".dll.a" suffix, "cyg"or "msys-" files have ".dll"
TINFO_SUFFIX=.dll
@@ -2154,7 +2260,7 @@ fi
TINFO_LDFLAGS2=`echo "$TINFO_LDFLAGS" | sed -e 's,-L\.\./,-L../../,'`
AC_SUBST(TINFO_LDFLAGS2)
-case $DFT_LWR_MODEL in
+case "$DFT_LWR_MODEL" in
(normal|debug|profile)
CF_LDFLAGS_STATIC
;;
@@ -2164,8 +2270,8 @@ AC_MSG_CHECKING(where we will install curses.h)
AC_SUBST(includesubdir)
includesubdir=
if test "$with_overwrite" = no && \
- ( test "x$includedir" = 'x${prefix}/include' || \
- test "x$includedir" = "x${prefix}/include" )
+ { test "x$includedir" = 'x${prefix}/include' || \
+ test "x$includedir" = "x${prefix}/include"; }
then
includesubdir="/ncurses${USE_LIB_SUFFIX}"
fi
@@ -2181,6 +2287,17 @@ fi
fi
WITH_OVERWRITE=$with_overwrite
+### At least on MinGW a shared library build without libtool
+### requires adding the additional libs to the link list.
+case "$cf_cv_system_name" in
+(*mingw32*|*mingw64*)
+ if test "$DFT_LWR_MODEL" != "libtool"; then
+ SHLIB_LIST="$SHLIB_LIST ${LIBS}"
+ fi
+ ;;
+*) ;;
+esac
+
AC_SUBST(WITH_OVERWRITE)
AC_SUBST(TICS_LIST)
AC_SUBST(TINFO_LIST)
@@ -2193,6 +2310,12 @@ AC_SUBST(NCURSES_TREE)
### predefined stuff for the test programs
AC_DEFINE(HAVE_SLK_COLOR,1,[Define to 1 if we have slk_color for test-programs])
+# pkgsrc uses these
+CF_WITH_LIB_BASENAME(FORM_NAME,form)
+CF_WITH_LIB_BASENAME(MENU_NAME,menu)
+CF_WITH_LIB_BASENAME(PANEL_NAME,panel)
+CF_WITH_LIB_BASENAME(CXX_NAME,cxx,ncurses++)
+
### Construct the list of subdirectories for which we'll customize makefiles
### with the appropriate compile-rules.
@@ -2215,9 +2338,6 @@ AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR',[Define to override ':' as
AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}",[Define to 1 if machine has ample memory for tic])
-### Now that we're done running tests, add the compiler-warnings, if any
-CF_ADD_CFLAGS($EXTRA_CFLAGS)
-
### Define substitutions for header files to avoid name-pollution
CF_SUBST_IF(["x$cf_cv_have_tcgetattr" = xyes], HAVE_TCGETATTR, 1, 0)
CF_SUBST_IF(["x$ac_cv_header_stdint_h" = xyes], HAVE_STDINT_H, 1, 0)
@@ -2246,19 +2366,8 @@ AC_SUBST(MAKE_TESTS)
ADAHTML_DIR=../../doc/html/ada
AC_SUBST(ADAHTML_DIR)
-# these could be configurable, but are not currently
-PANEL_NAME=panel
-MENU_NAME=menu
-FORM_NAME=form
-CXX_NAME=ncurses++
-
-AC_SUBST(PANEL_NAME)
-AC_SUBST(MENU_NAME)
-AC_SUBST(FORM_NAME)
-AC_SUBST(CXX_NAME)
-
# workaround for OS/2 (20151017)
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(os2*)
LIBTOOL_OPTS_CXX="-os2dllname ncurs++"
;;
@@ -2269,7 +2378,7 @@ esac
AC_SUBST(LIBTOOL_OPTS_CXX)
# workaround for g++ versus Solaris (20131116)
-case $cf_cv_system_name in
+case "$cf_cv_system_name" in
(solaris2*)
case "x$CPPFLAGS" in
(*-D_XOPEN_SOURCE_EXTENDED*)
@@ -2369,7 +2478,7 @@ fi
test "x$cf_with_trace" = xyes && NCURSES_INLINE=
UNALTERED_SYMS=`echo "$RESULTING_SYMS" | sed -e 's/\\$/\\\\$/g'`
-if test $cf_filter_syms = yes
+if test "$cf_filter_syms" = yes
then
RESULTING_SYMS=resulting.map
fi
@@ -2400,25 +2509,27 @@ AC_OUTPUT( \
$SUB_MAKEFILES \
Makefile,[
if test "x$cf_with_tests" != xno ; then
- CF_PRG_RULES([$srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LD"], test)
+ CF_PRG_RULES(["$srcdir/test/mk-test.awk" INSTALL=no ECHO_LINK="$ECHO_LD"], test)
fi
CF_LIB_RULES($SRC_SUBDIRS)
if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then
if test -z "$USE_OLD_MAKERULES" ; then
- $AWK -f $srcdir/Ada95/mk-1st.awk <$srcdir/Ada95/src/modules >>Ada95/src/Makefile
+ $AWK -f "$srcdir/Ada95/mk-1st.awk" <"$srcdir/Ada95/src/modules" >>Ada95/src/Makefile
fi
fi
],[
### Special initialization commands, used to pass information from the
### configuration-run into config.status
-AWK="$AWK"
ALTERNATE_SYMS="$ALTERNATE_SYMS"
+AWK="$AWK"
+CXX_NAME="$CXX_NAME"
DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
DFT_LWR_MODEL="$DFT_LWR_MODEL"
ECHO_LD="$ECHO_LD"
EXTRA_SUFFIX="$EXTRA_SUFFIX"
+FORM_NAME="$FORM_NAME"
LDCONFIG="$LDCONFIG"
LIBTOOL_VERSION="$LIBTOOL_VERSION"
LIB_NAME="$LIB_NAME"
@@ -2428,10 +2539,12 @@ LIB_SUFFIX="$LIB_SUFFIX"
LIB_TRACING="$LIB_TRACING"
LN_S="$LN_S"
MAKE_TERMINFO="$MAKE_TERMINFO"
+MENU_NAME="$MENU_NAME"
NCURSES_MAJOR="$NCURSES_MAJOR"
NCURSES_MINOR="$NCURSES_MINOR"
NCURSES_OSPEED="$NCURSES_OSPEED"
NCURSES_PATCH="$NCURSES_PATCH"
+PANEL_NAME="$PANEL_NAME"
SRC_SUBDIRS="$SRC_SUBDIRS"
TERMINFO="$TERMINFO"
TICS_ARG_SUFFIX="$TICS_ARG_SUFFIX"
@@ -2453,12 +2566,15 @@ WITH_CURSES_H="$with_curses_h"
WITH_ECHO="${enable_echo:=yes}"
WITH_OVERWRITE="$with_overwrite"
cf_LIST_MODELS="$cf_list_models"
+cf_cv_VERSION_GNATMAKE=$cf_cv_VERSION_GNATMAKE
+cf_cv_VERSION_GPRBUILD=$cf_cv_VERSION_GPRBUILD
cf_cv_abi_version="$cf_cv_abi_version"
cf_cv_do_relink="$cf_cv_do_relink"
cf_cv_do_reranlib="$cf_cv_do_reranlib"
cf_cv_do_symlinks="$cf_cv_do_symlinks"
cf_cv_enable_lp64="$cf_cv_enable_lp64"
cf_cv_enable_opaque="$cf_cv_enable_opaque"
+cf_cv_make_PHONY="$cf_cv_make_PHONY"
cf_cv_prog_CC_c_o=$cf_cv_prog_CC_c_o
cf_cv_prog_CXX_c_o=$cf_cv_prog_CXX_c_o
cf_cv_prog_gnat_correct=$cf_cv_prog_gnat_correct
diff --git a/convert_configure.pl b/convert_configure.pl
deleted file mode 100644
index f35d154..0000000
--- a/convert_configure.pl
+++ /dev/null
@@ -1,120 +0,0 @@
-extproc perl -S -w
-
-# $Id: convert_configure.pl,v 1.4 2020/02/02 23:34:34 tom Exp $
-##############################################################################
-# Copyright 2020 Thomas E. Dickey #
-# Copyright 1998-2000,2006 Free Software Foundation, Inc. #
-# #
-# Permission is hereby granted, free of charge, to any person obtaining a #
-# copy of this software and associated documentation files (the "Software"), #
-# to deal in the Software without restriction, including without limitation #
-# the rights to use, copy, modify, merge, publish, distribute, distribute #
-# with modifications, sublicense, and/or sell copies of the Software, and to #
-# permit persons to whom the Software is furnished to do so, subject to the #
-# following conditions: #
-# #
-# The above copyright notice and this permission notice shall be included in #
-# all copies or substantial portions of the Software. #
-# #
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, #
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL #
-# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER #
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING #
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER #
-# DEALINGS IN THE SOFTWARE. #
-# #
-# Except as contained in this notice, the name(s) of the above copyright #
-# holders shall not be used in advertising or otherwise to promote the sale, #
-# use or other dealings in this Software without prior written #
-# authorization. #
-##############################################################################
-
-# The converted script is written to stdout, so run this script as
-# convert_configure configure > configure.cmd
-#
-# When the converted script runs, it expects that /tmp dir is
-# available (so we create it).
-#
-# run the result like this:
-# .\configure
-
-# Some frequent manual intervention:
-# a) Some makefiles hardwire SHELL = /bin/sh ==> change to: sh
-# b) Some makefiles recognize that exe files terminate on .exe
-# You need to give this script -no-zexe option...
-
-shift, $no_zexe = 1 if @ARGV and $ARGV[0] eq '-no-zexe';
-
-mkdir '/tmp', 0777 unless -d '/tmp';
-
-print <<EOF;
-extproc sh
-
-EOF
-
-print <<EOF unless $no_zexe;
-# Make sensible defaults:
-CC="gcc -Zexe -Zmt"
-export CC
-CXX="gcc -Zexe -Zmt"
-export CXX
-#GCCOPT="$GCCOPT -Zexe"
-#export GCCOPT
-EOF
-
-print <<EOF;
-CONFIG_SHELL=sh
-export CONFIG_SHELL
-
-# Optimization (GNU make 3.74 cannot be loaded :-():
-emxload -m 30 sh.exe ls.exe tr.exe id.exe sed.exe # make.exe
-emxload -m 30 grep.exe egrep.exe fgrep.exe cat.exe rm.exe mv.exe cp.exe
-emxload -m 30 uniq.exe basename.exe sort.exe awk.exe echo.exe
-
-
-EOF
-
-$checking_path = 0;
-
-while (<>) {
- if (/for\s+(\w+)\s+in\s*\$(PATH|ac_dummy)\s*;/) {
- $checking_path = 1;
- $varname = $1;
- $subst= <<EOS
-$varname="`echo -E \\"\$$varname\\" | tr \\\\\\\\\\\\\\\\ / `"
-EOS
- }
- if (/if\s+test\s+-z\s+\"\$INSTALL\"/) {
- $checking_install = 1;
- }
- $checking_install = $checking_path = 0 if /^\s*done\s*$/;
- # We want to create an extra line like this one:
-# ac_dir="`echo -E \"$ac_dir\" | tr \\\\\\\\ / `"
- s{^((\s*)if\s+test)\s*-f\s*(\$$varname/\S+)\s*;}
- {$2$subst$1 -f $3 -o -f $3.exe ;}
- if $checking_path; # Checking for executables
- # change |/usr/sbin/*| to |/usr/sbin/*|?:[\\/]os2[\\/]install[\\/]*|
- # in the list of things to skip (with both cases)
- s{\Q|/usr/sbin/*|}
- {|/usr/sbin/*|?:[\\\\/]os2[\\\\/]install[\\\\/]*|?:[\\\\/]OS2[\\\\/]INSTALL[\\\\/]*|}
- if $checking_install; # Do not accept d:/os2/install/install.exe
- s/^(host|build)=NONE$/$1=x86-emx-os2/; # Make default host/build
- s/"\$\{IFS}:"$/"\${IFS};"/; # Fix IFS line
- s/\bIFS=\":\"$/IFS=";"/; # Fix another IFS line
- s/\btest\s+-s\s+conftest\b/test -f conftest/g; # Fix exe test
- # This one is needed for curses:
- s/^\s*host=`.*\$ac_config_sub \$host_alias`/$&\nif test -z "\$host"; then host=\$host_alias; fi/;
- s,/bin/sh(?![/\w]),sh,g;
- s,^(\s*/usr/sbin/sendmail\s*)\\$,$1 "`whence sendmail | tr '\\\\\\\\' / `" \\,;
- print;
-}
-
-__END__
-
-Changes: 98/11 : support check for executables in ncurses.
- 99/2 : support INSTALL,
- new IFS=':' style
- 99/11 : find sendmail
- 00/01 : export CONFIG_SHELL
- 00/10 : new syntax for host=`...` line
diff --git a/dist.mk b/dist.mk
index aa6685a..1af7c16 100644
--- a/dist.mk
+++ b/dist.mk
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2017,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -26,7 +26,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1334 2020/02/09 21:49:08 tom Exp $
+# $Id: dist.mk,v 1.1444 2021/10/20 22:43:08 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
@@ -37,8 +37,8 @@ SHELL = /bin/sh
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
-NCURSES_MINOR = 2
-NCURSES_PATCH = 20200212
+NCURSES_MINOR = 3
+NCURSES_PATCH = 20211021
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
@@ -97,7 +97,7 @@ doc/hackguide.doc: doc/html/hackguide.html
# If that conflicts with the --without-manpage-renames, you can install those
# in a different location using the --with-install-prefix option of the
# configure script.
-MANPROG = tbl | nroff -mandoc -rLL=78n -rLT=78n -Tascii
+MANPROG = tbl | nroff -mandoc -rHY=0 -rLL=78n -rLT=78n -Tascii
manhtml:
@for f in doc/html/man/*.html; do \
@@ -134,7 +134,7 @@ manhtml:
g=$${m}.html ;\
if [ -f doc/html/$$g ]; then chmod +w doc/html/$$g; fi;\
echo "Converting $$m to HTML" ;\
- echo '<!-- ' > doc/html/man/$$g ;\
+ echo '<!--' > doc/html/man/$$g ;\
egrep '^.\\"[^#]' $$f | \
sed -e 's/\$$/@/g' \
-e 's/^.../ */' \
diff --git a/doc/html/Ada95.html b/doc/html/Ada95.html
index 7f4e9f9..8154c3e 100644
--- a/doc/html/Ada95.html
+++ b/doc/html/Ada95.html
@@ -1,7 +1,7 @@
<!--
- $Id: Ada95.html,v 1.16 2020/02/02 23:34:34 tom Exp $
+ $Id: Ada95.html,v 1.17 2021/09/04 10:52:55 tom Exp $
****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2000-2010,2013 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -73,14 +73,14 @@
<li>This is not a typical one-to-one interface mapping. It is
close to one-to-one on the functional level. Each (n)curses
- function has it's counterpart with a more or less similar
+ function has its counterpart with a more or less similar
formal parameter list in the binding. It is not one-to-one with
respect to the datatypes. I tried to make records out of the
flat chtype and similar structures, so you don't have to do bit
operations to mark an attributed character as bold. Just make
the boolean member <strong>bold</strong> of the record true.
The binding also hides the structures like WINDOW, PANEL, MENU,
- FORM etc. ! It's a pure functional API.</li>
+ FORM etc. ! It is a pure functional API.</li>
<li>I try to do as much error checking as possible and feasible
in the binding. I will raise an Ada exception when something
@@ -107,7 +107,7 @@
<li>Although Ada95 is an OO Language, this binding doesn't
provide an OO abstraction of the (n)curses functionality. As
- mentioned above it's a thin binding for the (n)curses
+ mentioned above it is a thin binding for the (n)curses
functions. But without any doubt it would be nice to build on
top of this an OO abstraction of (n)curses functionality.<br>
The only exception is the method how fieldtypes are represented
diff --git a/doc/html/NCURSES-Programming-HOWTO.html b/doc/html/NCURSES-Programming-HOWTO.html
index d3eeb95..e973c9e 100644
--- a/doc/html/NCURSES-Programming-HOWTO.html
+++ b/doc/html/NCURSES-Programming-HOWTO.html
@@ -1539,7 +1539,7 @@ int main()
</li>
</ol>
- <p>These functions can be used interchangeably and it's a
+ <p>These functions can be used interchangeably and it is a
matter of style as to which class is used. Let's see each one
in detail.</p>
@@ -2224,8 +2224,8 @@ int main(int argc, char *argv[])
<tt class="LITERAL">newwin()</tt>. It doesn't create any
thing on the screen actually. It allocates memory for a
structure to manipulate the window and updates the
- structure with data regarding the window like it's size,
- beginy, beginx etc.. Hence in curses, a window is just an
+ structure with data regarding the window such as its size,
+ beginy, beginx etc. Hence in curses, a window is just an
abstraction of an imaginary window, which can be
manipulated independent of other parts of screen. The
function newwin() returns a pointer to structure WINDOW,
@@ -2316,7 +2316,7 @@ WINDOW *create_newwin(int height, int width, int starty, int startx)
void destroy_win(WINDOW *local_win)
{
/* box(local_win, ' ', ' '); : This won't produce the desired
- * result of erasing the window. It will leave it's four corners
+ * result of erasing the window. It will leave its four corners
* and so an ugly remnant of window.
*/
wborder(local_win, ' ', ' ', ' ',' ',' ',' ',' ',' ');
@@ -2344,7 +2344,7 @@ void destroy_win(WINDOW *local_win)
<h3 class="SECT2"><a name="BORDEREXEXPL" id=
"BORDEREXEXPL">9.3. Explanation</a></h3>
- <p>Don't scream. I know it's a big example. But I have to
+ <p>Don't scream. I know it is a big example. But I have to
explain some important things here :-). This program
creates a rectangular window that can be moved with left,
right, up, down arrow keys. It repeatedly creates and
@@ -2711,7 +2711,7 @@ void print_in_middle(WINDOW *win, int starty, int startx, int width, char *strin
user. Let's deal with the keys first.</p>
<p>As you have seen in almost all of the above examples,
- it's very easy to get key input from the user. A simple way
+ it is very easy to get key input from the user. A simple way
of getting key presses is to use <tt class=
"LITERAL">getch()</tt> function. The cbreak mode should be
enabled to read keys when you are interested in reading
@@ -2947,7 +2947,7 @@ void print_menu(WINDOW *menu_win, int highlight)
</pre>
<p>getmouse() returns the event into the pointer given to
- it. It's a structure which contains</p>
+ it. It is a structure which contains</p>
<pre class="PROGRAMLISTING">
typedef struct
{
@@ -3188,7 +3188,7 @@ void report_choice(int mouse_x, int mouse_y, int *p_choice)
used to copy a window completely onto another window. It
takes the source and destination windows as parameters and
according to the rectangle specified, it copies the
- rectangular region from source to destination window. It's
+ rectangular region from source to destination window. Its
last parameter specifies whether to overwrite or just
overlay the contents on to the destination window. If this
argument is true, then the copying is non-destructive.</p>
@@ -3668,7 +3668,7 @@ void print_in_middle(WINDOW *win, int starty, int startx, int width, char *strin
can be accessed using the function <tt class=
"LITERAL">panel_userptr()</tt> which will return the user
pointer for the panel given as argument. After finding the
- next panel in the cycle It's brought to the top by the
+ next panel in the cycle It is brought to the top by the
function top_panel(). This function brings the panel given
as argument to the top of the panel stack.</p>
</div>
@@ -3953,7 +3953,7 @@ void print_in_middle(WINDOW *win, int starty, int startx, int width, char *strin
the user presses &lt;ENTER&gt; present selection ends and
panel is resized by using the concept explained. While in
resizing mode the program doesn't show how the window is
- getting resized. It's left as an exercise to the reader to
+ getting resized. It is left as an exercise to the reader to
print a dotted border while it gets resized to a new
position.</p>
@@ -5106,7 +5106,7 @@ int main()
This brings us to the interesting option for an item the
one and only O_SELECTABLE. We can turn it off by the
function item_opts_off() and after that that item is not
- selectable. It's like a grayed item in those fancy windows
+ selectable. It is like a grayed item in those fancy windows
menus. Let's put these concepts in practice with this
example</p>
@@ -5206,10 +5206,10 @@ int main()
"MENUUSERPTR">17.9. The useful User Pointer</a></h3>
<p>We can associate a user pointer with each item in the
- menu. It works the same way as user pointer in panels. It's
+ menu. It works the same way as user pointer in panels. It is
not touched by menu system. You can store any thing you
like in that. I usually use it to store the function to be
- executed when the menu option is chosen (It's selected and
+ executed when the menu option is chosen (It is selected and
may be the user pressed &lt;ENTER&gt;);</p>
<div class="EXAMPLE">
@@ -5318,7 +5318,7 @@ void func(char *name)
<p>Well. If you have seen those forms on web pages which take
input from users and do various kinds of things, you might be
wondering how would any one create such forms in text mode
- display. It's quite difficult to write those nifty forms in
+ display. It is quite difficult to write those nifty forms in
plain ncurses. Forms library tries to provide a basic frame
work to build and maintain forms with ease. It has lot of
features(functions) which manage validation, dynamic
@@ -5989,7 +5989,7 @@ int set_field_status(FIELD *field, /* field to alter */
int field_status(FIELD *field); /* fetch status of field */
</pre>
- <p>It's better to check the field's status only after
+ <p>It is better to check the field's status only after
after leaving the field, as data buffer might not have
been updated yet as the validation is still due. To
guarantee that right status is returned, call
@@ -6042,7 +6042,7 @@ char *field_userptr(FIELD *field); /* fetch user pointer of the field */
field_opts_off(field_pointer, O_STATIC);
</pre>
- <p>But it's usually not advisable to allow a field to
+ <p>But it is usually not advisable to allow a field to
grow infinitely. You can set a maximum limit to the
growth of the field with</p>
<pre class="PROGRAMLISTING">
@@ -6342,7 +6342,7 @@ FIELDTYPE *field_type(FIELD *field); /* field to query */
</ul>
<p>The following are the pre-defined validation types. You
- can also specify custom validation, though it's a bit
+ can also specify custom validation, though it is a bit
tricky and cumbersome.</p>
<h1 class="BRIDGEHEAD"><a name="AEN1069" id=
@@ -6360,7 +6360,7 @@ int set_field_type(FIELD *field, /* field to alter */
<p>The width argument sets a minimum width of data. The
user has to enter at-least width number of characters
before he can leave the field. Typically you'll want to set
- this to the field width; if it's greater than the field
+ this to the field width; if it is greater than the field
width, the validation check will always fail. A minimum
width of zero makes field completion optional.</p>
@@ -6378,7 +6378,7 @@ int set_field_type(FIELD *field, /* field to alter */
<p>The width argument sets a minimum width of data. As with
TYPE_ALPHA, typically you'll want to set this to the field
- width; if it's greater than the field width, the validation
+ width; if it is greater than the field width, the validation
check will always fail. A minimum width of zero makes field
completion optional.</p>
@@ -6497,7 +6497,7 @@ int form_driver(FORM *form, /* form on which to operate */
<p>As you have seen some of the examples above, you have to
be in a loop looking for user input and then decide whether
- it's a field data or a form request. The form requests are
+ it is a field data or a form request. The form requests are
then passed to form_driver() to do the work.</p>
<p>The requests roughly can be divided into following
@@ -7073,7 +7073,7 @@ int set_new_page(FIELD *field,/* Field at which page break to be set or unset */
development of full screen curses programs.</i></span></p>
<p>The kit provides some useful widgets, which can be used
- in your programs directly. It's pretty well written and the
+ in your programs directly. It is pretty well written and the
documentation is very good. The examples in the examples
directory can be a good place to start for beginners. The
CDK can be downloaded from <a href=
diff --git a/doc/html/ada/funcs/M.htm b/doc/html/ada/funcs/M.htm
index 05af814..68b1d51 100644
--- a/doc/html/ada/funcs/M.htm
+++ b/doc/html/ada/funcs/M.htm
@@ -29,7 +29,7 @@
<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_386_16" TARGET="main">Menu_Win</A>
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_830_16" TARGET="main">Meta</A>
<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_109_16" TARGET="main">MMask</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_211_16" TARGET="main">Mouseinterval</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_212_16" TARGET="main">Mouseinterval</A>
<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_51_16" TARGET="main">Mouse_Avail</A>
<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_154_13" TARGET="main">Mouse_Interval</A>
<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_614_14" TARGET="main">Move - terminal_interface-curses-forms.ads:614</A>
diff --git a/doc/html/ada/funcs/U.htm b/doc/html/ada/funcs/U.htm
index 70880e3..6c5a5fe 100644
--- a/doc/html/ada/funcs/U.htm
+++ b/doc/html/ada/funcs/U.htm
@@ -12,7 +12,7 @@
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2037_16" TARGET="main">Unctrl - terminal_interface-curses.adb:2037</A>
<LI><A HREF="../terminal_interface-curses__ads.htm#ref_933_14" TARGET="main">Undo_Keystroke</A>
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_540_16" TARGET="main">Ungetch</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_185_16" TARGET="main">Ungetmouse</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_186_16" TARGET="main">Ungetmouse</A>
<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_142_14" TARGET="main">Unget_Mouse</A>
<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1307_14" TARGET="main">Untouch</A>
<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1793_14" TARGET="main">Un_Control - terminal_interface-curses.ads:1793</A>
diff --git a/doc/html/ada/funcs/W.htm b/doc/html/ada/funcs/W.htm
index 77fbf23..926ec19 100644
--- a/doc/html/ada/funcs/W.htm
+++ b/doc/html/ada/funcs/W.htm
@@ -26,7 +26,7 @@
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1576_16" TARGET="main">Wdelch</A>
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_255_16" TARGET="main">Wdelwin</A>
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_209_16" TARGET="main">Wechochar</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_196_16" TARGET="main">Wenclose</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_197_16" TARGET="main">Wenclose</A>
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1121_16" TARGET="main">Werase</A>
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1185_16" TARGET="main">Wgetbkgd</A>
<LI><A HREF="../terminal_interface-curses__adb.htm#ref_526_16" TARGET="main">Wgetch</A>
diff --git a/doc/html/ada/terminal_interface-curses-mouse__adb.htm b/doc/html/ada/terminal_interface-curses-mouse__adb.htm
index 5b44449..2035f6b 100644
--- a/doc/html/ada/terminal_interface-curses-mouse__adb.htm
+++ b/doc/html/ada/terminal_interface-curses-mouse__adb.htm
@@ -53,8 +53,8 @@
<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span>
<span class="comment"><EM>-- Version Control:</EM></span>
-<span class="comment"><EM>-- @Revision: 1.27 @</EM></span>
-<span class="comment"><EM>-- @Date: 2020/02/02 23:34:34 @</EM></span>
+<span class="comment"><EM>-- @Revision: 1.28 @</EM></span>
+<span class="comment"><EM>-- @Date: 2020/06/27 18:50:44 @</EM></span>
<span class="comment"><EM>-- Binding Version 01.00</EM></span>
<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
<b>with</b> <A HREF="terminal_interface__ads.htm#ref_43_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_46_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_43_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_46_35">Aux</A>;
@@ -164,10 +164,11 @@
<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Button4</A>;
<b>end</b> <b>if</b>;
<b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_69_12">Real_Buttons</A> <b>then</b>
+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">State</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_26">Released</A>; <span class="comment"><EM>-- preset to non real button;</EM></span>
<A HREF="terminal_interface-curses-mouse__adb.htm#ref_137_7">L</A> := 2 ** (6 * <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Button</A>));
- <b>for</b> <span class="symbol"><A NAME="ref_151_14">I</A></span> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>'<b>Range</b> <b>loop</b>
+ <b>for</b> <span class="symbol"><A NAME="ref_152_14">I</A></span> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>'<b>Range</b> <b>loop</b>
<b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_130_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_137_7">L</A>) /= 0 <b>then</b>
- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">State</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#ref_151_14">I</A>;
+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">State</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#ref_152_14">I</A>;
<b>exit</b>;
<b>end</b> <b>if</b>;
<A HREF="terminal_interface-curses-mouse__adb.htm#ref_137_7">L</A> := 2 * <A HREF="terminal_interface-curses-mouse__adb.htm#ref_137_7">L</A>;
@@ -184,37 +185,37 @@
<b>end</b> <b>if</b>;
<b>end</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_130_14">Dispatch_Event</A>;
- <b>procedure</b> <span class="symbol"><A NAME="ref_170_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_130_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_170_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>;
- <span class="symbol"><A NAME="ref_171_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_131_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</A>;
- <span class="symbol"><A NAME="ref_172_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_132_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</A>;
- <span class="symbol"><A NAME="ref_173_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>;
- <span class="symbol"><A NAME="ref_174_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>)
+ <b>procedure</b> <span class="symbol"><A NAME="ref_171_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_130_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_171_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>;
+ <span class="symbol"><A NAME="ref_172_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_131_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</A>;
+ <span class="symbol"><A NAME="ref_173_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_132_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</A>;
+ <span class="symbol"><A NAME="ref_174_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>;
+ <span class="symbol"><A NAME="ref_175_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>)
<b>is</b>
- <span class="symbol"><A NAME="ref_176_7">Mask</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_170_10">Bstate</A>;
+ <span class="symbol"><A NAME="ref_177_7">Mask</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_170_10">Bstate</A>;
<b>begin</b>
<A HREF="terminal_interface-curses-mouse__ads.htm#ref_132_25">X</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A>);
<A HREF="terminal_interface-curses-mouse__ads.htm#ref_131_25">Y</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_13">Y</A>);
- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_130_14">Dispatch_Event</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_176_7">Mask</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Button</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">State</A>);
+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_130_14">Dispatch_Event</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_177_7">Mask</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Button</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">State</A>);
<b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_130_14">Get_Event</A>;
- <b>procedure</b> <span class="symbol"><A NAME="ref_183_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_142_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_183_27" HREF="terminal_interface-curses-mouse__ads.htm#ref_142_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>)
+ <b>procedure</b> <span class="symbol"><A NAME="ref_184_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_142_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_184_27" HREF="terminal_interface-curses-mouse__ads.htm#ref_142_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>)
<b>is</b>
- <b>function</b> <span class="symbol"><A NAME="ref_185_16">Ungetmouse</A></span> (<span class="symbol"><A NAME="ref_185_28" HREF="terminal_interface-curses-mouse__adb.htm#ref_185_16">Ev</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>;
+ <b>function</b> <span class="symbol"><A NAME="ref_186_16">Ungetmouse</A></span> (<span class="symbol"><A NAME="ref_186_28" HREF="terminal_interface-curses-mouse__adb.htm#ref_186_16">Ev</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>;
<b>pragma</b> Import (C, Ungetmouse, "ungetmouse");
<b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_185_16">Ungetmouse</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_142_27">Event</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_4">Curses_Err</A> <b>then</b>
+ <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_186_16">Ungetmouse</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_142_27">Event</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_4">Curses_Err</A> <b>then</b>
<b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_522_4">Curses_Exception</A>;
<b>end</b> <b>if</b>;
<b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_142_14">Unget_Mouse</A>;
- <b>function</b> <span class="symbol"><A NAME="ref_193_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_147_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_193_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_147_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_645_13">Standard_Window</A>;
- <span class="symbol"><A NAME="ref_194_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_148_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>) <b>return</b> Boolean
+ <b>function</b> <span class="symbol"><A NAME="ref_194_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_147_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_194_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_147_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_645_13">Standard_Window</A>;
+ <span class="symbol"><A NAME="ref_195_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_148_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>) <b>return</b> Boolean
<b>is</b>
- <b>function</b> <span class="symbol"><A NAME="ref_196_16">Wenclose</A></span> (<span class="symbol"><A NAME="ref_196_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_196_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_56_9">Window</A>; <span class="symbol"><A NAME="ref_196_40" HREF="terminal_interface-curses-mouse__adb.htm#ref_196_16">Y</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>; <span class="symbol"><A NAME="ref_196_51" HREF="terminal_interface-curses-mouse__adb.htm#ref_196_16">X</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>)
+ <b>function</b> <span class="symbol"><A NAME="ref_197_16">Wenclose</A></span> (<span class="symbol"><A NAME="ref_197_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_56_9">Window</A>; <span class="symbol"><A NAME="ref_197_40" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Y</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>; <span class="symbol"><A NAME="ref_197_51" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">X</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>)
<b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2099_9">Curses_Bool</A>;
<b>pragma</b> Import (C, Wenclose, "wenclose");
<b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_196_16">Wenclose</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_147_33">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_148_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_13">Y</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_148_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A>))
+ <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Wenclose</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_147_33">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_148_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_13">Y</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_148_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A>))
= <A HREF="terminal_interface-curses__ads.htm#ref_2101_4">Curses_Bool_False</A>
<b>then</b>
<b>return</b> False;
@@ -223,12 +224,12 @@
<b>end</b> <b>if</b>;
<b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_147_13">Enclosed_In_Window</A>;
- <b>function</b> <span class="symbol"><A NAME="ref_209_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_154_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_209_29" HREF="terminal_interface-curses-mouse__ads.htm#ref_154_29">Msec</A></span> : Natural := 200) <b>return</b> Natural
+ <b>function</b> <span class="symbol"><A NAME="ref_210_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_154_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_210_29" HREF="terminal_interface-curses-mouse__ads.htm#ref_154_29">Msec</A></span> : Natural := 200) <b>return</b> Natural
<b>is</b>
- <b>function</b> <span class="symbol"><A NAME="ref_211_16">Mouseinterval</A></span> (<span class="symbol"><A NAME="ref_211_31" HREF="terminal_interface-curses-mouse__adb.htm#ref_211_16">Msec</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>;
+ <b>function</b> <span class="symbol"><A NAME="ref_212_16">Mouseinterval</A></span> (<span class="symbol"><A NAME="ref_212_31" HREF="terminal_interface-curses-mouse__adb.htm#ref_212_16">Msec</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A>;
<b>pragma</b> Import (C, Mouseinterval, "mouseinterval");
<b>begin</b>
- <b>return</b> Natural (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_211_16">Mouseinterval</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_154_29">Msec</A>)));
+ <b>return</b> Natural (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_212_16">Mouseinterval</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_49_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_154_29">Msec</A>)));
<b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_154_13">Mouse_Interval</A>;
<b>end</b> <A HREF="terminal_interface__ads.htm#ref_43_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_48_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_45_35">Mouse</A>;
diff --git a/doc/html/ada/terminal_interface-curses-mouse__ads.htm b/doc/html/ada/terminal_interface-curses-mouse__ads.htm
index c7b563b..c4de5e5 100644
--- a/doc/html/ada/terminal_interface-curses-mouse__ads.htm
+++ b/doc/html/ada/terminal_interface-curses-mouse__ads.htm
@@ -144,11 +144,11 @@
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">getmouse()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_126_13">Get_Mouse</A>);
- <b>procedure</b> <span class="symbol"><A NAME="ref_130_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_170_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_130_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_170_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>;
- <span class="symbol"><A NAME="ref_131_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</A>;
- <span class="symbol"><A NAME="ref_132_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_172_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</A>;
- <span class="symbol"><A NAME="ref_133_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_173_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>;
- <span class="symbol"><A NAME="ref_134_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_174_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>);
+ <b>procedure</b> <span class="symbol"><A NAME="ref_130_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_130_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>;
+ <span class="symbol"><A NAME="ref_131_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_172_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</A>;
+ <span class="symbol"><A NAME="ref_132_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_173_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</A>;
+ <span class="symbol"><A NAME="ref_133_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_174_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>;
+ <span class="symbol"><A NAME="ref_134_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_175_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>);
<span class="comment"><EM>-- !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></span>
<span class="comment"><EM>-- may not be identical to window coordinates.</EM></span>
<span class="comment"><EM>-- Not Implemented: Get_Event only reports one event, the C library</EM></span>
@@ -156,19 +156,19 @@
<b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_130_14">Get_Event</A>);
<span class="comment"><EM>-- <A NAME="AFU_3">|</A></EM></span>
- <b>procedure</b> <span class="symbol"><A NAME="ref_142_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_183_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_142_27" HREF="terminal_interface-curses-mouse__adb.htm#ref_183_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>);
+ <b>procedure</b> <span class="symbol"><A NAME="ref_142_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_142_27" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">ungetmouse()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_142_14">Unget_Mouse</A>);
<span class="comment"><EM>-- <A NAME="AFU_4">|</A></EM></span>
- <b>function</b> <span class="symbol"><A NAME="ref_147_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_193_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_147_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_193_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_645_13">Standard_Window</A>;
- <span class="symbol"><A NAME="ref_148_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>) <b>return</b> Boolean;
+ <b>function</b> <span class="symbol"><A NAME="ref_147_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_147_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_645_13">Standard_Window</A>;
+ <span class="symbol"><A NAME="ref_148_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_195_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>) <b>return</b> Boolean;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">wenclose()</A></EM></span>
<span class="comment"><EM>-- But : use event instead of screen coordinates.</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_147_13">Enclosed_In_Window</A>);
<span class="comment"><EM>-- <A NAME="AFU_5">|</A></EM></span>
- <b>function</b> <span class="symbol"><A NAME="ref_154_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_154_29" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_29">Msec</A></span> : Natural := 200) <b>return</b> Natural;
+ <b>function</b> <span class="symbol"><A NAME="ref_154_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_210_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_154_29" HREF="terminal_interface-curses-mouse__adb.htm#ref_210_29">Msec</A></span> : Natural := 200) <b>return</b> Natural;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mouseinterval()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_154_13">Mouse_Interval</A>);
diff --git a/doc/html/ada/terminal_interface-curses_constants__ads.htm b/doc/html/ada/terminal_interface-curses_constants__ads.htm
index d948963..d0d54dd 100644
--- a/doc/html/ada/terminal_interface-curses_constants__ads.htm
+++ b/doc/html/ada/terminal_interface-curses_constants__ads.htm
@@ -36,8 +36,8 @@
<span class="comment"><EM>-- Version of the ncurses library from extensions(3NCURSES)</EM></span>
<span class="symbol"><A NAME="ref_21_4">NCURSES_VERSION_MAJOR</A></span> : <b>constant</b> := 6;
- <span class="symbol"><A NAME="ref_22_4">NCURSES_VERSION_MINOR</A></span> : <b>constant</b> := 2;
- <span class="symbol"><A NAME="ref_23_4">Version</A></span> : <b>constant</b> String := "6.2";
+ <span class="symbol"><A NAME="ref_22_4">NCURSES_VERSION_MINOR</A></span> : <b>constant</b> := 3;
+ <span class="symbol"><A NAME="ref_23_4">Version</A></span> : <b>constant</b> String := "6.3";
<span class="comment"><EM>-- Character non-color attributes from attr(3NCURSES)</EM></span>
diff --git a/doc/html/announce.html b/doc/html/announce.html
index 070f504..a6040c4 100644
--- a/doc/html/announce.html
+++ b/doc/html/announce.html
@@ -1,7 +1,7 @@
<!--
- $Id: announce.html,v 1.61 2020/02/09 21:26:51 tom Exp $
+ $Id: announce.html,v 1.66 2021/10/20 22:54:22 tom Exp $
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
@@ -29,13 +29,11 @@
****************************************************************************
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-
<html>
<head>
<meta name="generator" content=
- "HTML Tidy for HTML5 for Linux version 5.2.0">
-
- <title>Announcing ncurses 6.2</title>
+ "HTML Tidy for HTML5 for Linux version 5.6.0">
+ <title>Announcing ncurses 6.3</title>
<link rel="author" href="mailto:bug-ncurses@gnu.org">
<meta http-equiv="Content-Type" content=
"text/html; charset=us-ascii">
@@ -57,9 +55,8 @@
}
</style>
</head>
-
<body>
- <h1 class="no-header">Announcing ncurses 6.2</h1>
+ <h1 class="no-header">Announcing ncurses 6.3</h1>
<h2><a name="h2-overview" id="h2-overview">Overview</a></h2>
@@ -103,38 +100,33 @@
including</p>
<ul>
- <li><a href=
- "https://invisible-island.net/ncurses/man/captoinfo.1m.html"><span class="part-name">
- captoinfo</span></a>, a termcap conversion tool</li>
+ <li><a href="https://invisible-island.net/ncurses/man/captoinfo.1m.html"><span class=
+ "part-name">captoinfo</span></a>, a termcap conversion
+ tool</li>
- <li><a href=
- "https://invisible-island.net/ncurses/man/clear.1.html"><span class="part-name">
- clear</span></a>, utility for clearing the screen</li>
+ <li><a href="https://invisible-island.net/ncurses/man/clear.1.html"><span class=
+ "part-name">clear</span></a>, utility for clearing the
+ screen</li>
- <li><a href=
- "https://invisible-island.net/ncurses/man/infocmp.1m.html"><span class="part-name">
- infocmp</span></a>, the terminfo decompiler</li>
+ <li><a href="https://invisible-island.net/ncurses/man/infocmp.1m.html"><span class=
+ "part-name">infocmp</span></a>, the terminfo decompiler</li>
- <li><a href=
- "https://invisible-island.net/ncurses/man/tabs.1.html"><span class="part-name">
- tabs</span></a>, set tabs on a terminal</li>
+ <li><a href="https://invisible-island.net/ncurses/man/tabs.1.html"><span class=
+ "part-name">tabs</span></a>, set tabs on a terminal</li>
- <li><a href=
- "https://invisible-island.net/ncurses/man/tic.1m.html"><span class="part-name">
- tic</span></a>, the terminfo compiler</li>
+ <li><a href="https://invisible-island.net/ncurses/man/tic.1m.html"><span class=
+ "part-name">tic</span></a>, the terminfo compiler</li>
- <li><a href=
- "https://invisible-island.net/ncurses/man/toe.1m.html"><span class="part-name">
- toe</span></a>, list (table of) terminfo entries</li>
+ <li><a href="https://invisible-island.net/ncurses/man/toe.1m.html"><span class=
+ "part-name">toe</span></a>, list (table of) terminfo
+ entries</li>
- <li><a href=
- "https://invisible-island.net/ncurses/man/tput.1.html"><span class="part-name">
- tput</span></a>, utility for retrieving terminal capabilities
- in shell scripts</li>
+ <li><a href="https://invisible-island.net/ncurses/man/tput.1.html"><span class=
+ "part-name">tput</span></a>, utility for retrieving terminal
+ capabilities in shell scripts</li>
- <li><a href=
- "https://invisible-island.net/ncurses/man/tset.1.html"><span class="part-name">
- tset</span></a>, to initialize the terminal</li>
+ <li><a href="https://invisible-island.net/ncurses/man/tset.1.html"><span class=
+ "part-name">tset</span></a>, to initialize the terminal</li>
</ul>
<p>Full manual pages are provided for the library and tools.</p>
@@ -163,10 +155,10 @@
Notes</a></h2>
<p>These notes are for <span class="main-name">ncurses</span>
- 6.2, released <strong>February 12, 2020</strong>.</p>
+ 6.3, released <strong>October 21, 2021</strong>.</p>
<p>This release is designed to be source-compatible with
- <span class="main-name">ncurses</span> 5.0 through 6.1; providing
+ <span class="main-name">ncurses</span> 5.0 through 6.2; providing
extensions to the application binary interface (ABI). Although
the source can still be configured to support the <span class=
"main-name">ncurses</span> 5 ABI, the reason for the release is
@@ -178,47 +170,28 @@
this announcement.</p>
<p>The most <a href="#h3-bug-fixes">important
- bug-fixes/improvements</a> dealt with user-defined capabilities
- in terminal descriptions. The release notes also mention some
- other bug-fixes, but are focused on new features and improvements
- to existing features since <span class="main-name">ncurses</span>
- 6.1 release.</p>
+ bug-fixes/improvements</a> dealt with portability issues. The
+ release notes also mention some other bug-fixes, but are focused
+ on new features and improvements to existing features since
+ <span class="main-name">ncurses</span> 6.2 release.</p>
<h3><a name="h3-library" id="h3-library">Library improvements</a></h3>
<h4><a name="h4-new-library" id="h4-new-library">New features</a></h4>
- <p>There are several new features:</p>
+ <p>There are a few new features:</p>
<ul>
<li>
- <p><a href=
- "https://invisible-island.net/ncurses/man/form_field_opts.3x.html">
- O_EDGE_INSERT_STAY</a> tells the form library to optionally
- delay cursor movement on a field edge/boundary</p>
- </li>
-
- <li>
- <p><a href=
- "https://invisible-island.net/ncurses/man/form_field_opts.3x.html">
- O_INPUT_FIELD</a> extension to form library allows a dynamic
- field to shrink if the new limit is smaller than the current
- field size.</p>
+ <p>A new (experimental) driver, for the Windows Terminal
+ configuration is provided.</p>
</li>
<li>
- <p>added <a href=
- "https://invisible-island.net/ncurses/man/curs_memleaks.3x.html">
- exit_curses</a> and <a href=
- "https://invisible-island.net/ncurses/man/curs_memleaks.3x.html">
- exit_terminfo</a> to replace internal symbols for
- leak-checking.</p>
- </li>
-
- <li>
- <p>added <a href=
- "https://invisible-island.net/ncurses/man/curs_trace.3x.html#h3-Functions">
- curses_trace</a>, to replace trace().</p>
+ <p>A script is provided which enables <a href=
+ "https://invisible-island.net/ncurses/ncurses-openbsd.html">OpenBSD</a> users to
+ upgrade their system to use ncurses 6.3 (OpenBSD developers
+ are also invited to do this).</p>
</li>
</ul>
@@ -227,74 +200,16 @@
<ul>
<li>
- <p>mouse decoding now handles shift/control/alt logic when
- decoding xterm's 1006 mode</p>
- </li>
-
- <li>
- <p>ncurses now defines a limit for <a href=
- "https://invisible-island.net/ncurses/man/curs_getstr.3x.html">
- wgetnstr</a>, <a href=
- "https://invisible-island.net/ncurses/man/curs_get_wstr.3x.html">
- wgetn_wstr</a> when length is negative or &ldquo;too
- large&rdquo;.</p>
- </li>
-
- <li>reordered loop-limit checks in <a href=
- "https://invisible-island.net/ncurses/man/curs_insstr.3x.html">winsnstr</a>
- in case the string has no terminating null and only the number
- of characters is used.</li>
-
- <li>
- <p>there is now no buffer-size limit when reading the
- <a href="https://invisible-island.net/ncurses/man/ncurses.3x.html#h3-TERMCAP">
- <tt>$TERMCAP</tt></a> variable.</p>
- </li>
-
- <li>
- <p>the <a href=
- "https://invisible-island.net/ncurses/man/ncurses.3x.html#h3-TERMCAP">
- <tt>$TERMCAP</tt></a> variable may be interpreted as a
- fallback to a terminfo entry</p>
+ <p>modify lib_mouse.c to check for out-of-range button
+ numbers, convert those to position reports.</p>
</li>
<li>
- <p><a href=
- "https://invisible-island.net/ncurses/man/curs_terminfo.3x.html#h3-Output-Functions">
- <tt>mvcur</tt></a> now decides whether to use hard-tabs,
- using <strong><tt>xt</tt></strong>,
- <strong><tt>tbc</tt></strong> and
- <strong><tt>hts</tt></strong> as clues.</p>
- </li>
-
- <li>
- <p>extended colors are improved by modifying an internal call
- to <a href=
- "https://invisible-island.net/ncurses/man/curs_terminfo.3x.html#h3-Output-Functions">
- <tt>vid_puts</tt></a> to pass extended color pairs e.g., from
- <tt>tty_update.c</tt> and <tt>lib_mvcur.c</tt></p>
- </li>
-
- <li>
- <p id="getenv-fixes">the initialization functions now avoid
- relying upon persistent data for the result from <a href=
- "#getenv-check"><tt>getenv</tt></a></p>
- </li>
-
- <li>
- <p>scrolling is improved:</p>
-
- <ul>
- <li>a limit check in <tt>newline_forces_scroll</tt> handles
- the case where the row is inside scroll-margins, but not at
- the end.</li>
-
- <li>
- <p>improved loop limits in <tt>_nc_scroll_window</tt>
- handle a case where the scrolled data is a pad which is
- taller than the window.</p>
- </li>
- </ul>
+ <p>add sp-funcs for <a href=
+ "https://invisible-island.net/ncurses/man/curs_termattrs.3x.html#h3-erasechar_-erasewchar">
+ erasewchar</a>, <a href=
+ "https://invisible-island.net/ncurses/man/curs_termattrs.3x.html#h3-killchar_-killwchar">
+ killwchar</a>.</p>
</li>
</ul>
@@ -304,74 +219,35 @@
<p>These are revised features:</p>
<ul>
- <li>
- <p>used &ldquo;<tt>const</tt>&rdquo; in some prototypes
- rather than <tt>NCURSES_CONST</tt> where X/Open Curses was
- updated to do this, e.g., <tt>wscanw</tt>, <tt>newterm</tt>,
- the terminfo interface. Also use &ldquo;<tt>const</tt>&rdquo;
- for consistency in the termcap interface, which was withdrawn
- by X/Open Curses in Issue 5 (2007). As of Issue 7, X/Open
- Curses still lacks &ldquo;<tt>const</tt>&rdquo; for certain
- return values, e.g., <a href=
- "https://invisible-island.net/ncurses/man/curs_util.3x.html#h3-keyname_key_name">
- keyname</a>.</p>
- </li>
-
- <li>
- <p>modified <a href=
- "https://invisible-island.net/ncurses/man/curs_bkgd.3x.html#h3-bkgd">
- <tt>wbkgd</tt></a> and <a href=
- "https://invisible-island.net/ncurses/man/curs_bkgrnd.3x.html#h3-bkgrnd">
- <tt>wbkgrnd</tt></a> to improve compatibility with SVr4
- curses, changing the way the window rendition is updated when
- the background character is modified</p>
- </li>
-
- <li>
- <p>improved terminfo write/read by modifying the fourth item
- of the extended header to denote the number of valid strings
- in the extended string table (see <a href=
- "https://invisible-island.net/ncurses/man/term.5.html#h3-EXTENDED-STORAGE-FORMAT">
- term(5)</a>).</p>
- </li>
-
- <li>
- <p>modified the initialization checks for mouse so that the
- <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sm_1006"><tt>xterm+sm+1006</tt></a>
- block will work with terminal descriptions not mentioning
- <em>xterm</em>.</p>
- </li>
+ <li>modify wgetnstr, wgetn_wstr to improve compatibility with
+ SVr4 curses in its treatment of interrupt and quit
+ characters</li>
</ul>
<p>These were done to limit or ultimately deprecate features:</p>
<ul>
<li>
- <p>deprecated <a href=
- "https://invisible-island.net/ncurses/NEWS.html#t970831">safe-sprintf</a>,
- since the <tt>vsnprintf</tt> function, which does what was
- needed, was standardized long ago.</p>
- </li>
+ <p>mark wgetch-events feature as deprecated.</p>
- <li>
- <p>marked <a href=
- "https://invisible-island.net/ncurses/man/curs_printw.3x.html#h3-PORTABILITY">
- <tt>vwprintw</tt></a> and <tt>vwscanw</tt> as deprecated;
- recommend using <a href=
- "https://invisible-island.net/ncurses/man/curs_printw.3x.html">
- <tt>vw_printw</tt></a> and <tt>vw_scanw</tt>,
- respectively.</p>
- </li>
+ <ul>
+ <li>
+ <p>prevent <tt>KEY_EVENT</tt> from appearing in
+ <tt>curses.h</tt> unless the configure option
+ <code>--enable-wgetch-events</code> is used.</p>
+ </li>
- <li>
- <p>added deprecation warnings for internal functions called
- by older versions of <a href=
- "https://invisible-island.net/ncurses/tack.html">tack</a>.</p>
+ <li>
+ <p>modify <tt>MKkey_defs.sh</tt> to hide ncurses'
+ definition of <tt>KEY_EVENTS</tt> to reduce <em>Visual
+ Studio C++</em> redefinition warnings.</p>
+ </li>
+ </ul>
</li>
<li>
- <p>removed unused <tt>_nc_import_termtype2</tt> function.</p>
+ <p>reduce build-warnings by excluding ncurses-internals from
+ deprecation warnings.</p>
</li>
</ul>
@@ -379,102 +255,42 @@
<ul>
<li>
- <p>check parameter of <a href=
- "https://invisible-island.net/ncurses/man/curs_threads.3x.html">
- set_escdelay</a>, return ERR if negative.</p>
- </li>
-
- <li>
- <p>check parameter of <a href=
- "https://invisible-island.net/ncurses/man/curs_threads.3x.html">
- set_tabsize</a>, return ERR if not greater than zero</p>
- </li>
-
- <li>
- <p>correct a status-check in _nc_read_tic_entry() so that if
- reading a hex/b64 <a href=
- "https://invisible-island.net/ncurses/man/ncurses.3x.html#h3-TERMINFO">
- <tt>$TERMINFO</tt></a>, and the <a href=
- "https://invisible-island.net/ncurses/man/ncurses.3x.html#h3-TERM">
- <tt>$TERM</tt></a> does not match, fall-through to the
- compiled-in search list.</p>
- </li>
-
- <li>
- <p>amend check for <a href=
- "https://invisible-island.net/ncurses/man/terminfo.5.html#h3-Predefined-Capabilities">
- <tt>repeat_char</tt></a> to handle a case where setlocale()
- was called after <a href=
- "https://invisible-island.net/ncurses/man/curs_initscr.3x.html">
- <tt>initscr</tt></a></p>
- </li>
-
- <li>
- <p>move macro for <a href=
- "https://invisible-island.net/ncurses/man/curs_touch.3x.html">
- <tt>is_linetouched</tt></a> inside
- <strong><tt>NCURSES_NOMACROS</tt></strong>
- <em><tt>ifndef</tt></em>.</p>
- </li>
-
- <li>
- <p>use <tt>_nc_copy_termtype2</tt> rather than direct
- assignment in <a href=
- "https://invisible-island.net/ncurses/man/curs_terminfo.3x.html#h3-Initialization">
- setupterm</a>, in case it is called repeatedly using fallback
- terminfo descriptions</p>
- </li>
-
- <li>
- <p>improve workaround for Solaris wcwidth versus line-drawing
- characters</p>
+ <p>drop symbols <em>GCC_PRINTF</em> and <em>GCC_SCANF</em>
+ from &lt;curses.h&gt;, to simplify use.</p>
</li>
<li>
- <p>add checks in <a href=
- "https://invisible-island.net/ncurses/man/resizeterm.3x.html">
- <tt>repair_subwindows</tt></a> to keep the current position
- and scroll-margins inside the resized subwindow.</p>
+ <p>apply gcc format attribute to prototypes which use a
+ va_list parameter rather than a &ldquo;<tt>...</tt>&rdquo;
+ variable-length parameter list.</p>
</li>
<li>
- <p>correct a buffer-limit in <tt>write_entry.c</tt> for
- systems that use caseless filenames.</p>
+ <p>modify &lt;term.h&gt; so that it is not necessary to
+ include &lt;curses.h&gt; before &lt;term.h&gt;.</p>
</li>
<li>
- <p>improved build-time utility <em>report_offsets</em>:</p>
-
- <ul>
- <li>
- <p>add categories, e.g., "w" for wide-character, "t" for
- threads to make the report more readable. Reorganized the
- structures reported to make the categories more
- apparent.</p>
- </li>
-
- <li>
- <p>add <tt>NCURSES_GLOBALS</tt> and
- <tt>NCURSES_PRESCREEN</tt> to report to show how similar
- the different <em>libtinfo</em> configurations are.</p>
- </li>
- </ul>
+ <p>provide for wide-characters as background character in
+ wbkgrnd</p>
</li>
<li>
- <p>modified some header files to ensure that those include
- necessary files except for the previously-documented
- cases</p>
+ <p>improve parameter-checking for tparm, adding function
+ _nc_tiparm() to handle the most-used case, which accepts only
+ numeric parameters.</p>
</li>
<li>
- <p>added some traces in initialization to show whether a
- fallback entry is used.</p>
+ <p>use return-value from <em>vsnprintf</em> to reallocate as
+ needed to allow for buffers larger than the screen size.</p>
</li>
<li>
- <p>made minor optimization to reduce calls to
- _nc_reserve_pairs</p>
+ <p>add another <em>fflush(stdout)</em> in <em>_nc_flush</em>
+ to handle time-delays in the middle of strings such as flash
+ when the application uses low-level calls rather than
+ curses.</p>
</li>
</ul>
@@ -482,210 +298,200 @@
<ul>
<li>
- <p>fix a special case in <tt>PutAttrChar</tt> where a cell is
- marked as alternate-character set, but the terminal does not
- actually support the given graphic character. This would
- happen in an older terminal such as <em>vt52</em>, which
- lacks most line-drawing capability.</p>
+ <p>add a check to guard against <em>repeat_char</em> emitting
+ digits which could be interpreted as BSD-style padding when
+ <tt>--enable-bsdpad</tt> is configured.</p>
</li>
<li>
- <p>corrected flag for "seq" method of db 1.8.5 interface,
- needed by toe on some of the BSDs.</p>
- </li>
-
- <li>
- <p>modify comparison in make_hash.c to correct a special case
- in collision handling for Caps-hpux11</p>
- </li>
-
- <li>
- <p>add extended_slk_color{,_sp} symbols to the appropriate
- package/*.{map,sym} files</p>
- </li>
-
- <li>
- <p>modify lib_setup to avoid calling pthread_self() without
- first verifying that the address is valid, i.e., for weak
- symbols</p>
- </li>
-
- <li>
- <p>add a couple of broken-linker symbols to the list of
- versioned symbols to help with link-time optimization versus
- weak symbols.</p>
+ <p>check for screen size-change in <a href=
+ "https://invisible-island.net/ncurses/man/curs_scr_dump.3x.html">scr_init</a> and
+ <a href=
+ "https://invisible-island.net/ncurses/man/curs_scr_dump.3x.html">scr_restore</a>, in
+ case a screen dump does not match the current screen
+ dimensions</p>
</li>
</ul>
<h3><a name="h3-programs" id="h3-programs">Program
improvements</a></h3>
- <p>Several improvements were made to the utility programs:</p>
+ <p id="h4-utilities">Several improvements were made to the
+ utility programs:</p>
<dl>
- <dt><span class="part-name">clear</span>
+ <dt><span class="part-name"><a href=
+ "https://invisible-island.net/ncurses/man/tabs.1.html">tabs</a></span>
</dt>
<dd>
<ul>
- <li>improved logic for clearing with the <em>E3</em>
- extension, in case the terminal scrolls content onto its
- saved-lines before actually clearing the display, by
- clearing the saved-lines after clearing the display</li>
+ <li>
+ <p>implement &ldquo;<tt>+m</tt>&rdquo; option</p>
+ </li>
</ul>
</dd>
- <dt><span class="part-name">infocmp</span>
+ <dt><span class="part-name"><a href=
+ "https://invisible-island.net/ncurses/man/tic.1m.html">tic</a></span>
</dt>
<dd>
<ul>
- <li>omit filtering of &ldquo;<tt>OTxx</tt>&rdquo; names
- which are used for obsolete capabilities, when the output
- is sorted by long-names. This change helps when making a
- table of the short/long capability names.</li>
- </ul>
- </dd>
+ <li>
+ <p>add check for duplicate &ldquo;<tt>use=</tt>&rdquo;
+ clauses.</p>
+ </li>
- <dt><span class="part-name">tic</span>
- </dt>
+ <li>
+ <p>add check to report instances where <tt>tparm</tt>
+ would detect an error in an expression.</p>
+ </li>
- <dd>
- <ul>
- <li>added check for consistent alternate character set
- capabilities.</li>
+ <li>
+ <p>add user-defined capabilities from <em>mintty</em> to
+ <tt>Caps-ncurses</tt>, for checking consistency.</p>
+ </li>
- <li>added check for paired <tt>indn</tt>/<tt>rin</tt>.</li>
+ <li>
+ <p>improve warning when oc/op do not mention SGR 39/49
+ for <em>xterm</em> compatible <code>XT</code> flag.</p>
+ </li>
- <li>added check for terminals with <tt>parm_dch</tt> vs
- <tt>parm_ich</tt>.</li>
+ <li>
+ <p>improve checks for number of parameters of
+ <code>smglp</code>, <code>smgrp</code>,
+ <code>smgtp</code>, and <code>smgbp</code>.</p>
+ </li>
- <li>added check for the case where
- <tt>setf</tt>/<tt>setb</tt> are given using different
- strings, but provide identical results to
- <tt>setaf</tt>/<tt>setab</tt>.</li>
+ <li>
+ <p>improve &ldquo;<tt>-c</tt>&rdquo; option to validate
+ the number and type of parameters and compare against
+ expected number/type before deciding which set of
+ parameter-lists to use in tparm calls.</p>
+ </li>
- <li>corrected check for <tt>ich1</tt>.</li>
+ <li>
+ <p>improve check for errors detected in
+ <code>tparm</code>.</p>
+ </li>
- <li>changed a too-large terminal entry from a fatal error
- to a warning.</li>
- </ul>
- </dd>
+ <li>
+ <p>improve format of output, to ensure that the messages
+ contain only printable text.</p>
+ </li>
- <dt><span class="part-name">toe</span>
- </dt>
+ <li>
+ <p>modify to eliminate unnecessary
+ &ldquo;<code>\</code>&rdquo; to escape
+ &ldquo;<code>:</code>&rdquo; in terminfo format.</p>
+ </li>
- <dd>
- <ul>
- <li>ignores any hex/b64 <tt>$TERMINFO</tt> value in the
- list of terminfo databases.</li>
+ <li>
+ <p>remove check that assumes that none or both
+ parameterized and non-parameterized margin-setting
+ capabilities are present.</p>
+ </li>
</ul>
</dd>
- <dt><span class="part-name">tset</span>
+ <dt><span class="part-name"><a href=
+ "https://invisible-island.net/ncurses/man/toe.1m.html">toe</a></span>
</dt>
<dd>
<ul>
- <li>replace check in <span class="part-name">reset</span>
- command for obsolete &ldquo;<tt>pt</tt>&rdquo; capability
- using <tt>tbc</tt> and <tt>hts</tt> capabilities as
- clues</li>
-
- <li>modify <span class="part-name">reset</span> to allow
- for tabstops at intervals other than 8.</li>
-
- <li>change <span class="part-name">reset</span>'s behavior
- for margins to simply clear soft-margins if possible,
- rather than clearing and then setting them according to the
- terminal's width.</li>
+ <li>
+ <p>modify output of &ldquo;<tt>toe -as</tt>&rdquo; to
+ show first description found rather than the last.</p>
+ </li>
+
+ <li>
+ <p>add a check to ensure that a &ldquo;termcap
+ file&rdquo; is text rather than binary.</p>
+ </li>
</ul>
</dd>
- <dt><span class="part-name">tput</span>
+ <dt><span class="part-name"><a href=
+ "https://invisible-island.net/ncurses/man/tput.1.html">tput</a></span>
</dt>
<dd>
<ul>
- <li>add &ldquo;<tt>x</tt>&rdquo; to <tt>getopt</tt> string
- so that &ldquo;<tt>tput&nbsp;-x&nbsp;clear</tt>&rdquo;
- works.</li>
- </ul>
- </dd>
- </dl>
-
- <p>Several changes were made to the generated ncurses*config
- scripts and the analogous &ldquo;<tt>.pc</tt>&rdquo; files to
- reduce differences between the configurations they report:</p>
+ <li>
+ <p>modify to allow multiple commands per line.</p>
+ </li>
- <ul>
- <li>
- <p>modified the ncurse*-config and pc-files to more closely
- match for the <tt>-I</tt> and <tt>-l</tt> options.</p>
- </li>
+ <li>
+ <p>improve parameter-checking by analyzing all extended
+ string capabilities, e.g., as used in the <code>Cs</code>
+ and <code>Ms</code> capabilities of the <em>tmux</em>
+ description.</p>
+ </li>
- <li>
- <p>filtered out linker-specs from the <tt>--libs</tt>
- report.</p>
- </li>
+ <li>
+ <p>make warning messages consistently using alias names
+ when those are used, rather than the underlying program's
+ name.</p>
+ </li>
- <li>
- <p>amended the ncurses*-config and pc-files to take into
- account the rpath hack which differed between those
- files.</p>
- </li>
+ <li>
+ <p>improve usage message for aliases such as
+ <em>clear</em>, by eliminating <em>tput</em>-specific
+ portions.</p>
+ </li>
- <li>
- <p>modified generated ncurses*config and ncurses.pc,
- ncursesw.pc, etc., to list helper libraries such as gpm for
- static linking.</p>
- </li>
- </ul>
+ <li>
+ <p>modify initialization to avoid opening
+ <tt>/dev/tty</tt> for cases other than
+ <em>reset/init</em>, e.g., for <em>clear</em>.</p>
+ </li>
+ </ul>
+ </dd>
+ </dl>
<h4><a name="h4-examples" id="h4-examples">Examples</a></h4>
<p>Along with the library and utilities, improvements were made
to the <a href=
- "https://invisible-island.net/ncurses/ncurses-examples.html">ncurses-examples</a>.
- Most of this activity aimed at improving the test-packages. A few
- changes are more generally useful, e.g., for the main ncurses
+ "https://invisible-island.net/ncurses/ncurses-examples.html">ncurses-examples</a>. Most of
+ this activity aimed at improving the test-packages. A few changes
+ are more generally useful, e.g., for the main ncurses
test-program, and for analyzing traces using the
<em>tracemunch</em> script:</p>
<ul>
<li>
- <p>improve recovery from error when reading command-character
- in <tt>test/ncurses.c</tt>, showing the relevant error
- message and not exiting on EINTR.</p>
+ <p>add &ldquo;<tt>-r</tt>&rdquo; option to the <em>dots</em>
+ test-programs, to help with scripting a performance
+ comparison.</p>
</li>
<li>
- <p>improve <em>tracemunch</em>, by keeping track of
- <tt>TERMINAL*</tt> values, and if tracing was first turned on
- after initialization, attempt to show distinct screen, window
- and terminal names anyway.</p>
+ <p>build-fix for <em>test_opaque</em>, for configurations
+ without opaque curses structs, e.g., ncurses 5.7.</p>
</li>
<li>
- <p>modify <em>tracemunch</em> to accept filename parameters
- in addition to use as a pipe/filter.</p>
+ <p>improve <em>tracemunch</em> logic for "RUN"
+ compaction.</p>
</li>
<li>
- <p>update <em>tracemunch</em> to work with <em>perl
- 5.26.2</em>, which changed the rules for escaping regular
- expressions.</p>
+ <p>improve <em>tracemunch</em>'s coverage of form/menu/panel
+ libraries.</p>
</li>
<li>
- <p>add some checks in <em>tracemunch</em> for undefined
- variables.</p>
+ <p>improve <em>tracemunch</em>'s checking/reporting the type
+ for the first parameter, e.g., "WINDOW*" rather than
+ "#1".</p>
</li>
<li>
- <p>modify <tt>TurnOn</tt>/<tt>TurnOff</tt> macros (in
- lib_vidattr.c and lib_vid_attr.c) to avoid expansion of
- &ldquo;<tt>CUR</tt>&rdquo; in trace.</p>
+ <p>modify <em>tracemunch</em> and the panel library to show
+ readable traces for panel- and user-pointers.</p>
</li>
</ul>
@@ -693,136 +499,131 @@
examples:</p>
<dl>
- <dt><span class="part-name">color_content</span>
- </dt>
-
- <dd>Demonstrate the <tt>color_content</tt> and
- <tt>extended_color_content</tt> functions.</dd>
-
- <dt><span class="part-name">demo_tabs</span>
- </dt>
-
- <dd>A simple demo of tabs in curses.</dd>
-
- <dt><span class="part-name">dump_window</span>
- </dt>
-
- <dd>A portable curses screen-dump, used to compare ncurses
- screen contents with Solaris.</dd>
-
- <dt><span class="part-name">pair_content</span>
+ <dt><span class="part-name"><em>back_ground</em></span>
</dt>
- <dd>Demonstrate the <tt>pair_content</tt> and
- <tt>extended_pair_content</tt> functions.</dd>
+ <dd>to exercise the wide-character background functions.</dd>
- <dt><span class="part-name">report_hashing</span>
+ <dt><span class="part-name"><em>move_field</em></span>
</dt>
- <dd>Check hash-tables used for terminfo and termcap names.</dd>
+ <dd>to demonstrate <a href=
+ "https://invisible-island.net/ncurses/man/form_field.3x.html">move_field</a>, and a stub
+ for a corresponding demo of <a href=
+ "https://invisible-island.net/ncurses/man/form_field_new.3x.html">dup_field</a>.</dd>
- <dt><span class="part-name">parse_rgb</span>
+ <dt><span class="part-name"><em>test_tparm</em></span>
</dt>
- <dd>Sample implementation of the ncurses RGB extension from
- <a href=
- "https://invisible-island.net/ncurses/man/user_caps.5.html">user_caps.5</a>,
- used in <em>picsmap</em> and <em>savescreen</em> programs.</dd>
+ <dd>for checking <em>tparm</em> changes.</dd>
</dl>
- <p>A variety of improvements were made to existing programs, both
- new features as well as options added to make the set of programs
- more consistent.</p>
-
- <ul>
- <li>
- <p>add &ldquo;<tt>-l</tt>&rdquo; option to test/background,
- to dump screen contents in a form that lets different curses
- implementations be compared.</p>
- </li>
-
- <li>
- <p>add &ldquo;<tt>@</tt>&rdquo; command to test/ncurses
- F-test, to allow rapid jump to different character pages.</p>
- </li>
-
- <li>
- <p>added enum, regex examples to test/demo_forms</p>
- </li>
-
- <li>
- <p>amend Scaled256() macro in test/picsmap.c to cover the
- full range 0..1000</p>
- </li>
-
- <li>
- <p>corrected pathname used in Ada95 sample programs for
- <tt>explain.txt</tt>, to work with test-packages, and used an
- awk script to split the resulting pathname when it would be
- too long for a single line.</p>
- </li>
-
- <li>
- <p>ignore interrupted system-call in test/ncurses's
- command-line, e.g., if the terminal were resized.</p>
- </li>
-
- <li>
- <p>improved ifdef's for <tt>TABSIZE</tt> variable, to help
- with AIX/HPUX ports.</p>
- </li>
- </ul>
-
<h3><a name="h3-database" id="h3-database">Terminal database</a></h3>
<p>There are several new terminal descriptions:</p>
<blockquote style="word-break:keep-all">
- <p><tt>alacritty</tt>, <tt>domterm</tt>, <tt>kitty</tt>,
- <tt>mintty</tt>, <tt>mintty-direct</tt>, <tt>ms-terminal</tt>,
- <tt>n7900</tt>, <tt>nsterm-build309</tt>,
- <tt>nsterm-direct</tt>, <tt>screen5</tt>, <tt>ti703</tt>,
- <tt>ti707</tt>, <tt>ti703-w</tt>, <tt>ti707-w</tt>
- <tt>vscode</tt>, <tt>vscode-direct</tt>, <tt>xterm-mono</tt>,
- <tt>xterm.js</tt></p>
+ <p><tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-absolute">absolute</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-att610_cvis">att610+cvis</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-foot">foot</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-foot-direct">foot-direct</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-hp98550-color">hp98550-color</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-hpterm-color2">hpterm-color2</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-hterm">hterm</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-hterm-256color">hterm-256color</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-linux-s">linux-s</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-putty_keypad">putty+keypad</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-putty_screen">putty+screen</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-putty-screen">putty-screen</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-screen.linux-s">screen.linux-s</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-scrt/securecrt">scrt/securecrt</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-tmux-direct">tmux-direct</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt220_cvis">vt220+cvis</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt220_cvis8">vt220+cvis8</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt220_pcedit">vt220+pcedit</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt220_vtedit">vt220+vtedit</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt220-base">vt220-base</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt52_keypad">vt52+keypad</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm_256color2">xterm+256color2</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm_88color2">xterm+88color2</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm-direct16">xterm-direct16</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm-direct256">xterm-direct256</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm_nofkeys">xterm+nofkeys</a></tt>,
+ and <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm_nopcfkeys">xterm+nopcfkeys</a></tt>.</p>
</blockquote>
<p>There are many changes to existing terminal descriptions. Some
were updates to several descriptions:</p>
<ul>
- <li>use <a href=
- "/ncurses/terminfo.src.html#tic-ansi_rep"><tt>ansi+rep</tt></a>
- in a dozen places</li>
-
- <li>add rs1 to konsole, mlterm</li>
-
- <li>improve several flash capabilities with trailing mandatory
- delays</li>
+ <li>correct use-ordering in some <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm-direct">xterm-direct</a>
+ flavors</li>
+
+ <li>fix some sgr inconsistencies in <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-d230c">d230c</a>, <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-ibm6153">ibm6153</a>,
+ <a href="https://invisible-island.net/ncurses/terminfo.src.html#tic-ibm6154">ibm6154</a>,
+ <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-ncrvt100an">ncrvt100an</a></li>
- <li>drop <tt>ich1</tt> from <tt>rxvt-basic</tt>, <tt>Eterm</tt>
- and <tt>mlterm</tt> to improve compatibility with old
- non-curses programs</li>
+ <li>improve <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt50h">vt50h</a> and <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt52">vt52</a> based on
+ DECScope manual</li>
- <li>add/use <a href=
- "/ncurses/terminfo.src.html#tic-xterm_keypad"><tt>xterm+keypad</tt></a>
- in <tt>xterm-new</tt></li>
+ <li>use <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-hp_arrows">hp+arrows</a> in a
+ few places</li>
<li>use <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sl-twm"><tt>xterm+sl-twm</tt></a>
- for consistency, nine places</li>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-hp_pfk-cr">hp+pfk-cr</a> in a
+ few places</li>
- <li>improve <em>xm</em> example in <a href=
- "/ncurses/terminfo.src.html#tic-xterm_x11mouse">xterm+x11mouse</a>
- and <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sm_1006">xterm+sm_1006</a>.</li>
+ <li>use <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt220_cvis">vt220+cvis</a> in
+ <tt>st</tt>, <tt>terminology</tt>, <tt>termite</tt> since they
+ ignore blinking-cursor detail in <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-att610_cvis">att610+cvis</a></li>
</ul>
<p>while others affected specific descriptions. These were
retested, to take into account changes by their developers:</p>
<blockquote>
- <p><tt>terminator</tt>, <tt>st</tt></p>
+ <p><tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-kitty_common">kitty+common</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-mlterm3">mlterm3</a></tt>,
+ <tt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-ms-terminal">ms-terminal</a></tt></p>
</blockquote>
<p>while these are specific fixes based on reviewing
@@ -831,156 +632,133 @@
<dl>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-adds200">adds200</a>:</dt>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-aaa_dec">aaa+dec</a>,
+ aaa+rv</dt>
- <dd>
- <ul>
- <li>fix typo</li>
- </ul>
- </dd>
+ <dd>correct rmacs/smacs</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-gnome-256color">gnome-256color</a>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-aaa_rv">aaa+rv</a>
</dt>
- <dd>
- <ul>
- <li>base entry on "gnome", not "vte", for consistency</li>
- </ul>
- </dd>
+ <dd>correct sgr</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-interix">interix</a>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-icl6404">icl6404</a>
</dt>
- <dd>
- <ul>
- <li>trim unnecessary setf/setb</li>
- </ul>
- </dd>
+ <dd>correct csr</dd>
+
+ <dt><a href="https://invisible-island.net/ncurses/terminfo.src.html#tic-kitty">kitty</a>
+ </dt>
+
+ <dd>use att610+cvis, xterm+tmux and ansi+enq</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-linux-16color">linux-16color</a>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-konsole-base">konsole-base</a>
</dt>
- <dd>
- <ul>
- <li>accommodate <a href=
- "https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00061.html">
- Linux console driver</a> incompatibility introduced in
- early 2018</li>
- </ul>
- </dd>
+ <dd>re-enable "bel"</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-nsterm-256color">nsterm-256color</a>:</dt>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-linux2.6">linux2.6</a>
+ </dt>
- <dd>
- <ul>
- <li>add nsterm-build309 to replace nsterm-256color,
- assigning the latter as an alias of nsterm, to make mouse
- work with nsterm-256color</li>
- </ul>
- </dd>
+ <dd>fix pound-sign mapping in acsc</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-regent40">regent40</a>:</dt>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-linux3.0">linux3.0</a>
+ </dt>
- <dd>
- <ul>
- <li>renumber function-keys to match manual</li>
- </ul>
- </dd>
+ <dd>modify to reflect default mapping of shift-tab by kbd
+ 1.14</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-regent60">regent60</a>:</dt>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-pccons">pccons</a>
+ </dt>
- <dd>
- <ul>
- <li>add cd (clr_eos)</li>
+ <dd>fill in some missing pieces, to make it comparable to the
+ vt220 entry</dd>
- <li>corrected acsc</li>
+ <dt><a href="https://invisible-island.net/ncurses/terminfo.src.html#tic-putty">putty</a>
+ </dt>
- <li>add shifted function-keys</li>
- </ul>
- </dd>
+ <dd>use vt100+fnkeys, add rep</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-tvi950">tvi950</a>:</dt>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-screen">screen</a>
+ </dt>
- <dd>
- <ul>
- <li>added function-key definitions to agree with Televideo
- 950 manual</li>
+ <dd>use vt100+enq</dd>
- <li>corrected acsc</li>
+ <dt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-terminator">terminator</a>
+ </dt>
- <li>remove bogus kf0</li>
+ <dd>corrected tsl capability</dd>
- <li>add bel</li>
- </ul>
- </dd>
+ <dt><a href="https://invisible-island.net/ncurses/terminfo.src.html#tic-ti916">ti916</a>
+ </dt>
- <dt><a href=
- "/ncurses/terminfo.src.html#tic-tvi955">tvi955</a>:</dt>
+ <dd>correct cup</dd>
- <dd>
- <ul>
- <li>fix typo</li>
- </ul>
- </dd>
+ <dt><a href="https://invisible-island.net/ncurses/terminfo.src.html#tic-tmux">tmux</a>
+ </dt>
- <dt><a href=
- "/ncurses/terminfo.src.html#tic-vi200">vi200</a>:</dt>
+ <dd>change kbs to ^?</dd>
- <dd>
- <ul>
- <li>add acsc string, including right/down-arrow</li>
- </ul>
- </dd>
+ <dt><a href="https://invisible-island.net/ncurses/terminfo.src.html#tic-vt220">vt220</a>
+ </dt>
+
+ <dd>use vt220+cvis</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-wy50">wy50</a>:</dt>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-vt420_lrmm">vt420+lrmm</a>
+ </dt>
- <dd>
- <ul>
- <li>corrected acsc</li>
- </ul>
- </dd>
+ <dd>add smglp and smgrp</dd>
+
+ <dt><a href="https://invisible-island.net/ncurses/terminfo.src.html#tic-vt420">vt420</a>
+ </dt>
- <dt><a href="/ncurses/terminfo.src.html#tic-wy50">wy50</a> and
- <a href="/ncurses/terminfo.src.html#tic-wy60">wy60</a>:</dt>
+ <dd>use vt420+lrmm</dd>
- <dd>
- <ul>
- <li>add shifted function-keys as kF1 to kF16</li>
- </ul>
- </dd>
+ <dt><a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm-new">xterm-new</a>
+ </dt>
+
+ <dd>add nel</dd>
<dt><a href=
- "/ncurses/terminfo.src.html#tic-xterm_x11hilite">xterm+x11hilite</a>:</dt>
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm-vt52">xterm-vt52</a>
+ </dt>
- <dd>
- <ul>
- <li>eliminate unused <em>p5</em> parameter.</li>
- </ul>
- </dd>
+ <dd>use vt52+keypad</dd>
</dl>
<p>A few entries use extensions (user-defined terminal
capabilities):</p>
<ul>
- <li>use <a href=
- "/ncurses/terminfo.src.html#tic-xterm_sm_1006"><tt>xterm+sm+1006</tt></a>
- (aka &ldquo;SGR 1006 mouse&rdquo;) for konsole-base and
- putty</li>
+ <li>add shifted Linux console keys in <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-linux_sfkeys">linux+sfkeys</a>
+ entry for <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-screen.linux">screen.linux</a></li>
- <li>add <em><tt>Smol/Rmol</tt></em> user-defined capability to
- <tt>tmux</tt> and <tt>vte-2018</tt></li>
+ <li>add Smulx to <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-alacritty">alacritty</a></li>
- <li>add <em><tt>Smulx</tt></em> user-defined capability to
- <tt>tmux</tt>, <tt>vte-2018</tt></li>
+ <li>add kbeg to <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm_keypad">xterm+keypad</a>
+ to accommodate termcap applications</li>
+
+ <li>add extensions in <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-xterm_tmux">xterm+tmux</a>
+ and <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-ecma_strikeout">ecma+strikeout</a>
+ to <a href=
+ "https://invisible-island.net/ncurses/terminfo.src.html#tic-ms-terminal">ms-terminal</a>,
+ but cancel the non-working Cr and Ms capabilities</li>
</ul>
<h3><a name="h3-documentation" id=
@@ -1000,9 +778,8 @@
<li>
<p>fills in overlooked descriptions of features which were
- described in the <a href=
- "https://invisible-island.net/ncurses/NEWS.html">NEWS</a>
- file but treated sketchily in manual pages.</p>
+ described in the <a href="https://invisible-island.net/ncurses/NEWS.html">NEWS</a> file
+ but treated sketchily in manual pages.</p>
</li>
</ul>
@@ -1015,95 +792,67 @@
<p>Corrections:</p>
<ul>
- <li>correct error-returns listed in manual pages for a few
- form functions</li>
-
- <li>corrected prototypes in several manpages using script
- to extract those in compilable form.</li>
+ <li>
+ <p>make <em>opts</em> extension for <a href=
+ "https://invisible-island.net/ncurses/man/curs_getcchar.3x.html#h3-getcchar"><tt>getcchar</tt></a>
+ work as documented for <a href=
+ "https://invisible-island.net/ncurses/announce-6.1.htmll#h4-new-library">ncurses
+ 6.1</a>, adding &ldquo;<tt>-g</tt>&rdquo; flag to
+ <em>demo_new_pair</em> to illustrate.</p>
+ </li>
- <li>fix typo in <a href=
- "https://invisible-island.net/ncurses/man/term.5.html#h3-EXTENDED-NUMBER-FORMAT">
- term.5</a>, improve explanation of format</li>
+ <li>
+ <p>modify <a href="https://invisible-island.net/ncurses/man/tset.1.html">tset</a>
+ &ldquo;-q&rdquo; option to refrain from modifying
+ terminal modes, to match the documentation.</p>
+ </li>
</ul>
</li>
<li>
- <p>Clarify in manual pages that <a href=
- "https://invisible-island.net/ncurses/man/curs_printw.3x.html#h2-PORTABILITY">
- vwprintw</a> and <a href=
- "https://invisible-island.net/ncurses/man/curs_scanw.3x.html#h2-PORTABILITY">
- vwscanw</a> are obsolete.<br>
- They have not been part of X/Open Curses since 2007.</p>
- </li>
-
- <li>
<p>New/improved history and portability sections:</p>
<ul>
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_addch.3x.html#h3-ACS-Symbols">
- curs_addch.3x</a> gives some background for ACS
- symbols.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_getcchar.3x.html#h2-PORTABILITY">
- curs_getcchar.3x</a> explains a difference between ncurses
- and X/Open Curses.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_getstr.3x.html#h2-PORTABILITY">
- curs_getstr.3x</a> gives historical/portability background
- for the length parameter of <tt>wgetnstr</tt>.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_slk.3x.html">
- curs_slk.3x</a> lists a few differences between SVr4 curses
- and X/Open Curses for soft-keys.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_terminfo.3x.html">
- curs_terminfo.3x</a> explains that the initial
- implementation of terminfo in SVr2 was mostly replaced by
- other developers in SVr3.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/infocmp.1m.html">infocmp.1</a>
- explains that the initial version of terminfo had no tool
- for decompiling descriptions. That came later, with SVr3,
- with a different developer.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/tabs.1">tabs.1</a>
- tells more than you wanted to know about the tool.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/tic.1m.html">tic.1</a>
- explains that the initial version of terminfo had a
- rudimentary tool (based on termcap) for compiling entries.
- The tool used with Unix was developed by others for
- SVr3.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/toe.1m.html">toe.1</a>
- explains the origin of this tool.</li>
- </ul>
- </li>
+ <li>
+ <p>improve documentation for <a href=
+ "https://invisible-island.net/ncurses/man/terminfo.5.html#h3-Parameterized-Strings">
+ tparm</a> and static/dynamic variables.</p>
+ </li>
- <li>
- <p>Improvements for <a href=
- "https://invisible-island.net/ncurses/man/user_caps.5.html">user_caps.5</a>:</p>
+ <li>
+ <p>add history note to <a href=
+ "https://invisible-island.net/ncurses/man/curs_scanw.3x.html#h2-HISTORY">curs_scanw.3x</a>
+ for &lt;stdarg.h&gt; and &lt;varargs.h&gt;</p>
+ </li>
- <ul>
- <li>mention <tt>meml</tt>, <tt>memu</tt> and
- <tt>box1</tt></li>
+ <li>
+ <p>add history note to <a href=
+ "https://invisible-island.net/ncurses/man/curs_printw.3x.html#h2-HISTORY">curs_printw.3x</a>
+ for &lt;stdarg.h&gt; and &lt;varargs.h&gt;</p>
+ </li>
- <li>expanded description of <tt>XM</tt></li>
+ <li>
+ <p>add portability note to <a href=
+ "https://invisible-island.net/ncurses/man/ncurses.3x.html#h3-Header-files">ncurses.3x</a>
+ regarding &lt;stdarg.h&gt;</p>
+ </li>
- <li>add a clarification regarding the <tt>RGB</tt>
- capability.</li>
+ <li>
+ <p>add historical notes to <a href=
+ "https://invisible-island.net/ncurses/man/tput.1.html#h2-HISTORY">tput</a>,
+ <a href="https://invisible-island.net/ncurses/man/curs_terminfo.3x.html#h2-HISTORY">
+ curses-terminfo</a> and <a href=
+ "https://invisible-island.net/ncurses/man/curs_color.3x.html#h2-HISTORY">curses-color</a>
+ manpages based on source-code for SVr2, SVr3 and
+ SVr4.</p>
+ </li>
- <li>mention user_caps.5 in the tic and infocmp manual
- pages.</li>
+ <li>
+ <p>improve history section for <a href=
+ "https://invisible-island.net/ncurses/man/tset.1.html#h2-HISTORY">tset</a> manpage
+ based on the 1BSD tarball, which preceded BSD's SCCS
+ checkins by more than three years.</p>
+ </li>
</ul>
</li>
@@ -1111,52 +860,66 @@
<p>Other improvements:</p>
<ul>
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_add_wch.3x.html#h3-Line-Graphics">
- curs_add_wch.3x</a> adds note about Unicode terminology for
- the line-drawing characters.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_color.3x.html#h3-RETURN-VALUE">
- curs_color.3x</a> improves discussion of error returns and
- extensions.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_mouse.3x.html">
- curs_mouse.3x</a> explains how the <tt>kmous</tt> and
- <tt>XM</tt> capabilities are used for xterm-mouse
- input.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_refresh.3x.html#h3-wnoutrefresh_doupdate">
- curs_refresh.3x</a> improves documentation regarding the
- virtual and physical screens.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_util.3x.html">
- curs_util.3x</a> mentions a difference between SVr4 and
- X/Open Curses for <tt>unctrl.h</tt></li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/curs_variables.3x.html#h2-PORTABILITY">
- curs_variables.3x</a> improves description of the
- <em>init_tabs</em> capability and <tt>TABSIZE</tt>
- variable.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/ncurses.3x.html#h2-ALTERNATE-CONFIGURATIONS">
- ncurses.3x</a> improves documentation regarding
- feature-test macros in curses.h</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/resizeterm.3x.html#h3-resize_term">
- resizeterm.3x</a> about top-level windows which touch the
- screen's borders.</li>
-
- <li><a href=
- "https://invisible-island.net/ncurses/man/tput.1.html#h3-Terminal-Size">
- tput.1</a> clarifies how <em>tput</em> determines the
- terminal size.</li>
+ <li>
+ <p>explain in <a href=
+ "https://invisible-island.net/ncurses/man/ncurses.3x.html#h2-ALTERNATE-CONFIGURATIONS">
+ ncurses.3x</a> that functions in the tinfo library do not
+ rely upon wide-characters.</p>
+ </li>
+
+ <li>
+ <p>improve manual page for <a href=
+ "https://invisible-island.net/ncurses/man/panel.3x.html#h2-PORTABILITY">panel</a>
+ library, extending the portability section as well as
+ documenting error-returns.</p>
+ </li>
+
+ <li>
+ <p>add section on margins to <a href=
+ "https://invisible-island.net/ncurses/man/terminfo.5.html#h3-Margins">terminfo.5</a>,
+ adapted from X/Open Curses.</p>
+ </li>
+
+ <li>
+ <p>improve <a href=
+ "https://invisible-island.net/ncurses/man/term.5.html#h3-LEGACY-STORAGE-FORMAT">man/term.5</a>
+ section on legacy storage format.</p>
+ </li>
+
+ <li>
+ <p>add a note in <a href=
+ "https://invisible-island.net/ncurses/man/terminfo.5.html#h3-Predefined-Capabilities">
+ terminfo.5</a> explaining that no-parameter strings such
+ as <em><tt>sgr0</tt></em> or <em><tt>cnorm</tt></em>
+ should not be used with tparm.</p>
+ </li>
+
+ <li>
+ <p>improve description of BSD-style padding in <a href=
+ "https://invisible-island.net/ncurses/man/curs_termcap.3x.html#h2-BUGS">curs_termcap.3x</a></p>
+ </li>
+
+ <li>
+ <p>improve discussion of padding versus <tt>tparm</tt>
+ and <tt>tputs</tt> in <a href=
+ "https://invisible-island.net/ncurses/man/curs_terminfo.3x.html#h3-Formatting-Output">
+ man/curs_terminfo.3x</a></p>
+ </li>
+
+ <li>
+ <p>add a note in manual page to explain <a href=
+ "https://invisible-island.net/ncurses/man/curs_getch.3x.html#h3-Ungetting-characters">
+ ungetch</a> vs <a href=
+ "https://invisible-island.net/ncurses/man/curs_get_wch.3x.html#h3-unget_wch">unget_wch</a>.</p>
+ </li>
+
+ <li>
+ <p>improve description of error-returns in <a href=
+ "https://invisible-island.net/ncurses/man/curs_addch.3x.html#h2-RETURN-VALUE">waddch</a>
+ and <a href=
+ "https://invisible-island.net/ncurses/man/curs_addstr.3x.html#h2-RETURN-VALUE">waddnstr</a>
+ manual pages.</p>
+ </li>
</ul>
</li>
</ul>
@@ -1165,185 +928,63 @@
are to existing pages).</p>
<p>Some of the improvements are more subtle, relating to the way
- the information is presented. For instance, the generated
- terminfo.5 file uses a different table layout, allowing it to use
- space on wide terminals more effectively.</p>
+ the information is presented. For instance, hyphenation is
+ suppressed in the HTML files generated from manual pages because
+ an upgrade to <em>groff</em> gave noticeably poorer results,
+ interfering with the process of creating links between the
+ resulting webpages.</p>
<h3><a name="h3-bug-fixes" id="h3-bug-fixes">Interesting
bug-fixes</a></h3>
<p>While there were many bugs fixed during development of ncurses
- 6.2, only a few (the reason for this release) were both important
+ 6.3, only a few (the reason for this release) were both important
and interesting. Most of the bug-fixes were for local issues
which did not affect compatibility across releases. Since those
- are detailed in the NEWS file no elaboration is needed here.</p>
+ are detailed in the <a href=
+ "https://invisible-island.net/ncurses/NEWS.html#t20211018">NEWS</a> file no elaboration is
+ needed here.</p>
- <p>The interesting bugs were in tic/infocmp's handling of
- user-defined capabilities. These were not recent bugs. Initially
- it was a simple problem:</p>
+ <p>The interesting bugs were:</p>
<ul>
- <li>The user-defined capabilities can be any type (boolean,
- number or string), but once given a type all uses of the name
- must conform to that type&mdash;unless some special support for
- a particular multi-typed name is built into ncurses.</li>
-
<li>
- <p>One of simpleterm's contributors copied some definitions
- for using <em>tmux</em>'s user-defined capabilities in
+ <p>modify <a href=
+ "https://invisible-island.net/ncurses/man/curs_bkgd.3x.html#h3-bkgd">wbkgd</a> and
<a href=
- "https://git.suckless.org/st/commit/06f8cf8ca87a81db15816658c40b2afcd1ad5332.html">
- late in 2016</a>.</p>
+ "https://invisible-island.net/ncurses/man/curs_bkgrnd.3x.html#h3-bkgrnd">wbkgrnd</a> to
+ avoid storing a null in the background character, because it
+ may be used in cases where the corresponding 0x80 is not
+ treated as a null.</p>
- <blockquote>
- <pre class="demo-name">
-diff --git a/st.info b/st.info
-@@ -185,7 +185,10 @@ st| simpleterm,
- tsl=\E]0;,
- xenl,
- vpa=\E[%i%p1%dd,
--
-+# Tmux unofficial extensions, see TERMINFO EXTENSIONS in tmux(1)
-+ Se,
-+ Ss,
-+ Tc,
-
- st-256color| simpleterm with 256 colors,
- use=st,
-</pre>
- </blockquote>
- </li>
-
- <li>
- <p>Later, in (referring to a version from <a href=
- "https://git.suckless.org/st/commit/c0882f2ed1d7a2dd0fa2efa52157e6fc6fde3652.html">
- mid-2017</a>), a user asked to have it updated in
- ncurses.</p>
+ <p>This was a regression introduced in ncurses 6.2 (<a href=
+ "https://lists.gnu.org/archive/html/bug-ncurses/2020-03/msg00000.html">reported</a>
+ on the mailing list), for which the workaround was to specify
+ a blank for the background character.</p>
</li>
<li>
- <p>However, it had an error from the change in late 2016. The
- terminal description made what <em>tmux</em> expected to be
- <strong>string</strong> actually a
- <strong>boolean</strong>.</p>
-
- <p>Over the years, there were problems with each of
- simpleterm's terminal descriptions. I repaired those, and
- usually dealt with the problem.</p>
- </li>
-
- <li>
- <p>The difference in this case was that when compiling the
- terminal database, <em>tic</em> may have in memory the
- definitions for more than one terminal description (so that
- it can resolve &ldquo;<tt>use=</tt>&rdquo; clauses). Seeing
- two different types for the same name, in certain situations
- it would incorrectly merge the symbol tables for the two
- terminal descriptions.</p>
- </li>
-
- <li>
- <p>On simpleterm's side, their bug was finally fixed in
+ <p>remove output-related checks for <a href=
+ "https://invisible-island.net/ncurses/man/curs_outopts.3x.html">nl/nonl</a> (also
<a href=
- "https://git.suckless.org/st/commit/83866428de031300eab03fbb116bcf7d2b1d4f60.html">
- late 2019</a>, three years after the bug was created.</p>
- </li>
- </ul>
-
- <p>For ncurses, the elapsed time to fix this bug was less than
- three years. Someone reported a problem with the terminal
- description a few weeks after releasing ncurses 6.1 (in <a href=
- "https://github.com/tmux/tmux/issues/1264">tmux #1264</a>), and
- the terminal description was updated that week (ncurses patch
- <a href=
- "https://invisible-island.net/ncurses/NEWS.html#t20180224">20180224</a>):</p>
-
- <blockquote>
- <pre class="demo-name">
-20180224
- + modify _nc_resolve_uses2() to detect incompatible types when merging
- a "use=" clause of extended capabilities. The problem was seen in a
- defective terminfo integrated from simpleterm sources in 20171111,
- compounded by repair in 20180121.
- + correct Ss/Ms interchange in st-0.7 entry (tmux #1264) -TD
-</pre>
- </blockquote>
-
- <p>The larger part of that change added a check to prevent a
- simple merge of terminal descriptions where the same user-defined
- name was used with different types. But it raised some
- questions:</p>
-
- <ul>
- <li>
- <p>Was there a reliable way to manage terminal descriptions
- which used the same extended name in different ways?</p>
+ "https://lists.gnu.org/archive/html/bug-ncurses/2020-09/msg00018.html">
+ reported</a> on the mailing list).</p>
</li>
<li>
- <p>Should ncurses provide a registry of well-known extended
- names, with their types?</p>
- </li>
- </ul>
-
- <p>Since the correction to <a href=
- "https://invisible-island.net/ncurses/ncurses.html#download_database">
- <tt>terminfo.src</tt></a> could have been readily adopted by
- packagers, there was nothing more to be done from ncurses'
- standpoint on that part. But improving ncurses to prevent issues
- like that is the reason for making a release.</p>
+ <p>improve tparm implementation of <tt>%P</tt> and
+ <tt>%g</tt>, more closely matching SVr4 terminfo. Those
+ denote <em>static</em> and <em>dynamic</em> variables in
+ terminfo expressions.</p>
- <p>Nothing more (constructive) was mentioned with regard to
- simpleterm. But a few problems were found in the handling of
- user-defined capabilities:</p>
-
- <ul>
- <li>
- <p>Forward-references to user-defined capabilities in a
- &ldquo;<tt>use=</tt>&rdquo; clause did not allocate new data
- for each use. In <em>tic</em>, successive compilation of
- terminal entries could add user-defined capabilities to the
- wrong terminal entry.</p>
-
- <p>This was not noticed before, since xterm's terminal
- descriptions were the main users of the feature, and almost
- all of the uses of the building-blocks which contained
- user-defined capabilities were backward-references.</p>
- </li>
-
- <li>
- <p>There is one (documented) case where ncurses 6.1 supports
- a user-defined capability that could be any type (i.e.,
- &ldquo;RGB&rdquo;). The check added in February 2018 to guard
- against mismatches did not handle all of the combinations
- needed.</p>
+ <p>Exactly what those terms meant was never documented before
+ in any implementation of curses, aside from source code.
+ Unlike the other two fixes, the problem was discovered while
+ studying OpenBSD's version of <a href=
+ "https://invisible-island.net/ncurses/ncurses-openbsd.html#issue_tput">tset</a>.</p>
</li>
</ul>
- <p>Both of these issues dated from the original implementation of
- user-defined capabilities. Fixing them does not change the
- terminal database, but a older <em>tic</em> without the fixes
- will not be able to handle terminfo sources which rely upon those
- fixes. Starting in June 2019, the download link for the terminfo
- source file was capped at that date. The development sources have
- an up-to-date copy of the file, for people with a legitimate need
- for it.</p>
-
- <p>The &ldquo;<tt>-c</tt>&rdquo; (check) option of <em>tic</em>
- is not very useful if it cannot offer advice on parameters needed
- for user-defined capabilities. The various <em>Caps</em> files
- were reorganized to reduce redundancy, and in the common portion
- (<a href=
- "https://github.com/ThomasDickey/ncurses-snapshots/blob/master/include/Caps-ncurses">Caps-ncurses</a>),
- a registry of user-defined capabilities is provided for use by
- <em>tic</em>. While users can still define their own custom
- capabilities, <em>tic</em> will not offer any advice when their
- parameters do not match.</p>
-
- <p>In ncurses 6.2, <em>tic</em> makes a special check to allow
- any type for <em>RGB</em>, but its being able to do this relies
- upon fixes made in the ncurses library in mid-2019.</p>
-
<h3><a name="h3-config-config" id=
"h3-config-config">Configuration changes</a></h3>
@@ -1361,52 +1002,73 @@ diff --git a/st.info b/st.info
<p>There are a few new/modified configure options:</p>
<dl>
- <dt><tt>--with-config-suffix</tt>
+ <dt><tt>--enable-fvisibility</tt>
</dt>
<dd>
- <p>helps work around a filename conflict with Debian packages
- versus test-packages.</p>
+ <p>new configure option and check for <em>gcc</em>
+ <tt>-fvisibility=hidden</tt> feature</p>
</dd>
- <dt><tt>--with-ada-libname</tt>
+ <dt><tt>--enable-leaks</tt>
</dt>
<dd>
- <p>allows one to rename the &ldquo;AdaCurses&rdquo; library
- (at least one packager prefers a lowercase name).</p>
+ <p>corrected to allow turning leak-checking off later in a
+ set of options.</p>
</dd>
- <dt><tt>--with-fallbacks</tt>
+ <dt><tt>--enable-stdnoreturn</tt>
</dt>
<dd>
- <p>now ensures there is a value, and adds the fallback
- information to top-level Makefile summary.</p>
+ <p>new configure option makes the <code>_Noreturn</code>
+ keyword optional to ease transition.</p>
</dd>
- <dt><tt>--with-pcre2</tt>
+ <dt><tt>--disable-pkg-ldflags</tt>
</dt>
<dd>
- <p>check for pcre-posix library to help with MinGW port.</p>
+ <p>revised option also controls whether <code>$LDFLAGS</code>
+ from the build is provided in &ldquo;<tt>-config</tt>&rdquo;
+ and &ldquo;<tt>.pc</tt>&rdquo; files.</p>
</dd>
- <dt><tt>--with-tic-path</tt> and<br></dt>
+ <dt><tt>--disable-root-access</tt>
+ </dt>
+
+ <dd>
+ <p>add configure option which tells ncurses to disallow most
+ file-opens by setuid processes.</p>
+ </dd>
+
+ <dt><tt>--disable-wattr-macros</tt>
+ </dt>
+
+ <dd>
+ <p>changed default to help packagers who reuse wide ncursesw
+ header file with non-wide ncurses library.</p>
+ </dd>
- <dt><tt>--with-infocmp-path</tt>
+ <dt><tt>--with-pkg-config-libdir</tt>
</dt>
<dd>
- <p>help work around problems building fallback source using
- pre-6.0 tic/infocmp.</p>
+ <p>revised option uses the actual search path from
+ <em>pkg-config</em> or <em>pkgconf</em> using the output from
+ <tt>--debug</tt>.</p>
</dd>
- <dt><tt>--with-versioned-syms</tt>
+ <dt><tt>--with-ada-libname</tt><br>
+ <tt>--with-form-libname</tt><br>
+ <tt>--with-menu-libname</tt><br>
+ <tt>--with-panel-libname</tt>
</dt>
<dd>
- <p>option value can now be a relative pathname.</p>
+ <p>new several <tt>--with-<em>xxx</em>-libname</tt> options,
+ to help with pkgsrc</p>
</dd>
</dl>
@@ -1417,148 +1079,107 @@ diff --git a/st.info b/st.info
<ul>
<li>
- <p>ignore <a href=
- "/ncurses/man/ncurses.3x.html#h3-TERMINFO"><tt>$TERMINFO</tt></a>
- as a default value in configure script if it came from the
- <tt>infocmp</tt> <strong><tt>-Q</tt></strong> option.</p>
+ <p>add a special case in the configure script to work around
+ one of the build-time breakages reported for <a href=
+ "https://invisible-island.net/ncurses/ncurses-openbsd.html">OpenBSD 6</a> here:</p>
+
+ <blockquote>
+ <p><a href=
+ "https://www.mail-archive.com/bugs@openbsd.org/msg13200.html">
+ https://www.mail-archive.com/bugs@openbsd.org/msg13200.html</a></p>
+ </blockquote>
</li>
<li>
- <p>distinguish gcc from icc and clang when the
- <tt>--enable-warnings</tt> option is not used, to avoid
- unnecessary warnings about unrecognized inline options</p>
+ <p>modify configure check for <em>libtool</em> to prevent
+ accidental use of an OpenBSD program which uses the same
+ name.</p>
</li>
<li>
- <p>consistently prepend new libraries as they are found
- during configuration, rather than relying upon the linker to
- resolve order dependencies of libraries.</p>
+ <p>modify configuration checks for build-time tic/infocmp to
+ use <em>AC_CHECK_TOOL</em>. That can still be overridden by
+ <tt>--with-tic-path</tt> and <tt>--with-infocmp-path</tt>
+ when fallbacks are used, but even if not using fallbacks, the
+ improved check may help with cross-compiling.</p>
</li>
<li>
- <p>modified configure scripts to reduce relinking/ranlib
- during library install :</p>
-
- <ul>
- <li>use &ldquo;<tt>install -p</tt>&rdquo; when available,
- to avoid need for ranlib of static libraries.</li>
-
- <li>scripts which use
- &ldquo;<tt>--disable-relink</tt>;&rdquo; add a 1-second
- sleep to work around tools which use whole-second
- timestamps, e.g., in <tt>utime</tt> rather than the actual
- file system resolution.</li>
- </ul>
+ <p>relax modification-time comparison in
+ <em>CF_LINK_FUNCS</em> to allow it to accept link() function
+ with NFS filesystems which change the mtime on the link
+ target, e.g., several BSD systems.</p>
</li>
<li>
- <p id="getenv-check">add configure check for <a href=
- "#getenv-fixes"><tt>getenv</tt></a> to work around
- implementation shown in Emscripten which overwrites the
- previous return value on each call.</p>
-
- <p>Use that to optionally suppress <tt>START_TRACE</tt>
- macro, whose call to <tt>getenv</tt> may not work
- properly</p>
+ <p>modify configure check for c89/c99 aliases of
+ <em>clang</em> to use its <tt>-std</tt> option instead,
+ because some platforms, in particular macOS, do not provide
+ workable c89/c99 aliases.</p>
</li>
<li>
- <p>change target configure level for <tt>_XOPEN_SOURCE</tt>
- to 600 to address use of <tt>vsscanf</tt> and
- <tt>setenv</tt>.</p>
+ <p>modify <em>CF_NCURSES_CONFIG</em> to work around
+ <em>Xcode</em>'s c99 "-W" option, which conflicts with
+ conventional use for passing linker options.</p>
</li>
<li>
- <p>reduce use of <tt>_GNU_SOURCE</tt> for current glibc where
- <tt>_DEFAULT_SOURCE</tt> combines with
- <tt>_XOPEN_SOURCE</tt></p>
+ <p>modify configure scripts to filter out redefinitions of
+ _XOPEN_SOURCE, e.g., for NetBSD which generally supports 500,
+ but 600 is needed for ncursesw.</p>
+ </li>
+ </ul>
- <p>Allow for Cygwin's newlib when checking for the
- _DEFAULT_SOURCE symbol.</p>
+ <p>Here are some of the other portability fixes:</p>
- <p>MidnightBSD is now checked for the
- <tt>_XOPEN_SOURCE</tt>-related definitions.</p>
+ <ul>
+ <li>
+ <p>change configure-check and source-code for gcc's noreturn
+ attribute to assume it is a prefix rather than suffix,
+ matching c11's _Noreturn convention.</p>
</li>
<li>
- <p>If the check for <tt>va_copy</tt> or <tt>__va_copy</tt>
- fails,</p>
-
- <ul>
- <li>configure now tries copying the pointers for
- <tt>va_list</tt>, or as an array.</li>
-
- <li>alternatively, it checks for
- <tt>__builtin_va_copy</tt>(), which could be used with AIX
- <tt>xlc</tt> in <em>c89</em> mode.</li>
- </ul>
+ <p>modify mk-1st.awk to account for extra-suffix configure
+ option.</p>
</li>
<li>
- <p>several changes to support a port to Ultrix 3.1:</p>
-
- <ul>
- <li>check if "b" binary feature of fopen works</li>
-
- <li>check for missing feature of locale.h</li>
-
- <li>add fallback for strstr() in test-programs</li>
-
- <li>add fallback for STDOUT_FILENO in test-programs</li>
- </ul>
+ <p>build-fix for termsort module when configured with
+ termcap.</p>
</li>
<li>
- <p>The <em>test/configure</em> script (used for <a href=
- "/ncurses/ncurses-examples.html"><em>ncurses-examples</em></a>)
- is improved:</p>
-
- <ul>
- <li>work around non-ncurses termcap.h file, e.g., in
- Slackware.</li>
-
- <li>check for <a href=
- "/ncurses/man/curs_variables.3x.html#h3-TABSIZE"><tt>TABSIZE</tt></a>
- variable.</li>
-
- <li>checks for the X11/Intrinsic.h header, accommodate
- recent MacOS changes which largely emptied
- <tt>/usr/include</tt>.</li>
- </ul>
+ <p>modify configure script and makefiles to support ".PHONY"
+ make program feature.</p>
</li>
- </ul>
- <p>Here are some of the other portability fixes:</p>
-
- <ul>
<li>
- <p>added dummy "check" rule in top-level and test-Makefile to
- simplify building test-packages for ArchLinux.</p>
+ <p>amend <em>libtool</em> configuration to add dependency for
+ install.tic, etc., in ncurses/Makefile on the lower-level
+ libraries.</p>
</li>
<li>
- <p>dropped library-dependency on psapi for MinGW port, since
- win_driver.c defines <tt>PSAPI_VERSION</tt> to 2, making it
- use <tt>GetProcessImageFileName</tt> from kernel32.dll</p>
+ <p>modify Ada95 source-generation utility to write to a file
+ given as parameter rather than to the standard output,
+ allowing builds with MinGW.</p>
</li>
<li>
- <p>made build-fixes for configuration using --program-suffix
- with Ada95, noticed with MacOS but applicable to other
- platforms without libpanelw, etc.</p>
+ <p>amend tic/infocmp check to allow for the respective tool's
+ absence.</p>
</li>
<li>
- <p>modified ncurses/Makefile.in to fix a case where
- Debian/testing changes to the ld --as-needed configuration
- broke ncurses-examples test packages.</p>
+ <p>build-fixes for gnat 10.1.1, whose gnatmake drops
+ integration with gprbuild.</p>
</li>
<li>
- <p>used <tt>_WIN32</tt>/<tt>_WIN64</tt> in preference to
- <tt>__MINGW32__</tt>/<tt>__MINGW64__</tt> symbols to simplify
- building with Microsoft Visual C++, since the former are
- defined in both compiler configurations.</p>
+ <p>correct configure version-check/warning for g++ to allow
+ for 10.x</p>
</li>
</ul>
@@ -1634,7 +1255,7 @@ diff --git a/st.info b/st.info
<p>The <span class="main-name">ncurses</span> utilities have
options to allow you to filter terminfo entries for use with
less capable <em>curses</em>/<em>terminfo</em> versions such
- as the HP/UX and AIX ports.</p>
+ as the HP-UX and AIX ports.</p>
</li>
</ul>
@@ -1645,10 +1266,10 @@ diff --git a/st.info b/st.info
<li>
<p>The API is 8-bit clean and base-level conformant with the
X/OPEN curses specification, XSI curses (that is, it
- implements all BASE level features, and most EXTENDED
- features). It includes many function calls not supported
- under SVr4 curses (but portability of all calls is documented
- so you can use the SVr4 subset only).</p>
+ implements all <em>BASE</em> level features, and most
+ <em>EXTENDED</em> features). It includes many function calls
+ not supported under SVr4 curses (but portability of all calls
+ is documented so you can use the SVr4 subset only).</p>
</li>
<li>
@@ -1691,6 +1312,11 @@ diff --git a/st.info b/st.info
</li>
<li>
+ <p>Support for direct-color terminals, such as modern
+ xterm.</p>
+ </li>
+
+ <li>
<p>Support for 256-color terminals, such as modern xterm.</p>
</li>
@@ -1734,19 +1360,18 @@ diff --git a/st.info b/st.info
</li>
<li>
- <p>The <a href=
- "https://invisible-island.net/ncurses/man/tic.1m.html"><span class="part-name">
- tic</span></a>/<a href=
- "https://invisible-island.net/ncurses/man/captoinfo.1m.html">captoinfo</a>
- utility provided with <span class="main-name">ncurses</span>
- has the ability to translate many termcaps from the XENIX,
- IBM and AT&amp;T extension sets.</p>
+ <p>The <a href="https://invisible-island.net/ncurses/man/tic.1m.html"><span class=
+ "part-name">tic</span></a>/<a href=
+ "https://invisible-island.net/ncurses/man/captoinfo.1m.html">captoinfo</a> utility
+ provided with <span class="main-name">ncurses</span> has the
+ ability to translate many termcaps from the XENIX, IBM and
+ AT&amp;T extension sets.</p>
</li>
<li>
<p>A BSD-like <a href=
- "https://invisible-island.net/ncurses/man/tset.1.html"><span class="part-name">
- tset</span></a> utility is provided.</p>
+ "https://invisible-island.net/ncurses/man/tset.1.html"><span class=
+ "part-name">tset</span></a> utility is provided.</p>
</li>
<li>
@@ -1775,24 +1400,25 @@ diff --git a/st.info b/st.info
<li>
<p>The table-of-entries utility <a href=
- "https://invisible-island.net/ncurses/man/toe.1m.html"><span class="part-name">
- toe</span></a> makes it easy for users to see exactly what
- terminal types are available on the system.</p>
+ "https://invisible-island.net/ncurses/man/toe.1m.html"><span class=
+ "part-name">toe</span></a> makes it easy for users to see
+ exactly what terminal types are available on the system.</p>
</li>
<li>
<p>The library meets the XSI requirement that every macro
- entry point have a corresponding function which may be linked
+ entry point has a corresponding function which may be linked
(and will be prototype-checked) if the macro definition is
disabled with <code>#undef</code>.</p>
</li>
<li>
<p>Extensive documentation is provided (see the <em><a href=
- "https://invisible-island.net/ncurses/ncurses.faq.html#additional_reading">
- Additional Reading</a></em> section of the <em><a href=
- "https://invisible-island.net/ncurses/ncurses.faq.html"><span class="main-name">
- ncurses</span> FAQ</a></em> for online documentation).</p>
+ "https://invisible-island.net/ncurses/ncurses.faq.html#additional_reading">Additional
+ Reading</a></em> section of the <em><a href=
+ "https://invisible-island.net/ncurses/ncurses.faq.html"><span class=
+ "main-name">ncurses</span> FAQ</a></em> for online
+ documentation).</p>
</li>
</ul>
@@ -1825,9 +1451,7 @@ diff --git a/st.info b/st.info
<dd>
<p>Curses Development Kit</p>
- <p><a href=
- "https://invisible-island.net/cdk/">https://invisible-island.net/cdk/</a><br>
-
+ <p><a href="https://invisible-island.net/cdk/">https://invisible-island.net/cdk/</a><br>
</p>
</dd>
@@ -1837,8 +1461,7 @@ diff --git a/st.info b/st.info
<dd>
<p>directory-editor</p>
- <p><a href=
- "https://invisible-island.net/ded/">https://invisible-island.net/ded/</a></p>
+ <p><a href="https://invisible-island.net/ded/">https://invisible-island.net/ded/</a></p>
</dd>
<dt><span class="part-name">dialog</span>
@@ -1849,8 +1472,7 @@ diff --git a/st.info b/st.info
and the basis for similar install/configure applications on
many systems.</p>
- <p><a href=
- "https://invisible-island.net/dialog/">https://invisible-island.net/dialog/</a></p>
+ <p><a href="https://invisible-island.net/dialog/">https://invisible-island.net/dialog/</a></p>
</dd>
<dt><span class="part-name">lynx</span>
@@ -1946,8 +1568,7 @@ diff --git a/st.info b/st.info
<dd>
<p>a replacement for <code>ssh</code>.</p>
- <p><a href=
- "https://mosh.mit.edu/">https://mosh.mit.edu/</a></p>
+ <p><a href="https://mosh.org/">https://mosh.org/</a></p>
</dd>
<dt><span class="part-name">tack</span>
@@ -1956,8 +1577,7 @@ diff --git a/st.info b/st.info
<dd>
<p>terminfo action checker</p>
- <p><a href=
- "https://invisible-island.net/ncurses/tack.html">https://invisible-island.net/ncurses/tack.html</a></p>
+ <p><a href="https://invisible-island.net/ncurses/tack.html">https://invisible-island.net/ncurses/tack.html</a></p>
</dd>
<dt><span class="part-name">tmux</span>
@@ -1977,8 +1597,7 @@ diff --git a/st.info b/st.info
<p><em>vi-like-emacs</em> may be built to use the terminfo,
termcap or curses interfaces.</p>
- <p><a href=
- "https://invisible-island.net/vile/">https://invisible-island.net/vile/</a></p>
+ <p><a href="https://invisible-island.net/vile/">https://invisible-island.net/vile/</a></p>
</dd>
</dl>
</blockquote>
@@ -2040,13 +1659,13 @@ diff --git a/st.info b/st.info
<p>Ongoing development work is done by <a href=
"mailto:dickey@invisible-island.net">Thomas E. Dickey</a>. Thomas
E. Dickey has acted as the maintainer for the Free Software
- Foundation, which holds a <a href=
- "https://invisible-island.net/ncurses/ncurses-license.html">copyright
- on ncurses</a> for releases 4.2 through 6.1. Following the
- release of ncurses 6.1, effective as of release 6.2, copyright
- for ncurses reverted to Thomas E. Dickey (see the <a href=
- "https://invisible-island.net/ncurses/ncurses.faq.html#relicensed">
- ncurses FAQ</a> for additional information).</p>
+ Foundation, which held a <a href=
+ "https://invisible-island.net/ncurses/ncurses-license.html">copyright on ncurses</a> for
+ releases 4.2 through 6.1. Following the release of ncurses 6.1,
+ effective as of release 6.2, copyright for ncurses reverted to
+ Thomas E. Dickey (see the <a href=
+ "https://invisible-island.net/ncurses/ncurses.faq.html#relicensed">ncurses FAQ</a> for
+ additional information).</p>
<p>Contact the current maintainers at</p>
@@ -2061,7 +1680,6 @@ diff --git a/st.info b/st.info
"mailto:bug-ncurses-request@gnu.org">bug-ncurses-request@gnu.org</a>
</blockquote>
containing the line:
-
<blockquote>
<p><code>subscribe</code>
<em>&lt;name&gt;@&lt;host.domain&gt;</em></p>
@@ -2085,10 +1703,10 @@ diff --git a/st.info b/st.info
<blockquote>
<p><a href=
- "ftp://ftp.invisible-island.net/ncurses/6.1/">ftp://ftp.invisible-island.net/ncurses/6.1/</a>
+ "ftp://ftp.invisible-island.net/ncurses/6.2/">ftp://ftp.invisible-island.net/ncurses/6.2/</a>
and<br>
<a href=
- "https://invisible-mirror.net/archives/ncurses/6.1/">https://invisible-mirror.net/archives/ncurses/6.1/</a>&nbsp;.</p>
+ "https://invisible-mirror.net/archives/ncurses/6.2/">https://invisible-mirror.net/archives/ncurses/6.2/</a>&nbsp;.</p>
</blockquote>
<p>There is an archive of the mailing list here:</p>
@@ -2107,30 +1725,28 @@ diff --git a/st.info b/st.info
which may be interesting by themselves:</p>
<ul>
- <li><a href=
- "https://invisible-island.net/ncurses/ncurses-license.html"><span class="main-name">
- ncurses</span> licensing</a></li>
+ <li><a href="https://invisible-island.net/ncurses/ncurses-license.html"><span class=
+ "main-name">ncurses</span> licensing</a></li>
- <li><a href=
- "https://invisible-island.net/ncurses/ncurses-mapsyms.html">Symbol
- versioning in <span class="main-name">ncurses</span></a></li>
+ <li><a href="https://invisible-island.net/ncurses/ncurses-mapsyms.html">Symbol versioning
+ in <span class="main-name">ncurses</span></a></li>
- <li><a href=
- "https://invisible-island.net/ncurses/ncurses-slang.html">Comments
- on <span class="main-name">ncurses</span> versus <span class=
+ <li><a href="https://invisible-island.net/ncurses/ncurses-slang.html">Comments on
+ <span class="main-name">ncurses</span> versus <span class=
"main-name">slang</span> (S-Lang)</a></li>
- <li><a href=
- "https://invisible-island.net/ncurses/tack.html">tack &ndash;
- terminfo action checker</a></li>
+ <li><a href="https://invisible-island.net/ncurses/ncurses-openbsd.html">Comments on
+ <span class="main-name">OpenBSD</span></a></li>
- <li><a href=
- "https://invisible-island.net/ncurses/tctest.html">tctest
- &ndash; termcap library checker</a></li>
+ <li><a href="https://invisible-island.net/ncurses/tack.html">tack &ndash; terminfo action
+ checker</a></li>
+
+ <li><a href="https://invisible-island.net/ncurses/tctest.html">tctest &ndash; termcap
+ library checker</a></li>
<li><a href=
- "https://invisible-island.net/ncurses/ncurses.html#download_database">
- Terminal Database</a></li>
+ "https://invisible-island.net/ncurses/ncurses.html#download_database">Terminal
+ Database</a></li>
</ul>
<h2><a name="h2-other-stuff" id="h2-other-stuff">Other
@@ -2158,11 +1774,9 @@ diff --git a/st.info b/st.info
<li>
<a href="#h2-release-notes">Release Notes</a>
-
<ul>
<li>
<a href="#h3-library">Library improvements</a>
-
<ul>
<li><a href="#h4-new-library">New features</a></li>
@@ -2173,7 +1787,6 @@ diff --git a/st.info b/st.info
<li>
<a href="#h3-programs">Program improvements</a>
-
<ul>
<li><a href="#h4-utilities">Utilities</a></li>
@@ -2189,7 +1802,6 @@ diff --git a/st.info b/st.info
<li>
<a href="#h3-config-config">Configuration changes</a>
-
<ul>
<li><a href="#h4-config-major">Major changes</a></li>
diff --git a/doc/html/man/adacurses6-config.1.html b/doc/html/man/adacurses6-config.1.html
index f2de0a2..66f34d8 100644
--- a/doc/html/man/adacurses6-config.1.html
+++ b/doc/html/man/adacurses6-config.1.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2010-2014,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: MKada_config.in,v 1.12 2020/02/02 23:34:34 tom Exp @
+ * @Id: MKada_config.in,v 1.13 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -126,7 +126,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/captoinfo.1m.html b/doc/html/man/captoinfo.1m.html
index f66e368..fc21e32 100644
--- a/doc/html/man/captoinfo.1m.html
+++ b/doc/html/man/captoinfo.1m.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -57,9 +57,9 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
<STRONG>captoinfo</STRONG> looks in each given text <EM>file</EM> for <STRONG>termcap</STRONG> descriptions. For
- each one found, an equivalent <STRONG>terminfo</STRONG> description is written to stan-
- dard output. Termcap <STRONG>tc</STRONG> capabilities are translated directly to ter-
- minfo <STRONG>use</STRONG> capabilities.
+ each one found, an equivalent <STRONG>terminfo</STRONG> description is written to
+ standard output. Termcap <STRONG>tc</STRONG> capabilities are translated directly to
+ terminfo <STRONG>use</STRONG> capabilities.
If no <EM>file</EM> is given, then the environment variable <STRONG>TERMCAP</STRONG> is used for
the filename or entry. If <STRONG>TERMCAP</STRONG> is a full pathname to a file, only
@@ -155,9 +155,9 @@
Gc intersection
GG acs magic cookie count
- If the single-line capabilities occur in an entry, they will automati-
- cally be composed into an <STRONG>acsc</STRONG> string. The double-line capabilities
- and <STRONG>GG</STRONG> are discarded with a warning message.
+ If the single-line capabilities occur in an entry, they will
+ automatically be composed into an <STRONG>acsc</STRONG> string. The double-line
+ capabilities and <STRONG>GG</STRONG> are discarded with a warning message.
IBM's AIX has a terminfo facility descended from SVr1 terminfo but
incompatible with the SVr4 format. The following AIX extensions are
@@ -199,7 +199,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
diff --git a/doc/html/man/clear.1.html b/doc/html/man/clear.1.html
index 93455b4..cc5b4e8 100644
--- a/doc/html/man/clear.1.html
+++ b/doc/html/man/clear.1.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
@@ -71,10 +71,10 @@
</PRE><H2><a name="h2-OPTIONS">OPTIONS</a></H2><PRE>
<STRONG>-T</STRONG> <EM>type</EM>
- indicates the <EM>type</EM> of terminal. Normally this option is unneces-
- sary, because the default is taken from the environment variable
- <STRONG>TERM</STRONG>. If <STRONG>-T</STRONG> is specified, then the shell variables <STRONG>LINES</STRONG> and <STRONG>COL-</STRONG>
- <STRONG>UMNS</STRONG> will also be ignored.
+ indicates the <EM>type</EM> of terminal. Normally this option is
+ unnecessary, because the default is taken from the environment
+ variable <STRONG>TERM</STRONG>. If <STRONG>-T</STRONG> is specified, then the shell variables <STRONG>LINES</STRONG>
+ and <STRONG>COLUMNS</STRONG> will also be ignored.
<STRONG>-V</STRONG> reports the version of ncurses which was used in this program, and
exits. The options are as follows:
@@ -94,20 +94,21 @@
/usr/bin/tput ${1:+-T$1} clear 2&gt; /dev/null
exit
- In 1989, when Keith Bostic revised the BSD <STRONG>tput</STRONG> command to make it sim-
- ilar to the AT&amp;T <STRONG>tput</STRONG>, he added a shell script for the <STRONG>clear</STRONG> command:
+ In 1989, when Keith Bostic revised the BSD <STRONG>tput</STRONG> command to make it
+ similar to the AT&amp;T <STRONG>tput</STRONG>, he added a shell script for the <STRONG>clear</STRONG>
+ command:
exec tput clear
The remainder of the script in each case is a copyright notice.
- The ncurses <STRONG>clear</STRONG> command began in 1995 by adapting the original BSD
+ The ncurses <STRONG>clear</STRONG> command began in 1995 by adapting the original BSD
<STRONG>clear</STRONG> command (with terminfo, of course).
The <STRONG>E3</STRONG> extension came later:
- <STRONG>o</STRONG> In June 1999, xterm provided an extension to the standard control
- sequence for clearing the screen. Rather than clearing just the
+ <STRONG>o</STRONG> In June 1999, xterm provided an extension to the standard control
+ sequence for clearing the screen. Rather than clearing just the
visible part of the screen using
printf '\033[2J'
@@ -116,24 +117,24 @@
printf '\033[<STRONG>3</STRONG>J'
- This is documented in <EM>XTerm</EM> <EM>Control</EM> <EM>Sequences</EM> as a feature origi-
- nating with xterm.
+ This is documented in <EM>XTerm</EM> <EM>Control</EM> <EM>Sequences</EM> as a feature
+ originating with xterm.
<STRONG>o</STRONG> A few other terminal developers adopted the feature, e.g., PuTTY in
2006.
- <STRONG>o</STRONG> In April 2011, a Red Hat developer submitted a patch to the Linux
- kernel, modifying its console driver to do the same thing. The
- Linux change, part of the 3.0 release, did not mention xterm,
+ <STRONG>o</STRONG> In April 2011, a Red Hat developer submitted a patch to the Linux
+ kernel, modifying its console driver to do the same thing. The
+ Linux change, part of the 3.0 release, did not mention xterm,
although it was cited in the Red Hat bug report (#683733) which led
to the change.
- <STRONG>o</STRONG> Again, a few other terminal developers adopted the feature. But
+ <STRONG>o</STRONG> Again, a few other terminal developers adopted the feature. But
the next relevant step was a change to the <STRONG>clear</STRONG> program in 2013 to
incorporate this extension.
- <STRONG>o</STRONG> In 2013, the <STRONG>E3</STRONG> extension was overlooked in <STRONG>tput</STRONG> with the "clear"
- parameter. That was addressed in 2016 by reorganizing <STRONG>tput</STRONG> to
+ <STRONG>o</STRONG> In 2013, the <STRONG>E3</STRONG> extension was overlooked in <STRONG>tput</STRONG> with the "clear"
+ parameter. That was addressed in 2016 by reorganizing <STRONG>tput</STRONG> to
share its logic with <STRONG>clear</STRONG> and <STRONG>tset</STRONG>.
@@ -141,15 +142,15 @@
Neither IEEE Std 1003.1/The Open Group Base Specifications Issue 7
(POSIX.1-2008) nor X/Open Curses Issue 7 documents tset or reset.
- The latter documents <STRONG>tput</STRONG>, which could be used to replace this utility
- either via a shell script or by an alias (such as a symbolic link) to
+ The latter documents <STRONG>tput</STRONG>, which could be used to replace this utility
+ either via a shell script or by an alias (such as a symbolic link) to
run <STRONG>tput</STRONG> as <STRONG>clear</STRONG>.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/curs_add_wch.3x.html b/doc/html/man/curs_add_wch.3x.html
index 3891f83..b71fc03 100644
--- a/doc/html/man/curs_add_wch.3x.html
+++ b/doc/html/man/curs_add_wch.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2001-2015,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_add_wch.3x,v 1.26 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_add_wch.3x,v 1.28 2020/10/17 23:10:38 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>wadd_wch(</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM> <STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvadd_wch(</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM> <STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwadd_wch(</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM> <STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>echo_wchar(</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM> <STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wecho_wchar(</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM> <STRONG>);</STRONG>
@@ -66,20 +67,20 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
</PRE><H3><a name="h3-add_wch">add_wch</a></H3><PRE>
- The <STRONG>add_wch</STRONG>, <STRONG>wadd_wch</STRONG>, <STRONG>mvadd_wch</STRONG>, and <STRONG>mvwadd_wch</STRONG> functions put the com-
- plex character <EM>wch</EM> into the given window at its current position, which
- is then advanced. These functions perform wrapping and special-charac-
- ter processing as follows:
+ The <STRONG>add_wch</STRONG>, <STRONG>wadd_wch</STRONG>, <STRONG>mvadd_wch</STRONG>, and <STRONG>mvwadd_wch</STRONG> functions put the
+ complex character <EM>wch</EM> into the given window at its current position,
+ which is then advanced. These functions perform wrapping and special-
+ character processing as follows:
<STRONG>o</STRONG> If <EM>wch</EM> refers to a spacing character, then any previous character
at that location is removed. A new character specified by <EM>wch</EM> is
- placed at that location with rendition specified by <EM>wch</EM>. The cur-
- sor then advances to the next spacing character on the screen.
+ placed at that location with rendition specified by <EM>wch</EM>. The
+ cursor then advances to the next spacing character on the screen.
<STRONG>o</STRONG> If <EM>wch</EM> refers to a non-spacing character, all previous characters
at that location are preserved. The non-spacing characters of <EM>wch</EM>
- are added to the spacing complex character, and the rendition spec-
- ified by <EM>wch</EM> is ignored.
+ are added to the spacing complex character, and the rendition
+ specified by <EM>wch</EM> is ignored.
<STRONG>o</STRONG> If the character part of <EM>wch</EM> is a tab, newline, backspace or other
control character, the window is updated and the cursor moves as if
@@ -88,18 +89,18 @@
</PRE><H3><a name="h3-echo_wchar">echo_wchar</a></H3><PRE>
The <STRONG>echo_wchar</STRONG> function is functionally equivalent to a call to <STRONG>add_wch</STRONG>
- followed by a call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>. Similarly, the <STRONG>wecho_wchar</STRONG> is func-
- tionally equivalent to a call to <STRONG>wadd_wch</STRONG> followed by a call to <STRONG>wre-</STRONG>
- <STRONG>fresh</STRONG>. The knowledge that only a single character is being output is
- taken into consideration and, for non-control characters, a consider-
- able performance gain might be seen by using the *<STRONG>echo</STRONG>* functions
- instead of their equivalents.
+ followed by a call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>. Similarly, the <STRONG>wecho_wchar</STRONG> is
+ functionally equivalent to a call to <STRONG>wadd_wch</STRONG> followed by a call to
+ <STRONG>wrefresh</STRONG>. The knowledge that only a single character is being output
+ is taken into consideration and, for non-control characters, a
+ considerable performance gain might be seen by using the *<STRONG>echo</STRONG>*
+ functions instead of their equivalents.
</PRE><H3><a name="h3-Line-Graphics">Line Graphics</a></H3><PRE>
Like <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>, <STRONG>addch_wch</STRONG> accepts symbols which make it simple to draw
- lines and other frequently used special characters. These symbols cor-
- respond to the same VT100 line-drawing set as <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>.
+ lines and other frequently used special characters. These symbols
+ correspond to the same VT100 line-drawing set as <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>.
<STRONG>ACS</STRONG> <STRONG>Unicode</STRONG> <STRONG>ASCII</STRONG> <STRONG>acsc</STRONG> <STRONG>Glyph</STRONG>
<STRONG>Name</STRONG> <STRONG>Default</STRONG> <STRONG>Default</STRONG> <STRONG>char</STRONG> <STRONG>Name</STRONG>
@@ -111,8 +112,8 @@
WACS_CKBOARD 0x2592 : a checker board (stipple)
WACS_DARROW 0x2193 v . arrow pointing down
WACS_DEGREE 0x00b0 ' f degree symbol
- WACS_DIAMOND 0x25c6 + ` diamond
+ WACS_DIAMOND 0x25c6 + ` diamond
WACS_GEQUAL 0x2265 &gt; &gt; greater-than-or-equal-to
WACS_HLINE 0x2500 - q horizontal line
WACS_LANTERN 0x2603 # i lantern symbol
@@ -188,7 +189,24 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on success.
- Functions with a "mv" prefix first perform a cursor movement using
+ X/Open does not define any error conditions. This implementation
+ returns an error
+
+ <STRONG>o</STRONG> if the window pointer is null or
+
+ <STRONG>o</STRONG> if it is not possible to add a complete character in the window.
+
+ The latter may be due to different causes:
+
+ <STRONG>o</STRONG> If <STRONG>scrollok</STRONG> is not enabled, writing a character at the lower right
+ margin succeeds. However, an error is returned because it is not
+ possible to wrap to a new line
+
+ <STRONG>o</STRONG> If an error is detected when converting a multibyte character to a
+ sequence of bytes, or if it is not possible to add all of the
+ resulting bytes in the window, an error is returned.
+
+ Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
the window pointer is null.
@@ -198,77 +216,77 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- All of these functions are described in the XSI Curses standard, Issue
- 4. The defaults specified for line-drawing characters apply in the
+ All of these functions are described in the XSI Curses standard, Issue
+ 4. The defaults specified for line-drawing characters apply in the
POSIX locale.
- X/Open Curses makes it clear that the WACS_ symbols should be defined
+ X/Open Curses makes it clear that the WACS_ symbols should be defined
as a pointer to <STRONG>cchar_t</STRONG> data, e.g., in the discussion of <STRONG>border_set</STRONG>. A
few implementations are problematic:
<STRONG>o</STRONG> NetBSD curses defines the symbols as a <STRONG>wchar_t</STRONG> within a <STRONG>cchar_t</STRONG>.
<STRONG>o</STRONG> HPUX curses equates some of the <EM>ACS</EM><STRONG>_</STRONG> symbols to the analogous <EM>WACS</EM><STRONG>_</STRONG>
- symbols as if the <EM>ACS</EM><STRONG>_</STRONG> symbols were wide characters. The misde-
- fined symbols are the arrows and other symbols which are not used
- for line-drawing.
+ symbols as if the <EM>ACS</EM><STRONG>_</STRONG> symbols were wide characters. The
+ misdefined symbols are the arrows and other symbols which are not
+ used for line-drawing.
X/Open Curses does not define symbols for thick- or double-lines. SVr4
- curses implementations defined their line-drawing symbols in terms of
- intermediate symbols. This implementation extends those symbols, pro-
- viding new definitions which are not in the SVr4 implementations.
-
- Not all Unicode-capable terminals provide support for VT100-style
- alternate character sets (i.e., the <STRONG>acsc</STRONG> capability), with their corre-
- sponding line-drawing characters. X/Open Curses did not address the
- aspect of integrating Unicode with line-drawing characters. Existing
- implementations of Unix curses (AIX, HPUX, Solaris) use only the <STRONG>acsc</STRONG>
- character-mapping to provide this feature. As a result, those imple-
- mentations can only use single-byte line-drawing characters. Ncurses
- 5.3 (2002) provided a table of Unicode values to solve these problems.
- NetBSD curses incorporated that table in 2010.
-
- In this implementation, the Unicode values are used instead of the ter-
- minal description's <STRONG>acsc</STRONG> mapping as discussed in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> for the
- environment variable <STRONG>NCURSES_NO_UTF8_ACS</STRONG>. In contrast, for the same
+ curses implementations defined their line-drawing symbols in terms of
+ intermediate symbols. This implementation extends those symbols,
+ providing new definitions which are not in the SVr4 implementations.
+
+ Not all Unicode-capable terminals provide support for VT100-style
+ alternate character sets (i.e., the <STRONG>acsc</STRONG> capability), with their
+ corresponding line-drawing characters. X/Open Curses did not address
+ the aspect of integrating Unicode with line-drawing characters.
+ Existing implementations of Unix curses (AIX, HPUX, Solaris) use only
+ the <STRONG>acsc</STRONG> character-mapping to provide this feature. As a result, those
+ implementations can only use single-byte line-drawing characters.
+ Ncurses 5.3 (2002) provided a table of Unicode values to solve these
+ problems. NetBSD curses incorporated that table in 2010.
+
+ In this implementation, the Unicode values are used instead of the
+ terminal description's <STRONG>acsc</STRONG> mapping as discussed in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> for the
+ environment variable <STRONG>NCURSES_NO_UTF8_ACS</STRONG>. In contrast, for the same
cases, the line-drawing characters described in <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> will use
only the ASCII default values.
- Having Unicode available does not solve all of the problems with line-
+ Having Unicode available does not solve all of the problems with line-
drawing for curses:
- <STRONG>o</STRONG> The closest Unicode equivalents to the VT100 graphics <EM>S1</EM>, <EM>S3</EM>, <EM>S7</EM>
- and <EM>S9</EM> frequently are not displayed at the regular intervals which
+ <STRONG>o</STRONG> The closest Unicode equivalents to the VT100 graphics <EM>S1</EM>, <EM>S3</EM>, <EM>S7</EM>
+ and <EM>S9</EM> frequently are not displayed at the regular intervals which
the terminal used.
- <STRONG>o</STRONG> The <EM>lantern</EM> is a special case. It originated with the AT&amp;T 4410
- terminal in the early 1980s. There is no accessible documentation
+ <STRONG>o</STRONG> The <EM>lantern</EM> is a special case. It originated with the AT&amp;T 4410
+ terminal in the early 1980s. There is no accessible documentation
depicting the lantern symbol on the AT&amp;T terminal.
Lacking documentation, most readers assume that a <EM>storm</EM> <EM>lantern</EM> was
intended. But there are several possibilities, all with problems.
- Unicode 6.0 (2010) does provide two lantern symbols: U+1F383 and
- U+1F3EE. Those were not available in 2002, and are irrelevant
- since they lie outside the BMP and as a result are not generally
+ Unicode 6.0 (2010) does provide two lantern symbols: U+1F383 and
+ U+1F3EE. Those were not available in 2002, and are irrelevant
+ since they lie outside the BMP and as a result are not generally
available in terminals. They are not storm lanterns, in any case.
Most <EM>storm</EM> <EM>lanterns</EM> have a tapering glass chimney (to guard against
tipping); some have a wire grid protecting the chimney.
- For the tapering appearance, U+2603 was adequate. In use on a
+ For the tapering appearance, U+2603 was adequate. In use on a
terminal, no one can tell what the image represents. Unicode calls
it a snowman.
- Others have suggested these alternatives: S U+00A7 (section mark),
- <STRONG>O</STRONG> U+0398 (theta), <STRONG>O</STRONG> U+03A6 (phi), d U+03B4 (delta), U+2327 (x in a
- rectangle), U+256C (forms double vertical and horizontal), and
- U+2612 (ballot box with x).
+ Others have suggested these alternatives: &lt;section&gt; U+00A7 (section
+ mark), &lt;Theta&gt; U+0398 (theta), &lt;Phi&gt; U+03A6 (phi), &lt;delta&gt; U+03B4
+ (delta), U+2327 (x in a rectangle), U+256C (forms double vertical
+ and horizontal), and U+2612 (ballot box with x).
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, <STRONG>curs_out-</STRONG>
- <STRONG><A HREF="curs_outopts.3x.html">opts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG>putwc(3)</STRONG>
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>,
+ <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG>putwc(3)</STRONG>
diff --git a/doc/html/man/curs_add_wchstr.3x.html b/doc/html/man/curs_add_wchstr.3x.html
index 60b5b7c..deb49e1 100644
--- a/doc/html/man/curs_add_wchstr.3x.html
+++ b/doc/html/man/curs_add_wchstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2002-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_add_wchstr.3x,v 1.13 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_add_wchstr.3x,v 1.15 2020/12/19 21:39:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>add_wchnstr(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wadd_wchstr(WINDOW</STRONG> <STRONG>*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wadd_wchnstr(WINDOW</STRONG> <STRONG>*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvadd_wchstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvadd_wchnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwadd_wchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>);</STRONG>
@@ -112,7 +113,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>.
Comparable functions in the narrow-character (ncurses) library are de-
scribed in <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>.
diff --git a/doc/html/man/curs_addch.3x.html b/doc/html/man/curs_addch.3x.html
index fa2f94d..b19e72e 100644
--- a/doc/html/man/curs_addch.3x.html
+++ b/doc/html/man/curs_addch.3x.html
@@ -1,7 +1,7 @@
-<!--
+<!--
* t
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_addch.3x,v 1.51 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_addch.3x,v 1.56 2021/06/17 21:30:22 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,12 +55,13 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>addch(const</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>waddch(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvaddch(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwaddch(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>echochar(const</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>wechochar(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
+ <STRONG>int</STRONG> <STRONG>addch(const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>waddch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvaddch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwaddch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>echochar(const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wechochar(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -95,34 +96,35 @@
<STRONG>o</STRONG> Tabs are considered to be at every eighth column. The tab interval
may be altered by setting the <STRONG>TABSIZE</STRONG> variable.
- If <EM>ch</EM> is any other control character, it is drawn in <STRONG>^</STRONG><EM>X</EM> notation.
- Calling <STRONG>winch</STRONG> after adding a control character does not return the
- character itself, but instead returns the ^-representation of the con-
- trol character.
+ If <EM>ch</EM> is any other nonprintable character, it is drawn in printable
+ form, i.e., the <STRONG>^</STRONG><EM>X</EM> notation used by <STRONG><A HREF="unctrl.3x.html">unctrl(3x)</A></STRONG>. Calling <STRONG>winch</STRONG> after
+ adding a nonprintable character does not return the character itself,
+ but instead returns the printable representation of the character.
Video attributes can be combined with a character argument passed to
<STRONG>addch</STRONG> or related functions by logical-ORing them into the character.
(Thus, text, including attributes, can be copied from one place to
- another using <STRONG><A HREF="curs_inch.3x.html">inch(3x)</A></STRONG> and <STRONG>addch</STRONG>.) See the <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> page for val-
- ues of predefined video attribute constants that can be usefully OR'ed
- into characters.
+ another using <STRONG><A HREF="curs_inch.3x.html">inch(3x)</A></STRONG> and <STRONG>addch</STRONG>.) See the <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> page for
+ values of predefined video attribute constants that can be usefully
+ OR'ed into characters.
</PRE><H3><a name="h3-Echoing-characters">Echoing characters</a></H3><PRE>
The <STRONG>echochar</STRONG> and <STRONG>wechochar</STRONG> routines are equivalent to a call to <STRONG>addch</STRONG>
followed by a call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>, or a call to <STRONG>waddch</STRONG> followed by a
call to <STRONG>wrefresh</STRONG>. The knowledge that only a single character is being
- output is used and, for non-control characters, a considerable perfor-
- mance gain may be seen by using these routines instead of their equiva-
- lents.
+ output is used and, for non-control characters, a considerable
+ performance gain may be seen by using these routines instead of their
+ equivalents.
</PRE><H3><a name="h3-Line-Graphics">Line Graphics</a></H3><PRE>
The following variables may be used to add line drawing characters to
the screen with routines of the <STRONG>addch</STRONG> family. The default character
listed below is used if the <STRONG>acsc</STRONG> capability does not define a terminal-
- specific replacement for it, or if the terminal and locale configura-
- tion requires Unicode but the library is unable to use Unicode.
+ specific replacement for it, or if the terminal and locale
+ configuration requires Unicode but the library is unable to use
+ Unicode.
The names are taken from VT100 nomenclature.
@@ -165,14 +167,25 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on success (the
- SVr4 manuals specify only "an integer value other than <STRONG>ERR</STRONG>") upon suc-
- cessful completion, unless otherwise noted in the preceding routine
+ SVr4 manuals specify only "an integer value other than <STRONG>ERR</STRONG>") upon
+ successful completion, unless otherwise noted in the preceding routine
descriptions.
- Functions with a "mv" prefix first perform a cursor movement using
+ Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
the window pointer is null.
+ If it is not possible to add a complete character, an error is
+ returned:
+
+ <STRONG>o</STRONG> If <STRONG>scrollok</STRONG> is not enabled, writing a character at the lower right
+ margin succeeds. However, an error is returned because it is not
+ possible to wrap to a new line
+
+ <STRONG>o</STRONG> If an error is detected when converting a multibyte character to a
+ sequence of bytes, or if it is not possible to add all of the
+ resulting bytes in the window, an error is returned.
+
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
Note that <STRONG>addch</STRONG>, <STRONG>mvaddch</STRONG>, <STRONG>mvwaddch</STRONG>, and <STRONG>echochar</STRONG> may be macros.
@@ -186,9 +199,9 @@
</PRE><H3><a name="h3-ACS-Symbols">ACS Symbols</a></H3><PRE>
X/Open Curses states that the <EM>ACS</EM><STRONG>_</STRONG> definitions are <STRONG>char</STRONG> constants. For
- the wide-character implementation (see <STRONG>curs_add_wch</STRONG>), there are analo-
- gous <EM>WACS</EM><STRONG>_</STRONG> definitions which are <STRONG>cchar_t</STRONG> constants. Some implementa-
- tions are problematic:
+ the wide-character implementation (see <STRONG>curs_add_wch</STRONG>), there are
+ analogous <EM>WACS</EM><STRONG>_</STRONG> definitions which are <STRONG>cchar_t</STRONG> constants. Some
+ implementations are problematic:
<STRONG>o</STRONG> Some implementations define the ACS symbols to a constant (such as
Solaris), while others define those to entries in an array.
@@ -198,20 +211,20 @@
for compatibility.
<STRONG>o</STRONG> HPUX curses equates some of the <EM>ACS</EM><STRONG>_</STRONG> symbols to the analogous <EM>WACS</EM><STRONG>_</STRONG>
- symbols as if the <EM>ACS</EM><STRONG>_</STRONG> symbols were wide characters. The misde-
- fined symbols are the arrows and other symbols which are not used
- for line-drawing.
+ symbols as if the <EM>ACS</EM><STRONG>_</STRONG> symbols were wide characters. The
+ misdefined symbols are the arrows and other symbols which are not
+ used for line-drawing.
<STRONG>o</STRONG> X/Open Curses (issues 2 through 7) has a typographical error for
- the ACS_LANTERN symbol, equating its "VT100+ Character" to <STRONG>I</STRONG> (capi-
- tal I), while the header files for SVr4 curses and the various
+ the ACS_LANTERN symbol, equating its "VT100+ Character" to <STRONG>I</STRONG>
+ (capital I), while the header files for SVr4 curses and the various
implementations use <STRONG>i</STRONG> (lowercase).
None of the terminal descriptions on Unix platforms use uppercase-
- I, except for Solaris (i.e., <EM>screen</EM>'s terminal description, appar-
- ently based on the X/Open documentation around 1995). On the other
- hand, the terminal description <EM>gs6300</EM> (AT&amp;T PC6300 with EMOTS Ter-
- minal Emulator) uses lowercase-i.
+ I, except for Solaris (i.e., <EM>screen</EM>'s terminal description,
+ apparently based on the X/Open documentation around 1995). On the
+ other hand, the terminal description <EM>gs6300</EM> (AT&amp;T PC6300 with EMOTS
+ Terminal Emulator) uses lowercase-i.
Some ACS symbols (ACS_S3, ACS_S7, ACS_LEQUAL, ACS_GEQUAL, ACS_PI,
ACS_NEQUAL, ACS_STERLING) were not documented in any publicly released
@@ -228,9 +241,9 @@
<STRONG>o</STRONG> whether the <EM>locale</EM> uses UTF-8 encoding.
- In certain cases, the terminal is unable to display line-drawing char-
- acters except by using UTF-8 (see the discussion of <STRONG>NCURSES_NO_UTF8_ACS</STRONG>
- in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>).
+ In certain cases, the terminal is unable to display line-drawing
+ characters except by using UTF-8 (see the discussion of
+ <STRONG>NCURSES_NO_UTF8_ACS</STRONG> in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>).
</PRE><H3><a name="h3-Character-Set">Character Set</a></H3><PRE>
@@ -238,9 +251,9 @@
single character. As discussed in <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, that character may
have been more than eight bits in an SVr3 or SVr4 implementation, but
in the X/Open Curses model, the details are not given. The important
- distinction between SVr4 curses and X/Open Curses is that the non-char-
- acter information (attributes and color) was separated from the charac-
- ter information which is packed in a <STRONG>chtype</STRONG> to pass to <STRONG>waddch</STRONG>.
+ distinction between SVr4 curses and X/Open Curses is that the non-
+ character information (attributes and color) was separated from the
+ character information which is packed in a <STRONG>chtype</STRONG> to pass to <STRONG>waddch</STRONG>.
In this implementation, <STRONG>chtype</STRONG> holds an eight-bit character. But
ncurses allows multibyte characters to be passed in a succession of
@@ -257,8 +270,8 @@
multibyte character by moving the current location (e.g., using <STRONG>wmove</STRONG>),
ncurses discards the partially built character, starting over again.
- For portability to other implementations, do not rely upon this behav-
- ior:
+ For portability to other implementations, do not rely upon this
+ behavior:
<STRONG>o</STRONG> check if a character can be represented as a single byte in the
current locale before attempting call <STRONG>waddch</STRONG>, and
@@ -277,8 +290,8 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>, <STRONG>curs_out-</STRONG>
- <STRONG><A HREF="curs_outopts.3x.html">opts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>,
+ <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>.
Comparable functions in the wide-character (ncursesw) library are
described in <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>.
diff --git a/doc/html/man/curs_addchstr.3x.html b/doc/html/man/curs_addchstr.3x.html
index 7871292..78abdeb 100644
--- a/doc/html/man/curs_addchstr.3x.html
+++ b/doc/html/man/curs_addchstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 1998-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_addchstr.3x,v 1.19 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_addchstr.3x,v 1.22 2020/12/19 21:39:20 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,14 +55,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>addchstr(const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>addchnstr(const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>waddchstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>waddchnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvaddchstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvaddchnstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwaddchstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwaddchnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>addchstr(const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>addchnstr(const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>waddchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>waddchnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvaddchstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvaddchnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwaddchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwaddchnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -106,7 +107,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>.
Comparable functions in the wide-character (ncursesw) library are de-
scribed in <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>.
diff --git a/doc/html/man/curs_addstr.3x.html b/doc/html/man/curs_addstr.3x.html
index 243afe4..71abb99 100644
--- a/doc/html/man/curs_addstr.3x.html
+++ b/doc/html/man/curs_addstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 1998-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_addstr.3x,v 1.20 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_addstr.3x,v 1.23 2020/10/17 23:11:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>addnstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>waddstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>waddnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvaddstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvaddnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwaddstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
@@ -67,16 +68,16 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
These functions write the (null-terminated) character string <EM>str</EM> on the
- given window. It is similar to calling <STRONG>waddch</STRONG> once for each character
- in the string.
+ given window. It is similar to calling <STRONG>waddch</STRONG> once for each byte in
+ the string.
The <EM>mv</EM> functions perform cursor movement once, before writing any char-
acters. Thereafter, the cursor is advanced as a side-effect of writing
to the window.
- The four functions with <EM>n</EM> as the last argument write at most <EM>n</EM> charac-
- ters, or until a terminating null is reached. If <EM>n</EM> is -1, then the en-
- tire string will be added.
+ The four functions with <EM>n</EM> as the last argument write at most <EM>n</EM> bytes,
+ or until a terminating null is reached. If <EM>n</EM> is -1, then the entire
+ string will be added.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -93,7 +94,15 @@
Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
- the window pointer is null.
+ the window pointer is null. If an error is returned by the <STRONG>wmove</STRONG>, no
+ characters are added to the window.
+
+ If an error is returned by <STRONG>waddch</STRONG> (e.g., because the window is not
+ large enough, or an illegal byte sequence was detected) only part of
+ the string may be added. Aside from that, there is a special case in
+ <STRONG>waddch</STRONG> where an error may be returned after successfully writing a
+ character to the lower-right corner of a window when <STRONG>scrollok</STRONG> is dis-
+ abled.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
diff --git a/doc/html/man/curs_addwstr.3x.html b/doc/html/man/curs_addwstr.3x.html
index 6fea2ae..5285206 100644
--- a/doc/html/man/curs_addwstr.3x.html
+++ b/doc/html/man/curs_addwstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2002-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_addwstr.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_addwstr.3x,v 1.15 2020/10/17 23:12:22 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>addnwstr(const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>waddwstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>waddnwstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvaddwstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvaddnwstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwaddwstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
diff --git a/doc/html/man/curs_attr.3x.html b/doc/html/man/curs_attr.3x.html
index 4e9cccc..13ead71 100644
--- a/doc/html/man/curs_attr.3x.html
+++ b/doc/html/man/curs_attr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -401,8 +401,8 @@
have the <STRONG>enter_italics_mode</STRONG> (<STRONG>sitm</STRONG>) and <STRONG>exit_italics_mode</STRONG> (<STRONG>ritm</STRONG>) capa-
bilities. Italics are not mentioned in X/Open Curses. Unlike the oth-
er video attributes, <STRONG>A_ITALIC</STRONG> is unrelated to the <STRONG>set_attributes</STRONG> capa-
- bilities. This implementation makes the assumption that <STRONG>exit_at-</STRONG>
- <STRONG>tribute_mode</STRONG> may also reset italics.
+ bilities. This implementation makes the assumption that <STRONG>exit_attri-</STRONG>
+ <STRONG>bute_mode</STRONG> may also reset italics.
Each of the functions added by XSI Curses has a parameter <EM>opts</EM>, which
X/Open Curses still (after more than twenty years) documents as re-
diff --git a/doc/html/man/curs_beep.3x.html b/doc/html/man/curs_beep.3x.html
index e486c8b..f48c174 100644
--- a/doc/html/man/curs_beep.3x.html
+++ b/doc/html/man/curs_beep.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2005,2010 Free Software Foundation, Inc. *
@@ -59,11 +59,11 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The <STRONG>beep</STRONG> and <STRONG>flash</STRONG> routines are used to alert the terminal user. The
- routine <STRONG>beep</STRONG> sounds an audible alarm on the terminal, if possible; oth-
- erwise it flashes the screen (visible bell). The routine <STRONG>flash</STRONG> flashes
- the screen, and if that is not possible, sounds the alert. If neither
- alert is possible, nothing happens. Nearly all terminals have an audi-
- ble alert (bell or beep), but only some can flash the screen.
+ routine <STRONG>beep</STRONG> sounds an audible alarm on the terminal, if possible;
+ otherwise it flashes the screen (visible bell). The routine <STRONG>flash</STRONG>
+ flashes the screen, and if that is not possible, sounds the alert. If
+ neither alert is possible, nothing happens. Nearly all terminals have
+ an audible alert (bell or beep), but only some can flash the screen.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -72,8 +72,8 @@
</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
- SVr4's beep and flash routines always returned <STRONG>OK</STRONG>, so it was not possi-
- ble to tell when the beep or flash failed.
+ SVr4's beep and flash routines always returned <STRONG>OK</STRONG>, so it was not
+ possible to tell when the beep or flash failed.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
diff --git a/doc/html/man/curs_bkgd.3x.html b/doc/html/man/curs_bkgd.3x.html
index 0e3dca8..be9dc1e 100644
--- a/doc/html/man/curs_bkgd.3x.html
+++ b/doc/html/man/curs_bkgd.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_bkgd.3x,v 1.30 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_bkgd.3x,v 1.32 2021/06/17 21:30:22 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -56,8 +56,10 @@
<STRONG>void</STRONG> <STRONG>bkgdset(chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
<STRONG>void</STRONG> <STRONG>wbkgdset(WINDOW</STRONG> <STRONG>*</STRONG><EM>win,</EM> <EM>chtype</EM> <EM>ch</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>bkgd(chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wbkgd(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+
<STRONG>chtype</STRONG> <STRONG>getbkgd(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
@@ -65,8 +67,8 @@
</PRE><H3><a name="h3-bkgdset">bkgdset</a></H3><PRE>
The <STRONG>bkgdset</STRONG> and <STRONG>wbkgdset</STRONG> routines manipulate the background of the
- named window. The window background is a <STRONG>chtype</STRONG> consisting of any com-
- bination of attributes (i.e., rendition) and a character. The
+ named window. The window background is a <STRONG>chtype</STRONG> consisting of any
+ combination of attributes (i.e., rendition) and a character. The
attribute part of the background is combined (OR'ed) with all non-blank
characters that are written into the window with <STRONG>waddch</STRONG>. Both the
character and attribute parts of the background are combined with the
@@ -97,9 +99,9 @@
This implementation, like SVr4 curses, does not store the background
and window attribute contributions to each cell separately. It updates
- the rendition by comparing the character, non-color attributes and col-
- ors contained in the background. For each cell in the window, whether
- or not it is blank:
+ the rendition by comparing the character, non-color attributes and
+ colors contained in the background. For each cell in the window,
+ whether or not it is blank:
<STRONG>o</STRONG> The library first compares the <EM>character</EM>, and if it matches the
current character part of the background, it replaces that with the
@@ -107,20 +109,20 @@
<STRONG>o</STRONG> The library then checks if the cell uses color, i.e., its color
pair value is nonzero. If not, it simply replaces the attributes
- and color pair in the cell with those from the new background char-
- acter.
+ and color pair in the cell with those from the new background
+ character.
<STRONG>o</STRONG> If the cell uses color, and that matches the color in the current
background, the library removes attributes which may have come from
the current background and adds attributes from the new background.
- It finishes by setting the cell to use the color from the new back-
- ground.
+ It finishes by setting the cell to use the color from the new
+ background.
<STRONG>o</STRONG> If the cell uses color, and that does not match the color in the
current background, the library updates only the non-color
- attributes, first removing those which may have come from the cur-
- rent background, and then adding attributes from the new back-
- ground.
+ attributes, first removing those which may have come from the
+ current background, and then adding attributes from the new
+ background.
If the background's character value is zero, a space is assumed.
@@ -136,8 +138,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
These functions are described in the XSI Curses standard, Issue 4. It
- specifies that <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> return <STRONG>ERR</STRONG> on failure, but gives no fail-
- ure conditions.
+ specifies that <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> return <STRONG>ERR</STRONG> on failure, but gives no
+ failure conditions.
The routines <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> return the integer <STRONG>OK</STRONG>, unless the library
has not been initialized.
diff --git a/doc/html/man/curs_bkgrnd.3x.html b/doc/html/man/curs_bkgrnd.3x.html
index a1ab924..8e60e21 100644
--- a/doc/html/man/curs_bkgrnd.3x.html
+++ b/doc/html/man/curs_bkgrnd.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 2002-2015,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_bkgrnd.3x,v 1.11 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_bkgrnd.3x,v 1.12 2020/10/17 23:13:15 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -56,8 +56,10 @@
<STRONG>int</STRONG> <STRONG>bkgrnd(</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wbkgrnd(</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+
<STRONG>void</STRONG> <STRONG>bkgrndset(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM> <STRONG>);</STRONG>
<STRONG>void</STRONG> <STRONG>wbkgrndset(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>getbkgrnd(cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wgetbkgrnd(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
@@ -71,8 +73,8 @@
The attribute part of the background is combined (OR'ed) with all non-
blank characters that are written into the window with <STRONG>waddch</STRONG>. Both
the character and attribute parts of the background are combined with
- the blank characters. The background becomes a property of the charac-
- ter and moves with the character through any scrolling and
+ the blank characters. The background becomes a property of the
+ character and moves with the character through any scrolling and
insert/delete line/character operations.
To the extent possible on a particular terminal, the attribute part of
@@ -82,8 +84,8 @@
</PRE><H3><a name="h3-bkgrnd">bkgrnd</a></H3><PRE>
The <STRONG>bkgrnd</STRONG> and <STRONG>wbkgrnd</STRONG> functions set the background property of the
- current or specified window and then apply this setting to every char-
- acter position in that window:
+ current or specified window and then apply this setting to every
+ character position in that window:
<STRONG>o</STRONG> The rendition of every character on the screen is changed to the
new background rendition.
diff --git a/doc/html/man/curs_border.3x.html b/doc/html/man/curs_border.3x.html
index f148f20..e70367d 100644
--- a/doc/html/man/curs_border.3x.html
+++ b/doc/html/man/curs_border.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2007,2010 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_border.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_border.3x,v 1.27 2020/10/18 00:33:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,20 +54,24 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>border(chtype</STRONG> <STRONG>ls,</STRONG> <STRONG>chtype</STRONG> <STRONG>rs,</STRONG> <STRONG>chtype</STRONG> <STRONG>ts,</STRONG> <STRONG>chtype</STRONG> <STRONG>bs,</STRONG>
- <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG> <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
- <STRONG>int</STRONG> <STRONG>wborder(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ls,</STRONG> <STRONG>chtype</STRONG> <STRONG>rs,</STRONG>
- <STRONG>chtype</STRONG> <STRONG>ts,</STRONG> <STRONG>chtype</STRONG> <STRONG>bs,</STRONG> <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG>
- <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
- <STRONG>int</STRONG> <STRONG>box(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>verch,</STRONG> <STRONG>chtype</STRONG> <STRONG>horch);</STRONG>
- <STRONG>int</STRONG> <STRONG>hline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>whline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>vline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>wvline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvhline(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwhline(WINDOW</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvvline(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwvline(WINDOW</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>border(chtype</STRONG> <EM>ls</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>rs</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ts</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bs</EM><STRONG>,</STRONG>
+ <STRONG>chtype</STRONG> <EM>tl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tr</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>br</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wborder(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ls</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>rs</EM><STRONG>,</STRONG>
+ <STRONG>chtype</STRONG> <EM>ts</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bs</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tr</EM><STRONG>,</STRONG>
+ <STRONG>chtype</STRONG> <EM>bl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>br</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>box(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>verch</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>horch</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>hline(chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>whline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vline(chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wvline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvhline(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwhline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvvline(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwvline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_border_set.3x.html b/doc/html/man/curs_border_set.3x.html
index 9c1f845..fad5c0e 100644
--- a/doc/html/man/curs_border_set.3x.html
+++ b/doc/html/man/curs_border_set.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2002-2011,2012 Free Software Foundation, Inc. *
diff --git a/doc/html/man/curs_clear.3x.html b/doc/html/man/curs_clear.3x.html
index d48eeb2..a6e9441 100644
--- a/doc/html/man/curs_clear.3x.html
+++ b/doc/html/man/curs_clear.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2016 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_clear.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_clear.3x,v 1.20 2020/10/24 09:19:37 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -52,16 +52,19 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
- <STRONG>#</STRONG> <STRONG>include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
+ <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>int</STRONG> <STRONG>erase(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>werase(WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>werase(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>clear(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>wclear(WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wclear(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>clrtobot(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>wclrtobot(WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wclrtobot(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>clrtoeol(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>wclrtoeol(WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wclrtoeol(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -85,12 +88,14 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All routines return the integer <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure. The
- SVr4.0 manual says "or a non-negative integer if <STRONG>immedok</STRONG> is set", but
- this appears to be an error.
+ All routines return the integer <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
- X/Open defines no error conditions. In this implementation, functions
- using a window pointer parameter return an error if it is null.
+ X/Open defines no error conditions. In this implementation,
+
+ <STRONG>o</STRONG> functions using a window pointer parameter return an error if it is
+ null
+
+ <STRONG>o</STRONG> <STRONG>wclrtoeol</STRONG> returns an error if the cursor position is about to wrap.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -103,17 +108,22 @@
standard specifies that they return <STRONG>ERR</STRONG> on failure, but specifies no
error conditions.
- Some historic curses implementations had, as an undocumented feature,
- the ability to do the equivalent of <STRONG>clearok(...,</STRONG> <STRONG>1)</STRONG> by saying <STRONG>touch-</STRONG>
+ The SVr4.0 manual says that these functions could return "a non-nega-
+ tive integer if <STRONG>immedok</STRONG> is set", referring to the return-value of <STRONG>wre-</STRONG>
+ <STRONG>fresh</STRONG>. In that implementation, <STRONG>wrefresh</STRONG> would return a count of the
+ number of characters written to the terminal.
+
+ Some historic curses implementations had, as an undocumented feature,
+ the ability to do the equivalent of <STRONG>clearok(...,</STRONG> <STRONG>1)</STRONG> by saying <STRONG>touch-</STRONG>
<STRONG>win(stdscr)</STRONG> or <STRONG>clear(stdscr)</STRONG>. This will not work under ncurses.
This implementation, and others such as Solaris, sets the current posi-
tion to 0,0 after erasing via <STRONG>werase</STRONG> and <STRONG>wclear</STRONG>. That fact is not doc-
- umented in other implementations, and may not be true of implementa-
+ umented in other implementations, and may not be true of implementa-
tions which were not derived from SVr4 source.
Not obvious from the description, most implementations clear the screen
- after <STRONG>wclear</STRONG> even for a subwindow or derived window. If you do not
+ after <STRONG>wclear</STRONG> even for a subwindow or derived window. If you do not
want to clear the screen during the next <STRONG>wrefresh</STRONG>, use <STRONG>werase</STRONG> instead.
diff --git a/doc/html/man/curs_color.3x.html b/doc/html/man/curs_color.3x.html
index 591ed40..22964c4 100644
--- a/doc/html/man/curs_color.3x.html
+++ b/doc/html/man/curs_color.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_color.3x,v 1.62 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_color.3x,v 1.66 2021/09/04 19:42:20 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -61,22 +61,22 @@
<STRONG>bool</STRONG> <STRONG>has_colors(void);</STRONG>
<STRONG>bool</STRONG> <STRONG>can_change_color(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>init_pair(short</STRONG> <STRONG>pair,</STRONG> <STRONG>short</STRONG> <STRONG>f,</STRONG> <STRONG>short</STRONG> <STRONG>b);</STRONG>
- <STRONG>int</STRONG> <STRONG>init_color(short</STRONG> <STRONG>color,</STRONG> <STRONG>short</STRONG> <STRONG>r,</STRONG> <STRONG>short</STRONG> <STRONG>g,</STRONG> <STRONG>short</STRONG> <STRONG>b);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_pair(short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>f</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_color(short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>b</EM><STRONG>);</STRONG>
/* extensions */
- <STRONG>int</STRONG> <STRONG>init_extended_pair(int</STRONG> <STRONG>pair,</STRONG> <STRONG>int</STRONG> <STRONG>f,</STRONG> <STRONG>int</STRONG> <STRONG>b);</STRONG>
- <STRONG>int</STRONG> <STRONG>init_extended_color(int</STRONG> <STRONG>color,</STRONG> <STRONG>int</STRONG> <STRONG>r,</STRONG> <STRONG>int</STRONG> <STRONG>g,</STRONG> <STRONG>int</STRONG> <STRONG>b);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_extended_pair(int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>f</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_extended_color(int</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>b</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>color_content(short</STRONG> <STRONG>color,</STRONG> <STRONG>short</STRONG> <STRONG>*r,</STRONG> <STRONG>short</STRONG> <STRONG>*g,</STRONG> <STRONG>short</STRONG> <STRONG>*b);</STRONG>
- <STRONG>int</STRONG> <STRONG>pair_content(short</STRONG> <STRONG>pair,</STRONG> <STRONG>short</STRONG> <STRONG>*f,</STRONG> <STRONG>short</STRONG> <STRONG>*b);</STRONG>
+ <STRONG>int</STRONG> <STRONG>color_content(short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG><EM>r</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG><EM>g</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG><EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>pair_content(short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG><EM>f</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG><EM>b</EM><STRONG>);</STRONG>
/* extensions */
- <STRONG>int</STRONG> <STRONG>extended_color_content(int</STRONG> <STRONG>color,</STRONG> <STRONG>int</STRONG> <STRONG>*r,</STRONG> <STRONG>int</STRONG> <STRONG>*g,</STRONG> <STRONG>int</STRONG> <STRONG>*b);</STRONG>
- <STRONG>int</STRONG> <STRONG>extended_pair_content(int</STRONG> <STRONG>pair,</STRONG> <STRONG>int</STRONG> <STRONG>*f,</STRONG> <STRONG>int</STRONG> <STRONG>*b);</STRONG>
+ <STRONG>int</STRONG> <STRONG>extended_color_content(int</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>r</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>g</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>extended_pair_content(int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>f</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>b</EM><STRONG>);</STRONG>
/* extensions */
<STRONG>void</STRONG> <STRONG>reset_color_pairs(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>COLOR_PAIR(int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>COLOR_PAIR(int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>PAIR_NUMBER(</STRONG><EM>attrs</EM><STRONG>);</STRONG>
@@ -135,8 +135,8 @@
<STRONG>o</STRONG> If the parameter passed to <STRONG>waddch</STRONG> is <EM>not</EM> <EM>blank</EM>, or it does not use
the special color pair 0, <STRONG>curses</STRONG> prefers the color pair from the
- parameter, if it is nonzero. Otherwise, it tries the window at-
- tribute next, and finally the background character.
+ parameter, if it is nonzero. Otherwise, it tries the window attri-
+ bute next, and finally the background character.
Some <STRONG>curses</STRONG> functions such as <STRONG>wprintw</STRONG> call <STRONG>waddch</STRONG>. Those do not com-
bine its parameter with a color pair. Consequently those calls use on-
@@ -439,6 +439,50 @@
<STRONG>o</STRONG> Color RGB values are not settable.
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+ SVr3.2 introduced color support to curses in 1987.
+
+ SVr4 made internal changes, e.g., moving the storage for the color
+ state from <STRONG>SP</STRONG> (the <STRONG>SCREEN</STRONG> structure) to <STRONG>cur_term</STRONG> (the <STRONG>TERMINAL</STRONG> struc-
+ ture), but provided the same set of library functions.
+
+ SVr4 curses limits the number of color pairs to 64, reserving color
+ pair zero (0) as the terminal's initial uncolored state. This limit
+ arises because the color pair information is a bitfield in the <STRONG>chtype</STRONG>
+ data type (denoted by <STRONG>A_COLOR</STRONG>).
+
+ Other implementations of curses had different limits:
+
+ <STRONG>o</STRONG> PCCurses (1987-1990) provided for only eight (8) colors.
+
+ <STRONG>o</STRONG> PDCurses (1992-present) inherited the 8-color limitation from PC-
+ Curses, but changed this to 256 in version 2.5 (2001), along with
+ changing <STRONG>chtype</STRONG> from 16-bits to 32-bits.
+
+ <STRONG>o</STRONG> X/Open Curses (1992-present) added a new structure <STRONG>cchar_t</STRONG> to store
+ the character, attributes and color-pair values, allowing increased
+ range of color-pairs. Both color-pairs and color-values used a
+ signed <STRONG>short</STRONG>, limiting values to 15 bits.
+
+ <STRONG>o</STRONG> ncurses (1992-present) uses eight bits for <STRONG>A_COLOR</STRONG> in <STRONG>chtype</STRONG> val-
+ ues.
+
+ Version 5.3 provided a wide-character interface (2002), but left
+ color-pairs as part of the attributes-field.
+
+ Since version 6 (2015), ncurses uses a separate <STRONG>int</STRONG> for color-pairs
+ in the <STRONG>cchar_t</STRONG> values. When those color-pair values fit in 8 bits,
+ ncurses allows color-pairs to be manipulated via the functions us-
+ ing <STRONG>chtype</STRONG> values.
+
+ <STRONG>o</STRONG> NetBSD curses used 6 bits from 2000 (when colors were first sup-
+ ported) until 2004. At that point, NetBSD changed to use 10 bits.
+ As of 2021, that size is unchanged. Like ncurses before version 6,
+ the NetBSD color-pair information is stored in the attributes field
+ of <STRONG>cchar_t</STRONG>, limiting the number of color-pairs by the size of the
+ bitfield.
+
+
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
This implementation satisfies XSI Curses's minimum maximums for <STRONG>COLORS</STRONG>
and <STRONG>COLOR_PAIRS</STRONG>.
@@ -511,6 +555,7 @@
</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-NOTES">NOTES</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
diff --git a/doc/html/man/curs_delch.3x.html b/doc/html/man/curs_delch.3x.html
index 341efbf..31c163a 100644
--- a/doc/html/man/curs_delch.3x.html
+++ b/doc/html/man/curs_delch.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2006,2010 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_delch.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_delch.3x,v 1.15 2020/10/24 09:36:43 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,24 +55,24 @@
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>int</STRONG> <STRONG>delch(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>wdelch(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvdelch(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwdelch(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wdelch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvdelch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwdelch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
These routines delete the character under the cursor; all characters to
the right of the cursor on the same line are moved to the left one
position and the last character on the line is filled with a blank.
- The cursor position does not change (after moving to <EM>y</EM>, <EM>x</EM>, if speci-
- fied). (This does not imply use of the hardware delete character fea-
- ture.)
+ The cursor position does not change (after moving to <EM>y</EM>, <EM>x</EM>, if
+ specified). (This does not imply use of the hardware delete character
+ feature.)
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4 speci-
- fies only "an integer value other than <STRONG>ERR</STRONG>") upon successful comple-
- tion.
+ All routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4
+ specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful
+ completion.
Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
diff --git a/doc/html/man/curs_deleteln.3x.html b/doc/html/man/curs_deleteln.3x.html
index 83add2b..e2cdde0 100644
--- a/doc/html/man/curs_deleteln.3x.html
+++ b/doc/html/man/curs_deleteln.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2007,2010 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_deleteln.3x,v 1.15 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_deleteln.3x,v 1.17 2020/10/18 00:28:51 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,11 +55,13 @@
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>int</STRONG> <STRONG>deleteln(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>wdeleteln(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>insdelln(int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>winsdelln(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wdeleteln(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>insdelln(int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winsdelln(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>insertln(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>winsertln(WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winsertln(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -74,14 +76,14 @@
the cursor), and move the remaining lines up. The bottom <EM>n</EM> lines are
cleared. The current cursor position remains the same.
- The <STRONG>insertln</STRONG> and <STRONG>winsertln</STRONG> routines insert a blank line above the cur-
- rent line and the bottom line is lost.
+ The <STRONG>insertln</STRONG> and <STRONG>winsertln</STRONG> routines insert a blank line above the
+ current line and the bottom line is lost.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4 speci-
- fies only "an integer value other than <STRONG>ERR</STRONG>") upon successful comple-
- tion.
+ All routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4
+ specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful
+ completion.
X/Open defines no error conditions. In this implementation, if the
window parameter is null, an error is returned.
@@ -98,8 +100,8 @@
These routines do not require a hardware line delete or insert feature
in the terminal. In fact, they will not use hardware line
- delete/insert unless <STRONG>idlok(...,</STRONG> <STRONG>TRUE)</STRONG> has been set on the current win-
- dow.
+ delete/insert unless <STRONG>idlok(...,</STRONG> <STRONG>TRUE)</STRONG> has been set on the current
+ window.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
diff --git a/doc/html/man/curs_extend.3x.html b/doc/html/man/curs_extend.3x.html
index b37889a..1a84cf6 100644
--- a/doc/html/man/curs_extend.3x.html
+++ b/doc/html/man/curs_extend.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1999-2010,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 1999-on
- * @Id: curs_extend.3x,v 1.23 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_extend.3x,v 1.26 2021/03/13 13:43:05 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,7 +55,7 @@
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>curses_version(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>use_extended_names(bool</STRONG> <STRONG>enable);</STRONG>
+ <STRONG>int</STRONG> <STRONG>use_extended_names(bool</STRONG> <EM>enable</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -65,15 +65,17 @@
</PRE><H3><a name="h3-curses_version">curses_version</a></H3><PRE>
Use <STRONG>curses_version</STRONG> to get the version number, including patch level of
- the library, e.g., <STRONG>5.0.19991023</STRONG>
+ the library, prefixed by "ncurses", e.g.,
+
+ <STRONG>ncurses</STRONG> <STRONG>5.0.19991023</STRONG>
</PRE><H3><a name="h3-use_extended_names">use_extended_names</a></H3><PRE>
- The <STRONG>use_extended_names</STRONG> function controls whether the calling applica-
- tion is able to use user-defined or nonstandard names which may be com-
- piled into the terminfo description, i.e., via the terminfo or termcap
- interfaces. Normally these names are available for use, since the
- essential decision is made by using the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG> to compile
+ The <STRONG>use_extended_names</STRONG> function controls whether the calling
+ application is able to use user-defined or nonstandard names which may
+ be compiled into the terminfo description, i.e., via the terminfo or
+ termcap interfaces. Normally these names are available for use, since
+ the essential decision is made by using the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG> to compile
extended terminal definitions. However you can disable this feature to
ensure compatibility with other implementations of curses.
diff --git a/doc/html/man/curs_get_wch.3x.html b/doc/html/man/curs_get_wch.3x.html
index 6656205..232e8a2 100644
--- a/doc/html/man/curs_get_wch.3x.html
+++ b/doc/html/man/curs_get_wch.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2002-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_get_wch.3x,v 1.13 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_get_wch.3x,v 1.15 2021/05/22 22:33:19 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -58,10 +58,13 @@
<STRONG>int</STRONG> <STRONG>wget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvget_wch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>unget_wch(const</STRONG> <STRONG>wchar_t</STRONG> <EM>wch</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+
+</PRE><H3><a name="h3-wget_wch">wget_wch</a></H3><PRE>
The <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, and <STRONG>mvwget_wch</STRONG> functions read a char-
acter from the terminal associated with the current or specified win-
dow. In no-delay mode, if no input is waiting, the value <STRONG>ERR</STRONG> is re-
@@ -99,23 +102,30 @@
<STRONG><A HREF="define_key.3x.html">fine_key(3x)</A></STRONG> have no names, but also are expected to have values
outside the range of 8-bit characters.
+
+</PRE><H3><a name="h3-unget_wch">unget_wch</a></H3><PRE>
The <STRONG>unget_wch</STRONG> function pushes the wide character <EM>wch</EM> back onto the head
of the input queue, so the wide character is returned by the next call
to <STRONG>get_wch</STRONG>. The pushback of one character is guaranteed. If the pro-
gram calls <STRONG>unget_wch</STRONG> too many times without an intervening call to
<STRONG>get_wch</STRONG>, the operation may fail.
+ Unlike <STRONG>ungetch</STRONG> and <STRONG>wgetch</STRONG>, <STRONG>unget_wch</STRONG> cannot distinguish special charac-
+ ters returned by <STRONG>wget_wch</STRONG> from ordinary characters. An application can
+ push special keys which it may read via <STRONG>wget_wch</STRONG> by checking for the
+ <STRONG>KEY_CODE_YES</STRONG> result, and using <STRONG>ungetch</STRONG> for those special keys.
+
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- The header file <STRONG>&lt;curses.h&gt;</STRONG> automatically includes the header file
+ The header file <STRONG>&lt;curses.h&gt;</STRONG> automatically includes the header file
<STRONG>&lt;stdio.h&gt;</STRONG>.
- Applications should not define the escape key by itself as a single-
+ Applications should not define the escape key by itself as a single-
character function.
- When using <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, or <STRONG>mvwget_wch</STRONG>, applications
+ When using <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, or <STRONG>mvwget_wch</STRONG>, applications
should not use <STRONG>nocbreak</STRONG> mode and <STRONG>echo</STRONG> mode at the same time. Depending
- on the state of the tty driver when each character is typed, the pro-
+ on the state of the tty driver when each character is typed, the pro-
gram may produce undesirable results.
All functions except <STRONG>wget_wch</STRONG> and <STRONG>unget_wch</STRONG> may be macros.
@@ -123,14 +133,14 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
When <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, and <STRONG>mvwget_wch</STRONG> functions successful-
- ly report the pressing of a function key, they return <STRONG>KEY_CODE_YES</STRONG>.
+ ly report the pressing of a function key, they return <STRONG>KEY_CODE_YES</STRONG>.
When they successfully report a wide character, they return <STRONG>OK</STRONG>. Other-
wise, they return <STRONG>ERR</STRONG>.
Upon successful completion, <STRONG>unget_wch</STRONG> returns <STRONG>OK</STRONG>. Otherwise, the func-
tion returns <STRONG>ERR</STRONG>.
- Functions with a "mv" prefix first perform a cursor movement using
+ Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
the window pointer is null.
@@ -147,7 +157,12 @@
<ul>
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-wget_wch">wget_wch</a></li>
+<li><a href="#h3-unget_wch">unget_wch</a></li>
+</ul>
+</li>
<li><a href="#h2-NOTES">NOTES</a></li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
diff --git a/doc/html/man/curs_get_wstr.3x.html b/doc/html/man/curs_get_wstr.3x.html
index 4169df2..8b781cc 100644
--- a/doc/html/man/curs_get_wstr.3x.html
+++ b/doc/html/man/curs_get_wstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 2002-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_get_wstr.3x,v 1.20 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_get_wstr.3x,v 1.21 2020/10/17 23:17:24 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>getn_wstr(wint_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wget_wstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wgetn_wstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvget_wstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvgetn_wstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwget_wstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
diff --git a/doc/html/man/curs_getcchar.3x.html b/doc/html/man/curs_getcchar.3x.html
index adee87e..b749f02 100644
--- a/doc/html/man/curs_getcchar.3x.html
+++ b/doc/html/man/curs_getcchar.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2001-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_getcchar.3x,v 1.24 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_getcchar.3x,v 1.25 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -73,8 +73,8 @@
</PRE><H3><a name="h3-getcchar">getcchar</a></H3><PRE>
The <STRONG>getcchar</STRONG> function gets a wide-character string and rendition from a
- <STRONG>cchar_t</STRONG> argument. When <EM>wch</EM> is not a null pointer, the <STRONG>getcchar</STRONG> func-
- tion does the following:
+ <STRONG>cchar_t</STRONG> argument. When <EM>wch</EM> is not a null pointer, the <STRONG>getcchar</STRONG>
+ function does the following:
<STRONG>o</STRONG> Extracts information from a <STRONG>cchar_t</STRONG> value <EM>wcval</EM>
@@ -123,8 +123,8 @@
<STRONG>o</STRONG> For functions which retrieve the color, e.g., <STRONG>getcchar</STRONG>, if <EM>opts</EM> is
set it is treated as a pointer to <STRONG>int</STRONG>, and used to retrieve the
- color pair as an <STRONG>int</STRONG> value, in addition retrieving it via the stan-
- dard pointer to <STRONG>short</STRONG> parameter.
+ color pair as an <STRONG>int</STRONG> value, in addition retrieving it via the
+ standard pointer to <STRONG>short</STRONG> parameter.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -134,8 +134,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- When <EM>wch</EM> is a null pointer, <STRONG>getcchar</STRONG> returns the number of wide charac-
- ters referenced by <EM>wcval</EM>, including one for a trailing null.
+ When <EM>wch</EM> is a null pointer, <STRONG>getcchar</STRONG> returns the number of wide
+ characters referenced by <EM>wcval</EM>, including one for a trailing null.
When <EM>wch</EM> is not a null pointer, <STRONG>getcchar</STRONG> returns <STRONG>OK</STRONG> upon successful
completion, and <STRONG>ERR</STRONG> otherwise.
@@ -180,8 +180,8 @@
of spacing and non-spacing characters (<STRONG>CCHARW_MAX</STRONG>). That was probably
due to a misreading of the AIX 4 header files, because the X/Open
Curses document was not generally available at that time. Later (in
- 2002), this detail was overlooked when beginning to implement the func-
- tions using the structure.
+ 2002), this detail was overlooked when beginning to implement the
+ functions using the structure.
In practice, even four non-spacing characters may seem enough. X/Open
Curses documents possible uses for non-spacing characters, including
diff --git a/doc/html/man/curs_getch.3x.html b/doc/html/man/curs_getch.3x.html
index 63817d5..f912849 100644
--- a/doc/html/man/curs_getch.3x.html
+++ b/doc/html/man/curs_getch.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_getch.3x,v 1.55 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_getch.3x,v 1.57 2020/12/19 21:38:20 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -57,9 +57,13 @@
<STRONG>int</STRONG> <STRONG>getch(void);</STRONG>
<STRONG>int</STRONG> <STRONG>wgetch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win);</EM>
+
<STRONG>int</STRONG> <STRONG>mvgetch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwgetch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>ungetch(int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+
+ /* extension */
<STRONG>int</STRONG> <STRONG>has_key(int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
@@ -176,11 +180,11 @@
KEY_ENTER Enter or send
KEY_SRESET Soft (partial) reset
KEY_RESET Reset or hard reset
+
KEY_PRINT Print or copy
KEY_LL Home down or bottom (lower left)
KEY_A1 Upper left of keypad
KEY_A3 Upper right of keypad
-
KEY_B2 Center of keypad
KEY_C1 Lower left of keypad
KEY_C3 Lower right of keypad
@@ -371,8 +375,8 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>,
- <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>, <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>, <STRONG>curs_out-</STRONG>
+ <STRONG><A HREF="curs_outopts.3x.html">opts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>.
Comparable functions in the wide-character (ncursesw) library are de-
scribed in <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>.
diff --git a/doc/html/man/curs_getstr.3x.html b/doc/html/man/curs_getstr.3x.html
index ca39dbf..3460ac7 100644
--- a/doc/html/man/curs_getstr.3x.html
+++ b/doc/html/man/curs_getstr.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_getstr.3x,v 1.29 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_getstr.3x,v 1.33 2021/05/22 21:36:35 tom Exp @
* X/Open says also until EOf
* X/Open says then an EOS is added to the result
* X/Open doesn't mention n&lt;0
@@ -57,14 +57,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>getstr(char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>getnstr(char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>wgetstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>wgetnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvgetstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwgetstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvgetnstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwgetnstr(WINDOW</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getstr(char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getnstr(char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wgetstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wgetnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvgetstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwgetstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvgetnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwgetnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -73,35 +74,44 @@
not included in the returned string). The resulting value is placed in
the area pointed to by the character pointer <EM>str</EM>, followed by a NUL.
- <STRONG>wgetnstr</STRONG> reads at most <EM>n</EM> characters, thus preventing a possible over-
- flow of the input buffer. Any attempt to enter more characters (other
- than the terminating newline or carriage return) causes a beep. Func-
- tion keys also cause a beep and are ignored. The <STRONG>getnstr</STRONG> function
- reads from the <EM>stdscr</EM> default window.
+ The <STRONG>getnstr</STRONG> function reads from the <EM>stdscr</EM> default window. The other
+ functions, such as <STRONG>wgetnstr</STRONG>, read from the window given as a parameter.
+
+ <STRONG>getnstr</STRONG> reads at most <EM>n</EM> characters, thus preventing a possible overflow
+ of the input buffer. Any attempt to enter more characters (other than
+ the terminating newline or carriage return) causes a beep. Function
+ keys also cause a beep and are ignored.
+
+ The user's <EM>erase</EM> and <EM>kill</EM> characters are interpreted:
+
+ <STRONG>o</STRONG> The <EM>erase</EM> character (e.g., <STRONG>^H</STRONG>) erases the character at the end of
+ the buffer, moving the cursor to the left.
- The user's erase and kill characters are interpreted. If keypad mode
- is on for the window, <STRONG>KEY_LEFT</STRONG> and <STRONG>KEY_BACKSPACE</STRONG> are both considered
- equivalent to the user's kill character.
+ If <EM>keypad</EM> mode is on for the window, <STRONG>KEY_LEFT</STRONG> and <STRONG>KEY_BACKSPACE</STRONG> are
+ both considered equivalent to the user's erase character.
- Characters input are echoed only if <STRONG>echo</STRONG> is currently on. In that
- case, backspace is echoed as deletion of the previous character (typi-
+ <STRONG>o</STRONG> The <EM>kill</EM> character (e.g., <STRONG>^U</STRONG>) erases the entire buffer, leaving the
+ cursor at the beginning of the buffer.
+
+ Characters input are echoed only if <STRONG>echo</STRONG> is currently on. In that
+ case, backspace is echoed as deletion of the previous character (typi-
cally a left motion).
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
All routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4 speci-
- fies only "an integer value other than <STRONG>ERR</STRONG>") upon successful comple-
+ fies only "an integer value other than <STRONG>ERR</STRONG>") upon successful comple-
tion.
X/Open defines no error conditions.
- In this implementation, these functions return an error if the window
+ In this implementation, these functions return an error if the window
pointer is null, or if its timeout expires without having any data.
- This implementation provides an extension as well. If a <STRONG>SIGWINCH</STRONG> in-
+ This implementation provides an extension as well. If a <STRONG>SIGWINCH</STRONG> in-
terrupts the function, it will return <STRONG>KEY_RESIZE</STRONG> rather than <STRONG>OK</STRONG> or <STRONG>ERR</STRONG>.
- Functions with a "mv" prefix first perform a cursor movement using
+ Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
the window pointer is null.
@@ -111,66 +121,101 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These functions are described in the XSI Curses standard, Issue 4.
- They read single-byte characters only. The standard does not define
- any error conditions. This implementation returns <STRONG>ERR</STRONG> if the window
+ These functions are described in the XSI Curses standard, Issue 4.
+ They read single-byte characters only. The standard does not define
+ any error conditions. This implementation returns <STRONG>ERR</STRONG> if the window
pointer is null, or if the lower-level <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> call returns an <STRONG>ERR</STRONG>.
- SVr3 and early SVr4 curses implementations did not reject function
- keys; the SVr4.0 documentation claimed that "special keys" (such as
- function keys, "home" key, "clear" key, <EM>etc</EM>.) are "interpreted", with-
- out giving details. It lied. In fact, the "character" value appended
- to the string by those implementations was predictable but not useful
+ SVr3 and early SVr4 curses implementations did not reject function
+ keys; the SVr4.0 documentation claimed that "special keys" (such as
+ function keys, "home" key, "clear" key, <EM>etc</EM>.) are "interpreted", with-
+ out giving details. It lied. In fact, the "character" value appended
+ to the string by those implementations was predictable but not useful
(being, in fact, the low-order eight bits of the key's KEY_ value).
- The functions <STRONG>getnstr</STRONG>, <STRONG>mvgetnstr</STRONG>, and <STRONG>mvwgetnstr</STRONG> were present but not
+ The functions <STRONG>getnstr</STRONG>, <STRONG>mvgetnstr</STRONG>, and <STRONG>mvwgetnstr</STRONG> were present but not
documented in SVr4.
X/Open Curses, Issue 5 (2007) stated that these functions "read at most
- <EM>n</EM> bytes" but did not state whether the terminating NUL is counted in
- that limit. X/Open Curses, Issue 7 (2009) changed that to say they
+ <EM>n</EM> bytes" but did not state whether the terminating NUL is counted in
+ that limit. X/Open Curses, Issue 7 (2009) changed that to say they
"read at most <EM>n</EM>-1 bytes" to allow for the terminating NUL. As of 2018,
some implementations do, some do not count it:
- <STRONG>o</STRONG> ncurses 6.1 and PDCurses do not count the NUL in the given limit,
+ <STRONG>o</STRONG> ncurses 6.1 and PDCurses do not count the NUL in the given limit,
while
<STRONG>o</STRONG> Solaris SVr4 and NetBSD curses count the NUL as part of the limit.
- <STRONG>o</STRONG> Solaris xcurses provides both: its wide-character <STRONG>wget_nstr</STRONG> re-
+ <STRONG>o</STRONG> Solaris xcurses provides both: its wide-character <STRONG>wget_nstr</STRONG> re-
serves a NUL, but its <STRONG>wgetnstr</STRONG> does not count the NUL consistently.
In SVr4 curses, a negative value of <EM>n</EM> tells <STRONG>wgetnstr</STRONG> to assume that the
- caller's buffer is large enough to hold the result, i.e., to act like
- <STRONG>wgetstr</STRONG>. X/Open Curses does not mention this (or anything related to
- negative or zero values of <EM>n</EM>), however most implementations use the
+ caller's buffer is large enough to hold the result, i.e., to act like
+ <STRONG>wgetstr</STRONG>. X/Open Curses does not mention this (or anything related to
+ negative or zero values of <EM>n</EM>), however most implementations use the
feature, with different limits:
- <STRONG>o</STRONG> Solaris SVr4 curses and PDCurses limit the result to 255 bytes.
+ <STRONG>o</STRONG> Solaris SVr4 curses and PDCurses limit the result to 255 bytes.
Other Unix systems than Solaris are likely to use the same limit.
<STRONG>o</STRONG> Solaris xcurses limits the result to <STRONG>LINE_MAX</STRONG> bytes.
- <STRONG>o</STRONG> NetBSD 7 assumes no particular limit for the result from <STRONG>wgetstr</STRONG>.
- However, it limits the <STRONG>wgetnstr</STRONG> parameter <EM>n</EM> to ensure that it is
+ <STRONG>o</STRONG> NetBSD 7 assumes no particular limit for the result from <STRONG>wgetstr</STRONG>.
+ However, it limits the <STRONG>wgetnstr</STRONG> parameter <EM>n</EM> to ensure that it is
greater than zero.
- A comment in NetBSD's source code states that this is specified in
+ A comment in NetBSD's source code states that this is specified in
SUSv2.
- <STRONG>o</STRONG> ncurses (before 6.2) assumes no particular limit for the result
- from <STRONG>wgetstr</STRONG>, and treats the <EM>n</EM> parameter of <STRONG>wgetnstr</STRONG> like SVr4
+ <STRONG>o</STRONG> ncurses (before 6.2) assumes no particular limit for the result
+ from <STRONG>wgetstr</STRONG>, and treats the <EM>n</EM> parameter of <STRONG>wgetnstr</STRONG> like SVr4
curses.
- <STRONG>o</STRONG> ncurses 6.2 uses <STRONG>LINE_MAX</STRONG>, or a larger (system-dependent) value
- which the <STRONG>sysconf</STRONG> function may provide. If neither <STRONG>LINE_MAX</STRONG> or
- <STRONG>sysconf</STRONG> is available, ncurses uses the POSIX value for <STRONG>LINE_MAX</STRONG> (a
- 2048 byte limit). In either case, it reserves a byte for the ter-
+ <STRONG>o</STRONG> ncurses 6.2 uses <STRONG>LINE_MAX</STRONG>, or a larger (system-dependent) value
+ which the <STRONG>sysconf</STRONG> function may provide. If neither <STRONG>LINE_MAX</STRONG> or
+ <STRONG>sysconf</STRONG> is available, ncurses uses the POSIX value for <STRONG>LINE_MAX</STRONG> (a
+ 2048 byte limit). In either case, it reserves a byte for the ter-
minating NUL.
+ Although <STRONG>getnstr</STRONG> is equivalent to a series of calls to <STRONG>getch</STRONG>, it also
+ makes changes to the curses modes to allow simple editing of the input
+ buffer:
+
+ <STRONG>o</STRONG> <STRONG>getnstr</STRONG> saves the current value of the <STRONG>nl</STRONG>, <STRONG>echo</STRONG>, <STRONG>raw</STRONG> and <STRONG>cbreak</STRONG>
+ modes, and sets <STRONG>nl</STRONG>, <STRONG>noecho</STRONG>, <STRONG>noraw</STRONG>, and <STRONG>cbreak</STRONG>.
+
+ <STRONG>getnstr</STRONG> handles the echoing of characters, rather than relying on
+ the caller to set an appropriate mode.
+
+ <STRONG>o</STRONG> It also obtains the <EM>erase</EM> and <EM>kill</EM> characters from <STRONG>erasechar</STRONG> and
+ <STRONG>killchar</STRONG>, respectively.
+
+ <STRONG>o</STRONG> On return, <STRONG>getnstr</STRONG> restores the modes to their previous values.
+
+ Other implementations differ in their treatment of special characters:
+
+ <STRONG>o</STRONG> While they may set the <EM>echo</EM> mode, other implementations do not mod-
+ ify the <EM>raw</EM> mode, They may take the <EM>cbreak</EM> mode set by the caller
+ into account when deciding whether to handle echoing within <STRONG>getnstr</STRONG>
+ or as a side-effect of the <STRONG>getch</STRONG> calls.
+
+ <STRONG>o</STRONG> The original ncurses (as pcurses in 1986) set <STRONG>noraw</STRONG> and <STRONG>cbreak</STRONG> when
+ accepting input for <STRONG>getnstr</STRONG>. That may have been done to make func-
+ tion- and cursor-keys work; it is not necessary with ncurses.
+
+ Since 1995, ncurses has provided signal handlers for INTR and QUIT
+ (e.g., <STRONG>^C</STRONG> or <STRONG>^\</STRONG>). With the <STRONG>noraw</STRONG> and <STRONG>cbreak</STRONG> settings, those may
+ catch a signal and stop the program, where other implementations
+ allow one to enter those characters in the buffer.
+
+ <STRONG>o</STRONG> Starting in 2021 (ncurses 6.3), <STRONG>getnstr</STRONG> sets <STRONG>raw</STRONG>, rather than <STRONG>noraw</STRONG>
+ and <STRONG>cbreak</STRONG> for better compatibility with SVr4-curses, e.g., allow-
+ ing one to enter a <STRONG>^C</STRONG> into the buffer.
+
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>, <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
diff --git a/doc/html/man/curs_getyx.3x.html b/doc/html/man/curs_getyx.3x.html
index 994e0f7..385eb8e 100644
--- a/doc/html/man/curs_getyx.3x.html
+++ b/doc/html/man/curs_getyx.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2020 Thomas E. Dickey *
* Copyright 1998-2007,2010 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_getyx.3x,v 1.19 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_getyx.3x,v 1.20 2020/10/24 09:38:43 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,22 +54,22 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>void</STRONG> <STRONG>getyx(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
- <STRONG>void</STRONG> <STRONG>getparyx(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
- <STRONG>void</STRONG> <STRONG>getbegyx(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
- <STRONG>void</STRONG> <STRONG>getmaxyx(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
+ <STRONG>void</STRONG> <STRONG>getyx(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>getparyx(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>getbegyx(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>getmaxyx(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The <STRONG>getyx</STRONG> macro places the current cursor position of the given window
in the two integer variables <EM>y</EM> and <EM>x</EM>.
- If <EM>win</EM> is a subwindow, the <STRONG>getparyx</STRONG> macro places the beginning coordi-
- nates of the subwindow relative to the parent window into two integer
- variables <EM>y</EM> and <EM>x</EM>. Otherwise, <STRONG>-1</STRONG> is placed into <EM>y</EM> and <EM>x</EM>.
+ If <EM>win</EM> is a subwindow, the <STRONG>getparyx</STRONG> macro places the beginning
+ coordinates of the subwindow relative to the parent window into two
+ integer variables <EM>y</EM> and <EM>x</EM>. Otherwise, <STRONG>-1</STRONG> is placed into <EM>y</EM> and <EM>x</EM>.
- Like <STRONG>getyx</STRONG>, the <STRONG>getbegyx</STRONG> and <STRONG>getmaxyx</STRONG> macros store the current begin-
- ning coordinates and size of the specified window.
+ Like <STRONG>getyx</STRONG>, the <STRONG>getbegyx</STRONG> and <STRONG>getmaxyx</STRONG> macros store the current
+ beginning coordinates and size of the specified window.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -90,17 +90,18 @@
<STRONG>getcury</STRONG>, <STRONG>getmaxx</STRONG>, <STRONG>getmaxy</STRONG>, <STRONG>getparx</STRONG> and <STRONG>getpary</STRONG> for compatibility with
older versions of curses.
- Although X/Open Curses does not address this, many implementations pro-
- vide members of the WINDOW structure containing values corresponding to
- these macros. For best portability, do not rely on using the data in
- WINDOW, since some implementations make WINDOW opaque (do not allow
+ Although X/Open Curses does not address this, many implementations
+ provide members of the WINDOW structure containing values corresponding
+ to these macros. For best portability, do not rely on using the data
+ in WINDOW, since some implementations make WINDOW opaque (do not allow
direct use of its members).
Besides the problem of opaque structures, the data stored in like-named
members may not have like-values in different implementations. For
example, the WINDOW._maxx and WINDOW._maxy values in ncurses have (at
- least since release 1.8.1) differed by one from some other implementa-
- tions. The difference is hidden by means of the macro <STRONG>getmaxyx</STRONG>.
+ least since release 1.8.1) differed by one from some other
+ implementations. The difference is hidden by means of the macro
+ <STRONG>getmaxyx</STRONG>.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
diff --git a/doc/html/man/curs_in_wch.3x.html b/doc/html/man/curs_in_wch.3x.html
index ed9dd6a..71cee61 100644
--- a/doc/html/man/curs_in_wch.3x.html
+++ b/doc/html/man/curs_in_wch.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 2002-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_in_wch.3x,v 1.9 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_in_wch.3x,v 1.10 2020/10/17 23:19:29 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,9 +55,10 @@
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>int</STRONG> <STRONG>in_wch(cchar_t</STRONG> <STRONG>*</STRONG><EM>wcval</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>win_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wcval</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvin_wch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wcval</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwin_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wcval</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>win_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wcval</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -68,8 +69,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
No errors are defined in the XSI Curses standard. This implementation
- checks for null pointers, returns <STRONG>ERR</STRONG> in that case. Also, the <EM>mv</EM> rou-
- tines check for error moving the cursor, returning <STRONG>ERR</STRONG> in that case.
+ checks for null pointers, returns <STRONG>ERR</STRONG> in that case. Also, the <EM>mv</EM>
+ routines check for error moving the cursor, returning <STRONG>ERR</STRONG> in that case.
Otherwise they return <STRONG>OK</STRONG>.
Functions with a "mv" prefix first perform a cursor movement using
diff --git a/doc/html/man/curs_in_wchstr.3x.html b/doc/html/man/curs_in_wchstr.3x.html
index 089801b..748d073 100644
--- a/doc/html/man/curs_in_wchstr.3x.html
+++ b/doc/html/man/curs_in_wchstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 2002-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_in_wchstr.3x,v 1.13 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_in_wchstr.3x,v 1.14 2020/10/17 23:19:44 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>in_wchnstr(cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>win_wchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>win_wchnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvin_wchstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvin_wchnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwin_wchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wchstr</EM><STRONG>);</STRONG>
diff --git a/doc/html/man/curs_inch.3x.html b/doc/html/man/curs_inch.3x.html
index 8de0774..397664a 100644
--- a/doc/html/man/curs_inch.3x.html
+++ b/doc/html/man/curs_inch.3x.html
@@ -1,7 +1,7 @@
-<!--
+<!--
* t
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_inch.3x,v 1.23 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_inch.3x,v 1.26 2021/06/17 21:30:22 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -56,15 +56,16 @@
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>chtype</STRONG> <STRONG>inch(void);</STRONG>
- <STRONG>chtype</STRONG> <STRONG>winch(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>chtype</STRONG> <STRONG>mvinch(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
- <STRONG>chtype</STRONG> <STRONG>mvwinch(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>winch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>chtype</STRONG> <STRONG>mvinch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>mvwinch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
These routines return the character, of type <STRONG>chtype</STRONG>, at the current
- position in the named window. If any attributes are set for that posi-
- tion, their values are OR'ed into the value returned. Constants
+ position in the named window. If any attributes are set for that
+ position, their values are OR'ed into the value returned. Constants
defined in <STRONG>&lt;curses.h&gt;</STRONG> can be used with the <STRONG>&amp;</STRONG> (logical AND) operator to
extract the character or attributes alone.
@@ -114,8 +115,8 @@
X/Open Curses does not specify the size and layout of attributes, color
and character values in <STRONG>chtype</STRONG>; it is implementation-dependent. This
implementation uses 8 bits for character values. An application using
- more bits, e.g., a Unicode value, should use the wide-character equiva-
- lents to these functions.
+ more bits, e.g., a Unicode value, should use the wide-character
+ equivalents to these functions.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
@@ -123,8 +124,8 @@
gives an overview of the WINDOW and <STRONG>chtype</STRONG> data types.
<STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
- goes into more detail, pointing out portability problems and con-
- straints on the use of <STRONG>chtype</STRONG> for returning window information.
+ goes into more detail, pointing out portability problems and
+ constraints on the use of <STRONG>chtype</STRONG> for returning window information.
<STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
describes comparable functions for the wide-character (ncursesw)
diff --git a/doc/html/man/curs_inchstr.3x.html b/doc/html/man/curs_inchstr.3x.html
index f0f9a70..c0f0740 100644
--- a/doc/html/man/curs_inchstr.3x.html
+++ b/doc/html/man/curs_inchstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_inchstr.3x,v 1.19 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_inchstr.3x,v 1.21 2020/10/18 00:24:36 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,14 +55,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>inchstr(chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>inchnstr(chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>winchstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>winchnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvinchstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvinchnstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwinchstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwinchnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>inchstr(chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>inchnstr(chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winchnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvinchstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvinchnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinchstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinchnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <STRONG>*</STRONG><EM>chstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_initscr.3x.html b/doc/html/man/curs_initscr.3x.html
index 395a786..691d684 100644
--- a/doc/html/man/curs_initscr.3x.html
+++ b/doc/html/man/curs_initscr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_initscr.3x,v 1.32 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_initscr.3x,v 1.33 2020/10/17 23:20:48 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -56,7 +56,9 @@
<STRONG>WINDOW</STRONG> <STRONG>*initscr(void);</STRONG>
<STRONG>int</STRONG> <STRONG>endwin(void);</STRONG>
+
<STRONG>bool</STRONG> <STRONG>isendwin(void);</STRONG>
+
<STRONG>SCREEN</STRONG> <STRONG>*newterm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>type</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>outfd</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>infd</EM><STRONG>);</STRONG>
<STRONG>SCREEN</STRONG> <STRONG>*set_term(SCREEN</STRONG> <STRONG>*</STRONG><EM>new</EM><STRONG>);</STRONG>
<STRONG>void</STRONG> <STRONG>delscreen(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
diff --git a/doc/html/man/curs_inopts.3x.html b/doc/html/man/curs_inopts.3x.html
index 24f2ef9..cba08b0 100644
--- a/doc/html/man/curs_inopts.3x.html
+++ b/doc/html/man/curs_inopts.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_inopts.3x,v 1.29 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_inopts.3x,v 1.33 2020/12/05 19:38:18 Benno.Schulenberg Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -47,9 +47,9 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>cbreak</STRONG>, <STRONG>nocbreak</STRONG>, <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>keypad</STRONG>, <STRONG>meta</STRONG>,
- <STRONG>nodelay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>raw</STRONG>, <STRONG>noraw</STRONG>, <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, <STRONG>wtimeout</STRONG>,
- <STRONG>typeahead</STRONG> - <STRONG>curses</STRONG> input options
+ <STRONG>cbreak</STRONG>, <STRONG>nocbreak</STRONG>, <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>keypad</STRONG>, <STRONG>meta</STRONG>, <STRONG>nl</STRONG>,
+ <STRONG>nonl</STRONG>, <STRONG>nodelay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>raw</STRONG>, <STRONG>noraw</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>noqiflush</STRONG>, <STRONG>timeout</STRONG>,
+ <STRONG>wtimeout</STRONG>, <STRONG>typeahead</STRONG> - <STRONG>curses</STRONG> input options
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
@@ -57,21 +57,30 @@
<STRONG>int</STRONG> <STRONG>cbreak(void);</STRONG>
<STRONG>int</STRONG> <STRONG>nocbreak(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>echo(void);</STRONG>
<STRONG>int</STRONG> <STRONG>noecho(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>halfdelay(int</STRONG> <STRONG>tenths);</STRONG>
- <STRONG>int</STRONG> <STRONG>intrflush(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
- <STRONG>int</STRONG> <STRONG>keypad(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
- <STRONG>int</STRONG> <STRONG>meta(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
- <STRONG>int</STRONG> <STRONG>nodelay(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>intrflush(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>keypad(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>meta(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>nodelay(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>notimeout(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>nl(void);</STRONG>
+ <STRONG>int</STRONG> <STRONG>nonl(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>raw(void);</STRONG>
<STRONG>int</STRONG> <STRONG>noraw(void);</STRONG>
- <STRONG>void</STRONG> <STRONG>noqiflush(void);</STRONG>
+
<STRONG>void</STRONG> <STRONG>qiflush(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>notimeout(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
- <STRONG>void</STRONG> <STRONG>timeout(int</STRONG> <STRONG>delay);</STRONG>
- <STRONG>void</STRONG> <STRONG>wtimeout(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>delay);</STRONG>
- <STRONG>int</STRONG> <STRONG>typeahead(int</STRONG> <STRONG>fd);</STRONG>
+ <STRONG>void</STRONG> <STRONG>noqiflush(void);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>halfdelay(int</STRONG> <EM>tenths</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>timeout(int</STRONG> <EM>delay</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>wtimeout(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>delay</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>typeahead(int</STRONG> <EM>fd</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -83,7 +92,7 @@
behavior is needed.
-</PRE><H3><a name="h3-cbreak">cbreak</a></H3><PRE>
+</PRE><H3><a name="h3-cbreak_nocbreak">cbreak/nocbreak</a></H3><PRE>
Normally, the tty driver buffers typed characters until a newline or
carriage return is typed. The <STRONG>cbreak</STRONG> routine disables line buffering
and erase/kill character-processing (interrupt and flow control charac-
@@ -153,73 +162,80 @@
<STRONG>FALSE</STRONG>) is called.
+</PRE><H3><a name="h3-nl_nonl">nl/nonl</a></H3><PRE>
+ The <STRONG>nl</STRONG> and <STRONG>nonl</STRONG> routines control whether the underlying display device
+ translates the return key into newline on input.
+
+
</PRE><H3><a name="h3-nodelay">nodelay</a></H3><PRE>
The <STRONG>nodelay</STRONG> option causes <STRONG>getch</STRONG> to be a non-blocking call. If no input
- is ready, <STRONG>getch</STRONG> returns <STRONG>ERR</STRONG>. If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), <STRONG>getch</STRONG> waits
+ is ready, <STRONG>getch</STRONG> returns <STRONG>ERR</STRONG>. If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), <STRONG>getch</STRONG> waits
until a key is pressed.
- While interpreting an input escape sequence, <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> sets a timer
- while waiting for the next character. If <STRONG>notimeout(</STRONG><EM>win</EM>, <STRONG>TRUE</STRONG>) is
- called, then <STRONG>wgetch</STRONG> does not set a timer. The purpose of the timeout
- is to differentiate between sequences received from a function key and
- those typed by a user.
+
+</PRE><H3><a name="h3-notimeout">notimeout</a></H3><PRE>
+ When interpreting an escape sequence, <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> sets a timer while
+ waiting for the next character. If <STRONG>notimeout(</STRONG><EM>win</EM>, <STRONG>TRUE</STRONG>) is called,
+ then <STRONG>wgetch</STRONG> does not set a timer. The purpose of the timeout is to
+ differentiate between sequences received from a function key and those
+ typed by a user.
</PRE><H3><a name="h3-raw_noraw">raw/noraw</a></H3><PRE>
- The <STRONG>raw</STRONG> and <STRONG>noraw</STRONG> routines place the terminal into or out of raw mode.
- Raw mode is similar to <STRONG>cbreak</STRONG> mode, in that characters typed are imme-
- diately passed through to the user program. The differences are that
- in raw mode, the interrupt, quit, suspend, and flow control characters
- are all passed through uninterpreted, instead of generating a signal.
- The behavior of the BREAK key depends on other bits in the tty driver
+ The <STRONG>raw</STRONG> and <STRONG>noraw</STRONG> routines place the terminal into or out of raw mode.
+ Raw mode is similar to <STRONG>cbreak</STRONG> mode, in that characters typed are imme-
+ diately passed through to the user program. The differences are that
+ in raw mode, the interrupt, quit, suspend, and flow control characters
+ are all passed through uninterpreted, instead of generating a signal.
+ The behavior of the BREAK key depends on other bits in the tty driver
that are not set by <STRONG>curses</STRONG>.
-</PRE><H3><a name="h3-noqiflush">noqiflush</a></H3><PRE>
- When the <STRONG>noqiflush</STRONG> routine is used, normal flush of input and output
- queues associated with the <STRONG>INTR</STRONG>, <STRONG>QUIT</STRONG> and <STRONG>SUSP</STRONG> characters will not be
- done [see <STRONG>termios(3)</STRONG>]. When <STRONG>qiflush</STRONG> is called, the queues will be
- flushed when these control characters are read. You may want to call
- <STRONG>noqiflush</STRONG> in a signal handler if you want output to continue as though
+</PRE><H3><a name="h3-qiflush_noqiflush">qiflush/noqiflush</a></H3><PRE>
+ When the <STRONG>noqiflush</STRONG> routine is used, normal flush of input and output
+ queues associated with the <STRONG>INTR</STRONG>, <STRONG>QUIT</STRONG> and <STRONG>SUSP</STRONG> characters will not be
+ done [see <STRONG>termios(3)</STRONG>]. When <STRONG>qiflush</STRONG> is called, the queues will be
+ flushed when these control characters are read. You may want to call
+ <STRONG>noqiflush</STRONG> in a signal handler if you want output to continue as though
the interrupt had not occurred, after the handler exits.
</PRE><H3><a name="h3-timeout_wtimeout">timeout/wtimeout</a></H3><PRE>
The <STRONG>timeout</STRONG> and <STRONG>wtimeout</STRONG> routines set blocking or non-blocking read for
- a given window. If <EM>delay</EM> is negative, blocking read is used (i.e.,
- waits indefinitely for input). If <EM>delay</EM> is zero, then non-blocking
+ a given window. If <EM>delay</EM> is negative, blocking read is used (i.e.,
+ waits indefinitely for input). If <EM>delay</EM> is zero, then non-blocking
read is used (i.e., read returns <STRONG>ERR</STRONG> if no input is waiting). If <EM>delay</EM>
- is positive, then read blocks for <EM>delay</EM> milliseconds, and returns <STRONG>ERR</STRONG>
- if there is still no input. Hence, these routines provide the same
- functionality as <STRONG>nodelay</STRONG>, plus the additional capability of being able
+ is positive, then read blocks for <EM>delay</EM> milliseconds, and returns <STRONG>ERR</STRONG>
+ if there is still no input. Hence, these routines provide the same
+ functionality as <STRONG>nodelay</STRONG>, plus the additional capability of being able
to block for only <EM>delay</EM> milliseconds (where <EM>delay</EM> is positive).
</PRE><H3><a name="h3-typeahead">typeahead</a></H3><PRE>
The <STRONG>curses</STRONG> library does "line-breakout optimization" by looking for ty-
peahead periodically while updating the screen. If input is found, and
- it is coming from a tty, the current update is postponed until <STRONG>re-</STRONG>
- <STRONG><A HREF="refresh.3x.html">fresh(3x)</A></STRONG> or <STRONG>doupdate</STRONG> is called again. This allows faster response to
- commands typed in advance. Normally, the input FILE pointer passed to
+ it is coming from a tty, the current update is postponed until <STRONG>re-</STRONG>
+ <STRONG><A HREF="refresh.3x.html">fresh(3x)</A></STRONG> or <STRONG>doupdate</STRONG> is called again. This allows faster response to
+ commands typed in advance. Normally, the input FILE pointer passed to
<STRONG>newterm</STRONG>, or <STRONG>stdin</STRONG> in the case that <STRONG>initscr</STRONG> was used, will be used to do
this typeahead checking. The <STRONG>typeahead</STRONG> routine specifies that the file
- descriptor <EM>fd</EM> is to be used to check for typeahead instead. If <EM>fd</EM> is
+ descriptor <EM>fd</EM> is to be used to check for typeahead instead. If <EM>fd</EM> is
-1, then no typeahead checking is done.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
+ All routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
(SVr4 specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful
- completion, unless otherwise noted in the preceding routine descrip-
+ completion, unless otherwise noted in the preceding routine descrip-
tions.
- X/Open does not define any error conditions. In this implementation,
- functions with a window parameter will return an error if it is null.
+ X/Open does not define any error conditions. In this implementation,
+ functions with a window parameter will return an error if it is null.
Any function will also return an error if the terminal was not initial-
ized. Also,
<STRONG>halfdelay</STRONG>
- returns an error if its parameter is outside the range
+ returns an error if its parameter is outside the range
1..255.
@@ -227,13 +243,20 @@
These functions are described in the XSI Curses standard, Issue 4.
The ncurses library obeys the XPG4 standard and the historical practice
- of the AT&amp;T curses implementations, in that the echo bit is cleared
- when curses initializes the terminal state. BSD curses differed from
- this slightly; it left the echo bit on at initialization, but the BSD
- <STRONG>raw</STRONG> call turned it off as a side-effect. For best portability, set
- echo or noecho explicitly just after initialization, even if your pro-
+ of the AT&amp;T curses implementations, in that the echo bit is cleared
+ when curses initializes the terminal state. BSD curses differed from
+ this slightly; it left the echo bit on at initialization, but the BSD
+ <STRONG>raw</STRONG> call turned it off as a side-effect. For best portability, set
+ <STRONG>echo</STRONG> or <STRONG>noecho</STRONG> explicitly just after initialization, even if your pro-
gram remains in cooked mode.
+ The XSI Curses standard is ambiguous on the question of whether <STRONG>raw</STRONG>
+ should disable the CRLF translations controlled by <STRONG>nl</STRONG> and <STRONG>nonl</STRONG>. BSD
+ curses did turn off these translations; AT&amp;T curses (at least as late
+ as SVr1) did not. We chose to do so, on the theory that a programmer
+ requesting raw input wants a clean (ideally 8-bit clean) connection
+ that the operating system will not alter.
+
When <STRONG>keypad</STRONG> is first enabled, ncurses loads the key-definitions for the
current terminal description. If the terminal description includes ex-
tended string capabilities, e.g., from using the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>, then
@@ -263,8 +286,8 @@
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- Note that <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>nodelay</STRONG>, <STRONG>notimeout</STRONG>,
- <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, and <STRONG>wtimeout</STRONG> may be macros.
+ Note that <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG>, <STRONG>nodelay</STRONG>,
+ <STRONG>notimeout</STRONG>, <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, and <STRONG>wtimeout</STRONG> may be macros.
The <STRONG>noraw</STRONG> and <STRONG>nocbreak</STRONG> calls follow historical practice in that they
attempt to restore to normal ("cooked") mode from raw and cbreak modes
@@ -287,15 +310,17 @@
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
<ul>
-<li><a href="#h3-cbreak">cbreak</a></li>
+<li><a href="#h3-cbreak_nocbreak">cbreak/nocbreak</a></li>
<li><a href="#h3-echo_noecho">echo/noecho</a></li>
<li><a href="#h3-halfdelay">halfdelay</a></li>
<li><a href="#h3-intrflush">intrflush</a></li>
<li><a href="#h3-keypad">keypad</a></li>
<li><a href="#h3-meta">meta</a></li>
+<li><a href="#h3-nl_nonl">nl/nonl</a></li>
<li><a href="#h3-nodelay">nodelay</a></li>
+<li><a href="#h3-notimeout">notimeout</a></li>
<li><a href="#h3-raw_noraw">raw/noraw</a></li>
-<li><a href="#h3-noqiflush">noqiflush</a></li>
+<li><a href="#h3-qiflush_noqiflush">qiflush/noqiflush</a></li>
<li><a href="#h3-timeout_wtimeout">timeout/wtimeout</a></li>
<li><a href="#h3-typeahead">typeahead</a></li>
</ul>
diff --git a/doc/html/man/curs_ins_wch.3x.html b/doc/html/man/curs_ins_wch.3x.html
index 2a37348..65bfab0 100644
--- a/doc/html/man/curs_ins_wch.3x.html
+++ b/doc/html/man/curs_ins_wch.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2002-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_ins_wch.3x,v 1.8 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_ins_wch.3x,v 1.10 2020/10/18 00:22:21 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,9 +55,10 @@
#include &lt;curses.h&gt;
<STRONG>int</STRONG> <STRONG>ins_wch(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>wins_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win,</EM> <EM>const</EM> <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> <EM>*wch</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvins_wch(int</STRONG> <EM>y,</EM> <EM>int</EM> <EM>x,</EM> <EM>const</EM> <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> <EM>*wch</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwins_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win,</EM> <EM>int</EM> <EM>y,</EM> <EM>int</EM> <EM>x,</EM> <EM>const</EM> <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> <EM>*wch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wins_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvins_wch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwins_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_ins_wstr.3x.html b/doc/html/man/curs_ins_wstr.3x.html
index d30ad4f..0aee76a 100644
--- a/doc/html/man/curs_ins_wstr.3x.html
+++ b/doc/html/man/curs_ins_wstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2002-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_ins_wstr.3x,v 1.10 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_ins_wstr.3x,v 1.11 2020/10/17 23:21:25 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>ins_nwstr(const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wins_wstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wins_nwstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvins_wstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvins_nwstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwins_wstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
diff --git a/doc/html/man/curs_insch.3x.html b/doc/html/man/curs_insch.3x.html
index 1bda98e..c26261e 100644
--- a/doc/html/man/curs_insch.3x.html
+++ b/doc/html/man/curs_insch.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_insch.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_insch.3x,v 1.19 2020/10/18 00:21:39 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,10 +54,11 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>insch(chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>winsch(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvinsch(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwinsch(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
+ <STRONG>int</STRONG> <STRONG>insch(chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winsch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvinsch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinsch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -71,8 +72,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
All routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
(SVr4 specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful
- completion, unless otherwise noted in the preceding routine descrip-
- tions.
+ completion, unless otherwise noted in the preceding routine
+ descriptions.
Functions with a "mv" prefix first perform a cursor movement using
<STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
@@ -80,8 +81,8 @@
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- These routines do not necessarily imply use of a hardware insert char-
- acter feature.
+ These routines do not necessarily imply use of a hardware insert
+ character feature.
Note that <STRONG>insch</STRONG>, <STRONG>mvinsch</STRONG>, and <STRONG>mvwinsch</STRONG> may be macros.
diff --git a/doc/html/man/curs_insstr.3x.html b/doc/html/man/curs_insstr.3x.html
index 7c9efa7..aa32c31 100644
--- a/doc/html/man/curs_insstr.3x.html
+++ b/doc/html/man/curs_insstr.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_insstr.3x,v 1.24 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_insstr.3x,v 1.27 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,14 +53,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>insstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>insnstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>winsstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>winsnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvinsstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvinsnstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwinsstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwinsnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>insstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>insnstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winsstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winsnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvinsstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvinsnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinsstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinsnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -78,8 +79,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
All routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
(SVr4 specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful
- completion, unless otherwise noted in the preceding routine descrip-
- tions.
+ completion, unless otherwise noted in the preceding routine
+ descriptions.
X/Open defines no error conditions. In this implementation, if the
window parameter is null or the str parameter is null, an error is
@@ -98,10 +99,10 @@
These functions are described in the XSI Curses standard, Issue 4,
which adds const qualifiers to the arguments.
- The Single Unix Specification, Version 2 states that <STRONG>insnstr</STRONG> and <STRONG>win-</STRONG>
- <STRONG>snstr</STRONG> perform wrapping. This is probably an error, since it makes this
- group of functions inconsistent. Also, no implementation of curses
- documents this inconsistency.
+ The Single Unix Specification, Version 2 states that <STRONG>insnstr</STRONG> and
+ <STRONG>winsnstr</STRONG> perform wrapping. This is probably an error, since it makes
+ this group of functions inconsistent. Also, no implementation of
+ curses documents this inconsistency.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
diff --git a/doc/html/man/curs_instr.3x.html b/doc/html/man/curs_instr.3x.html
index f5aecfc..b783e98 100644
--- a/doc/html/man/curs_instr.3x.html
+++ b/doc/html/man/curs_instr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_instr.3x,v 1.20 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_instr.3x,v 1.22 2020/10/18 00:18:27 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,27 +54,28 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>instr(char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>innstr(char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>winstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>winnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvinstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvinnstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwinstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwinnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>instr(char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>innstr(char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>winnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>mvinstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvinnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwinnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
These routines return a string of characters in <EM>str</EM>, extracted starting
at the current cursor position in the named window. Attributes are
stripped from the characters. The four functions with <EM>n</EM> as the last
- argument return a leading substring at most <EM>n</EM> characters long (exclu-
- sive of the trailing NUL).
+ argument return a leading substring at most <EM>n</EM> characters long
+ (exclusive of the trailing NUL).
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All of the functions return <STRONG>ERR</STRONG> upon failure, or the number of charac-
- ters actually read into the string.
+ All of the functions return <STRONG>ERR</STRONG> upon failure, or the number of
+ characters actually read into the string.
X/Open Curses defines no error conditions. In this implementation:
diff --git a/doc/html/man/curs_inwstr.3x.html b/doc/html/man/curs_inwstr.3x.html
index f70cc78..411094f 100644
--- a/doc/html/man/curs_inwstr.3x.html
+++ b/doc/html/man/curs_inwstr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 2002-2012,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_inwstr.3x,v 1.13 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_inwstr.3x,v 1.14 2020/10/17 23:22:11 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -58,6 +58,7 @@
<STRONG>int</STRONG> <STRONG>innwstr(wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>winwstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>winnwstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mvinwstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvinnwstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvwinwstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wstr</EM><STRONG>);</STRONG>
@@ -68,22 +69,22 @@
These routines return a string of <STRONG>wchar_t</STRONG> wide characters in <EM>wstr</EM>,
extracted starting at the current cursor position in the named window.
- The four functions with <EM>n</EM> as the last argument return a leading sub-
- string at most <EM>n</EM> characters long (exclusive of the trailing NUL).
+ The four functions with <EM>n</EM> as the last argument return a leading
+ substring at most <EM>n</EM> characters long (exclusive of the trailing NUL).
Transfer stops at the end of the current line, or when <EM>n</EM> characters
have been stored at the location referenced by <EM>wstr</EM>.
- If the size <EM>n</EM> is not large enough to store a complete complex charac-
- ter, an error is generated.
+ If the size <EM>n</EM> is not large enough to store a complete complex
+ character, an error is generated.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
All routines except <STRONG>winnwstr</STRONG> may be macros.
- Each cell in the window holds a complex character (i.e., base- and com-
- bining-characters) together with attributes and color. These functions
- store only the wide characters, ignoring attributes and color. Use
- <STRONG>in_wchstr</STRONG> to return the complex characters from a window.
+ Each cell in the window holds a complex character (i.e., base- and
+ combining-characters) together with attributes and color. These
+ functions store only the wide characters, ignoring attributes and
+ color. Use <STRONG>in_wchstr</STRONG> to return the complex characters from a window.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
diff --git a/doc/html/man/curs_kernel.3x.html b/doc/html/man/curs_kernel.3x.html
index f90c1a6..f042412 100644
--- a/doc/html/man/curs_kernel.3x.html
+++ b/doc/html/man/curs_kernel.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_kernel.3x,v 1.28 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_kernel.3x,v 1.29 2020/10/17 23:22:35 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -57,12 +57,16 @@
<STRONG>int</STRONG> <STRONG>def_prog_mode(void);</STRONG>
<STRONG>int</STRONG> <STRONG>def_shell_mode(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>reset_prog_mode(void);</STRONG>
<STRONG>int</STRONG> <STRONG>reset_shell_mode(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>resetty(void);</STRONG>
<STRONG>int</STRONG> <STRONG>savetty(void);</STRONG>
+
<STRONG>void</STRONG> <STRONG>getsyx(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
<STRONG>void</STRONG> <STRONG>setsyx(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>ripoffline(int</STRONG> <EM>line</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>init</EM><STRONG>)(WINDOW</STRONG> <STRONG>*,</STRONG> <STRONG>int));</STRONG>
<STRONG>int</STRONG> <STRONG>curs_set(int</STRONG> <EM>visibility</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>napms(int</STRONG> <EM>ms</EM><STRONG>);</STRONG>
diff --git a/doc/html/man/curs_legacy.3x.html b/doc/html/man/curs_legacy.3x.html
index 24071db..181060c 100644
--- a/doc/html/man/curs_legacy.3x.html
+++ b/doc/html/man/curs_legacy.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2007-2015,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_legacy.3x,v 1.10 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_legacy.3x,v 1.12 2020/10/18 00:16:04 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,20 +53,24 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>getattrs(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getbegx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getbegy(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getcurx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getcury(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getmaxx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getmaxy(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getparx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>getpary(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getattrs(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>getbegx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getbegy(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>getcurx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getcury(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>getmaxx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getmaxy(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>getparx(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getpary(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- These legacy functions are simpler to use than the X/Open Curses func-
- tions:
+ These legacy functions are simpler to use than the X/Open Curses
+ functions:
<STRONG>o</STRONG> The <STRONG>getattrs</STRONG> function returns the same attribute data as <STRONG>wattr_get</STRONG>.
@@ -91,8 +95,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- Except as noted, these functions return an integer, or <STRONG>ERR</STRONG> if the win-
- dow parameter is null.
+ Except as noted, these functions return an integer, or <STRONG>ERR</STRONG> if the
+ window parameter is null.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -105,12 +109,13 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These functions were supported on Version 7, BSD or System V implemen-
- tations. None of those implementations checked the window parameter.
+ These functions were supported on Version 7, BSD or System V
+ implementations. None of those implementations checked the window
+ parameter.
- The <STRONG>getattrs</STRONG> function and macro are defined to return a (signed) inte-
- ger for compatibility with those implementations although an unsigned
- type would have been more appropriate.
+ The <STRONG>getattrs</STRONG> function and macro are defined to return a (signed)
+ integer for compatibility with those implementations although an
+ unsigned type would have been more appropriate.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
diff --git a/doc/html/man/curs_memleaks.3x.html b/doc/html/man/curs_memleaks.3x.html
index 18b38c9..627bb72 100644
--- a/doc/html/man/curs_memleaks.3x.html
+++ b/doc/html/man/curs_memleaks.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2008-2010,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_memleaks.3x,v 1.8 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_memleaks.3x,v 1.11 2021/01/02 23:47:51 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -47,36 +47,36 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>_nc_freeall</STRONG>, <STRONG>_nc_free_and_exit</STRONG>, <STRONG>_nc_free_tinfo</STRONG> - <STRONG>curses</STRONG> memory-leak
- checking
+ <STRONG>exit_curses</STRONG>, <STRONG>exit_terminfo</STRONG> - <STRONG>curses</STRONG> memory-leak checking
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
+ <STRONG>void</STRONG> <STRONG>exit_curses(int</STRONG> <EM>code</EM><STRONG>);</STRONG>
- <STRONG>void</STRONG> <STRONG>exit_curses(int);</STRONG>
- <STRONG>void</STRONG> <STRONG>exit_terminfo(int);</STRONG>
+ <STRONG>#include</STRONG> <STRONG>&lt;term.h&gt;</STRONG>
+ <STRONG>void</STRONG> <STRONG>exit_terminfo(int</STRONG> <EM>code</EM><STRONG>);</STRONG>
- /* deprecated */
+ /* deprecated (intentionally not declared in curses.h or term.h) */
<STRONG>void</STRONG> <STRONG>_nc_freeall(void);</STRONG>
- <STRONG>void</STRONG> <STRONG>_nc_free_and_exit(int);</STRONG>
- <STRONG>void</STRONG> <STRONG>_nc_free_tinfo(int);</STRONG>
+ <STRONG>void</STRONG> <STRONG>_nc_free_and_exit(int</STRONG> <EM>code</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>_nc_free_tinfo(int</STRONG> <EM>code</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- These functions are used to simplify analysis of memory leaks in the
+ These functions are used to simplify analysis of memory leaks in the
ncurses library.
Any implementation of curses must not free the memory associated with a
- screen, since (even after calling <STRONG>endwin</STRONG>), it must be available for use
- in the next call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>. There are also chunks of memory held
- for performance reasons. That makes it hard to analyze curses applica-
- tions for memory leaks. When using the specially configured debugging
- version of the ncurses library, applications can call functions which
- free those chunks of memory, simplifying the process of memory-leak
- checking.
-
- Some of the functions are named with a "_nc_" prefix because they are
+ screen, since (even after calling <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG>), it must be available for
+ use in the next call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>. There are also chunks of memory
+ held for performance reasons. That makes it hard to analyze curses ap-
+ plications for memory leaks. When using the specially configured de-
+ bugging version of the ncurses library, applications can call functions
+ which free those chunks of memory, simplifying the process of memory-
+ leak checking.
+
+ Some of the functions are named with a "_nc_" prefix because they are
not intended for use in the non-debugging library:
<STRONG>_nc_freeall</STRONG>
@@ -89,18 +89,18 @@
ply exiting (with the given exit-code) is safer.
<STRONG>_nc_free_tinfo</STRONG>
- Use this function if only the low-level terminfo functions (and
+ Use this function if only the low-level terminfo functions (and
corresponding library) are used. Like <STRONG>_nc_free_and_exit</STRONG>, it exits
the program after freeing memory.
- The functions prefixed "_nc" are normally not available; they must be
+ The functions prefixed "_nc" are normally not available; they must be
configured into the library at build time using the <STRONG>--disable-leaks</STRONG> op-
- tion. That compiles-in code that frees memory that normally would not
+ tion. That compiles-in code that frees memory that normally would not
be freed.
- The <STRONG>exit_curses</STRONG> and <STRONG>exit_terminfo</STRONG> functions call <STRONG>_nc_free_and_exit</STRONG> and
- <STRONG>_nc_free_tinfo</STRONG> if the library is configured to support memory-leak
- checking. If the library is not configured to support memory-leak
+ The <STRONG>exit_curses</STRONG> and <STRONG>exit_terminfo</STRONG> functions call <STRONG>_nc_free_and_exit</STRONG> and
+ <STRONG>_nc_free_tinfo</STRONG> if the library is configured to support memory-leak
+ checking. If the library is not configured to support memory-leak
checking, they simply call <STRONG>exit</STRONG>.
diff --git a/doc/html/man/curs_mouse.3x.html b/doc/html/man/curs_mouse.3x.html
index 81fe57a..240f615 100644
--- a/doc/html/man/curs_mouse.3x.html
+++ b/doc/html/man/curs_mouse.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_mouse.3x,v 1.52 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_mouse.3x,v 1.53 2020/10/17 23:25:08 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -64,13 +64,18 @@
<STRONG>}</STRONG> <STRONG>MEVENT;</STRONG>
<STRONG>bool</STRONG> <STRONG>has_mouse(void);</STRONG>
+
<STRONG>int</STRONG> <STRONG>getmouse(MEVENT</STRONG> <STRONG>*</STRONG><EM>event</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>ungetmouse(MEVENT</STRONG> <STRONG>*</STRONG><EM>event</EM><STRONG>);</STRONG>
+
<STRONG>mmask_t</STRONG> <STRONG>mousemask(mmask_t</STRONG> <EM>newmask</EM><STRONG>,</STRONG> <STRONG>mmask_t</STRONG> <STRONG>*</STRONG><EM>oldmask</EM><STRONG>);</STRONG>
+
<STRONG>bool</STRONG> <STRONG>wenclose(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+
<STRONG>bool</STRONG> <STRONG>mouse_trafo(int*</STRONG> <EM>pY</EM><STRONG>,</STRONG> <STRONG>int*</STRONG> <EM>pX</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>to</EM><STRONG>_</STRONG><EM>screen</EM><STRONG>);</STRONG>
- <STRONG>bool</STRONG> <STRONG>wmouse_trafo(const</STRONG> <STRONG>WINDOW*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>int*</STRONG> <EM>pY</EM><STRONG>,</STRONG> <STRONG>int*</STRONG> <EM>pX</EM><STRONG>,</STRONG>
- <STRONG>bool</STRONG> <EM>to</EM><STRONG>_</STRONG><EM>screen</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>wmouse_trafo(const</STRONG> <STRONG>WINDOW*</STRONG> <EM>win</EM><STRONG>,</STRONG>
+ <STRONG>int*</STRONG> <EM>pY</EM><STRONG>,</STRONG> <STRONG>int*</STRONG> <EM>pX</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>to</EM><STRONG>_</STRONG><EM>screen</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>mouseinterval(int</STRONG> <EM>erval</EM><STRONG>);</STRONG>
@@ -107,12 +112,12 @@
BUTTON2_PRESSED mouse button 2 down
BUTTON2_RELEASED mouse button 2 up
BUTTON2_CLICKED mouse button 2 clicked
+
BUTTON2_DOUBLE_CLICKED mouse button 2 double clicked
BUTTON2_TRIPLE_CLICKED mouse button 2 triple clicked
---------------------------------------------------------------------
BUTTON3_PRESSED mouse button 3 down
BUTTON3_RELEASED mouse button 3 up
-
BUTTON3_CLICKED mouse button 3 clicked
BUTTON3_DOUBLE_CLICKED mouse button 3 double clicked
BUTTON3_TRIPLE_CLICKED mouse button 3 triple clicked
diff --git a/doc/html/man/curs_move.3x.html b/doc/html/man/curs_move.3x.html
index fcdbd40..e2c6991 100644
--- a/doc/html/man/curs_move.3x.html
+++ b/doc/html/man/curs_move.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_move.3x,v 1.18 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_move.3x,v 1.19 2020/10/24 09:39:41 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,8 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>move(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
- <STRONG>int</STRONG> <STRONG>wmove(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
+ <STRONG>int</STRONG> <STRONG>move(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wmove(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_opaque.3x.html b/doc/html/man/curs_opaque.3x.html
index cc6909e..3515909 100644
--- a/doc/html/man/curs_opaque.3x.html
+++ b/doc/html/man/curs_opaque.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2020 Thomas E. Dickey *
* Copyright 2007-2014,2015 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_opaque.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_opaque.3x,v 1.15 2020/10/24 09:41:22 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,21 +55,21 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_cleared(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_idcok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_idlok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_immedok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_keypad(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_leaveok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_nodelay(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_notimeout(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_pad(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_scrollok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_subwin(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_syncok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>wgetparent(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>wgetdelay(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>wgetscrreg(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>*top,</STRONG> <STRONG>int</STRONG> <STRONG>*bottom);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_cleared(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_idcok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_idlok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_immedok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_keypad(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_leaveok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_nodelay(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_notimeout(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_pad(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_scrollok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_subwin(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_syncok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>wgetparent(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wgetdelay(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wgetscrreg(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>top</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>bottom</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_outopts.3x.html b/doc/html/man/curs_outopts.3x.html
index 75175d1..819134c 100644
--- a/doc/html/man/curs_outopts.3x.html
+++ b/doc/html/man/curs_outopts.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_outopts.3x,v 1.30 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_outopts.3x,v 1.33 2020/10/03 22:04:09 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -48,7 +48,7 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
<STRONG>clearok</STRONG>, <STRONG>idlok</STRONG>, <STRONG>idcok</STRONG>, <STRONG>immedok</STRONG>, <STRONG>leaveok</STRONG>, <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>,
- <STRONG>scrollok</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG> - <STRONG>curses</STRONG> output options
+ <STRONG>scrollok</STRONG> - <STRONG>curses</STRONG> output options
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
@@ -59,11 +59,10 @@
<STRONG>void</STRONG> <STRONG>idcok(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
<STRONG>void</STRONG> <STRONG>immedok(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>leaveok(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scrollok(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+
<STRONG>int</STRONG> <STRONG>setscrreg(int</STRONG> <EM>top</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bot</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>wsetscrreg(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>top</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bot</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>scrollok(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>nl(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>nonl(void);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -118,7 +117,17 @@
cursor motions.
-</PRE><H3><a name="h3-setscrreg">setscrreg</a></H3><PRE>
+</PRE><H3><a name="h3-scrollok">scrollok</a></H3><PRE>
+ The <STRONG>scrollok</STRONG> option controls what happens when the cursor of a window
+ is moved off the edge of the window or scrolling region, either as a
+ result of a newline action on the bottom line, or typing the last char-
+ acter of the last line. If disabled, (<EM>bf</EM> is <STRONG>FALSE</STRONG>), the cursor is left
+ on the bottom line. If enabled, (<EM>bf</EM> is <STRONG>TRUE</STRONG>), the window is scrolled
+ up one line (Note that to get the physical scrolling effect on the ter-
+ minal, it is also necessary to call <STRONG>idlok</STRONG>).
+
+
+</PRE><H3><a name="h3-setscrreg_wsetscrreg">setscrreg/wsetscrreg</a></H3><PRE>
The <STRONG>setscrreg</STRONG> and <STRONG>wsetscrreg</STRONG> routines allow the application programmer
to set a software scrolling region in a window. The <EM>top</EM> and <EM>bot</EM> param-
eters are the line numbers of the top and bottom margin of the
@@ -132,57 +141,37 @@
line capability, they will probably be used by the output routines.)
-</PRE><H3><a name="h3-scrollok">scrollok</a></H3><PRE>
- The <STRONG>scrollok</STRONG> option controls what happens when the cursor of a window
- is moved off the edge of the window or scrolling region, either as a
- result of a newline action on the bottom line, or typing the last char-
- acter of the last line. If disabled, (<EM>bf</EM> is <STRONG>FALSE</STRONG>), the cursor is left
- on the bottom line. If enabled, (<EM>bf</EM> is <STRONG>TRUE</STRONG>), the window is scrolled
- up one line (Note that to get the physical scrolling effect on the ter-
- minal, it is also necessary to call <STRONG>idlok</STRONG>).
-
-
-</PRE><H3><a name="h3-nl_-nonl">nl, nonl</a></H3><PRE>
- The <STRONG>nl</STRONG> and <STRONG>nonl</STRONG> routines control whether the underlying display device
- translates the return key into newline on input, and whether it trans-
- lates newline into return and line-feed on output (in either case, the
- call <STRONG>addch('\n')</STRONG> does the equivalent of return and line feed on the
- <EM>virtual</EM> <EM>screen</EM>). Initially, these translations do occur. If you dis-
- able them using <STRONG>nonl</STRONG>, <STRONG>curses</STRONG> will be able to make better use of the
- line-feed capability, resulting in faster cursor motion. Also, <STRONG>curses</STRONG>
- will then be able to detect the return key.
-
-
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The functions <STRONG>setscrreg</STRONG> and <STRONG>wsetscrreg</STRONG> return <STRONG>OK</STRONG> upon success and <STRONG>ERR</STRONG>
- upon failure. All other routines that return an integer always return
+ The functions <STRONG>setscrreg</STRONG> and <STRONG>wsetscrreg</STRONG> return <STRONG>OK</STRONG> upon success and <STRONG>ERR</STRONG>
+ upon failure. All other routines that return an integer always return
<STRONG>OK</STRONG>.
X/Open Curses does not define any error conditions.
- In this implementation, those functions that have a window pointer will
- return an error if the window pointer is null.
+ In this implementation,
- <STRONG>wclrtoeol</STRONG>
- returns an error if the cursor position is about to wrap.
+ <STRONG>o</STRONG> those functions that have a window pointer will return an error if
+ the window pointer is null
- <STRONG>wsetscrreg</STRONG>
- returns an error if the scrolling region limits extend out-
- side the window.
+ <STRONG>o</STRONG> <STRONG>wsetscrreg</STRONG> returns an error if the scrolling region limits extend
+ outside the window.
- X/Open does not define any error conditions. This implementation re-
+ X/Open does not define any error conditions. This implementation re-
turns an error if the window pointer is null.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
These functions are described in the XSI Curses standard, Issue 4.
- The XSI Curses standard is ambiguous on the question of whether <STRONG>raw</STRONG>
- should disable the CRLF translations controlled by <STRONG>nl</STRONG> and <STRONG>nonl</STRONG>. BSD
- curses did turn off these translations; AT&amp;T curses (at least as late
- as SVr1) did not. We choose to do so, on the theory that a programmer
- requesting raw input wants a clean (ideally 8-bit clean) connection
- that the operating system will not alter.
+ From the outset, ncurses used <STRONG>nl</STRONG>/<STRONG>nonl</STRONG> to control the conversion of new-
+ lines to carriage return/line-feed on output as well as input. XSI
+ Curses documents only the use of these functions for input. This dif-
+ ference arose from converting the <EM>pcurses</EM> source (which used <STRONG>ioctl</STRONG>
+ calls with the <STRONG>sgttyb</STRONG> structure) to termios (i.e., the POSIX terminal
+ interface). In the former, both input and output were controlled via a
+ single option <STRONG>CRMOD</STRONG>, while the latter separates these features. Be-
+ cause that conversion interferes with output optimization, <STRONG>nl</STRONG>/<STRONG>nonl</STRONG> were
+ amended after ncurses 6.2 to eliminate their effect on output.
Some historic curses implementations had, as an undocumented feature,
the ability to do the equivalent of <STRONG>clearok(...,</STRONG> <STRONG>1)</STRONG> by saying <STRONG>touch-</STRONG>
@@ -201,8 +190,8 @@
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- Note that <STRONG>clearok</STRONG>, <STRONG>leaveok</STRONG>, <STRONG>scrollok</STRONG>, <STRONG>idcok</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG> and <STRONG>setscrreg</STRONG> may
- be macros.
+ Note that <STRONG>clearok</STRONG>, <STRONG>leaveok</STRONG>, <STRONG>scrollok</STRONG>, <STRONG>idcok</STRONG>, and <STRONG>setscrreg</STRONG> may be
+ macros.
The <STRONG>immedok</STRONG> routine is useful for windows that are used as terminal em-
ulators.
@@ -227,9 +216,8 @@
<li><a href="#h3-idcok">idcok</a></li>
<li><a href="#h3-immedok">immedok</a></li>
<li><a href="#h3-leaveok">leaveok</a></li>
-<li><a href="#h3-setscrreg">setscrreg</a></li>
<li><a href="#h3-scrollok">scrollok</a></li>
-<li><a href="#h3-nl_-nonl">nl, nonl</a></li>
+<li><a href="#h3-setscrreg_wsetscrreg">setscrreg/wsetscrreg</a></li>
</ul>
</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
diff --git a/doc/html/man/curs_overlay.3x.html b/doc/html/man/curs_overlay.3x.html
index f858ada..31d8ed9 100644
--- a/doc/html/man/curs_overlay.3x.html
+++ b/doc/html/man/curs_overlay.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2020 Thomas E. Dickey *
* Copyright 1998-2013,2015 Free Software Foundation, Inc. *
diff --git a/doc/html/man/curs_pad.3x.html b/doc/html/man/curs_pad.3x.html
index b065000..dbd8f63 100644
--- a/doc/html/man/curs_pad.3x.html
+++ b/doc/html/man/curs_pad.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
diff --git a/doc/html/man/curs_print.3x.html b/doc/html/man/curs_print.3x.html
index 76d7886..52f1491 100644
--- a/doc/html/man/curs_print.3x.html
+++ b/doc/html/man/curs_print.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_print.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_print.3x,v 1.16 2020/10/24 09:25:14 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,7 +53,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>mcprint(char</STRONG> <STRONG>*data,</STRONG> <STRONG>int</STRONG> <STRONG>len);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mcprint(char</STRONG> <STRONG>*</STRONG><EM>data</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>len</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -64,15 +64,15 @@
printer or to know how much buffering it has. Your application is
responsible for keeping the rate of writes to the printer below its
continuous throughput rate (typically about half of its nominal cps
- rating). Dot-matrix printers and 6-page-per-minute lasers can typi-
- cally handle 80cps, so a good conservative rule of thumb is to sleep
- for a second after shipping each 80-character line.
+ rating). Dot-matrix printers and 6-page-per-minute lasers can
+ typically handle 80cps, so a good conservative rule of thumb is to
+ sleep for a second after shipping each 80-character line.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The <STRONG>mcprint</STRONG> function returns <STRONG>ERR</STRONG> if the write operation aborted for
- some reason. In this case, errno will contain either an error associ-
- ated with <STRONG>write(2)</STRONG> or one of the following:
+ some reason. In this case, <STRONG>errno</STRONG> will contain either an error
+ associated with <STRONG>write(2)</STRONG> or one of the following:
ENODEV
Capabilities for printer redirection do not exist.
diff --git a/doc/html/man/curs_printw.3x.html b/doc/html/man/curs_printw.3x.html
index c38fc4e..6028260 100644
--- a/doc/html/man/curs_printw.3x.html
+++ b/doc/html/man/curs_printw.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_printw.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_printw.3x,v 1.28 2020/10/24 09:22:45 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,14 +54,14 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>printw(const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>wprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvprintw(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>vw_printw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>va_list</STRONG> <STRONG>varglist);</STRONG>
+ <STRONG>int</STRONG> <STRONG>printw(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wprintw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvprintw(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwprintw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vw_printw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>va_list</STRONG> <EM>varglist</EM><STRONG>);</STRONG>
/* obsolete */
- <STRONG>int</STRONG> <STRONG>vwprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>va_list</STRONG> <STRONG>varglist);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vwprintw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>va_list</STRONG> <EM>varglist</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -70,7 +70,7 @@
<STRONG>printf</STRONG> is output instead as though <STRONG>waddstr</STRONG> were used on the given win-
dow.
- The <STRONG>vwprintw</STRONG> and <STRONG>wv_printw</STRONG> routines are analogous to <STRONG>vprintf</STRONG> [see
+ The <STRONG>vwprintw</STRONG> and <STRONG>vw_printw</STRONG> routines are analogous to <STRONG>vprintf</STRONG> [see
<STRONG>printf(3)</STRONG>] and perform a <STRONG>wprintw</STRONG> using a variable argument list. The
third argument is a <STRONG>va_list</STRONG>, a pointer to a list of arguments, as de-
fined in <STRONG>&lt;stdarg.h&gt;</STRONG>.
@@ -91,21 +91,48 @@
the window pointer is null.
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+ While <STRONG>printw</STRONG> was implemented in 4BSD, it was unused until 4.2BSD (which
+ used it in games). That early version of curses was before the ANSI C
+ standard. It did not use &lt;varargs.h&gt;, though that was available. In
+ 1991 (a couple of years after SVr4 was generally available, and after
+ the C standard was published), other developers updated the library,
+ using &lt;stdarg.h&gt; internally in 4.4BSD curses. Even with this improve-
+ ment, BSD curses did not use function prototypes (or even declare func-
+ tions) in the &lt;curses.h&gt; header until 1992.
+
+ SVr2 documented <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG> tersely as "printf on <EM>stdscr</EM>" and
+ tersely as "printf on <EM>win</EM>", respectively.
+
+ SVr3 added <STRONG>mvprintw</STRONG>, and <STRONG>mvwprintw</STRONG>, with a three-line summary saying
+ that they were analogous to <STRONG>printf(3)</STRONG>, explaining that the string which
+ would be output from <STRONG>printf(3)</STRONG> would instead be output using <STRONG>waddstr</STRONG> on
+ the given window. SVr3 also added <STRONG>vwprintw</STRONG>, saying that the third pa-
+ rameter is a <STRONG>va_list</STRONG>, defined in &lt;varargs.h&gt;, and referring the reader
+ to the manual pages for <EM>varargs</EM> and <EM>vprintf</EM> for detailed descriptions.
+
+ SVr4 added no new variations of <STRONG>printw</STRONG>, but provided for using
+ &lt;varargs.h&gt; or &lt;stdarg.h&gt; to define the <STRONG>va_list</STRONG> type.
+
+ X/Open Curses added <STRONG>vw_printw</STRONG> to replace <STRONG>vwprintw</STRONG>, stating that its
+ <STRONG>va_list</STRONG> definition requires &lt;stdarg.h&gt;.
+
+
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- In this implementation, <STRONG>vw_printw</STRONG> and <STRONG>vwprintw</STRONG> are equivalent, to sup-
+ In this implementation, <STRONG>vw_printw</STRONG> and <STRONG>vwprintw</STRONG> are equivalent, to sup-
port legacy applications. However, the latter (<STRONG>vwprintw</STRONG>) is obsolete:
- <STRONG>o</STRONG> The XSI Curses standard, Issue 4 described these functions. The
- function <STRONG>vwprintw</STRONG> is marked TO BE WITHDRAWN, and is to be replaced
+ <STRONG>o</STRONG> The XSI Curses standard, Issue 4 described these functions. The
+ function <STRONG>vwprintw</STRONG> is marked TO BE WITHDRAWN, and is to be replaced
by a function <STRONG>vw_printw</STRONG> using the <STRONG>&lt;stdarg.h&gt;</STRONG> interface.
- <STRONG>o</STRONG> The Single Unix Specification, Version 2 states that <STRONG>vw_printw</STRONG> is
- preferred to <STRONG>vwprintw</STRONG> since the latter requires including
- <STRONG>&lt;varargs.h&gt;</STRONG>, which cannot be used in the same file as <STRONG>&lt;stdarg.h&gt;</STRONG>.
- This implementation uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because that header
+ <STRONG>o</STRONG> The Single Unix Specification, Version 2 states that <STRONG>vw_printw</STRONG> is
+ preferred to <STRONG>vwprintw</STRONG> since the latter requires including
+ <STRONG>&lt;varargs.h&gt;</STRONG>, which cannot be used in the same file as <STRONG>&lt;stdarg.h&gt;</STRONG>.
+ This implementation uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because that header
is included in <STRONG>&lt;curses.h</STRONG>&gt;.
- <STRONG>o</STRONG> X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwprintw</STRONG> (along with
+ <STRONG>o</STRONG> X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwprintw</STRONG> (along with
<STRONG>vwscanw</STRONG> and the termcap interface) as withdrawn.
@@ -123,6 +150,7 @@
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
diff --git a/doc/html/man/curs_refresh.3x.html b/doc/html/man/curs_refresh.3x.html
index c239ed8..035591d 100644
--- a/doc/html/man/curs_refresh.3x.html
+++ b/doc/html/man/curs_refresh.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2016 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_refresh.3x,v 1.21 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_refresh.3x,v 1.22 2020/10/24 09:43:49 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,11 +55,12 @@
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>int</STRONG> <STRONG>refresh(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>wrefresh(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>wnoutrefresh(WINDOW</STRONG> <STRONG>*win);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wrefresh(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wnoutrefresh(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>doupdate(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>redrawwin(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>wredrawln(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>beg_line,</STRONG> <STRONG>int</STRONG> <STRONG>num_lines);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>redrawwin(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wredrawln(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>beg</EM><STRONG>_</STRONG><EM>line</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>num</EM><STRONG>_</STRONG><EM>lines</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_scanw.3x.html b/doc/html/man/curs_scanw.3x.html
index a757666..d011449 100644
--- a/doc/html/man/curs_scanw.3x.html
+++ b/doc/html/man/curs_scanw.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_scanw.3x,v 1.26 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_scanw.3x,v 1.28 2020/10/24 09:29:26 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,14 +54,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>scanw(const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>wscanw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvscanw(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwscanw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
- <STRONG>int</STRONG> <STRONG>vw_scanw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>va_list</STRONG> <STRONG>varglist);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scanw(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wscanw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvscanw(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwscanw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>vw_scanw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>va_list</STRONG> <EM>varglist</EM><STRONG>);</STRONG>
/* obsolete */
- <STRONG>int</STRONG> <STRONG>vwscanw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>va_list</STRONG> <STRONG>varglist);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vwscanw(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>fmt</EM><STRONG>,</STRONG> <STRONG>va_list</STRONG> <EM>varglist</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -89,41 +90,70 @@
the window pointer is null.
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+ While <STRONG>scanw</STRONG> was implemented in 4BSD, none of the BSD releases used it
+ until 4.4BSD (in a game). That early version of curses was before the
+ ANSI C standard. It did not use &lt;varargs.h&gt;, though that was
+ available. In 1991 (a couple of years after SVr4 was generally
+ available, and after the C standard was published), other developers
+ updated the library, using &lt;stdarg.h&gt; internally in 4.4BSD curses.
+ Even with this improvement, BSD curses did not use function prototypes
+ (or even declare functions) in the &lt;curses.h&gt; header until 1992.
+
+ SVr2 documented <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG> tersely as "scanf through <EM>stdscr</EM>" and
+ tersely as "scanf through <EM>win</EM>", respectively.
+
+ SVr3 added <STRONG>mvscanw</STRONG>, and <STRONG>mvwscanw</STRONG>, with a three-line summary saying that
+ they were analogous to <STRONG>scanf(3)</STRONG>, explaining that the string which would
+ be output from <STRONG>scanf(3)</STRONG> would instead be output using <STRONG>waddstr</STRONG> on the
+ given window. SVr3 also added <STRONG>vwscanw</STRONG>, saying that the third parameter
+ is a <STRONG>va_list</STRONG>, defined in &lt;varargs.h&gt;, and referring the reader to the
+ manual pages for <EM>varargs</EM> and <EM>vprintf</EM> for detailed descriptions.
+ (Because the SVr3 documentation does not mention <EM>vscanf</EM>, that reference
+ to <EM>vprintf</EM> may not be an error).
+
+ SVr4 added no new variations of <STRONG>scanw</STRONG>, but provided for using
+ &lt;varargs.h&gt; or &lt;stdarg.h&gt; to define the <STRONG>va_list</STRONG> type.
+
+ X/Open Curses added <STRONG>vw_scanw</STRONG> to replace <STRONG>vwscanw</STRONG>, stating that its
+ <STRONG>va_list</STRONG> definition requires &lt;stdarg.h&gt;.
+
+
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
In this implementation, <STRONG>vw_scanw</STRONG> and <STRONG>vwscanw</STRONG> are equivalent, to support
legacy applications. However, the latter (<STRONG>vwscanw</STRONG>) is obsolete:
- <STRONG>o</STRONG> The XSI Curses standard, Issue 4 described these functions, noting
- that the function <STRONG>vwscanw</STRONG> is marked TO BE WITHDRAWN, and is to be
+ <STRONG>o</STRONG> The XSI Curses standard, Issue 4 described these functions, noting
+ that the function <STRONG>vwscanw</STRONG> is marked TO BE WITHDRAWN, and is to be
replaced by a function <STRONG>vw_scanw</STRONG> using the <STRONG>&lt;stdarg.h&gt;</STRONG> interface.
- <STRONG>o</STRONG> The Single Unix Specification, Version 2 states that <STRONG>vw_scanw</STRONG> is
- preferred to <STRONG>vwscanw</STRONG> since the latter requires including
- <STRONG>&lt;varargs.h&gt;</STRONG>, which cannot be used in the same file as <STRONG>&lt;stdarg.h&gt;</STRONG>.
- This implementation uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because that header
+ <STRONG>o</STRONG> The Single Unix Specification, Version 2 states that <STRONG>vw_scanw</STRONG> is
+ preferred to <STRONG>vwscanw</STRONG> since the latter requires including
+ <STRONG>&lt;varargs.h&gt;</STRONG>, which cannot be used in the same file as <STRONG>&lt;stdarg.h&gt;</STRONG>.
+ This implementation uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because that header
is included in <STRONG>&lt;curses.h</STRONG>&gt;.
- <STRONG>o</STRONG> X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwscanw</STRONG> (along with
+ <STRONG>o</STRONG> X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwscanw</STRONG> (along with
<STRONG>vwprintw</STRONG> and the termcap interface) as withdrawn.
- Both XSI and The Single Unix Specification, Version 2 state that these
+ Both XSI and The Single Unix Specification, Version 2 state that these
functions return <STRONG>ERR</STRONG> or <STRONG>OK</STRONG>.
- <STRONG>o</STRONG> Since the underlying <STRONG>scanf(3)</STRONG> can return the number of items
+ <STRONG>o</STRONG> Since the underlying <STRONG>scanf(3)</STRONG> can return the number of items
scanned, and the SVr4 code was documented to use this feature, this
- is probably an editing error which was introduced in XSI, rather
+ is probably an editing error which was introduced in XSI, rather
than being done intentionally.
- <STRONG>o</STRONG> This implementation returns the number of items scanned, for com-
- patibility with SVr4 curses. As of 2018, NetBSD curses also
- returns the number of items scanned. Both ncurses and NetBSD
+ <STRONG>o</STRONG> This implementation returns the number of items scanned, for
+ compatibility with SVr4 curses. As of 2018, NetBSD curses also
+ returns the number of items scanned. Both ncurses and NetBSD
curses call <STRONG>vsscanf</STRONG> to scan the string, which returns <STRONG>EOF</STRONG> on error.
- <STRONG>o</STRONG> Portable applications should only test if the return value is <STRONG>ERR</STRONG>,
+ <STRONG>o</STRONG> Portable applications should only test if the return value is <STRONG>ERR</STRONG>,
since the <STRONG>OK</STRONG> value (zero) is likely to be misleading.
- One possible way to get useful results would be to use a "%n" con-
- version at the end of the format string to ensure that something
+ One possible way to get useful results would be to use a "%n"
+ conversion at the end of the format string to ensure that something
was processed.
@@ -141,6 +171,7 @@
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
diff --git a/doc/html/man/curs_scr_dump.3x.html b/doc/html/man/curs_scr_dump.3x.html
index f07d40a..71bc263 100644
--- a/doc/html/man/curs_scr_dump.3x.html
+++ b/doc/html/man/curs_scr_dump.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_scr_dump.3x,v 1.15 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_scr_dump.3x,v 1.17 2021/10/20 22:37:48 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,21 +54,27 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>scr_dump(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
- <STRONG>int</STRONG> <STRONG>scr_restore(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
- <STRONG>int</STRONG> <STRONG>scr_init(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
- <STRONG>int</STRONG> <STRONG>scr_set(const</STRONG> <STRONG>char</STRONG> <STRONG>*filename);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scr_dump(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scr_restore(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scr_init(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scr_set(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+
+</PRE><H3><a name="h3-scr_dump">scr_dump</a></H3><PRE>
The <STRONG>scr_dump</STRONG> routine dumps the current contents of the <EM>virtual</EM> <EM>screen</EM>
to the file <EM>filename</EM>.
+
+</PRE><H3><a name="h3-scr_restore">scr_restore</a></H3><PRE>
The <STRONG>scr_restore</STRONG> routine sets the <EM>virtual</EM> <EM>screen</EM> to the contents of
<EM>filename</EM>, which must have been written using <STRONG>scr_dump</STRONG>. The next call
to <STRONG>doupdate</STRONG> restores the <EM>physical</EM> <EM>screen</EM> to the way it looked in the
dump file.
+
+</PRE><H3><a name="h3-scr_init">scr_init</a></H3><PRE>
The <STRONG>scr_init</STRONG> routine reads in the contents of <EM>filename</EM> and uses them to
initialize the <STRONG>curses</STRONG> data structures about what the terminal currently
has on its screen. If the data is determined to be valid, <STRONG>curses</STRONG> bases
@@ -83,6 +89,8 @@
<STRONG>o</STRONG> if the terminal has been written to since the preceding <STRONG>scr_dump</STRONG>
call.
+
+</PRE><H3><a name="h3-scr_set">scr_set</a></H3><PRE>
The <STRONG>scr_set</STRONG> routine is a combination of <STRONG>scr_restore</STRONG> and <STRONG>scr_init</STRONG>. It
tells the program that the information in <EM>filename</EM> is what is currently
on the screen, and also what the program wants on the screen. This can
@@ -124,7 +132,14 @@
<ul>
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-scr_dump">scr_dump</a></li>
+<li><a href="#h3-scr_restore">scr_restore</a></li>
+<li><a href="#h3-scr_init">scr_init</a></li>
+<li><a href="#h3-scr_set">scr_set</a></li>
+</ul>
+</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-NOTES">NOTES</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
diff --git a/doc/html/man/curs_scroll.3x.html b/doc/html/man/curs_scroll.3x.html
index 0b0e892..0cf24be 100644
--- a/doc/html/man/curs_scroll.3x.html
+++ b/doc/html/man/curs_scroll.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2006,2010 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_scroll.3x,v 1.18 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_scroll.3x,v 1.19 2020/10/24 09:45:48 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,9 +53,10 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>scroll(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>scrl(int</STRONG> <STRONG>n);</STRONG>
- <STRONG>int</STRONG> <STRONG>wscrl(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scroll(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>scrl(int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wscrl(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_slk.3x.html b/doc/html/man/curs_slk.3x.html
index bfa1a94..1e4f954 100644
--- a/doc/html/man/curs_slk.3x.html
+++ b/doc/html/man/curs_slk.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_slk.3x,v 1.36 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_slk.3x,v 1.38 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,6 +59,7 @@
<STRONG>int</STRONG> <STRONG>slk_init(int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>slk_set(int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
+ /* extension */
<STRONG>int</STRONG> <STRONG>slk_wset(int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
<STRONG>char</STRONG> <STRONG>*slk_label(int</STRONG> <EM>labnum</EM><STRONG>);</STRONG>
diff --git a/doc/html/man/curs_sp_funcs.3x.html b/doc/html/man/curs_sp_funcs.3x.html
index a83cece..6e1b0fe 100644
--- a/doc/html/man/curs_sp_funcs.3x.html
+++ b/doc/html/man/curs_sp_funcs.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2010-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_sp_funcs.3x,v 1.18 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_sp_funcs.3x,v 1.25 2021/05/22 22:12:46 tom Exp @
* ***************************************************************************
* ***************************************************************************
* ***************************************************************************
@@ -54,146 +54,165 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
- <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG> <STRONG>#include</STRONG> <STRONG>&lt;term.h&gt;</STRONG>
-
- <STRONG>int</STRONG> <STRONG>alloc_pair_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>assume_default_colors_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>baudrate_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>beep_sp(SCREEN*);</STRONG>
- <STRONG>bool</STRONG> <STRONG>can_change_color_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>cbreak_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>color_content_sp(SCREEN*,</STRONG> <STRONG>short,</STRONG> <STRONG>short*,</STRONG> <STRONG>short*,</STRONG> <STRONG>short*);</STRONG>
- <STRONG>int</STRONG> <STRONG>curs_set_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>define_key_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>def_prog_mode_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>def_shell_mode_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>delay_output_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>doupdate_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>echo_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>endwin_sp(SCREEN*);</STRONG>
- <STRONG>char</STRONG> <STRONG>erasechar_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>extended_color_content_sp(SCREEN</STRONG> <STRONG>*,</STRONG> <STRONG>int,</STRONG> <STRONG>int</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>extended_pair_content_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>extended_slk_color_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>void</STRONG> <STRONG>filter_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>find_pair_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>free_pair_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>flash_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>flushinp_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>get_escdelay_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>getmouse_sp(SCREEN*,</STRONG> <STRONG>MEVENT*);</STRONG>
- <STRONG>WINDOW*</STRONG> <STRONG>getwin_sp(SCREEN*,</STRONG> <STRONG>FILE*);</STRONG>
- <STRONG>int</STRONG> <STRONG>halfdelay_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>bool</STRONG> <STRONG>has_colors_sp(SCREEN*);</STRONG>
- <STRONG>bool</STRONG> <STRONG>has_ic_sp(SCREEN*);</STRONG>
- <STRONG>bool</STRONG> <STRONG>has_il_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>has_key_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>bool</STRONG> <STRONG>has_mouse_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>init_color_sp(SCREEN*,</STRONG> <STRONG>short,</STRONG> <STRONG>short,</STRONG> <STRONG>short,</STRONG> <STRONG>short);</STRONG>
- <STRONG>int</STRONG> <STRONG>init_extended_color_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>init_extended_pair_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>init_pair_sp(SCREEN*,</STRONG> <STRONG>short,</STRONG> <STRONG>short,</STRONG> <STRONG>short);</STRONG>
- <STRONG>int</STRONG> <STRONG>intrflush_sp(SCREEN*,</STRONG> <STRONG>WINDOW*,</STRONG> <STRONG>bool);</STRONG>
- <STRONG>bool</STRONG> <STRONG>isendwin_sp(SCREEN*);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_term_resized_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>char*</STRONG> <STRONG>keybound_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>key_defined_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>NCURSES_CONST</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>keyname_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>keyok_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>bool);</STRONG>
- <STRONG>char</STRONG> <STRONG>killchar_sp(SCREEN*);</STRONG>
- <STRONG>char*</STRONG> <STRONG>longname_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>mcprint_sp(SCREEN*,</STRONG> <STRONG>char</STRONG> <STRONG>*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>mouseinterval_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>mmask_t</STRONG> <STRONG>mousemask_sp(SCREEN*,</STRONG> <STRONG>mmask_t,</STRONG> <STRONG>mmask_t</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvcur_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>napms_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>WINDOW*</STRONG> <STRONG>newpad_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
+ <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>alloc_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>assume_default_colors_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>baudrate_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>beep_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>can_change_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>cbreak_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>color_content_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>curs_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>visibility</EM>);
+ <STRONG>int</STRONG> <STRONG>def_prog_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>def_shell_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>define_key_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <EM>definition</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>delay_output_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>doupdate_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>echo_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>endwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>char</STRONG> <STRONG>erasechar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>erasewchar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>extended_color_content_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>extended_pair_content_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>extended_slk_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>);</STRONG>
+
+ <STRONG>void</STRONG> <STRONG>filter_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>find_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>flash_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>flushinp_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>get_escdelay_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>getmouse_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>MEVENT*</STRONG> <STRONG>event);</STRONG>
+ <STRONG>WINDOW*</STRONG> <STRONG>getwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>FILE*</STRONG> <EM>filep</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>halfdelay_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>tenths</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>has_colors_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+
+ <STRONG>bool</STRONG> <STRONG>has_ic_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>has_il_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>has_key_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>has_mouse_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_extended_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>b</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_extended_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>init_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>intrflush_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>WINDOW*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_term_resized_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG>
+
+ <STRONG>bool</STRONG> <STRONG>isendwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>key_defined_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>definition</EM><STRONG>);</STRONG>
+ <STRONG>char*</STRONG> <STRONG>keybound_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>count</EM><STRONG>);</STRONG>
+ <STRONG>NCURSES_CONST</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>keyname_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>keyok_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>enable</EM><STRONG>);</STRONG>
+ <STRONG>char</STRONG> <STRONG>killchar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>killwchar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>char*</STRONG> <STRONG>longname_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mcprint_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>data</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>len</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mouseinterval_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>erval</EM><STRONG>);</STRONG>
+
+ <STRONG>mmask_t</STRONG> <STRONG>mousemask_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>mmask_t</STRONG> <EM>newmask</EM><STRONG>,</STRONG> <STRONG>mmask_t</STRONG> <STRONG>*</STRONG><EM>oldmask</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvcur_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldcol</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newcol</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>napms_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW*</STRONG> <STRONG>newpad_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>nrows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ncols</EM><STRONG>);</STRONG>
<STRONG>SCREEN*</STRONG> <STRONG>new_prescr(void);</STRONG>
- <STRONG>SCREEN*</STRONG> <STRONG>newterm_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*,</STRONG> <STRONG>FILE</STRONG> <STRONG>*,</STRONG> <STRONG>FILE</STRONG> <STRONG>*);</STRONG>
- <STRONG>WINDOW*</STRONG> <STRONG>newwin_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>nl_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>nocbreak_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>noecho_sp(SCREEN*);</STRONG>
- <STRONG>void</STRONG> <STRONG>nofilter_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>nonl_sp(SCREEN*);</STRONG>
- <STRONG>void</STRONG> <STRONG>noqiflush_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>noraw_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>pair_content_sp(SCREEN*,</STRONG> <STRONG>short,</STRONG> <STRONG>short*,</STRONG> <STRONG>short*);</STRONG>
- <STRONG>void</STRONG> <STRONG>qiflush_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>raw_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>reset_prog_mode_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>reset_shell_mode_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>resetty_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>resize_term_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>resizeterm_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>restartterm_sp(SCREEN*,</STRONG> <STRONG>NCURSES_CONST</STRONG> <STRONG>char*,</STRONG> <STRONG>int,</STRONG> <STRONG>int</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>ripoffline_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>int</STRONG> <STRONG>(*)(WINDOW*,</STRONG> <STRONG>int));</STRONG>
- <STRONG>int</STRONG> <STRONG>savetty_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>scr_init_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>scr_restore_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>scr_set_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>TERMINAL*</STRONG> <STRONG>set_curterm_sp(SCREEN*,</STRONG> <STRONG>TERMINAL*);</STRONG>
- <STRONG>int</STRONG> <STRONG>set_escdelay_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>set_tabsize_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_attroff_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>chtype);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_attron_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>chtype);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_attr_set_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>attr_t,</STRONG> <STRONG>short,</STRONG> <STRONG>void*);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_attrset_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>chtype);</STRONG>
- <STRONG>attr_t</STRONG> <STRONG>slk_attr_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_clear_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_color_sp(SCREEN*,</STRONG> <STRONG>short);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_init_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>char*</STRONG> <STRONG>slk_label_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_noutrefresh_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_refresh_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_restore_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_set_sp(SCREEN*,</STRONG> <STRONG>int,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>slk_touch_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>start_color_sp(SCREEN*);</STRONG>
- <STRONG>attr_t</STRONG> <STRONG>term_attrs_sp(SCREEN*);</STRONG>
- <STRONG>chtype</STRONG> <STRONG>termattrs_sp(SCREEN*);</STRONG>
- <STRONG>char*</STRONG> <STRONG>termname_sp(SCREEN*);</STRONG>
- <STRONG>int</STRONG> <STRONG>typeahead_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>NCURSES_CONST</STRONG> <STRONG>char*</STRONG> <STRONG>unctrl_sp(SCREEN*,</STRONG> <STRONG>chtype);</STRONG>
- <STRONG>int</STRONG> <STRONG>ungetch_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>ungetmouse_sp(SCREEN*,MEVENT</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>unget_wch_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t);</STRONG>
- <STRONG>int</STRONG> <STRONG>use_default_colors_sp(SCREEN*);</STRONG>
- <STRONG>void</STRONG> <STRONG>use_env_sp(SCREEN*,</STRONG> <STRONG>bool);</STRONG>
- <STRONG>void</STRONG> <STRONG>use_tioctl_sp(SCREEN</STRONG> <STRONG>*,</STRONG> <STRONG>bool);</STRONG>
- <STRONG>int</STRONG> <STRONG>use_legacy_coding_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG>
- <STRONG>int</STRONG> <STRONG>vid_attr_sp(SCREEN*,</STRONG> <STRONG>attr_t,</STRONG> <STRONG>short,</STRONG> <STRONG>void</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>vidattr_sp(SCREEN*,</STRONG> <STRONG>chtype);</STRONG>
- <STRONG>int</STRONG> <STRONG>vid_puts_sp(SCREEN*,</STRONG> <STRONG>attr_t,</STRONG> <STRONG>short,</STRONG> <STRONG>void</STRONG> <STRONG>*,</STRONG> <STRONG>NCURSES_SP_OUTC);</STRONG>
- <STRONG>int</STRONG> <STRONG>vidputs_sp(SCREEN*,</STRONG> <STRONG>chtype,</STRONG> <STRONG>NCURSES_SP_OUTC);</STRONG>
- <STRONG>wchar_t*</STRONG> <STRONG>wunctrl_sp(SCREEN*,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*);</STRONG>
+ <STRONG>SCREEN*</STRONG> <STRONG>newterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>type</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>outfd</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>infd</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW*</STRONG> <STRONG>newwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>nlines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ncols</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>begin</EM><STRONG>_</STRONG><EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>begin</EM><STRONG>_</STRONG><EM>x</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>nl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>nocbreak_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>noecho_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+
+ <STRONG>void</STRONG> <STRONG>nofilter_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>nonl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>noqiflush_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>noraw_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>pair_content_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>qiflush_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>raw_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>reset_prog_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>reset_color_pairs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>reset_shell_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>resetty_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>resize_term_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>resizeterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>ripoffline_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>line</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>init</EM><STRONG>)(WINDOW*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>));</STRONG>
+ <STRONG>int</STRONG> <STRONG>savetty_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scr_init_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scr_restore_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>scr_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>set_escdelay_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>set_tabsize_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>cols</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>slk_attr_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void*</STRONG><EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_attrset_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_attroff_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_attron_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG>
+ <STRONG>attr_t</STRONG> <STRONG>slk_attr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_clear_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_init_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
+ <STRONG>char*</STRONG> <STRONG>slk_label_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>labnum</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_noutrefresh_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>slk_refresh_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_restore_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>slk_touch_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>start_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>attr_t</STRONG> <STRONG>term_attrs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>termattrs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>char*</STRONG> <STRONG>termname_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>typeahead_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fd</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>unget_wch_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <EM>wch</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>ungetch_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>ungetmouse_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,MEVENT</STRONG> <STRONG>*</STRONG> <STRONG>event);</STRONG>
+ <STRONG>int</STRONG> <STRONG>use_default_colors_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>use_env_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>use_legacy_coding_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>level</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>use_tioctl_sp(SCREEN</STRONG> <STRONG>*</STRONG><EM>sp</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vid_attr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vid_puts_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG> <EM>opts</EM><STRONG>,</STRONG> <STRONG>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vidattr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vidputs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG>
+ <STRONG>wchar_t*</STRONG> <STRONG>wunctrl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ch</EM><STRONG>);</STRONG>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- <STRONG>FORM*</STRONG> <STRONG>new_form_sp(SCREEN*,</STRONG> <STRONG>FIELD</STRONG> <STRONG>**);</STRONG>
+ <STRONG>FORM*</STRONG> <STRONG>new_form_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>FIELD</STRONG> <STRONG>**</STRONG><EM>fields</EM><STRONG>);</STRONG>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- <STRONG>MENU*</STRONG> <STRONG>new_menu_sp(SCREEN*,</STRONG> <STRONG>ITEM</STRONG> <STRONG>**);</STRONG>
+ <STRONG>MENU*</STRONG> <STRONG>new_menu_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>ITEM</STRONG> <STRONG>**</STRONG><EM>items</EM><STRONG>);</STRONG>
<STRONG>#include</STRONG> <STRONG>&lt;panel.h&gt;</STRONG>
- <STRONG>PANEL*</STRONG> <STRONG>ceiling_panel(SCREEN*);</STRONG>
- <STRONG>PANEL*</STRONG> <STRONG>ground_panel(SCREEN*);</STRONG>
- <STRONG>void</STRONG> <STRONG>update_panels_sp(SCREEN*);</STRONG>
+ <STRONG>PANEL*</STRONG> <STRONG>ceiling_panel(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>PANEL*</STRONG> <STRONG>ground_panel(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>update_panels_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
<STRONG>#include</STRONG> <STRONG>&lt;term.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>del_curterm_sp(SCREEN*,</STRONG> <STRONG>TERMINAL</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>putp_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>tgetflag_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>tgetent_sp(SCREEN*,</STRONG> <STRONG>char</STRONG> <STRONG>*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>tgetnum_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>char*</STRONG> <STRONG>tgetstr_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*,</STRONG> <STRONG>char</STRONG> <STRONG>**);</STRONG>
- <STRONG>int</STRONG> <STRONG>tigetflag_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>tigetnum_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>char*</STRONG> <STRONG>tigetstr_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*);</STRONG>
- <STRONG>int</STRONG> <STRONG>tputs_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*,</STRONG> <STRONG>int,</STRONG> <STRONG>NCURSES_SP_OUTC);</STRONG>
+ <STRONG>int</STRONG> <STRONG>del_curterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>TERMINAL</STRONG> <STRONG>*</STRONG><EM>oterm</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>putp_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>restartterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>NCURSES_CONST</STRONG> <STRONG>char*</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>filedes</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>errret</EM><STRONG>);</STRONG>
+ <STRONG>TERMINAL*</STRONG> <STRONG>set_curterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>TERMINAL*</STRONG><EM>nterm</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tgetent_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>bp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tgetflag_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tgetnum_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
+ <STRONG>char*</STRONG> <STRONG>tgetstr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>**</STRONG><EM>area</EM><STRONG>);</STRONG>
+ <STRONG>char*</STRONG> <STRONG>tgoto_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>col</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>row</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tigetflag_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tigetnum_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
+ <STRONG>char*</STRONG> <STRONG>tigetstr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
+ /* may instead use 9 long parameters */
+ <STRONG>char*</STRONG> <STRONG>tparm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tputs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>affcnt</EM><STRONG>,</STRONG> <STRONG>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG>
+
+ <STRONG>#include</STRONG> <STRONG>&lt;unctrl.h&gt;</STRONG>
+
+ <STRONG>NCURSES_CONST</STRONG> <STRONG>char*</STRONG> <STRONG>unctrl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>c</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_termattrs.3x.html b/doc/html/man/curs_termattrs.3x.html
index 81805d2..da6091c 100644
--- a/doc/html/man/curs_termattrs.3x.html
+++ b/doc/html/man/curs_termattrs.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2015 Free Software Foundation, Inc. *
@@ -79,8 +79,8 @@
</PRE><H3><a name="h3-erasechar_-erasewchar">erasechar, erasewchar</a></H3><PRE>
The <STRONG>erasechar</STRONG> routine returns the user's current erase character.
- The <STRONG>erasewchar</STRONG> routine stores the current erase character in the loca-
- tion referenced by <EM>ch</EM>. If no erase character has been defined, the
+ The <STRONG>erasewchar</STRONG> routine stores the current erase character in the
+ location referenced by <EM>ch</EM>. If no erase character has been defined, the
routine fails and the location referenced by <EM>ch</EM> is not changed.
@@ -113,12 +113,13 @@
</PRE><H3><a name="h3-termattrs_-term_attrs">termattrs, term_attrs</a></H3><PRE>
- If a given terminal does not support a video attribute that an applica-
- tion program is trying to use, <STRONG>curses</STRONG> may substitute a different video
- attribute for it. The <STRONG>termattrs</STRONG> and <STRONG>term_attrs</STRONG> functions return a log-
- ical <STRONG>OR</STRONG> of all video attributes supported by the terminal using <EM>A</EM><STRONG>_</STRONG> and
- <EM>WA</EM><STRONG>_</STRONG> constants respectively. This information is useful when a <STRONG>curses</STRONG>
- program needs complete control over the appearance of the screen.
+ If a given terminal does not support a video attribute that an
+ application program is trying to use, <STRONG>curses</STRONG> may substitute a different
+ video attribute for it. The <STRONG>termattrs</STRONG> and <STRONG>term_attrs</STRONG> functions return
+ a logical <STRONG>OR</STRONG> of all video attributes supported by the terminal using <EM>A</EM><STRONG>_</STRONG>
+ and <EM>WA</EM><STRONG>_</STRONG> constants respectively. This information is useful when a
+ <STRONG>curses</STRONG> program needs complete control over the appearance of the
+ screen.
</PRE><H3><a name="h3-termname">termname</a></H3><PRE>
@@ -128,9 +129,9 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
<STRONG>longname</STRONG> and <STRONG>termname</STRONG> return <STRONG>NULL</STRONG> on error.
- Routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4
- only specifies "an integer value other than <STRONG>ERR</STRONG>") upon successful com-
- pletion.
+ Routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4
+ only specifies "an integer value other than <STRONG>ERR</STRONG>") upon successful
+ completion.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -139,7 +140,7 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
The XSI Curses standard, Issue 4 describes these functions. It changes
- the return type of <STRONG>termattrs</STRONG> to the new type <STRONG>attr_t</STRONG>. Most versions of
+ the return type of <STRONG>termattrs</STRONG> to the new type <STRONG>attr_t</STRONG>. Most versions of
curses truncate the result returned by <STRONG>termname</STRONG> to 14 characters.
diff --git a/doc/html/man/curs_termcap.3x.html b/doc/html/man/curs_termcap.3x.html
index e947f71..e3ed320 100644
--- a/doc/html/man/curs_termcap.3x.html
+++ b/doc/html/man/curs_termcap.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_termcap.3x,v 1.43 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_termcap.3x,v 1.49 2021/04/03 21:17:09 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -48,7 +48,7 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
<STRONG>PC</STRONG>, <STRONG>UP</STRONG>, <STRONG>BC</STRONG>, <STRONG>ospeed</STRONG>, <STRONG>tgetent</STRONG>, <STRONG>tgetflag</STRONG>, <STRONG>tgetnum</STRONG>, <STRONG>tgetstr</STRONG>, <STRONG>tgoto</STRONG>, <STRONG>tputs</STRONG> -
- direct <STRONG>curses</STRONG> interface to the terminfo capability database
+ <STRONG>curses</STRONG> emulation of termcap
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
@@ -60,17 +60,17 @@
<STRONG>extern</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>BC;</STRONG>
<STRONG>extern</STRONG> <STRONG>short</STRONG> <STRONG>ospeed;</STRONG>
- <STRONG>int</STRONG> <STRONG>tgetent(char</STRONG> <STRONG>*bp,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*name);</STRONG>
- <STRONG>int</STRONG> <STRONG>tgetflag(const</STRONG> <STRONG>char</STRONG> <STRONG>*id);</STRONG>
- <STRONG>int</STRONG> <STRONG>tgetnum(const</STRONG> <STRONG>char</STRONG> <STRONG>*id);</STRONG>
- <STRONG>char</STRONG> <STRONG>*tgetstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*id,</STRONG> <STRONG>char</STRONG> <STRONG>**area);</STRONG>
- <STRONG>char</STRONG> <STRONG>*tgoto(const</STRONG> <STRONG>char</STRONG> <STRONG>*cap,</STRONG> <STRONG>int</STRONG> <STRONG>col,</STRONG> <STRONG>int</STRONG> <STRONG>row);</STRONG>
- <STRONG>int</STRONG> <STRONG>tputs(const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>affcnt,</STRONG> <STRONG>int</STRONG> <STRONG>(*putc)(int));</STRONG>
+ <STRONG>int</STRONG> <STRONG>tgetent(char</STRONG> <STRONG>*</STRONG><EM>bp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tgetflag(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>id</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tgetnum(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>id</EM><STRONG>);</STRONG>
+ <STRONG>char</STRONG> <STRONG>*tgetstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>id</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>**</STRONG><EM>area</EM><STRONG>);</STRONG>
+ <STRONG>char</STRONG> <STRONG>*tgoto(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>cap</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>col</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>row</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>tputs(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>affcnt</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
These routines are included as a conversion aid for programs that use
- the <EM>termcap</EM> library. Their parameters are the same and the routines
+ the <EM>termcap</EM> library. Their parameters are the same, but the routines
are emulated using the <EM>terminfo</EM> database. Thus, they can only be used
to query the capabilities of entries for which a terminfo entry has
been compiled.
@@ -184,62 +184,131 @@
style parser if the string does not appear to be terminfo).
Because terminfo conventions for representing padding in string capa-
- bilities differ from termcap's, <STRONG>tputs("50");</STRONG> will put out a literal
- "50" rather than busy-waiting for 50 milliseconds. Cope with it.
+ bilities differ from termcap's, users can be surprised:
- Note that termcap has nothing analogous to terminfo's <STRONG>sgr</STRONG> string. One
- consequence of this is that termcap applications assume me (terminfo
- <STRONG>sgr0</STRONG>) does not reset the alternate character set. This implementation
+ <STRONG>o</STRONG> <STRONG>tputs("50")</STRONG> in a terminfo system will put out a literal "50" rather
+ than busy-waiting for 50 milliseconds.
+
+ <STRONG>o</STRONG> However, if ncurses is configured to support termcap, it may also
+ have been configured to support the BSD-style padding.
+
+ In that case, <STRONG>tputs</STRONG> inspects strings passed to it, looking for dig-
+ its at the beginning of the string.
+
+ <STRONG>tputs("50")</STRONG> in a termcap system may wait for 50 milliseconds rather
+ than put out a literal "50"
+
+ Note that termcap has nothing analogous to terminfo's <STRONG>sgr</STRONG> string. One
+ consequence of this is that termcap applications assume <STRONG>me</STRONG> (terminfo
+ <STRONG>sgr0</STRONG>) does not reset the alternate character set. This implementation
checks for, and modifies the data shown to the termcap interface to ac-
commodate termcap's limitation in this respect.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These functions are provided for supporting legacy applications, and
+
+</PRE><H3><a name="h3-Standards">Standards</a></H3><PRE>
+ These functions are provided for supporting legacy applications, and
should not be used in new programs:
<STRONG>o</STRONG> The XSI Curses standard, Issue 4 describes these functions. Howev-
- er, they are marked TO BE WITHDRAWN and may be removed in future
+ er, they are marked TO BE WITHDRAWN and may be removed in future
versions.
<STRONG>o</STRONG> X/Open Curses, Issue 5 (December 2007) marked the termcap interface
(along with <STRONG>vwprintw</STRONG> and <STRONG>vwscanw</STRONG>) as withdrawn.
- Neither the XSI Curses standard nor the SVr4 man pages documented the
- return values of <STRONG>tgetent</STRONG> correctly, though all three were in fact re-
- turned ever since SVr1. In particular, an omission in the XSI Curses
- documentation has been misinterpreted to mean that <STRONG>tgetent</STRONG> returns <STRONG>OK</STRONG>
- or <STRONG>ERR</STRONG>. Because the purpose of these functions is to provide compati-
- bility with the <EM>termcap</EM> library, that is a defect in XCurses, Issue 4,
+ Neither the XSI Curses standard nor the SVr4 man pages documented the
+ return values of <STRONG>tgetent</STRONG> correctly, though all three were in fact re-
+ turned ever since SVr1. In particular, an omission in the XSI Curses
+ documentation has been misinterpreted to mean that <STRONG>tgetent</STRONG> returns <STRONG>OK</STRONG>
+ or <STRONG>ERR</STRONG>. Because the purpose of these functions is to provide compati-
+ bility with the <EM>termcap</EM> library, that is a defect in XCurses, Issue 4,
Version 2 rather than in ncurses.
+
+</PRE><H3><a name="h3-Compatibility-with-BSD-Termcap">Compatibility with BSD Termcap</a></H3><PRE>
External variables are provided for support of certain termcap applica-
tions. However, termcap applications' use of those variables is poorly
documented, e.g., not distinguishing between input and output. In par-
- ticular, some applications are reported to declare and/or modify <STRONG>os-</STRONG>
+ ticular, some applications are reported to declare and/or modify <STRONG>os-</STRONG>
<STRONG>peed</STRONG>.
- The comment that only the first two characters of the <STRONG>id</STRONG> parameter are
+ The comment that only the first two characters of the <STRONG>id</STRONG> parameter are
used escapes many application developers. The original BSD 4.2 termcap
library (and historical relics thereof) did not require a trailing null
- NUL on the parameter name passed to <STRONG>tgetstr</STRONG>, <STRONG>tgetnum</STRONG> and <STRONG>tgetflag</STRONG>.
- Some applications assume that the termcap interface does not require
+ NUL on the parameter name passed to <STRONG>tgetstr</STRONG>, <STRONG>tgetnum</STRONG> and <STRONG>tgetflag</STRONG>.
+ Some applications assume that the termcap interface does not require
the trailing NUL for the parameter name. Taking into account these is-
sues:
- <STRONG>o</STRONG> As a special case, <STRONG>tgetflag</STRONG> matched against a single-character
- identifier provided that was at the end of the terminal descrip-
+ <STRONG>o</STRONG> As a special case, <STRONG>tgetflag</STRONG> matched against a single-character
+ identifier provided that was at the end of the terminal descrip-
tion. You should not rely upon this behavior in portable programs.
- This implementation disallows matches against single-character ca-
+ This implementation disallows matches against single-character ca-
pability names.
- <STRONG>o</STRONG> This implementation disallows matches by the termcap interface
+ <STRONG>o</STRONG> This implementation disallows matches by the termcap interface
against extended capability names which are longer than two charac-
ters.
+ The BSD termcap function <STRONG>tgetent</STRONG> returns the text of a termcap entry in
+ the buffer passed as an argument. This library (like other terminfo
+ implementations) does not store terminal descriptions as text. It sets
+ the buffer contents to a null-terminated string.
+
+
+</PRE><H3><a name="h3-Other-Compatibility">Other Compatibility</a></H3><PRE>
+ This library includes a termcap.h header, for compatibility with other
+ implementations. But the header is rarely used because the other im-
+ plementations are not strictly compatible.
+
+ The original BSD termcap (through 4.3BSD) had no header file which gave
+ function prototypes, because that was a feature of ANSI C. BSD termcap
+ was written several years before C was standardized. However, there
+ were two different termcap.h header files in the BSD sources:
+
+ <STRONG>o</STRONG> One was used internally by the <EM>jove</EM> editor in 2BSD through 4.4BSD.
+ It defined global symbols for the termcap variables which it used.
+
+ <STRONG>o</STRONG> The other appeared in 4.4BSD Lite Release 2 (mid-1993) as part of
+ <EM>libedit</EM> (also known as the <EM>editline</EM> library). The CSRG source his-
+ tory shows that this was added in mid-1992. The <EM>libedit</EM> header
+ file was used internally, as a convenience for compiling the <EM>edit-</EM>
+ <EM>line</EM> library. It declared function prototypes, but no global vari-
+ ables.
+
+ The header file from <EM>libedit</EM> was added to NetBSD's termcap library in
+ mid-1994.
+
+ Meanwhile, GNU termcap was under development, starting in 1990. The
+ first release (termcap 1.0) in 1991 included a termcap.h header. The
+ second release (termcap 1.1) in September 1992 modified the header to
+ use <STRONG>const</STRONG> for the function prototypes in the header where one would ex-
+ pect the parameters to be read-only. This was a difference versus the
+ original BSD termcap. The prototype for <STRONG>tputs</STRONG> also differed, but in
+ that instance, it was <EM>libedit</EM> which differed from BSD termcap.
+
+ A copy of GNU termcap 1.3 was bundled with <EM>bash</EM> in mid-1993, to support
+ the <EM>readline</EM> library.
+
+ A termcap.h file was provided in ncurses 1.8.1 (November 1993). That
+ reflected influence by <EM>emacs</EM> (rather than <EM>jove</EM>) and GNU termcap:
+
+ <STRONG>o</STRONG> it provided declarations for a few global symbols used by <EM>emacs</EM>
+
+ <STRONG>o</STRONG> it provided function prototypes (using <STRONG>const</STRONG>).
+
+ <STRONG>o</STRONG> a prototype for <STRONG>tparam</STRONG> (a GNU termcap feature) was provided.
+
+ Later (in mid-1996) the <STRONG>tparam</STRONG> function was removed from ncurses. As a
+ result, there are differences between any of the four implementations,
+ which must be taken into account by programs which can work with all
+ termcap library interfaces.
+
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
https://invisible-island.net/ncurses/tctest.html
@@ -261,7 +330,13 @@
</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-BUGS">BUGS</a></li>
-<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a>
+<ul>
+<li><a href="#h3-Standards">Standards</a></li>
+<li><a href="#h3-Compatibility-with-BSD-Termcap">Compatibility with BSD Termcap</a></li>
+<li><a href="#h3-Other-Compatibility">Other Compatibility</a></li>
+</ul>
+</li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
</div>
diff --git a/doc/html/man/curs_terminfo.3x.html b/doc/html/man/curs_terminfo.3x.html
index 4c4246b..11c211d 100644
--- a/doc/html/man/curs_terminfo.3x.html
+++ b/doc/html/man/curs_terminfo.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,9 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_terminfo.3x,v 1.64 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_terminfo.3x,v 1.76 2021/09/04 19:58:03 tom Exp @
+ * ***************************************************************************
+ * ***************************************************************************
* ***************************************************************************
* ***************************************************************************
* ***************************************************************************
@@ -52,7 +54,7 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>del_curterm</STRONG>, <STRONG>mvcur</STRONG>, <STRONG>putp</STRONG>, <STRONG>restartterm</STRONG>, <STRONG>set_curterm</STRONG>, <STRONG>setterm</STRONG>, <STRONG>setupterm</STRONG>,
+ <STRONG>del_curterm</STRONG>, <STRONG>mvcur</STRONG>, <STRONG>putp</STRONG>, <STRONG>restartterm</STRONG>, <STRONG>set_curterm</STRONG>, <STRONG>setupterm</STRONG>,
<STRONG>tigetflag</STRONG>, <STRONG>tigetnum</STRONG>, <STRONG>tigetstr</STRONG>, <STRONG>tiparm</STRONG>, <STRONG>tparm</STRONG>, <STRONG>tputs</STRONG>, <STRONG>vid_attr</STRONG>,
<STRONG>vid_puts</STRONG>, <STRONG>vidattr</STRONG>, <STRONG>vidputs</STRONG> - <STRONG>curses</STRONG> interfaces to terminfo database
@@ -74,7 +76,6 @@
<STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>const</STRONG> <STRONG>strfnames[];</STRONG>
<STRONG>int</STRONG> <STRONG>setupterm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>filedes</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>errret</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>setterm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>term</EM><STRONG>);</STRONG>
<STRONG>TERMINAL</STRONG> <STRONG>*set_curterm(TERMINAL</STRONG> <STRONG>*</STRONG><EM>nterm</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>del_curterm(TERMINAL</STRONG> <STRONG>*</STRONG><EM>oterm</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>restartterm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>filedes</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>errret</EM><STRONG>);</STRONG>
@@ -103,6 +104,14 @@
ities, such as programming function keys. For all other functionality,
<STRONG>curses</STRONG> routines are more suitable and their use is recommended.
+ None of these functions use (or are aware of) multibyte character
+ strings such as UTF-8:
+
+ <STRONG>o</STRONG> capability names use the POSIX portable character set
+
+ <STRONG>o</STRONG> capability string values have no associated encoding; they are
+ strings of 8-bit characters.
+
</PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
Initially, <STRONG>setupterm</STRONG> should be called. The high-level curses functions
@@ -187,14 +196,6 @@
which uses all the defaults and sends the output to <STRONG>stdout</STRONG>.
- The <STRONG>setterm</STRONG> routine was replaced by <STRONG>setupterm</STRONG>. The call:
-
- <STRONG>setupterm(</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>1,</STRONG> <STRONG>(int</STRONG> <STRONG>*)0)</STRONG>
-
- provides the same functionality as <STRONG>setterm(</STRONG><EM>term</EM><STRONG>)</STRONG>. The <STRONG>setterm</STRONG> routine
- is provided for BSD compatibility, and is not recommended for new pro-
- grams.
-
</PRE><H3><a name="h3-The-Terminal-State">The Terminal State</a></H3><PRE>
The <STRONG>setupterm</STRONG> routine stores its information about the terminal in a
@@ -240,62 +241,73 @@
<STRONG>o</STRONG> Aside from the <STRONG>set_attributes</STRONG> (<STRONG>sgr</STRONG>) capability, most terminal capa-
bilities require no more than one or two parameters.
+ <STRONG>o</STRONG> Padding information is ignored by <STRONG>tparm</STRONG>; it is interpreted by
+ <STRONG>tputs</STRONG>.
+
+ <STRONG>o</STRONG> The capability string is null-terminated. Use "\200" where an
+ ASCII NUL is needed in the output.
+
<STRONG>tiparm</STRONG> is a newer form of <STRONG>tparm</STRONG> which uses <EM>&lt;stdarg.h&gt;</EM> rather than a
fixed-parameter list. Its numeric parameters are integers (int) rather
than longs.
</PRE><H3><a name="h3-Output-Functions">Output Functions</a></H3><PRE>
- The <STRONG>tputs</STRONG> routine applies padding information to the string <EM>str</EM> and
- outputs it:
+ The <STRONG>tputs</STRONG> routine applies padding information (i.e., by interpreting
+ marker embedded in the terminfo capability such as "$&lt;5&gt;" as 5 mil-
+ liseconds) to the string <EM>str</EM> and outputs it:
- <STRONG>o</STRONG> The <EM>str</EM> parameter must be a terminfo string variable or the return
+ <STRONG>o</STRONG> The <EM>str</EM> parameter must be a terminfo string variable or the return
value from <STRONG>tparm</STRONG>, <STRONG>tiparm</STRONG>, <STRONG>tgetstr</STRONG>, or <STRONG>tgoto</STRONG>.
- The <STRONG>tgetstr</STRONG> and <STRONG>tgoto</STRONG> functions are part of the <EM>termcap</EM> interface,
- which happens to share this function name with the <EM>terminfo</EM> inter-
+ The <STRONG>tgetstr</STRONG> and <STRONG>tgoto</STRONG> functions are part of the <EM>termcap</EM> interface,
+ which happens to share this function name with the <EM>terminfo</EM> inter-
face.
<STRONG>o</STRONG> <EM>affcnt</EM> is the number of lines affected, or 1 if not applicable.
- <STRONG>o</STRONG> <EM>putc</EM> is a <STRONG>putchar</STRONG>-like routine to which the characters are passed,
+ <STRONG>o</STRONG> <EM>putc</EM> is a <STRONG>putchar</STRONG>-like routine to which the characters are passed,
one at a time.
- The <STRONG>putp</STRONG> routine calls <STRONG>tputs(</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>1,</STRONG> <STRONG>putchar)</STRONG>. The output of <STRONG>putp</STRONG> al-
+ The <STRONG>putp</STRONG> routine calls <STRONG>tputs(</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>1,</STRONG> <STRONG>putchar)</STRONG>. The output of <STRONG>putp</STRONG> al-
ways goes to <STRONG>stdout</STRONG>, rather than the <EM>filedes</EM> specified in <STRONG>setupterm</STRONG>.
- The <STRONG>vidputs</STRONG> routine displays the string on the terminal in the video
+ The <STRONG>vidputs</STRONG> routine displays the string on the terminal in the video
attribute mode <EM>attrs</EM>, which is any combination of the attributes listed
- in <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. The characters are passed to the <STRONG>putchar</STRONG>-like routine
+ in <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. The characters are passed to the <STRONG>putchar</STRONG>-like routine
<EM>putc</EM>.
The <STRONG>vidattr</STRONG> routine is like the <STRONG>vidputs</STRONG> routine, except that it outputs
through <STRONG>putchar</STRONG>.
- The <STRONG>vid_attr</STRONG> and <STRONG>vid_puts</STRONG> routines correspond to vidattr and vidputs,
- respectively. They use a set of arguments for representing the video
+ The <STRONG>vid_attr</STRONG> and <STRONG>vid_puts</STRONG> routines correspond to vidattr and vidputs,
+ respectively. They use a set of arguments for representing the video
attributes plus color, i.e.,
<STRONG>o</STRONG> <EM>attrs</EM> of type <STRONG>attr_t</STRONG> for the attributes and
<STRONG>o</STRONG> <EM>pair</EM> of type <STRONG>short</STRONG> for the color-pair number.
- The <STRONG>vid_attr</STRONG> and <STRONG>vid_puts</STRONG> routines are designed to use the attribute
+ The <STRONG>vid_attr</STRONG> and <STRONG>vid_puts</STRONG> routines are designed to use the attribute
constants with the <EM>WA</EM><STRONG>_</STRONG> prefix.
- X/Open Curses reserves the <EM>opts</EM> argument for future use, saying that
- applications must provide a null pointer for that argument. As an ex-
- tension, this implementation allows <EM>opts</EM> to be used as a pointer to
+ X/Open Curses reserves the <EM>opts</EM> argument for future use, saying that
+ applications must provide a null pointer for that argument. As an ex-
+ tension, this implementation allows <EM>opts</EM> to be used as a pointer to
<STRONG>int</STRONG>, which overrides the <EM>pair</EM> (<STRONG>short</STRONG>) argument.
- The <STRONG>mvcur</STRONG> routine provides low-level cursor motion. It takes effect
+ The <STRONG>mvcur</STRONG> routine provides low-level cursor motion. It takes effect
immediately (rather than at the next refresh).
+ While <STRONG>putp</STRONG> and <STRONG>mvcur</STRONG> are low-level functions which do not use the high-
+ level curses state, they are declared in <STRONG>&lt;curses.h&gt;</STRONG> because SystemV did
+ this (see <STRONG>HISTORY</STRONG>).
+
</PRE><H3><a name="h3-Terminal-Capability-Functions">Terminal Capability Functions</a></H3><PRE>
- The <STRONG>tigetflag</STRONG>, <STRONG>tigetnum</STRONG> and <STRONG>tigetstr</STRONG> routines return the value of the
- capability corresponding to the <STRONG>terminfo</STRONG> <EM>capname</EM> passed to them, such
- as <STRONG>xenl</STRONG>. The <EM>capname</EM> for each capability is given in the table column
+ The <STRONG>tigetflag</STRONG>, <STRONG>tigetnum</STRONG> and <STRONG>tigetstr</STRONG> routines return the value of the
+ capability corresponding to the <STRONG>terminfo</STRONG> <EM>capname</EM> passed to them, such
+ as <STRONG>xenl</STRONG>. The <EM>capname</EM> for each capability is given in the table column
entitled <EM>capname</EM> code in the capabilities section of <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
These routines return special values to denote errors.
@@ -325,7 +337,7 @@
<STRONG>o</STRONG> the short terminfo names ("codes"),
- <STRONG>o</STRONG> the <STRONG>termcap</STRONG> names ("names", and
+ <STRONG>o</STRONG> the <STRONG>termcap</STRONG> names ("names"), and
<STRONG>o</STRONG> the long terminfo names ("fnames")
@@ -337,8 +349,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- Routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4
- only specifies "an integer value other than <STRONG>ERR</STRONG>") upon successful com-
+ Routines that return an integer return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4
+ only specifies "an integer value other than <STRONG>ERR</STRONG>") upon successful com-
pletion, unless otherwise noted in the preceding routine descriptions.
Routines that return pointers always return <STRONG>NULL</STRONG> on error.
@@ -360,11 +372,28 @@
ditions are documented above.
<STRONG>tputs</STRONG>
- returns an error if the string parameter is null. It does not
- detect I/O errors: X/Open states that <STRONG>tputs</STRONG> ignores the return
+ returns an error if the string parameter is null. It does not
+ detect I/O errors: X/Open states that <STRONG>tputs</STRONG> ignores the return
value of the output function <EM>putc</EM>.
+</PRE><H3><a name="h3-Compatibility-macros">Compatibility macros</a></H3><PRE>
+ This implementation provides a few macros for compatibility with sys-
+ tems before SVr4 (see <STRONG>HISTORY</STRONG>). Those include <STRONG>crmode</STRONG>, <STRONG>fixterm</STRONG>,
+ <STRONG>gettmode</STRONG>, <STRONG>nocrmode</STRONG>, <STRONG>resetterm</STRONG>, <STRONG>saveterm</STRONG>, and <STRONG>setterm</STRONG>.
+
+ In SVr4, those are found in <STRONG>&lt;curses.h&gt;</STRONG>, but except for <STRONG>setterm</STRONG>, are
+ likewise macros. The one function, <STRONG>setterm</STRONG>, is mentioned in the manual
+ page. The manual page notes that the <STRONG>setterm</STRONG> routine was replaced by
+ <STRONG>setupterm</STRONG>, stating that the call:
+
+ <STRONG>setupterm(</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>1,</STRONG> <STRONG>(int</STRONG> <STRONG>*)0)</STRONG>
+
+ provides the same functionality as <STRONG>setterm(</STRONG><EM>term</EM><STRONG>)</STRONG>, and is not recommend-
+ ed for new programs. This implementation provides each of those sym-
+ bols as macros for BSD compatibility,
+
+
</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
SVr2 introduced the terminfo feature. Its programming manual mentioned
these low-level functions:
@@ -432,8 +461,15 @@
ters supported by <STRONG>tgoto</STRONG>).
SVr3 introduced the functions for switching between terminal descrip-
- tions, e.g., <STRONG>set_curterm</STRONG>. The various global variables such as <STRONG>bool-</STRONG>
- <STRONG>names</STRONG> were mentioned in the programming manual at this point.
+ tions, e.g., <STRONG>set_curterm</STRONG>. Some of that was incremental improvements to
+ the SVr2 library:
+
+ <STRONG>o</STRONG> The <STRONG>TERMINAL</STRONG> type definition was introduced in SVr3.01, for the
+ <STRONG>term</STRONG> structure provided in SVr2.
+
+ <STRONG>o</STRONG> The various global variables such as <STRONG>boolnames</STRONG> were mentioned in
+ the programming manual at this point, though the variables were
+ provided in SVr2.
SVr4 added the <STRONG>vid_attr</STRONG> and <STRONG>vid_puts</STRONG> functions.
@@ -447,15 +483,15 @@
</PRE><H3><a name="h3-Legacy-functions">Legacy functions</a></H3><PRE>
X/Open notes that <STRONG>vidattr</STRONG> and <STRONG>vidputs</STRONG> may be macros.
- The function <STRONG>setterm</STRONG> is not described by X/Open and must be considered
+ The function <STRONG>setterm</STRONG> is not described by X/Open and must be considered
non-portable. All other functions are as described by X/Open.
</PRE><H3><a name="h3-Legacy-data">Legacy data</a></H3><PRE>
- <STRONG>setupterm</STRONG> copies the terminal name to the array <STRONG>ttytype</STRONG>. This is not
+ <STRONG>setupterm</STRONG> copies the terminal name to the array <STRONG>ttytype</STRONG>. This is not
part of X/Open Curses, but is assumed by some applications.
- Other implementions may not declare the capability name arrays. Some
+ Other implementions may not declare the capability name arrays. Some
provide them without declaring them. X/Open does not specify them.
Extended terminal capability names, e.g., as defined by <STRONG>tic</STRONG> <STRONG>-x</STRONG>, are not
@@ -463,14 +499,14 @@
</PRE><H3><a name="h3-Output-buffering">Output buffering</a></H3><PRE>
- Older versions of <STRONG>ncurses</STRONG> assumed that the file descriptor passed to
+ Older versions of <STRONG>ncurses</STRONG> assumed that the file descriptor passed to
<STRONG>setupterm</STRONG> from <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> uses buffered I/O, and would write to
- the corresponding stream. In addition to the limitation that the ter-
- minal was left in block-buffered mode on exit (like System V curses),
- it was problematic because <STRONG>ncurses</STRONG> did not allow a reliable way to
+ the corresponding stream. In addition to the limitation that the ter-
+ minal was left in block-buffered mode on exit (like System V curses),
+ it was problematic because <STRONG>ncurses</STRONG> did not allow a reliable way to
cleanup on receiving SIGTSTP.
- The current version (ncurses6) uses output buffers managed directly by
+ The current version (ncurses6) uses output buffers managed directly by
<STRONG>ncurses</STRONG>. Some of the low-level functions described in this manual page
write to the standard output. They are not signal-safe. The high-lev-
el functions in <STRONG>ncurses</STRONG> use alternate versions of these functions using
@@ -479,69 +515,69 @@
</PRE><H3><a name="h3-Function-prototypes">Function prototypes</a></H3><PRE>
The X/Open Curses prototypes are based on the SVr4 curses header decla-
- rations, which were defined at the same time the C language was first
+ rations, which were defined at the same time the C language was first
standardized in the late 1980s.
- <STRONG>o</STRONG> X/Open Curses uses <STRONG>const</STRONG> less effectively than a later design
- might, in some cases applying it needlessly to values are already
- constant, and in most cases overlooking parameters which normally
- would use <STRONG>const</STRONG>. Using constant parameters for functions which do
+ <STRONG>o</STRONG> X/Open Curses uses <STRONG>const</STRONG> less effectively than a later design
+ might, in some cases applying it needlessly to values are already
+ constant, and in most cases overlooking parameters which normally
+ would use <STRONG>const</STRONG>. Using constant parameters for functions which do
not use <STRONG>const</STRONG> may prevent the program from compiling. On the other
hand, <EM>writable</EM> <EM>strings</EM> are an obsolescent feature.
- As an extension, this implementation can be configured to change
- the function prototypes to use the <STRONG>const</STRONG> keyword. The ncurses ABI
+ As an extension, this implementation can be configured to change
+ the function prototypes to use the <STRONG>const</STRONG> keyword. The ncurses ABI
6 enables this feature by default.
- <STRONG>o</STRONG> X/Open Curses prototypes <STRONG>tparm</STRONG> with a fixed number of parameters,
+ <STRONG>o</STRONG> X/Open Curses prototypes <STRONG>tparm</STRONG> with a fixed number of parameters,
rather than a variable argument list.
- This implementation uses a variable argument list, but can be con-
- figured to use the fixed-parameter list. Portable applications
- should provide 9 parameters after the format; zeroes are fine for
+ This implementation uses a variable argument list, but can be con-
+ figured to use the fixed-parameter list. Portable applications
+ should provide 9 parameters after the format; zeroes are fine for
this purpose.
- In response to review comments by Thomas E. Dickey, X/Open Curses
+ In response to review comments by Thomas E. Dickey, X/Open Curses
Issue 7 proposed the <STRONG>tiparm</STRONG> function in mid-2009.
</PRE><H3><a name="h3-Special-TERM-treatment">Special TERM treatment</a></H3><PRE>
If configured to use the terminal-driver, e.g., for the MinGW port,
- <STRONG>o</STRONG> <STRONG>setupterm</STRONG> interprets a missing/empty TERM variable as the special
+ <STRONG>o</STRONG> <STRONG>setupterm</STRONG> interprets a missing/empty TERM variable as the special
value "unknown".
- <STRONG>o</STRONG> <STRONG>setupterm</STRONG> allows explicit use of the the windows console driver by
- checking if $TERM is set to "#win32con" or an abbreviation of that
+ <STRONG>o</STRONG> <STRONG>setupterm</STRONG> allows explicit use of the the windows console driver by
+ checking if $TERM is set to "#win32con" or an abbreviation of that
string.
</PRE><H3><a name="h3-Other-portability-issues">Other portability issues</a></H3><PRE>
- In System V Release 4, <STRONG>set_curterm</STRONG> has an <STRONG>int</STRONG> return type and returns
+ In System V Release 4, <STRONG>set_curterm</STRONG> has an <STRONG>int</STRONG> return type and returns
<STRONG>OK</STRONG> or <STRONG>ERR</STRONG>. We have chosen to implement the X/Open Curses semantics.
- In System V Release 4, the third argument of <STRONG>tputs</STRONG> has the type <STRONG>int</STRONG>
+ In System V Release 4, the third argument of <STRONG>tputs</STRONG> has the type <STRONG>int</STRONG>
<STRONG>(*putc)(char)</STRONG>.
- At least one implementation of X/Open Curses (Solaris) returns a value
- other than <STRONG>OK</STRONG>/<STRONG>ERR</STRONG> from <STRONG>tputs</STRONG>. That returns the length of the string,
+ At least one implementation of X/Open Curses (Solaris) returns a value
+ other than <STRONG>OK</STRONG>/<STRONG>ERR</STRONG> from <STRONG>tputs</STRONG>. That returns the length of the string,
and does no error-checking.
- X/Open notes that after calling <STRONG>mvcur</STRONG>, the curses state may not match
+ X/Open notes that after calling <STRONG>mvcur</STRONG>, the curses state may not match
the actual terminal state, and that an application should touch and re-
fresh the window before resuming normal curses calls. Both <STRONG>ncurses</STRONG> and
- System V Release 4 curses implement <STRONG>mvcur</STRONG> using the SCREEN data allo-
- cated in either <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>. So though it is documented as a
- terminfo function, <STRONG>mvcur</STRONG> is really a curses function which is not well
+ System V Release 4 curses implement <STRONG>mvcur</STRONG> using the SCREEN data allo-
+ cated in either <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>. So though it is documented as a
+ terminfo function, <STRONG>mvcur</STRONG> is really a curses function which is not well
specified.
- X/Open states that the old location must be given for <STRONG>mvcur</STRONG>. This im-
- plementation allows the caller to use -1's for the old ordinates. In
+ X/Open states that the old location must be given for <STRONG>mvcur</STRONG>. This im-
+ plementation allows the caller to use -1's for the old ordinates. In
that case, the old location is unknown.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>,
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>,
<STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
@@ -562,7 +598,11 @@
<li><a href="#h3-Terminal-Capability-Names">Terminal Capability Names</a></li>
</ul>
</li>
-<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a>
+<ul>
+<li><a href="#h3-Compatibility-macros">Compatibility macros</a></li>
+</ul>
+</li>
<li><a href="#h2-HISTORY">HISTORY</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a>
<ul>
diff --git a/doc/html/man/curs_threads.3x.html b/doc/html/man/curs_threads.3x.html
index fa9245b..2077b70 100644
--- a/doc/html/man/curs_threads.3x.html
+++ b/doc/html/man/curs_threads.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2020 Thomas E. Dickey *
* Copyright 2008-2015,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_threads.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_threads.3x,v 1.27 2020/12/30 18:28:51 tom Exp @
* ***************************************************************************
* ***************************************************************************
-->
@@ -57,11 +57,13 @@
<STRONG>typedef</STRONG> <STRONG>int</STRONG> <STRONG>(*NCURSES_WINDOW_CB)(WINDOW</STRONG> <STRONG>*,</STRONG> <STRONG>void</STRONG> <STRONG>*);</STRONG>
<STRONG>typedef</STRONG> <STRONG>int</STRONG> <STRONG>(*NCURSES_SCREEN_CB)(SCREEN</STRONG> <STRONG>*,</STRONG> <STRONG>void</STRONG> <STRONG>*);</STRONG>
+
<STRONG>int</STRONG> <STRONG>get_escdelay(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>set_escdelay(int</STRONG> <STRONG>size);</STRONG>
- <STRONG>int</STRONG> <STRONG>set_tabsize(int</STRONG> <STRONG>size);</STRONG>
- <STRONG>int</STRONG> <STRONG>use_screen(SCREEN</STRONG> <STRONG>*scr,</STRONG> <STRONG>NCURSES_SCREEN_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</STRONG> <STRONG>*data);</STRONG>
- <STRONG>int</STRONG> <STRONG>use_window(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>NCURSES_WINDOW_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</STRONG> <STRONG>*data);</STRONG>
+ <STRONG>int</STRONG> <STRONG>set_escdelay(int</STRONG> <EM>ms</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>set_tabsize(int</STRONG> <EM>cols</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>use_screen(SCREEN</STRONG> <STRONG>*</STRONG><EM>scr</EM><STRONG>,</STRONG> <STRONG>NCURSES_SCREEN_CB</STRONG> <EM>func</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>data</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>use_window(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>NCURSES_WINDOW_CB</STRONG> <EM>func</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>data</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -178,9 +180,9 @@
clrtobot window (stdscr)
clrtoeol window (stdscr)
color_content screen
+
color_set window (stdscr)
copywin window locks(source, target)
-
cur_term terminal
curs_set screen
curscr screen (readonly)
@@ -245,9 +247,9 @@
inchstr window (stdscr)
init_color screen
init_pair screen
+
initscr global locks(screenlist)
innstr window (stdscr)
-
innwstr window (stdscr)
ins_nwstr window (stdscr)
ins_wch window (stdscr)
@@ -312,9 +314,9 @@
mvgetstr screen (input-operation)
mvhline window (stdscr)
mvhline_set window (stdscr)
+
mvin_wch window (stdscr)
mvin_wchnstr window (stdscr)
-
mvin_wchstr window (stdscr)
mvinch window (stdscr)
mvinchnstr window (stdscr)
@@ -379,9 +381,9 @@
newscr screen (readonly)
newterm global locks(screenlist)
newwin global locks(windowlist)
+
nl screen
nocbreak screen
-
nodelay window
noecho screen
nofilter global
@@ -446,9 +448,9 @@
slk_restore screen
slk_set screen
slk_touch screen
+
slk_wset screen
standend window
-
standout window
start_color screen
stdscr screen (readonly)
@@ -513,9 +515,9 @@
wattr_on window
wattr_set window
wattroff window
+
wattron window
wattrset window
-
wbkgd window
wbkgdset window
wbkgrnd window
@@ -580,9 +582,9 @@
wsyncup screen (affects window plus parents)
wtimeout window
wtouchln window
+
wunctrl global (static data)
wvline window
-
wvline_set window
diff --git a/doc/html/man/curs_touch.3x.html b/doc/html/man/curs_touch.3x.html
index acbbb6a..7f7f9ee 100644
--- a/doc/html/man/curs_touch.3x.html
+++ b/doc/html/man/curs_touch.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_touch.3x,v 1.22 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_touch.3x,v 1.24 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,12 +53,16 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>touchwin(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>touchline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>start,</STRONG> <STRONG>int</STRONG> <STRONG>count);</STRONG>
- <STRONG>int</STRONG> <STRONG>untouchwin(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>wtouchln(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>n,</STRONG> <STRONG>int</STRONG> <STRONG>changed);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_linetouched(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>line);</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_wintouched(WINDOW</STRONG> <STRONG>*win);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>touchline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>start</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>count</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>touchwin(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wtouchln(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>changed</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>untouchwin(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>bool</STRONG> <STRONG>is_linetouched(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>line</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_wintouched(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/curs_trace.3x.html b/doc/html/man/curs_trace.3x.html
index a60ae97..658be0e 100644
--- a/doc/html/man/curs_trace.3x.html
+++ b/doc/html/man/curs_trace.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2000-2016,2017 Free Software Foundation, Inc. *
diff --git a/doc/html/man/curs_util.3x.html b/doc/html/man/curs_util.3x.html
index b8e05be..7e61efa 100644
--- a/doc/html/man/curs_util.3x.html
+++ b/doc/html/man/curs_util.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_util.3x,v 1.57 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_util.3x,v 1.60 2020/12/19 22:44:46 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -56,17 +56,22 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*unctrl(chtype</STRONG> <STRONG>c);</STRONG>
- <STRONG>wchar_t</STRONG> <STRONG>*wunctrl(cchar_t</STRONG> <STRONG>*c);</STRONG>
- <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*keyname(int</STRONG> <STRONG>c);</STRONG>
- <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*key_name(wchar_t</STRONG> <STRONG>w);</STRONG>
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*unctrl(chtype</STRONG> <EM>c</EM><STRONG>);</STRONG>
+ <STRONG>wchar_t</STRONG> <STRONG>*wunctrl(cchar_t</STRONG> <STRONG>*</STRONG><EM>c</EM><STRONG>);</STRONG>
+
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*keyname(int</STRONG> <EM>c</EM><STRONG>);</STRONG>
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*key_name(wchar_t</STRONG> <EM>w</EM><STRONG>);</STRONG>
+
<STRONG>void</STRONG> <STRONG>filter(void);</STRONG>
<STRONG>void</STRONG> <STRONG>nofilter(void);</STRONG>
- <STRONG>void</STRONG> <STRONG>use_env(bool</STRONG> <STRONG>f);</STRONG>
- <STRONG>void</STRONG> <STRONG>use_tioctl(bool</STRONG> <STRONG>f);</STRONG>
- <STRONG>int</STRONG> <STRONG>putwin(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>FILE</STRONG> <STRONG>*filep);</STRONG>
- <STRONG>WINDOW</STRONG> <STRONG>*getwin(FILE</STRONG> <STRONG>*filep);</STRONG>
- <STRONG>int</STRONG> <STRONG>delay_output(int</STRONG> <STRONG>ms);</STRONG>
+
+ <STRONG>void</STRONG> <STRONG>use_env(bool</STRONG> <EM>f</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>use_tioctl(bool</STRONG> <EM>f</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>putwin(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>filep</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW</STRONG> <STRONG>*getwin(FILE</STRONG> <STRONG>*</STRONG><EM>filep</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>delay_output(int</STRONG> <EM>ms</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>flushinp(void);</STRONG>
@@ -176,6 +181,7 @@
uses operating system calls unless over-
ridden by $LINES or $COLUMNS environment
variables.
+
TRUE TRUE <STRONG>ncurses</STRONG> updates $LINES and $COLUMNS
based on operating system calls.
FALSE TRUE <STRONG>ncurses</STRONG> ignores $LINES and $COLUMNS, us-
@@ -302,9 +308,9 @@
X/Open Curses documented.
<STRONG>o</STRONG> the parameter is in the range 128-159, i.e., a C1 control code. If
- <STRONG>use_legacy_coding</STRONG> has been called with a <STRONG>2</STRONG> parameter, <STRONG>unctrl</STRONG> re-
- turns the parameter, i.e., a one-character string with the parame-
- ter as the first character. Otherwise, it returns "~@", "~A",
+ <STRONG><A HREF="legacy_coding.3x.html">use_legacy_coding(3x)</A></STRONG> has been called with a <STRONG>2</STRONG> parameter, <STRONG>unctrl</STRONG>
+ returns the parameter, i.e., a one-character string with the param-
+ eter as the first character. Otherwise, it returns "~@", "~A",
etc., analogous to "^@", "^A", C0 controls.
X/Open Curses does not document whether <STRONG>unctrl</STRONG> can be called before
@@ -321,16 +327,16 @@
"^", and strip the parameter to 7 bits. Or they may ignore C1 controls
and treat all of the upper-128 codes as printable. This implementation
uses 8 bits but does not modify the string to reflect locale. The
- <STRONG>use_legacy_coding</STRONG> function allows the caller to change the output of
- <STRONG>unctrl</STRONG>.
+ <STRONG><A HREF="legacy_coding.3x.html">use_legacy_coding(3x)</A></STRONG> function allows the caller to change the output
+ of <STRONG>unctrl</STRONG>.
Likewise, the <STRONG><A HREF="curs_inopts.3x.html">meta(3x)</A></STRONG> function allows the caller to change the output
of <STRONG>keyname</STRONG>, i.e., it determines whether to use the "M-" prefix for
- "meta" keys (codes in the range 128 to 255). Both <STRONG>use_legacy_coding</STRONG>
- and <STRONG>meta</STRONG> succeed only after curses is initialized. X/Open Curses does
- not document the treatment of codes 128 to 159. When treating them as
- "meta" keys (or if <STRONG>keyname</STRONG> is called before initializing curses), this
- implementation returns strings "M-^@", "M-^A", etc.
+ "meta" keys (codes in the range 128 to 255). Both <STRONG>use_legacy_cod-</STRONG>
+ <STRONG><A HREF="use_legacy_coding.3x.html">ing(3x)</A></STRONG> and <STRONG><A HREF="curs_inopts.3x.html">meta(3x)</A></STRONG> succeed only after curses is initialized. X/Open
+ Curses does not document the treatment of codes 128 to 159. When
+ treating them as "meta" keys (or if <STRONG>keyname</STRONG> is called before initializ-
+ ing curses), this implementation returns strings "M-^@", "M-^A", etc.
X/Open Curses documents <STRONG>unctrl</STRONG> as declared in <STRONG>&lt;unctrl.h&gt;</STRONG>, which <STRONG>ncurses</STRONG>
does. However, <STRONG>ncurses</STRONG>' <STRONG>&lt;curses.h&gt;</STRONG> includes <STRONG>&lt;unctrl.h&gt;</STRONG>, matching the
@@ -345,9 +351,9 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>,
- <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>, <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>, <STRONG>curs_vari-</STRONG>
- <STRONG><A HREF="curs_variables.3x.html">ables(3x)</A></STRONG>, <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>,
+ <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>, <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>legacy_cod-</STRONG>
+ <STRONG><A HREF="legacy_coding.3x.html">ing(3x)</A></STRONG>.
diff --git a/doc/html/man/curs_variables.3x.html b/doc/html/man/curs_variables.3x.html
index 7f8e1f3..471b348 100644
--- a/doc/html/man/curs_variables.3x.html
+++ b/doc/html/man/curs_variables.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 2010-2015,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_variables.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_variables.3x,v 1.15 2020/04/18 14:29:07 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
diff --git a/doc/html/man/curs_window.3x.html b/doc/html/man/curs_window.3x.html
index 786ca4f..3f4c964 100644
--- a/doc/html/man/curs_window.3x.html
+++ b/doc/html/man/curs_window.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_window.3x,v 1.21 2020/02/02 23:34:34 tom Exp @
+ * @Id: curs_window.3x,v 1.23 2021/06/17 21:11:08 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -88,6 +88,14 @@
A new full-screen window is created by calling <STRONG>newwin(0,0,0,0)</STRONG>.
+ Regardless of the function used for creating a new window (e.g.,
+ <STRONG>newwin</STRONG>, <STRONG>subwin</STRONG>, <STRONG>derwin</STRONG>, <STRONG>newpad</STRONG>), rather than a duplicate (with <STRONG>dupwin</STRONG>),
+ all of the window modes are initialized to the default values. These
+ functions set window modes after a window is created:
+
+ idcok, idlok, immedok, keypad, leaveok, nodelay, scrollok,
+ setscrreg, syncok, wbkgdset, wbkgrndset, and wtimeout
+
</PRE><H3><a name="h3-delwin">delwin</a></H3><PRE>
Calling <STRONG>delwin</STRONG> deletes the named window, freeing all memory associated
diff --git a/doc/html/man/default_colors.3x.html b/doc/html/man/default_colors.3x.html
index df63f3a..ca1403b 100644
--- a/doc/html/man/default_colors.3x.html
+++ b/doc/html/man/default_colors.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 2000-2011,2016 Free Software Foundation, Inc. *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 1997,1999,2000,2005
- * @Id: default_colors.3x,v 1.29 2020/02/02 23:34:34 tom Exp @
+ * @Id: default_colors.3x,v 1.31 2020/12/19 21:38:37 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -48,23 +48,23 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>use_default_colors</STRONG>, <STRONG>assume_default_colors</STRONG> - use terminal's default col-
- ors
+ <STRONG>use_default_colors</STRONG>, <STRONG>assume_default_colors</STRONG> - use terminal's default
+ colors
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
<STRONG>int</STRONG> <STRONG>use_default_colors(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>assume_default_colors(int</STRONG> <STRONG>fg,</STRONG> <STRONG>int</STRONG> <STRONG>bg);</STRONG>
+ <STRONG>int</STRONG> <STRONG>assume_default_colors(int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The <STRONG>use_default_colors</STRONG> and <STRONG>assume_default_colors</STRONG> functions are exten-
- sions to the curses library. They are used with terminals that support
- ISO 6429 color, or equivalent. These terminals allow the application
- to reset color to an unspecified default value (e.g., with SGR 39 or
- SGR 49).
+ The <STRONG>use_default_colors</STRONG> and <STRONG>assume_default_colors</STRONG> functions are
+ extensions to the curses library. They are used with terminals that
+ support ISO 6429 color, or equivalent. These terminals allow the
+ application to reset color to an unspecified default value (e.g., with
+ SGR 39 or SGR 49).
Applications that paint a colored background over the whole screen do
not take advantage of SGR 39 and SGR 49. Some applications are
@@ -72,8 +72,8 @@
text. For example, there are several implementations of the <STRONG>ls</STRONG> program
which use colors to denote different file types or permissions. These
"color ls" programs do not necessarily modify the background color,
- typically using only the <STRONG>setaf</STRONG> terminfo capability to set the fore-
- ground color. Full-screen applications that use default colors can
+ typically using only the <STRONG>setaf</STRONG> terminfo capability to set the
+ foreground color. Full-screen applications that use default colors can
achieve similar visual effects.
The first function, <STRONG>use_default_colors</STRONG> tells the curses library to
@@ -82,8 +82,8 @@
default background and init_pair(x,-1,COLOR_BLUE) will initialize pair
x as default foreground on blue.
- The other, <STRONG>assume_default_colors</STRONG> is a refinement which tells which col-
- ors to paint for color pair 0. This function recognizes a special
+ The other, <STRONG>assume_default_colors</STRONG> is a refinement which tells which
+ colors to paint for color pair 0. This function recognizes a special
color number -1, which denotes the default terminal color.
The following are equivalent:
@@ -91,8 +91,8 @@
<EM>assume</EM><STRONG>_</STRONG><EM>default</EM><STRONG>_</STRONG><EM>colors(-1,-1);</EM>
These are ncurses extensions. For other curses implementations, color
- number -1 does not mean anything, just as for ncurses before a success-
- ful call of <STRONG>use_default_colors</STRONG> or <STRONG>assume_default_colors</STRONG>.
+ number -1 does not mean anything, just as for ncurses before a
+ successful call of <STRONG>use_default_colors</STRONG> or <STRONG>assume_default_colors</STRONG>.
Other curses implementations do not allow an application to modify
color pair 0. They assume that the background is COLOR_BLACK, but do
@@ -121,16 +121,16 @@
ls" programs. Attempting to manage the background color of the screen
for this application would give unsatisfactory results for a variety of
reasons. This extension was devised after noting that color xterm (and
- similar programs) provides a background color which does not necessar-
- ily correspond to any of the ANSI colors. While a special terminfo
- entry could be constructed using nine colors, there was no mechanism
- provided within curses to account for the related <STRONG>orig_pair</STRONG> and
- <STRONG>back_color_erase</STRONG> capabilities.
+ similar programs) provides a background color which does not
+ necessarily correspond to any of the ANSI colors. While a special
+ terminfo entry could be constructed using nine colors, there was no
+ mechanism provided within curses to account for the related <STRONG>orig_pair</STRONG>
+ and <STRONG>back_color_erase</STRONG> capabilities.
- The <STRONG>assume_default_colors</STRONG> function was added to solve a different prob-
- lem: support for applications which would use environment variables and
- other configuration to bypass curses' notion of the terminal's default
- colors, setting specific values.
+ The <STRONG>assume_default_colors</STRONG> function was added to solve a different
+ problem: support for applications which would use environment variables
+ and other configuration to bypass curses' notion of the terminal's
+ default colors, setting specific values.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
@@ -140,7 +140,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG>ded(1)</STRONG>.
+ <STRONG>ded(1)</STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>.
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
diff --git a/doc/html/man/define_key.3x.html b/doc/html/man/define_key.3x.html
index 47aa7ac..edd8721 100644
--- a/doc/html/man/define_key.3x.html
+++ b/doc/html/man/define_key.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 1997
- * @Id: define_key.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: define_key.3x,v 1.18 2020/10/24 09:52:54 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,7 +54,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>define_key(const</STRONG> <STRONG>char</STRONG> <STRONG>*definition,</STRONG> <STRONG>int</STRONG> <STRONG>keycode);</STRONG>
+ <STRONG>int</STRONG> <STRONG>define_key(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>definition</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -69,10 +69,10 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The keycode must be greater than zero, and the string non-null, other-
- wise <STRONG>ERR</STRONG> is returned. <STRONG>ERR</STRONG> may also be returned if there is insuffi-
- cient memory to allocate the data to store the definition. If no error
- is detected, <STRONG>OK</STRONG> is returned.
+ The keycode must be greater than zero, and the string non-null,
+ otherwise <STRONG>ERR</STRONG> is returned. <STRONG>ERR</STRONG> may also be returned if there is
+ insufficient memory to allocate the data to store the definition. If
+ no error is detected, <STRONG>OK</STRONG> is returned.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
diff --git a/doc/html/man/form.3x.html b/doc/html/man/form.3x.html
index 82a8afe..dd6d574 100644
--- a/doc/html/man/form.3x.html
+++ b/doc/html/man/form.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form.3x,v 1.34 2020/02/02 23:34:34 tom Exp @
+ * @Id: form.3x,v 1.36 2020/12/12 16:34:33 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,8 +59,8 @@
The <STRONG>form</STRONG> library provides terminal-independent facilities for composing
form screens on character-cell terminals. The library includes: field
routines, which create and modify form fields; and form routines, which
- group fields into forms, display forms on the screen, and handle inter-
- action with the user.
+ group fields into forms, display forms on the screen, and handle
+ interaction with the user.
The <STRONG>form</STRONG> library uses the <STRONG>curses</STRONG> libraries. To use the <STRONG>form</STRONG> library,
link with the options <STRONG>-lform</STRONG> <STRONG>-lcurses</STRONG>.
@@ -85,7 +85,8 @@
</PRE><H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE>
The following table lists each <STRONG>form</STRONG> routine and the name of the manual
- page on which it is described.
+ page on which it is described. Routines flagged with "*" are ncurses-
+ specific, not present in SVr4.
<STRONG>curses</STRONG> Routine Name Manual Page Name
--------------------------------------------------
@@ -111,8 +112,8 @@
field_term <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
field_type <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
field_userptr <STRONG><A HREF="form_field_userptr.3x.html">form_field_userptr(3x)</A></STRONG>
- form_driver <STRONG><A HREF="form_driver.3x.html">form_driver(3x)</A></STRONG>
+ form_driver <STRONG><A HREF="form_driver.3x.html">form_driver(3x)</A></STRONG>
form_driver_w <STRONG><A HREF="form_driver.3x.html">form_driver(3x)</A></STRONG>*
form_fields <STRONG><A HREF="form_field.3x.html">form_field(3x)</A></STRONG>
form_init <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
@@ -120,8 +121,8 @@
form_opts_off <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
form_opts_on <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
form_page <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
- form_request_by_name <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>
- form_request_name <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>
+ form_request_by_name <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>*
+ form_request_name <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>*
form_sub <STRONG><A HREF="form_win.3x.html">form_win(3x)</A></STRONG>
form_term <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
form_userptr <STRONG><A HREF="form_userptr.3x.html">form_userptr(3x)</A></STRONG>
@@ -163,15 +164,15 @@
set_form_win <STRONG><A HREF="form_win.3x.html">form_win(3x)</A></STRONG>
set_max_field <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
set_new_page <STRONG><A HREF="form_new_page.3x.html">form_new_page(3x)</A></STRONG>
- unfocus_current_field <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
+ unfocus_current_field <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>*
unpost_form <STRONG><A HREF="form_post.3x.html">form_post(3x)</A></STRONG>
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- Routines that return pointers return <STRONG>NULL</STRONG> on error, and set errno to
- the corresponding error-code returned by functions returning an inte-
- ger. Routines that return an integer return one of the following error
- codes:
+ Routines that return pointers return <STRONG>NULL</STRONG> on error, and set <STRONG>errno</STRONG> to
+ the corresponding error-code returned by functions returning an
+ integer. Routines that return an integer return one of the following
+ error codes:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -210,19 +211,19 @@
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header files
+ The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header files
<STRONG>&lt;curses.h&gt;</STRONG> and <STRONG>&lt;eti.h&gt;</STRONG>.
In your library list, libform.a should be before libncurses.a; that is,
- you want to say "-lform -lncurses", not the other way around (which
+ you want to say "-lform -lncurses", not the other way around (which
would give you a link error when using static libraries).
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
- The menu facility was documented in SVr4.2 in <EM>Character</EM> <EM>User</EM> <EM>Interface</EM>
+ The menu facility was documented in SVr4.2 in <EM>Character</EM> <EM>User</EM> <EM>Interface</EM>
<EM>Programming</EM> <EM>(UNIX</EM> <EM>SVR4.2)</EM>.
It is not part of X/Open Curses.
@@ -233,21 +234,21 @@
<STRONG>o</STRONG> NetBSD curses.
- A few functions in this implementation are extensions added for
+ A few functions in this implementation are extensions added for
ncurses, but not provided by other implementations, e.g.,
<STRONG>form_driver_w</STRONG>, <STRONG>unfocus_current_field</STRONG>.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
- Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric S.
+ Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric S.
Raymond.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed
descriptions of the entry points.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/form_cursor.3x.html b/doc/html/man/form_cursor.3x.html
index 5430124..12ae82e 100644
--- a/doc/html/man/form_cursor.3x.html
+++ b/doc/html/man/form_cursor.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_cursor.3x,v 1.12 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_cursor.3x,v 1.14 2020/10/18 00:15:29 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,7 +53,8 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int pos_form_cursor(FORM *form);
+
+ <STRONG>int</STRONG> <STRONG>pos_form_cursor(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -88,8 +89,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_data.3x.html b/doc/html/man/form_data.3x.html
index d3d94d4..84d50f0 100644
--- a/doc/html/man/form_data.3x.html
+++ b/doc/html/man/form_data.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_data.3x,v 1.13 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_data.3x,v 1.15 2020/10/18 00:15:00 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- bool data_ahead(const FORM *form);
- bool data_behind(const FORM *form);
+
+ <STRONG>bool</STRONG> <STRONG>data_ahead(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>data_behind(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -75,8 +76,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_driver.3x.html b/doc/html/man/form_driver.3x.html
index b5bebe1..2804fab 100644
--- a/doc/html/man/form_driver.3x.html
+++ b/doc/html/man/form_driver.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_driver.3x,v 1.33 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_driver.3x,v 1.35 2020/12/19 21:34:15 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -52,6 +52,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
+
<STRONG>int</STRONG> <STRONG>form_driver(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>form_driver_w(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <EM>wch</EM><STRONG>);</STRONG>
@@ -67,19 +68,19 @@
and character codes returned by <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG>.
<STRONG>o</STRONG> The input is a printable character. Printable characters (which
- must be positive, less than 256) are checked according to the pro-
- gram's locale settings.
+ must be positive, less than 256) are checked according to the
+ program's locale settings.
<STRONG>o</STRONG> The input is the KEY_MOUSE special key associated with an mouse
event.
</PRE><H3><a name="h3-form_driver_w">form_driver_w</a></H3><PRE>
- This extension simplifies the use of the forms library using wide char-
- acters. The input is either a key code (a request) or a wide character
- returned by <STRONG><A HREF="curs_get_wch.3x.html">get_wch(3x)</A></STRONG>. The type must be passed as well, to enable
- the library to determine whether the parameter is a wide character or a
- request.
+ This extension simplifies the use of the forms library using wide
+ characters. The input is either a key code (a request) or a wide
+ character returned by <STRONG><A HREF="curs_get_wch.3x.html">get_wch(3x)</A></STRONG>. The type must be passed as well, to
+ enable the library to determine whether the parameter is a wide
+ character or a request.
</PRE><H3><a name="h3-Form-driver-requests">Form-driver requests</a></H3><PRE>
@@ -111,8 +112,8 @@
REQ_LEFT_FIELD Move left to a field.
REQ_NEW_LINE Insert or overlay a new line.
REQ_NEXT_CHAR Move to the next char.
- REQ_NEXT_CHOICE Display next field choice.
+ REQ_NEXT_CHOICE Display next field choice.
REQ_NEXT_FIELD Move to the next field.
REQ_NEXT_LINE Move to the next line.
REQ_NEXT_PAGE Move to the next page.
@@ -209,8 +210,8 @@
that field and <STRONG>E_UNKNOWN_COMMAND</STRONG> is returned. This return value
makes sense, because a double click usually means that an field-
specific action should be returned. It is exactly the purpose
- of this return value to signal that an application specific com-
- mand should be executed.
+ of this return value to signal that an application specific
+ command should be executed.
<STRONG>o</STRONG> If a translation into a request was done, <STRONG>form_driver</STRONG> returns
the result of this request.
@@ -258,8 +259,8 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>, <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>,
- <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>, <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>,
+ <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -268,8 +269,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_field.3x.html b/doc/html/man/form_field.3x.html
index 1c6060b..ca07472 100644
--- a/doc/html/man/form_field.3x.html
+++ b/doc/html/man/form_field.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field.3x,v 1.17 2020/10/24 09:10:45 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,10 +53,11 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_form_fields(FORM *form, FIELD **fields);
- FIELD **form_fields(const FORM *form);
- int field_count(const FORM *form);
- int move_field(FIELD *field, int frow, int fcol);
+
+ <STRONG>int</STRONG> <STRONG>set_form_fields(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>FIELD</STRONG> <STRONG>**</STRONG><EM>fields</EM><STRONG>);</STRONG>
+ <STRONG>FIELD</STRONG> <STRONG>**form_fields(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>field_count(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>move_field(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>frow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fcol</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -67,18 +68,18 @@
The function <STRONG>field_count</STRONG> returns the count of fields in <EM>form</EM>.
- The function <STRONG>move_field</STRONG> moves the given field (which must be discon-
- nected) to a specified location on the screen.
+ The function <STRONG>move_field</STRONG> moves the given field (which must be
+ disconnected) to a specified location on the screen.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The function <STRONG>form_fields</STRONG> returns a pointer (which may be <STRONG>NULL</STRONG>). It
- does not set errno.
+ does not set <STRONG>errno</STRONG>.
The function <STRONG>field_count</STRONG> returns <STRONG>ERR</STRONG> if the <EM>form</EM> parameter is <STRONG>NULL</STRONG>.
- The functions <STRONG>set_form_fields</STRONG> and <STRONG>move_field</STRONG> return one of the follow-
- ing codes on error:
+ The functions <STRONG>set_form_fields</STRONG> and <STRONG>move_field</STRONG> return one of the
+ following codes on error:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -105,8 +106,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
The SVr4 forms library documentation specifies the <STRONG>field_count</STRONG> error
value as -1 (which is the value of <STRONG>ERR</STRONG>).
diff --git a/doc/html/man/form_field_attributes.3x.html b/doc/html/man/form_field_attributes.3x.html
index e1b4b97..0ec75c6 100644
--- a/doc/html/man/form_field_attributes.3x.html
+++ b/doc/html/man/form_field_attributes.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_attributes.3x,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_attributes.3x,v 1.18 2020/10/18 00:14:20 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,19 +53,22 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_field_fore(FIELD *field, chtype attr);
- chtype field_fore(const FIELD *field);
- int set_field_back(FIELD *field, chtype attr);
- chtype field_back(const FIELD *field);
- int set_field_pad(FIELD *field, int pad);
- int field_pad(const FIELD *field);
+
+ <STRONG>int</STRONG> <STRONG>set_field_fore(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attr</EM><STRONG>);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>field_fore(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_field_back(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attr</EM><STRONG>);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>field_back(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_field_pad(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pad</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>field_pad(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The function <STRONG>set_field_fore</STRONG> sets the foreground attribute of <EM>field</EM>.
This is the highlight used to display the field contents. The function
- <STRONG>field_fore</STRONG> returns the foreground attribute. The default is <STRONG>A_STAND-</STRONG>
- <STRONG>OUT</STRONG>.
+ <STRONG>field_fore</STRONG> returns the foreground attribute. The default is
+ <STRONG>A_STANDOUT</STRONG>.
The function <STRONG>set_field_back</STRONG> sets the background attribute of <EM>form</EM>. This
is the highlight used to display the extent fields in the form. The
@@ -100,8 +103,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_field_buffer.3x.html b/doc/html/man/form_field_buffer.3x.html
index b4fc8d0..aabd869 100644
--- a/doc/html/man/form_field_buffer.3x.html
+++ b/doc/html/man/form_field_buffer.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_buffer.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_buffer.3x,v 1.27 2020/10/24 09:27:17 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,11 +54,13 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_field_buffer(FIELD *field, int buf, const char *value);
- char *field_buffer(const FIELD *field, int buffer);
- int set_field_status(FIELD *field, bool status);
- bool field_status(const FIELD *field);
- int set_max_field(FIELD *field, int max);
+ <STRONG>int</STRONG> <STRONG>set_field_buffer(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>buf</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>value</EM><STRONG>);</STRONG>
+ <STRONG>char</STRONG> <STRONG>*field_buffer(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>buffer</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_field_status(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>status</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>field_status(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_max_field(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>max</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -68,8 +70,8 @@
<STRONG>o</STRONG> Buffer 0 is the displayed value of the field.
<STRONG>o</STRONG> Other numbered buffers may be allocated by applications through
- the <STRONG>nbuf</STRONG> argument of (see <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>) but are not manip-
- ulated by the forms library.
+ the <STRONG>nbuf</STRONG> argument of (see <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>) but are not
+ manipulated by the forms library.
The function <STRONG>field_buffer</STRONG> returns a pointer to the contents of the
given numbered buffer:
@@ -103,8 +105,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The <STRONG>field_buffer</STRONG> function returns NULL on error. It sets errno accord-
- ing to their success:
+ The <STRONG>field_buffer</STRONG> function returns NULL on error. It sets <STRONG>errno</STRONG>
+ according to their success:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -133,14 +135,14 @@
The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header file
When configured for wide characters, <STRONG>field_buffer</STRONG> returns a pointer to
- temporary storage (allocated and freed by the library). The applica-
- tion should not attempt to modify the data. It will be freed on the
- next call to <STRONG>field_buffer</STRONG> to return the same buffer. <STRONG>&lt;curses.h&gt;</STRONG>.
+ temporary storage (allocated and freed by the library). The
+ application should not attempt to modify the data. It will be freed on
+ the next call to <STRONG>field_buffer</STRONG> to return the same buffer. <STRONG>&lt;curses.h&gt;</STRONG>.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
The <STRONG>set_max_field</STRONG> function checks for an ncurses extension
<STRONG>O_INPUT_FIELD</STRONG> which allows a dynamic field to shrink if the new limit
diff --git a/doc/html/man/form_field_info.3x.html b/doc/html/man/form_field_info.3x.html
index 38c2bec..e107bfd 100644
--- a/doc/html/man/form_field_info.3x.html
+++ b/doc/html/man/form_field_info.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_info.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_info.3x,v 1.18 2020/10/17 23:35:05 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,20 +53,24 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int field_info(const FIELD *field, int *rows, int *cols,
- int *frow, int *fcol, int *nrow, int *nbuf);
- int dynamic_field_info(const FIELD *field, int *rows, int *cols, int
- *max);
+
+ <STRONG>int</STRONG> <STRONG>field_info(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <STRONG>*</STRONG><EM>rows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>cols</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <STRONG>*</STRONG><EM>frow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>fcol</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <STRONG>*</STRONG><EM>nrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>nbuf</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>dynamic_field_info(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <STRONG>*</STRONG><EM>rows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>cols</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>max</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The function <STRONG>field_info</STRONG> returns the sizes and other attributes passed
- in to the field at its creation time. The attributes are: height,
- width, row of upper-left corner, column of upper-left corner, number
+ The function <STRONG>field_info</STRONG> returns the sizes and other attributes passed
+ in to the field at its creation time. The attributes are: height,
+ width, row of upper-left corner, column of upper-left corner, number
off-screen rows, and number of working buffers.
- The function <STRONG>dynamic_field_info</STRONG> returns the actual size of the field,
- and its maximum possible size. If the field has no size limit, the
+ The function <STRONG>dynamic_field_info</STRONG> returns the actual size of the field,
+ and its maximum possible size. If the field has no size limit, the
location addressed by the third argument will be set to 0. A field can
be made dynamic by turning off the <STRONG>O_STATIC</STRONG> option with <STRONG>field_opts_off</STRONG>.
@@ -84,7 +88,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed
descriptions of the entry points.
@@ -94,11 +98,11 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
- A null (zero pointer) is accepted for any of the return values, to
- ignore that value. Not all implementations allow this, e.g., Solaris
+ A null (zero pointer) is accepted for any of the return values, to
+ ignore that value. Not all implementations allow this, e.g., Solaris
2.7 does not.
diff --git a/doc/html/man/form_field_just.3x.html b/doc/html/man/form_field_just.3x.html
index 2b501e5..4db92bf 100644
--- a/doc/html/man/form_field_just.3x.html
+++ b/doc/html/man/form_field_just.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_just.3x,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_just.3x,v 1.18 2020/10/18 00:12:55 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_field_just(FIELD *field, int justification);
- int field_just(const FIELD *field);
+
+ <STRONG>int</STRONG> <STRONG>set_field_just(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>justification</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>field_just(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -65,8 +66,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The function <STRONG>field_just</STRONG> returns one of: NO_JUSTIFICATION, JUS-
- TIFY_RIGHT, JUSTIFY_LEFT, or JUSTIFY_CENTER.
+ The function <STRONG>field_just</STRONG> returns one of: NO_JUSTIFICATION,
+ JUSTIFY_RIGHT, JUSTIFY_LEFT, or JUSTIFY_CENTER.
The function <STRONG>set_field_just</STRONG> returns one of the following:
@@ -90,8 +91,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_field_new.3x.html b/doc/html/man/form_field_new.3x.html
index aa68005..03ced38 100644
--- a/doc/html/man/form_field_new.3x.html
+++ b/doc/html/man/form_field_new.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_new.3x,v 1.21 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_new.3x,v 1.24 2020/10/24 09:09:18 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,12 +54,13 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- FIELD *new_field(int height, int width,
- int toprow, int leftcol,
- int offscreen, int nbuffers);
- FIELD *dup_field(FIELD *field, int toprow, int leftcol);
- FIELD *link_field(FIELD *field, int toprow, int leftcol);
- int free_field(FIELD *field);
+
+ <STRONG>FIELD</STRONG> <STRONG>*new_field(int</STRONG> <EM>height</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>width</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <EM>toprow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>leftcol</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <EM>offscreen</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>nbuffers</EM><STRONG>);</STRONG>
+ <STRONG>FIELD</STRONG> <STRONG>*dup_field(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>toprow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>leftcol</EM><STRONG>);</STRONG>
+ <STRONG>FIELD</STRONG> <STRONG>*link_field(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>toprow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>leftcol</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_field(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -81,8 +82,8 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The function, <STRONG>new_field</STRONG>, <STRONG>dup_field</STRONG>, <STRONG>link_field</STRONG> return <STRONG>NULL</STRONG> on error.
- They set errno according to their success:
+ The functions <STRONG>new_field</STRONG>, <STRONG>dup_field</STRONG>, <STRONG>link_field</STRONG> return <STRONG>NULL</STRONG> on error.
+ They set <STRONG>errno</STRONG> according to their success:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -113,8 +114,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
It may be unwise to count on the set of attributes copied by <STRONG>dup_field</STRONG>
being portable; the System V forms library documents are not very
diff --git a/doc/html/man/form_field_opts.3x.html b/doc/html/man/form_field_opts.3x.html
index d370db1..278af87 100644
--- a/doc/html/man/form_field_opts.3x.html
+++ b/doc/html/man/form_field_opts.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_opts.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_opts.3x,v 1.27 2020/10/18 00:11:45 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,10 +54,12 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_field_opts(FIELD *field, Field_Options opts);
- int field_opts_on(FIELD *field, Field_Options opts);
- int field_opts_off(FIELD *field, Field_Options opts);
- Field_Options field_opts(const FIELD *field);
+
+ <STRONG>int</STRONG> <STRONG>set_field_opts(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>Field_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>Field_Options</STRONG> <STRONG>field_opts(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>field_opts_on(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>Field_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>field_opts_off(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>Field_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -120,12 +122,12 @@
discarded.
O_EDGE_INSERT_STAY
- When inserting into a field up to the boundary position, option-
- ally delay the scrolling, so that the last inserted character
- remains visible, but advance the cursor to reflect the insertion.
- This allows the form library to display the inserted character in
- one-character fields as well as allowing the library to maintain
- consistent state.
+ When inserting into a field up to the boundary position,
+ optionally delay the scrolling, so that the last inserted
+ character remains visible, but advance the cursor to reflect the
+ insertion. This allows the form library to display the inserted
+ character in one-character fields as well as allowing the library
+ to maintain consistent state.
O_INPUT_FIELD
The <STRONG>set_max_field</STRONG> function checks for this extension, which allows
@@ -158,8 +160,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_field_userptr.3x.html b/doc/html/man/form_field_userptr.3x.html
index 3545f5a..f134877 100644
--- a/doc/html/man/form_field_userptr.3x.html
+++ b/doc/html/man/form_field_userptr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_userptr.3x,v 1.13 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_userptr.3x,v 1.16 2020/10/24 09:06:33 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,19 +54,20 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_field_userptr(FIELD *field, void*userptr);
- void *field_userptr(const FIELD *field);
+
+ <STRONG>int</STRONG> <STRONG>set_field_userptr(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>userptr</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>*field_userptr(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- Every form field has a field that can be used to hold application-spe-
- cific data (that is, the form-driver code leaves it alone). These
+ Every form field has a field that can be used to hold application-
+ specific data (that is, the form-driver code leaves it alone). These
functions get and set that field.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The function <STRONG>field_userptr</STRONG> returns a pointer (which may be <STRONG>NULL</STRONG>). It
- does not set errno.
+ does not set <STRONG>errno</STRONG>.
The function <STRONG>set_field_userptr</STRONG> returns <STRONG>E_OK</STRONG> (success).
@@ -81,8 +82,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
The user pointer is a void pointer. We chose not to leave it as a char
pointer for SVr4 compatibility.
diff --git a/doc/html/man/form_field_validation.3x.html b/doc/html/man/form_field_validation.3x.html
index 4975302..c278107 100644
--- a/doc/html/man/form_field_validation.3x.html
+++ b/doc/html/man/form_field_validation.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_field_validation.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_field_validation.3x,v 1.33 2020/12/12 19:57:55 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -52,87 +52,123 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_field_type(FIELD *field, FIELDTYPE *type, ...);
- FIELDTYPE *field_type(const FIELD *field);
- void *field_arg(const FIELD *field);
- FIELDTYPE *TYPE_ALNUM;
- FIELDTYPE *TYPE_ALPHA;
- FIELDTYPE *TYPE_ENUM;
- FIELDTYPE *TYPE_INTEGER;
- FIELDTYPE *TYPE_NUMERIC;
- FIELDTYPE *TYPE_REGEXP;
- FIELDTYPE *TYPE_IPV4;
+ <STRONG>void</STRONG> <STRONG>*field_arg(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*field_type(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>set_field_type(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>FIELDTYPE</STRONG> <STRONG>*</STRONG><EM>type</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
+
+ /* predefined field types */
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*TYPE_ALNUM;</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*TYPE_ALPHA;</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*TYPE_ENUM;</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*TYPE_INTEGER;</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*TYPE_NUMERIC;</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*TYPE_REGEXP;</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*TYPE_IPV4;</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The function <STRONG>set_field_type</STRONG> declares a data type for a given form
- field. This is the type checked by validation functions. The prede-
- fined types are as follows:
+ By default, no validation is done on form fields. You can associate a
+ form with with a <EM>field</EM> <EM>type</EM>, making the form library validate input.
+
+
+</PRE><H3><a name="h3-field_arg">field_arg</a></H3><PRE>
+ Returns a pointer to the field's argument block. The <EM>argument</EM> <EM>block</EM> is
+ an opaque structure containing a copy of the arguments provided in a
+ <STRONG>set_field_type</STRONG> call.
+
+
+</PRE><H3><a name="h3-field_type">field_type</a></H3><PRE>
+ Returns a pointer to the <EM>field</EM> <EM>type</EM> associated with the form field,
+ i.e., by calling <STRONG>set_field_type</STRONG>.
+
+
+</PRE><H3><a name="h3-set_field_type">set_field_type</a></H3><PRE>
+ The function <STRONG>set_field_type</STRONG> associates a field type with a given form
+ field. This is the type checked by validation functions. Most field
+ types are configurable, via arguments which the caller provides when
+ calling <STRONG>set_field_type</STRONG>.
+
+ Several field types are predefined by the form library.
+
+
+</PRE><H3><a name="h3-Predefined-types">Predefined types</a></H3><PRE>
+ It is possible to set up new programmer-defined field types. Field
+ types are implemented via the <STRONG>FIELDTYPE</STRONG> data structure, which contains
+ several pointers to functions.
+
+ See the <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG> manual page, which describes functions which
+ can be used to construct a field-type dynamically.
+
+ The predefined types are as follows:
TYPE_ALNUM
- Alphanumeric data. Requires a third <STRONG>int</STRONG> argument, a minimum field
- width.
+ Alphanumeric data. Required parameter:
+
+ <STRONG>o</STRONG> a third <STRONG>int</STRONG> argument, a minimum field width.
TYPE_ALPHA
- Character data. Requires a third <STRONG>int</STRONG> argument, a minimum field
- width.
+ Character data. Required parameter:
+
+ <STRONG>o</STRONG> a third <STRONG>int</STRONG> argument, a minimum field width.
TYPE_ENUM
- Accept one of a specified set of strings. Requires additional
- parameters:
+ Accept one of a specified set of strings. Required parameters:
<STRONG>o</STRONG> a third <STRONG>(char</STRONG> <STRONG>**)</STRONG> argument pointing to a string list;
<STRONG>o</STRONG> a fourth <STRONG>int</STRONG> flag argument to enable case-sensitivity;
- <STRONG>o</STRONG> and a fifth <STRONG>int</STRONG> flag argument specifying whether a partial
- match must be a unique one. If this flag is off, a prefix
- matches the first of any set of more than one list elements
- with that prefix.
+ <STRONG>o</STRONG> a fifth <STRONG>int</STRONG> flag argument specifying whether a partial match
+ must be a unique one. If this flag is off, a prefix matches
+ the first of any set of more than one list elements with that
+ prefix.
- The library copies the string list, so you may use a list that
- lives in automatic variables on the stack.
+ The library copies the string list, so you may use a list that
+ lives in automatic variables on the stack.
TYPE_INTEGER
- Integer data, parsable to an integer by <STRONG>atoi(3)</STRONG>. Requires addi-
- tional parameters:
+ Integer data, parsable to an integer by <STRONG>atoi(3)</STRONG>. Required
+ parameters:
<STRONG>o</STRONG> a third <STRONG>int</STRONG> argument controlling the precision,
<STRONG>o</STRONG> a fourth <STRONG>long</STRONG> argument constraining minimum value,
- <STRONG>o</STRONG> and a fifth <STRONG>long</STRONG> constraining maximum value. If the maximum
- value is less than or equal to the minimum value, the range is
- simply ignored. On return, the field buffer is formatted
- according to the <STRONG>printf</STRONG> format specification ".*ld", where the
- "*" is replaced by the precision argument.
+ <STRONG>o</STRONG> a fifth <STRONG>long</STRONG> constraining maximum value. If the maximum value
+ is less than or equal to the minimum value, the range is
+ simply ignored.
+
+ On return, the field buffer is formatted according to the <STRONG>printf</STRONG>
+ format specification ".*ld", where the "*" is replaced by the
+ precision argument.
- For details of the precision handling see <STRONG>printf(3)</STRONG>.
+ For details of the precision handling see <STRONG>printf(3)</STRONG>.
TYPE_NUMERIC
- Numeric data (may have a decimal-point part). This requires addi-
- tional parameters:
+ Numeric data (may have a decimal-point part). Required
+ parameters:
<STRONG>o</STRONG> a third <STRONG>int</STRONG> argument controlling the precision,
<STRONG>o</STRONG> a fourth <STRONG>double</STRONG> argument constraining minimum value,
<STRONG>o</STRONG> and a fifth <STRONG>double</STRONG> constraining maximum value. If your system
- supports locales, the decimal point character must be the one
- specified by your locale. If the maximum value is less than
+ supports locales, the decimal point character must be the one
+ specified by your locale. If the maximum value is less than
or equal to the minimum value, the range is simply ignored.
- On return, the field buffer is formatted according to the
- <STRONG>printf</STRONG> format specification ".*f", where the "*" is replaced
- by the precision argument.
+ On return, the field buffer is formatted according to the <STRONG>printf</STRONG>
+ format specification ".*f", where the "*" is replaced by the
+ precision argument.
- For details of the precision handling see <STRONG>printf(3)</STRONG>.
+ For details of the precision handling see <STRONG>printf(3)</STRONG>.
TYPE_REGEXP
- Regular expression data. Requires a regular expression <STRONG>(char</STRONG> <STRONG>*)</STRONG>
- third argument. The data is valid if the regular expression
- matches it.
+ Regular expression data. Required parameter:
+
+ <STRONG>o</STRONG> a third argument, a regular expression <STRONG>(char</STRONG> <STRONG>*)</STRONG> string. The
+ data is valid if the regular expression matches it.
Regular expressions are in the format of <STRONG>regcomp</STRONG> and <STRONG>regexec</STRONG>.
@@ -145,22 +181,22 @@
trailing spaces around the digits.
TYPE_IPV4
- An Internet Protocol Version 4 address. This requires no addi-
- tional argument. The library checks whether or not the buffer has
- the form a.b.c.d, where a,b,c and d are numbers between 0 and 255.
- Trailing blanks in the buffer are ignored. The address itself is
+ An Internet Protocol Version 4 address. Required parameter:
+
+ <STRONG>o</STRONG> none
+
+ The form library checks whether or not the buffer has the form
+ <EM>a.b.c.d</EM>, where <EM>a</EM>, <EM>b</EM>, <EM>c</EM>, and <EM>d</EM> are numbers in the range 0 to 255.
+ Trailing blanks in the buffer are ignored. The address itself is
not validated.
This is an ncurses extension; this field type may not be available
in other curses implementations.
- It is possible to set up new programmer-defined field types. See the
- <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG> manual page.
-
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The functions <STRONG>field_type</STRONG> and <STRONG>field_arg</STRONG> return <STRONG>NULL</STRONG> on error. The func-
- tion <STRONG>set_field_type</STRONG> returns one of the following:
+ The functions <STRONG>field_type</STRONG> and <STRONG>field_arg</STRONG> return <STRONG>NULL</STRONG> on error. The
+ function <STRONG>set_field_type</STRONG> returns one of the following:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -169,7 +205,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -178,8 +214,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
@@ -194,7 +230,14 @@
<ul>
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-field_arg">field_arg</a></li>
+<li><a href="#h3-field_type">field_type</a></li>
+<li><a href="#h3-set_field_type">set_field_type</a></li>
+<li><a href="#h3-Predefined-types">Predefined types</a></li>
+</ul>
+</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
<li><a href="#h2-NOTES">NOTES</a></li>
diff --git a/doc/html/man/form_fieldtype.3x.html b/doc/html/man/form_fieldtype.3x.html
index 4b35013..386219b 100644
--- a/doc/html/man/form_fieldtype.3x.html
+++ b/doc/html/man/form_fieldtype.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_fieldtype.3x,v 1.20 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_fieldtype.3x,v 1.28 2020/12/12 17:11:21 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,63 +53,95 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- FIELDTYPE *new_fieldtype(
- bool (* const field_check)(FIELD *, const void *),
- bool (* const char_check)(int, const void *));
- int free_fieldtype(FIELDTYPE *fieldtype);
- int set_fieldtype_arg(
- FIELDTYPE *fieldtype,
- void *(* const make_arg)(va_list *),
- void *(* const copy_arg)(const void *),
- void (* const free_arg)(void *));
- int set_fieldtype_choice(
- FIELDTYPE *fieldtype,
- bool (* const next_choice)(FIELD *, const void *),
- bool (* const prev_choice)(FIELD *, const void *));
- FIELDTYPE *link_fieldtype(FIELDTYPE *type1,
- FIELDTYPE *type2);
+
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*new_fieldtype(</STRONG>
+ <STRONG>bool</STRONG> <STRONG>(*</STRONG> <STRONG>const</STRONG> <EM>field</EM><STRONG>_</STRONG><EM>check</EM><STRONG>)(FIELD</STRONG> <STRONG>*,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*),</STRONG>
+ <STRONG>bool</STRONG> <STRONG>(*</STRONG> <STRONG>const</STRONG> <EM>char</EM><STRONG>_</STRONG><EM>check</EM><STRONG>)(int,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*));</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_fieldtype(FIELDTYPE</STRONG> <STRONG>*</STRONG><EM>fieldtype</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_fieldtype_arg(</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*</STRONG><EM>fieldtype</EM><STRONG>,</STRONG>
+ <STRONG>void</STRONG> <STRONG>*(*</STRONG> <STRONG>const</STRONG> <EM>make</EM><STRONG>_</STRONG><EM>arg</EM><STRONG>)(va_list</STRONG> <STRONG>*),</STRONG>
+ <STRONG>void</STRONG> <STRONG>*(*</STRONG> <STRONG>const</STRONG> <EM>copy</EM><STRONG>_</STRONG><EM>arg</EM><STRONG>)(const</STRONG> <STRONG>void</STRONG> <STRONG>*),</STRONG>
+ <STRONG>void</STRONG> <STRONG>(*</STRONG> <STRONG>const</STRONG> <EM>free</EM><STRONG>_</STRONG><EM>arg</EM><STRONG>)(void</STRONG> <STRONG>*));</STRONG>
+ <STRONG>int</STRONG> <STRONG>set_fieldtype_choice(</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*</STRONG><EM>fieldtype</EM><STRONG>,</STRONG>
+ <STRONG>bool</STRONG> <STRONG>(*</STRONG> <STRONG>const</STRONG> <EM>next</EM><STRONG>_</STRONG><EM>choice</EM><STRONG>)(FIELD</STRONG> <STRONG>*,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*),</STRONG>
+ <STRONG>bool</STRONG> <STRONG>(*</STRONG> <STRONG>const</STRONG> <EM>prev</EM><STRONG>_</STRONG><EM>choice</EM><STRONG>)(FIELD</STRONG> <STRONG>*,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*));</STRONG>
+
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*link_fieldtype(FIELDTYPE</STRONG> <STRONG>*</STRONG><EM>type1</EM><STRONG>,</STRONG>
+ <STRONG>FIELDTYPE</STRONG> <STRONG>*</STRONG><EM>type2</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+
+</PRE><H3><a name="h3-new_fieldtype">new_fieldtype</a></H3><PRE>
The function <STRONG>new_fieldtype</STRONG> creates a new field type usable for data
- validation. You supply it with <EM>field</EM><STRONG>_</STRONG><EM>check</EM>, a predicate to check the
- validity of an entered data string whenever the user attempts to leave
- a field. The (FIELD *) argument is passed in so the validation predi-
- cate can see the field's buffer, sizes and other attributes; the second
- argument is an argument-block structure, about which more below.
+ validation. Its parameters are function pointers:
+
+ <EM>field</EM><STRONG>_</STRONG><EM>check</EM>
+ This function checks the validity of an entered data string
+ whenever the user attempts to leave a field. It has two
+ arguments:
+
+ <STRONG>o</STRONG> The (FIELD *) argument is passed in so the validation
+ predicate can see the field's buffer, sizes and other
+ attributes.
- You also supply <STRONG>new_fieldtype</STRONG> with <EM>char</EM><STRONG>_</STRONG><EM>check</EM>, a function to validate
- input characters as they are entered; it will be passed the character
- to be checked and a pointer to an argument-block structure.
+ <STRONG>o</STRONG> The second argument is an argument-block structure, about
+ which more below.
- The function <STRONG>free_fieldtype</STRONG> frees the space allocated for a given vali-
- dation type.
+ <EM>char</EM><STRONG>_</STRONG><EM>check</EM>
+ This function validates input characters as they are entered. The
+ form library passes it the character to be checked and a pointer
+ to an argument-block structure.
+
+</PRE><H3><a name="h3-free_fieldtype">free_fieldtype</a></H3><PRE>
+ The <STRONG>free_fieldtype</STRONG> function frees the space allocated for a given
+ validation type by <STRONG>new_fieldtype</STRONG>.
+
+
+</PRE><H3><a name="h3-set_fieldtype_arg">set_fieldtype_arg</a></H3><PRE>
The function <STRONG>set_fieldtype_arg</STRONG> associates three storage-management
- functions with a field type. The <EM>make</EM><STRONG>_</STRONG><EM>arg</EM> function is automatically
- applied to the list of arguments you give <STRONG>set_field_type</STRONG> when attaching
- validation to a field; its job is to bundle these into an allocated
- argument-block object which can later be passed to validation predi-
- cated. The other two hook arguments should copy and free argument-
- block structures. They will be used by the forms-driver code. You
- must supply the <EM>make</EM><STRONG>_</STRONG><EM>arg</EM> function, the other two are optional, you may
- supply NULL for them. In this case it is assumed that <EM>make</EM><STRONG>_</STRONG><EM>arg</EM> does
- not allocate memory but simply loads the argument into a single scalar
- value.
+ functions with a field type:
+
+ <EM>make</EM><STRONG>_</STRONG><EM>arg</EM>
+ This function is automatically applied to the list of arguments
+ you give <STRONG>set_field_type</STRONG> when attaching validation to a field. It
+ stores the arguments in an allocated argument-block object which
+ is used when validating input.
+
+ <EM>copy</EM><STRONG>_</STRONG><EM>arg</EM>
+ This function may be used by applications to copy argument-blocks.
+ <EM>free</EM><STRONG>_</STRONG><EM>arg</EM>
+ Frees an argument-block structure.
+
+ You must supply the <EM>make</EM><STRONG>_</STRONG><EM>arg</EM> function. The other two are optional: you
+ may supply NULL for them. In this case, the form library assumes that
+ <EM>make</EM><STRONG>_</STRONG><EM>arg</EM> does not allocate memory but simply loads the argument into a
+ single scalar value.
+
+
+</PRE><H3><a name="h3-set_fieldtype_choice">set_fieldtype_choice</a></H3><PRE>
+ The form driver requests <STRONG>REQ_NEXT_CHOICE</STRONG> and <STRONG>REQ_PREV_CHOICE</STRONG> assume
+ that the possible values of a field form an ordered set, and provide
+ the forms user with a way to move through the set.
+
+ The <STRONG>set_fieldtype_choice</STRONG> function allows forms programmers to define
+ successor and predecessor functions for the field type. These
+ functions take the field pointer and an argument-block structure as
+ arguments.
+
+
+</PRE><H3><a name="h3-link_fieldtype">link_fieldtype</a></H3><PRE>
The function <STRONG>link_fieldtype</STRONG> creates a new field type from the two given
types. They are connected by an logical 'OR'.
- The form driver requests <STRONG>REQ_NEXT_CHOICE</STRONG> and <STRONG>REQ_PREV_CHOICE</STRONG> assume
- that the possible values of a field form an ordered set, and provide
- the forms user with a way to move through the set. The <STRONG>set_field-</STRONG>
- <STRONG>type_choice</STRONG> function allows forms programmers to define successor and
- predecessor functions for the field type. These functions take the
- field pointer and an argument-block structure as arguments.
-
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The pointer-valued routines return NULL on error. They set errno
+ The pointer-valued routines return NULL on error. They set <STRONG>errno</STRONG>
according to their success:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -138,21 +170,17 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header file
<STRONG>&lt;curses.h&gt;</STRONG>.
- All of the <STRONG>(char</STRONG> <STRONG>*)</STRONG> arguments of these functions should actually be
- <STRONG>(void</STRONG> <STRONG>*)</STRONG>. The type has been left uncorrected for strict compatibility
- with System V.
-
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
@@ -167,7 +195,15 @@
<ul>
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-new_fieldtype">new_fieldtype</a></li>
+<li><a href="#h3-free_fieldtype">free_fieldtype</a></li>
+<li><a href="#h3-set_fieldtype_arg">set_fieldtype_arg</a></li>
+<li><a href="#h3-set_fieldtype_choice">set_fieldtype_choice</a></li>
+<li><a href="#h3-link_fieldtype">link_fieldtype</a></li>
+</ul>
+</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
<li><a href="#h2-NOTES">NOTES</a></li>
diff --git a/doc/html/man/form_hook.3x.html b/doc/html/man/form_hook.3x.html
index bac8d43..db12999 100644
--- a/doc/html/man/form_hook.3x.html
+++ b/doc/html/man/form_hook.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_hook.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_hook.3x,v 1.16 2020/10/18 00:06:29 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,14 +53,18 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_field_init(FORM *form, Form_Hook func);
- Form_Hook field_init(const FORM *form);
- int set_field_term(FORM *form, Form_Hook func);
- Form_Hook field_term(const FORM *form);
- int set_form_init(FORM *form, Form_Hook func);
- Form_Hook form_init(const FORM *form);
- int set_form_term(FORM *form, Form_Hook func);
- Form_Hook form_term(const FORM *form);
+
+ <STRONG>int</STRONG> <STRONG>set_field_init(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>Form_Hook</STRONG> <EM>func</EM><STRONG>);</STRONG>
+ <STRONG>Form_Hook</STRONG> <STRONG>field_init(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_field_term(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>Form_Hook</STRONG> <EM>func</EM><STRONG>);</STRONG>
+ <STRONG>Form_Hook</STRONG> <STRONG>field_term(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_form_init(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>Form_Hook</STRONG> <EM>func</EM><STRONG>);</STRONG>
+ <STRONG>Form_Hook</STRONG> <STRONG>form_init(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_form_term(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>Form_Hook</STRONG> <EM>func</EM><STRONG>);</STRONG>
+ <STRONG>Form_Hook</STRONG> <STRONG>form_term(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -107,8 +111,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_new.3x.html b/doc/html/man/form_new.3x.html
index fc27103..59b09a0 100644
--- a/doc/html/man/form_new.3x.html
+++ b/doc/html/man/form_new.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_new.3x,v 1.12 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_new.3x,v 1.15 2020/10/24 09:02:26 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- FORM *new_form(FIELD **fields);
- int free_form(FORM *form);
+
+ <STRONG>FORM</STRONG> <STRONG>*new_form(FIELD</STRONG> <STRONG>**</STRONG><EM>fields</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_form(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -66,7 +67,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The function <STRONG>new_form</STRONG> returns <STRONG>NULL</STRONG> on error. It sets errno according
+ The function <STRONG>new_form</STRONG> returns <STRONG>NULL</STRONG> on error. It sets <STRONG>errno</STRONG> according
to the function's success:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -101,8 +102,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_new_page.3x.html b/doc/html/man/form_new_page.3x.html
index c14bb9d..7a14ed6 100644
--- a/doc/html/man/form_new_page.3x.html
+++ b/doc/html/man/form_new_page.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_new_page.3x,v 1.15 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_new_page.3x,v 1.17 2020/10/18 00:04:36 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_new_page(FIELD *field, bool new_page_flag);
- bool new_page(const FIELD *field);
+
+ <STRONG>int</STRONG> <STRONG>set_new_page(FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>new</EM><STRONG>_</STRONG><EM>page</EM><STRONG>_</STRONG><EM>flag</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>new_page(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -87,8 +88,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_opts.3x.html b/doc/html/man/form_opts.3x.html
index cf680af..3c9d87f 100644
--- a/doc/html/man/form_opts.3x.html
+++ b/doc/html/man/form_opts.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_opts.3x,v 1.15 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_opts.3x,v 1.17 2020/10/18 00:03:49 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,10 +54,12 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_form_opts(FORM *form, Field_Options opts);
- int form_opts_on(FORM *form, Field_Options opts);
- int form_opts_off(FORM *form, Field_Options opts);
- Field_Options form_opts(const FORM *form);
+
+ <STRONG>int</STRONG> <STRONG>set_form_opts(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>Field_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>Field_Options</STRONG> <STRONG>form_opts(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>form_opts_on(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>Field_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>form_opts_off(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>Field_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -102,8 +104,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_page.3x.html b/doc/html/man/form_page.3x.html
index e06fffd..a1b3cad 100644
--- a/doc/html/man/form_page.3x.html
+++ b/doc/html/man/form_page.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_page.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_page.3x,v 1.19 2020/10/18 00:02:44 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,12 +53,16 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_current_field(FORM *form, FIELD *field);
- FIELD *current_field(const FORM *);
- int unfocus_current_field(FORM *form);
- int set_form_page(FORM *form, int n);
- int form_page(const FORM *form);
- int field_index(const FIELD *field);
+
+ <STRONG>int</STRONG> <STRONG>set_current_field(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
+ <STRONG>FIELD</STRONG> <STRONG>*current_field(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>unfocus_current_field(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_form_page(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>form_page(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>field_index(const</STRONG> <STRONG>FIELD</STRONG> <STRONG>*</STRONG><EM>field</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -110,8 +114,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
The <STRONG>unfocus_current_field</STRONG> function is an ncurses extension.
diff --git a/doc/html/man/form_post.3x.html b/doc/html/man/form_post.3x.html
index 9a18331..3534f1e 100644
--- a/doc/html/man/form_post.3x.html
+++ b/doc/html/man/form_post.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_post.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_post.3x,v 1.16 2020/10/18 00:01:05 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -48,14 +48,15 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>post_form</STRONG>, <STRONG>unpost_form</STRONG> - write or erase forms from associated subwin-
- dows
+ <STRONG>post_form</STRONG>, <STRONG>unpost_form</STRONG> - write or erase forms from associated
+ subwindows
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int post_form(FORM *form);
- int unpost_form(FORM *form);
+
+ <STRONG>int</STRONG> <STRONG>post_form(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>unpost_form(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -104,8 +105,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/form_requestname.3x.html b/doc/html/man/form_requestname.3x.html
index 9245e4b..91dea4a 100644
--- a/doc/html/man/form_requestname.3x.html
+++ b/doc/html/man/form_requestname.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_requestname.3x,v 1.12 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_requestname.3x,v 1.16 2020/12/12 16:37:14 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,23 +54,30 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- const char *form_request_name(int request);
- int form_request_by_name(const char *name);
+
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*form_request_name(int</STRONG> <EM>request</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>form_request_by_name(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+
+</PRE><H3><a name="h3-form_request_name">form_request_name</a></H3><PRE>
The function <STRONG>form_request_name</STRONG> returns the printable name of a form
request code.
+
+
+</PRE><H3><a name="h3-form_request_name_by_name">form_request_name_by_name</a></H3><PRE>
The function <STRONG>form_request_by_name</STRONG> searches in the name-table for a
request with the given name and returns its request code. Otherwise
E_NO_MATCH is returned.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- <STRONG>form_request_name</STRONG> returns <STRONG>NULL</STRONG> on error and sets errno to <STRONG>E_BAD_ARGU-</STRONG>
- <STRONG>MENT</STRONG>.
+ <STRONG>form_request_name</STRONG> returns <STRONG>NULL</STRONG> on error and sets <STRONG>errno</STRONG> to
+ <STRONG>E_BAD_ARGUMENT</STRONG>.
+
<STRONG>form_request_by_name</STRONG> returns <STRONG>E_NO_MATCH</STRONG> on error. It does not set
- errno.
+ <STRONG>errno</STRONG>.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
@@ -100,7 +107,12 @@
<ul>
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
-<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-form_request_name">form_request_name</a></li>
+<li><a href="#h3-form_request_name_by_name">form_request_name_by_name</a></li>
+</ul>
+</li>
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
<li><a href="#h2-NOTES">NOTES</a></li>
diff --git a/doc/html/man/form_userptr.3x.html b/doc/html/man/form_userptr.3x.html
index 4675f54..bdc2f2d 100644
--- a/doc/html/man/form_userptr.3x.html
+++ b/doc/html/man/form_userptr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_userptr.3x,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_userptr.3x,v 1.19 2020/10/24 09:00:52 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,8 +54,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_form_userptr(FORM *form, void *userptr);
- void* form_userptr(const FORM *form);
+
+ <STRONG>int</STRONG> <STRONG>set_form_userptr(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>userptr</EM><STRONG>);</STRONG>
+ <STRONG>void*</STRONG> <STRONG>form_userptr(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -66,7 +67,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The function <STRONG>form_userptr</STRONG> returns a pointer (which may be <STRONG>NULL</STRONG>). It
- does not set errno.
+ does not set <STRONG>errno</STRONG>.
The function <STRONG>set_form_userptr</STRONG> returns <STRONG>E_OK</STRONG> (success).
@@ -81,8 +82,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
The user pointer is a void pointer. We chose not to leave it as a char
pointer for SVr4 compatibility.
diff --git a/doc/html/man/form_variables.3x.html b/doc/html/man/form_variables.3x.html
index f78a53e..218a09c 100644
--- a/doc/html/man/form_variables.3x.html
+++ b/doc/html/man/form_variables.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2020 Thomas E. Dickey *
* Copyright 2010-2013,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_variables.3x,v 1.6 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_variables.3x,v 1.7 2020/12/12 14:45:16 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -65,8 +65,9 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
These are building blocks for the form library, defining fields that
- can be created using <STRONG><A HREF="form_fieldtype.3x.html">set_fieldtype(3x)</A></STRONG>. Each provides functions for
- field- and character-validation, according to the given datatype.
+ can be created using the <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG> functions. Each provides
+ functions for field- and character-validation, according to the given
+ datatype.
</PRE><H3><a name="h3-TYPE_ALNUM">TYPE_ALNUM</a></H3><PRE>
@@ -98,7 +99,7 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- The <STRONG>TYPE_IPV4</STRONG> variable is an extension not provided by older implemen-
+ The <STRONG>TYPE_IPV4</STRONG> variable is an extension not provided by older implemen-
tations of the form library.
diff --git a/doc/html/man/form_win.3x.html b/doc/html/man/form_win.3x.html
index 5295fca..2c870e0 100644
--- a/doc/html/man/form_win.3x.html
+++ b/doc/html/man/form_win.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form_win.3x,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: form_win.3x,v 1.18 2020/10/18 00:00:32 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,29 +53,32 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
- int set_form_win(FORM *form, WINDOW *win);
- WINDOW *form_win(const FORM *form);
- int set_form_sub(FORM *form, WINDOW *sub);
- WINDOW *form_sub(const FORM *form);
- int scale_form(const FORM *form, int *rows, int *columns);
+
+ <STRONG>int</STRONG> <STRONG>set_form_win(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW</STRONG> <STRONG>*form_win(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_form_sub(FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>sub</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW</STRONG> <STRONG>*form_sub(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>scale_form(const</STRONG> <STRONG>FORM</STRONG> <STRONG>*</STRONG><EM>form</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>rows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>columns</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
Every form has an associated pair of <STRONG>curses</STRONG> windows. The form window
- displays any title and border associated with the window; the form sub-
- window displays the items of the form that are currently available for
- selection.
+ displays any title and border associated with the window; the form
+ subwindow displays the items of the form that are currently available
+ for selection.
- The first four functions get and set those windows. It is not neces-
- sary to set either window; by default, the driver code uses <STRONG>stdscr</STRONG> for
- both.
+ The first four functions get and set those windows. It is not
+ necessary to set either window; by default, the driver code uses <STRONG>stdscr</STRONG>
+ for both.
In the <STRONG>set_</STRONG> functions, window argument of <STRONG>NULL</STRONG> is treated as though it
were <STRONG>stsdcr</STRONG>. A form argument of <STRONG>NULL</STRONG> is treated as a request to change
the system default form window or subwindow.
- The function <STRONG>scale_form</STRONG> returns the minimum size required for the sub-
- window of <EM>form</EM>.
+ The function <STRONG>scale_form</STRONG> returns the minimum size required for the
+ subwindow of <EM>form</EM>.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -107,8 +110,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V forms library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V forms library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/infocmp.1m.html b/doc/html/man/infocmp.1m.html
index 0f1f0e5..03b2568 100644
--- a/doc/html/man/infocmp.1m.html
+++ b/doc/html/man/infocmp.1m.html
@@ -1,7 +1,7 @@
-<!--
+<!--
* t
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: infocmp.1m,v 1.76 2020/02/02 23:34:34 tom Exp @
+ * @Id: infocmp.1m,v 1.79 2021/08/15 20:01:31 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -59,9 +59,9 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- <STRONG>infocmp</STRONG> can be used to compare a binary <STRONG>terminfo</STRONG> entry with other ter-
- minfo entries, rewrite a <STRONG>terminfo</STRONG> description to take advantage of the
- <STRONG>use=</STRONG> terminfo field, or print out a <STRONG>terminfo</STRONG> description from the
+ <STRONG>infocmp</STRONG> can be used to compare a binary <STRONG>terminfo</STRONG> entry with other
+ terminfo entries, rewrite a <STRONG>terminfo</STRONG> description to take advantage of
+ the <STRONG>use=</STRONG> terminfo field, or print out a <STRONG>terminfo</STRONG> description from the
binary file (<STRONG>term</STRONG>) in a variety of formats. In all cases, the boolean
fields will be printed first, followed by the numeric fields, followed
by the string fields.
@@ -77,8 +77,8 @@
<STRONG>infocmp</STRONG> compares the <STRONG>terminfo</STRONG> description of the first terminal
<EM>termname</EM> with each of the descriptions given by the entries for the
other terminal's <EM>termnames</EM>. If a capability is defined for only one of
- the terminals, the value returned depends on the type of the capabil-
- ity:
+ the terminals, the value returned depends on the type of the
+ capability:
<STRONG>o</STRONG> <STRONG>F</STRONG> for missing boolean variables
@@ -96,12 +96,12 @@
<STRONG>-c</STRONG> produces a list of each capability that is <EM>common</EM> between two or
more entries. Missing capabilities are ignored. Each item in the
- list shows "=" after the capability name, followed by the capabil-
- ity value.
+ list shows "=" after the capability name, followed by the
+ capability value.
- The <STRONG>-u</STRONG> option provides a related output, showing the first termi-
- nal description rewritten to use the second as a building block
- via the "use=" clause.
+ The <STRONG>-u</STRONG> option provides a related output, showing the first
+ terminal description rewritten to use the second as a building
+ block via the "use=" clause.
<STRONG>-n</STRONG> produces a list of each capability that is in <EM>none</EM> of the given
entries. Each item in the list shows "!" before the capability
@@ -116,8 +116,8 @@
</PRE><H3><a name="h3-Source-Listing-Options-_-I_-_-L_-_-C_-_-r_">Source Listing Options [-I] [-L] [-C] [-r]</a></H3><PRE>
- The <STRONG>-I</STRONG>, <STRONG>-L</STRONG>, and <STRONG>-C</STRONG> options will produce a source listing for each ter-
- minal named.
+ The <STRONG>-I</STRONG>, <STRONG>-L</STRONG>, and <STRONG>-C</STRONG> options will produce a source listing for each
+ terminal named.
<STRONG>-I</STRONG> use the <STRONG>terminfo</STRONG> names
<STRONG>-L</STRONG> use the long C variable name listed in &lt;<STRONG>term.h</STRONG>&gt;
@@ -143,27 +143,27 @@
excess whitespace (use the <STRONG>-0</STRONG> option for that).
All padding information for strings will be collected together and
- placed at the beginning of the string where <STRONG>termcap</STRONG> expects it. Manda-
- tory padding (padding information with a trailing "/") will become
+ placed at the beginning of the string where <STRONG>termcap</STRONG> expects it.
+ Mandatory padding (padding information with a trailing "/") will become
optional.
All <STRONG>termcap</STRONG> variables no longer supported by <STRONG>terminfo</STRONG>, but which are
- derivable from other <STRONG>terminfo</STRONG> variables, will be output. Not all <STRONG>ter-</STRONG>
- <STRONG>minfo</STRONG> capabilities will be translated; only those variables which were
- part of <STRONG>termcap</STRONG> will normally be output. Specifying the <STRONG>-r</STRONG> option will
- take off this restriction, allowing all capabilities to be output in
- <EM>termcap</EM> form. Normally you would use both the <STRONG>-C</STRONG> and <STRONG>-r</STRONG> options. The
- actual format used incorporates some improvements for escaped charac-
- ters from terminfo format. For a stricter BSD-compatible translation,
- use the <STRONG>-K</STRONG> option rather than <STRONG>-C</STRONG>.
-
- Note that because padding is collected to the beginning of the capabil-
- ity, not all capabilities are output. Mandatory padding is not sup-
- ported. Because <STRONG>termcap</STRONG> strings are not as flexible, it is not always
- possible to convert a <STRONG>terminfo</STRONG> string capability into an equivalent
- <STRONG>termcap</STRONG> format. A subsequent conversion of the <STRONG>termcap</STRONG> file back into
- <STRONG>terminfo</STRONG> format will not necessarily reproduce the original <STRONG>terminfo</STRONG>
- source.
+ derivable from other <STRONG>terminfo</STRONG> variables, will be output. Not all
+ <STRONG>terminfo</STRONG> capabilities will be translated; only those variables which
+ were part of <STRONG>termcap</STRONG> will normally be output. Specifying the <STRONG>-r</STRONG> option
+ will take off this restriction, allowing all capabilities to be output
+ in <EM>termcap</EM> form. Normally you would use both the <STRONG>-C</STRONG> and <STRONG>-r</STRONG> options.
+ The actual format used incorporates some improvements for escaped
+ characters from terminfo format. For a stricter BSD-compatible
+ translation, use the <STRONG>-K</STRONG> option rather than <STRONG>-C</STRONG>.
+
+ Note that because padding is collected to the beginning of the
+ capability, not all capabilities are output. Mandatory padding is not
+ supported. Because <STRONG>termcap</STRONG> strings are not as flexible, it is not
+ always possible to convert a <STRONG>terminfo</STRONG> string capability into an
+ equivalent <STRONG>termcap</STRONG> format. A subsequent conversion of the <STRONG>termcap</STRONG> file
+ back into <STRONG>terminfo</STRONG> format will not necessarily reproduce the original
+ <STRONG>terminfo</STRONG> source.
Some common <STRONG>terminfo</STRONG> parameter sequences, their <STRONG>termcap</STRONG> equivalents,
and some terminal types which commonly have such sequences, are:
@@ -179,10 +179,10 @@
</PRE><H3><a name="h3-Use_-Option-_-u_">Use= Option [-u]</a></H3><PRE>
- The <STRONG>-u</STRONG> option produces a <STRONG>terminfo</STRONG> source description of the first ter-
- minal <EM>termname</EM> which is relative to the sum of the descriptions given
- by the entries for the other terminals <EM>termnames</EM>. It does this by ana-
- lyzing the differences between the first <EM>termname</EM> and the other
+ The <STRONG>-u</STRONG> option produces a <STRONG>terminfo</STRONG> source description of the first
+ terminal <EM>termname</EM> which is relative to the sum of the descriptions
+ given by the entries for the other terminals <EM>termnames</EM>. It does this
+ by analyzing the differences between the first <EM>termname</EM> and the other
<EM>termnames</EM> and producing a description with <STRONG>use=</STRONG> fields for the other
terminals. In this manner, it is possible to retrofit generic terminfo
entries into a terminal's description. Or, if two similar terminals
@@ -190,48 +190,47 @@
each description is a full description, using <STRONG>infocmp</STRONG> will show what
can be done to change one description to be relative to the other.
- A capability will get printed with an at-sign (@) if it no longer
- exists in the first <EM>termname</EM>, but one of the other <EM>termname</EM> entries
- contains a value for it. A capability's value gets printed if the
- value in the first <EM>termname</EM> is not found in any of the other <EM>termname</EM>
- entries, or if the first of the other <EM>termname</EM> entries that has this
- capability gives a different value for the capability than that in the
- first <EM>termname</EM>.
-
- The order of the other <EM>termname</EM> entries is significant. Since the ter-
- minfo compiler <STRONG>tic</STRONG> does a left-to-right scan of the capabilities, spec-
- ifying two <STRONG>use=</STRONG> entries that contain differing entries for the same
+ A capability will be printed with an at-sign (@) if it no longer exists
+ in the first <EM>termname</EM>, but one of the other <EM>termname</EM> entries contains a
+ value for it. A capability's value will be printed if the value in the
+ first <EM>termname</EM> is not found in any of the other <EM>termname</EM> entries, or if
+ the first of the other <EM>termname</EM> entries that has this capability gives
+ a different value for the capability than that in the first <EM>termname</EM>.
+
+ The order of the other <EM>termname</EM> entries is significant. Since the
+ terminfo compiler <STRONG>tic</STRONG> does a left-to-right scan of the capabilities,
+ specifying two <STRONG>use=</STRONG> entries that contain differing entries for the same
capabilities will produce different results depending on the order that
- the entries are given in. <STRONG>infocmp</STRONG> will flag any such inconsistencies
+ the entries are given in. <STRONG>infocmp</STRONG> will flag any such inconsistencies
between the other <EM>termname</EM> entries as they are found.
Alternatively, specifying a capability <EM>after</EM> a <STRONG>use=</STRONG> entry that contains
- that capability will cause the second specification to be ignored.
- Using <STRONG>infocmp</STRONG> to recreate a description can be a useful check to make
- sure that everything was specified correctly in the original source
+ that capability will cause the second specification to be ignored.
+ Using <STRONG>infocmp</STRONG> to recreate a description can be a useful check to make
+ sure that everything was specified correctly in the original source
description.
- Another error that does not cause incorrect compiled files, but will
- slow down the compilation time, is specifying extra <STRONG>use=</STRONG> fields that
+ Another error that does not cause incorrect compiled files, but will
+ slow down the compilation time, is specifying extra <STRONG>use=</STRONG> fields that
are superfluous. <STRONG>infocmp</STRONG> will flag any other <EM>termname</EM> <EM>use=</EM> fields that
were not needed.
<STRONG>Changing</STRONG> <STRONG>Databases</STRONG> <STRONG>[-A</STRONG> <EM>directory</EM>] [-B <EM>directory</EM>]
- Like other <STRONG>ncurses</STRONG> utilities, <STRONG>infocmp</STRONG> looks for the terminal descrip-
- tions in several places. You can use the <STRONG>TERMINFO</STRONG> and <STRONG>TERMINFO_DIRS</STRONG>
- environment variables to override the compiled-in default list of
- places to search (see <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> for details).
+ Like other <STRONG>ncurses</STRONG> utilities, <STRONG>infocmp</STRONG> looks for the terminal
+ descriptions in several places. You can use the <STRONG>TERMINFO</STRONG> and
+ <STRONG>TERMINFO_DIRS</STRONG> environment variables to override the compiled-in default
+ list of places to search (see <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> for details).
- You can also use the options <STRONG>-A</STRONG> and <STRONG>-B</STRONG> to override the list of places
+ You can also use the options <STRONG>-A</STRONG> and <STRONG>-B</STRONG> to override the list of places
to search when comparing terminal descriptions:
<STRONG>o</STRONG> The <STRONG>-A</STRONG> option sets the location for the first <EM>termname</EM>
<STRONG>o</STRONG> The <STRONG>-B</STRONG> option sets the location for the other <EM>termnames</EM>.
- Using these options, it is possible to compare descriptions for a ter-
- minal with the same name located in two different databases. For
- instance, you can use this feature for comparing descriptions for the
+ Using these options, it is possible to compare descriptions for a
+ terminal with the same name located in two different databases. For
+ instance, you can use this feature for comparing descriptions for the
same terminal created by different people.
@@ -239,27 +238,28 @@
<STRONG>-0</STRONG> causes the fields to be printed on one line, without wrapping.
<STRONG>-1</STRONG> causes the fields to be printed out one to a line. Otherwise, the
- fields will be printed several to a line to a maximum width of 60
+ fields will be printed several to a line to a maximum width of 60
characters.
- <STRONG>-a</STRONG> tells <STRONG>infocmp</STRONG> to retain commented-out capabilities rather than
- discarding them. Capabilities are commented by prefixing them
+ <STRONG>-a</STRONG> tells <STRONG>infocmp</STRONG> to retain commented-out capabilities rather than
+ discarding them. Capabilities are commented by prefixing them
with a period.
<STRONG>-D</STRONG> tells <STRONG>infocmp</STRONG> to print the database locations that it knows about,
and exit.
- <STRONG>-E</STRONG> Dump the capabilities of the given terminal as tables, needed in
- the C initializer for a TERMTYPE structure (the terminal capabil-
- ity structure in the <STRONG>&lt;term.h&gt;</STRONG>). This option is useful for prepar-
- ing versions of the curses library hardwired for a given terminal
- type. The tables are all declared static, and are named according
- to the type and the name of the corresponding terminal entry.
+ <STRONG>-E</STRONG> Dump the capabilities of the given terminal as tables, needed in
+ the C initializer for a TERMTYPE structure (the terminal
+ capability structure in the <STRONG>&lt;term.h&gt;</STRONG>). This option is useful for
+ preparing versions of the curses library hardwired for a given
+ terminal type. The tables are all declared static, and are named
+ according to the type and the name of the corresponding terminal
+ entry.
Before ncurses 5.0, the split between the <STRONG>-e</STRONG> and <STRONG>-E</STRONG> options was
not needed; but support for extended names required making the
- arrays of terminal capabilities separate from the TERMTYPE struc-
- ture.
+ arrays of terminal capabilities separate from the TERMTYPE
+ structure.
<STRONG>-e</STRONG> Dump the capabilities of the given terminal as a C initializer for
a TERMTYPE structure (the terminal capability structure in the
@@ -279,16 +279,16 @@
<STRONG>-f</STRONG> Display complex terminfo strings which contain if/then/else/endif
expressions indented for readability.
- <STRONG>-G</STRONG> Display constant literals in decimal form rather than their char-
- acter equivalents.
+ <STRONG>-G</STRONG> Display constant literals in decimal form rather than their
+ character equivalents.
<STRONG>-g</STRONG> Display constant character literals in quoted form rather than
their decimal equivalents.
<STRONG>-i</STRONG> Analyze the initialization (<STRONG>is1</STRONG>, <STRONG>is2</STRONG>, <STRONG>is3</STRONG>), and reset (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>,
- <STRONG>rs3</STRONG>), strings in the entry, as well as those used for start-
- ing/stopping cursor-positioning mode (<STRONG>smcup</STRONG>, <STRONG>rmcup</STRONG>) as well as
- starting/stopping keymap mode (<STRONG>smkx</STRONG>, <STRONG>rmkx</STRONG>).
+ <STRONG>rs3</STRONG>), strings in the entry, as well as those used for
+ starting/stopping cursor-positioning mode (<STRONG>smcup</STRONG>, <STRONG>rmcup</STRONG>) as well
+ as starting/stopping keymap mode (<STRONG>smkx</STRONG>, <STRONG>rmkx</STRONG>).
For each string, the code tries to analyze it into actions in
terms of the other capabilities in the entry, certain X3.64/ISO
@@ -355,9 +355,9 @@
<STRONG>-p</STRONG> Ignore padding specifications when comparing strings.
- <STRONG>-Q</STRONG> <EM>n</EM> Rather than show source in terminfo (text) format, print the com-
- piled (binary) format in hexadecimal or base64 form, depending on
- the option's value:
+ <STRONG>-Q</STRONG> <EM>n</EM> Rather than show source in terminfo (text) format, print the
+ compiled (binary) format in hexadecimal or base64 form, depending
+ on the option's value:
1 hexadecimal
@@ -376,14 +376,14 @@
and using "-" for absent capabilities, "@" for canceled rather
than "NULL".
- <STRONG>o</STRONG> However, show differences between absent and cancelled capa-
- bilities.
+ <STRONG>o</STRONG> However, show differences between absent and cancelled
+ capabilities.
<STRONG>o</STRONG> Omit the "Reconstructed from" comment for source listings.
<STRONG>-R</STRONG><EM>subset</EM>
Restrict output to a given subset. This option is for use with
- archaic versions of terminfo like those on SVr1, Ultrix, or HP/UX
+ archaic versions of terminfo like those on SVr1, Ultrix, or HP-UX
that do not support the full set of SVR4/XSI Curses terminfo; and
variants such as AIX that have their own extensions incompatible
with SVr4/XSI.
@@ -391,20 +391,20 @@
<STRONG>o</STRONG> Available terminfo subsets are "SVr1", "Ultrix", "HP", and
"AIX"; see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for details.
- <STRONG>o</STRONG> You can also choose the subset "BSD" which selects only capa-
- bilities with termcap equivalents recognized by 4.4BSD. The
- <STRONG>-C</STRONG> option sets the "BSD" subset as a side-effect.
+ <STRONG>o</STRONG> You can also choose the subset "BSD" which selects only
+ capabilities with termcap equivalents recognized by 4.4BSD.
+ The <STRONG>-C</STRONG> option sets the "BSD" subset as a side-effect.
<STRONG>o</STRONG> If you select any other value for <STRONG>-R</STRONG>, it is the same as no
- subset, i.e., all capabilities are used. The <STRONG>-I</STRONG> option like-
- wise selects no subset as a side-effect.
+ subset, i.e., all capabilities are used. The <STRONG>-I</STRONG> option
+ likewise selects no subset as a side-effect.
<STRONG>-s</STRONG> <EM>[d|i|l|c]</EM>
The <STRONG>-s</STRONG> option sorts the fields within each type according to the
argument below:
- <STRONG>d</STRONG> leave fields in the order that they are stored in the <EM>ter-</EM>
- <EM>minfo</EM> database.
+ <STRONG>d</STRONG> leave fields in the order that they are stored in the
+ <EM>terminfo</EM> database.
<STRONG>i</STRONG> sort by <EM>terminfo</EM> name.
@@ -420,17 +420,17 @@
<STRONG>-T</STRONG> eliminates size-restrictions on the generated text. This is
mainly useful for testing and analysis, since the compiled
- descriptions are limited (e.g., 1023 for termcap, 4096 for ter-
- minfo).
+ descriptions are limited (e.g., 1023 for termcap, 4096 for
+ terminfo).
<STRONG>-t</STRONG> tells <STRONG>tic</STRONG> to discard commented-out capabilities. Normally when
translating from terminfo to termcap, untranslatable capabilities
are commented-out.
<STRONG>-U</STRONG> tells <STRONG>infocmp</STRONG> to not post-process the data after parsing the
- source file. This feature helps when comparing the actual con-
- tents of two source files, since it excludes the inferences that
- <STRONG>infocmp</STRONG> makes to fill in missing data.
+ source file. This feature helps when comparing the actual
+ contents of two source files, since it excludes the inferences
+ that <STRONG>infocmp</STRONG> makes to fill in missing data.
<STRONG>-V</STRONG> reports the version of ncurses which was used in this program, and
exits.
@@ -459,22 +459,22 @@
</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
- Although System V Release 2 provided a terminfo library, it had no doc-
- umented tool for decompiling the terminal descriptions. Tony Hansen
+ Although System V Release 2 provided a terminfo library, it had no
+ documented tool for decompiling the terminal descriptions. Tony Hansen
(AT&amp;T) wrote the first <STRONG>infocmp</STRONG> in early 1984, for System V Release 3.
- Eric Raymond used the AT&amp;T documentation in 1995 to provide an equiva-
- lent <STRONG>infocmp</STRONG> for ncurses. In addition, he added a few new features
- such as:
+ Eric Raymond used the AT&amp;T documentation in 1995 to provide an
+ equivalent <STRONG>infocmp</STRONG> for ncurses. In addition, he added a few new
+ features such as:
- <STRONG>o</STRONG> the <STRONG>-e</STRONG> option, to support <EM>fallback</EM> (compiled-in) terminal descrip-
- tions
+ <STRONG>o</STRONG> the <STRONG>-e</STRONG> option, to support <EM>fallback</EM> (compiled-in) terminal
+ descriptions
<STRONG>o</STRONG> the <STRONG>-i</STRONG> option, to help with analysis
Later, Thomas Dickey added the <STRONG>-x</STRONG> (user-defined capabilities) option,
- and the <STRONG>-E</STRONG> option to support fallback entries with user-defined capa-
- bilities.
+ and the <STRONG>-E</STRONG> option to support fallback entries with user-defined
+ capabilities.
For a complete list, see the <EM>EXTENSIONS</EM> section.
@@ -493,13 +493,14 @@
The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</STRONG>, <STRONG>-Q</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-i</STRONG>, <STRONG>-l</STRONG>, <STRONG>-p</STRONG>, <STRONG>-q</STRONG>
and <STRONG>-t</STRONG> options are not supported in SVr4 curses.
- SVr4 infocmp does not distinguish between absent and cancelled capabil-
- ities. Also, it shows missing integer capabilities as <STRONG>-1</STRONG> (the internal
- value used to represent missing integers). This implementation shows
- those as "NULL", for consistency with missing strings.
+ SVr4 infocmp does not distinguish between absent and cancelled
+ capabilities. Also, it shows missing integer capabilities as <STRONG>-1</STRONG> (the
+ internal value used to represent missing integers). This
+ implementation shows those as "NULL", for consistency with missing
+ strings.
- The <STRONG>-r</STRONG> option's notion of "termcap" capabilities is System V Release
- 4's. Actual BSD curses versions will have a more restricted set. To
+ The <STRONG>-r</STRONG> option's notion of "termcap" capabilities is System V Release
+ 4's. Actual BSD curses versions will have a more restricted set. To
see only the 4.4BSD set, use <STRONG>-r</STRONG> <STRONG>-RBSD</STRONG>.
@@ -508,12 +509,12 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>ter-</STRONG>
- <STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
+ <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
https://invisible-island.net/ncurses/tctest.html
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
diff --git a/doc/html/man/infotocap.1m.html b/doc/html/man/infotocap.1m.html
index aadf8f4..49a32bd 100644
--- a/doc/html/man/infotocap.1m.html
+++ b/doc/html/man/infotocap.1m.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: infotocap.1m,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: infotocap.1m,v 1.17 2020/12/19 21:49:52 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -89,9 +89,9 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
+ <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
diff --git a/doc/html/man/key_defined.3x.html b/doc/html/man/key_defined.3x.html
index 073b781..9b77b3b 100644
--- a/doc/html/man/key_defined.3x.html
+++ b/doc/html/man/key_defined.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 2003-2006,2010 Free Software Foundation, Inc. *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 2003
- * @Id: key_defined.3x,v 1.9 2020/02/02 23:34:34 tom Exp @
+ * @Id: key_defined.3x,v 1.10 2020/10/17 23:39:03 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,7 +54,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>key_defined(const</STRONG> <STRONG>char</STRONG> <STRONG>*definition);</STRONG>
+ <STRONG>int</STRONG> <STRONG>key_defined(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>definition</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/keybound.3x.html b/doc/html/man/keybound.3x.html
index 605fd43..55f2d00 100644
--- a/doc/html/man/keybound.3x.html
+++ b/doc/html/man/keybound.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1999-2008,2010 Free Software Foundation, Inc. *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 1999
- * @Id: keybound.3x,v 1.10 2020/02/02 23:34:34 tom Exp @
+ * @Id: keybound.3x,v 1.11 2020/10/17 23:39:30 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,7 +54,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>keybound(int</STRONG> <STRONG>keycode,</STRONG> <STRONG>int</STRONG> <STRONG>count);</STRONG>
+ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>keybound(int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>count);</EM>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -67,8 +67,8 @@
The <EM>keycode</EM> parameter must be greater than zero, else NULL is returned.
If it does not correspond to a defined key, then NULL is returned. The
<EM>count</EM> parameter is used to allow the application to iterate through
- multiple definitions, counting from zero. When successful, the func-
- tion returns a string which must be freed by the caller.
+ multiple definitions, counting from zero. When successful, the
+ function returns a string which must be freed by the caller.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
diff --git a/doc/html/man/keyok.3x.html b/doc/html/man/keyok.3x.html
index 40281f9..1ce5358 100644
--- a/doc/html/man/keyok.3x.html
+++ b/doc/html/man/keyok.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 1997
- * @Id: keyok.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: keyok.3x,v 1.15 2020/10/17 23:39:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,7 +54,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>keyok(int</STRONG> <STRONG>keycode,</STRONG> <STRONG>bool</STRONG> <STRONG>enable);</STRONG>
+ <STRONG>int</STRONG> <STRONG>keyok(int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>enable</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/doc/html/man/legacy_coding.3x.html b/doc/html/man/legacy_coding.3x.html
index c5745fd..ef4cfa0 100644
--- a/doc/html/man/legacy_coding.3x.html
+++ b/doc/html/man/legacy_coding.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2005-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey
- * @Id: legacy_coding.3x,v 1.7 2020/02/02 23:34:34 tom Exp @
+ * @Id: legacy_coding.3x,v 1.9 2021/08/15 19:32:05 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,7 +54,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>use_legacy_coding(int</STRONG> <STRONG>level);</STRONG>
+ <STRONG>int</STRONG> <STRONG>use_legacy_coding(int</STRONG> <EM>level</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -66,8 +66,8 @@
The <EM>level</EM> parameter controls the result:
- 0 the library functions normally, rendering nonprinting char-
- acters as described in <STRONG>unctrl</STRONG>.
+ 0 the library functions normally, rendering nonprinting
+ characters as described in <STRONG>unctrl</STRONG>.
1 the library ignores <STRONG>isprintf</STRONG> for codes in the range
160-255.
@@ -90,7 +90,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG>unctrl</STRONG>.
+ <STRONG><A HREF="unctrl.3x.html">unctrl(3x)</A></STRONG>.
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
diff --git a/doc/html/man/menu.3x.html b/doc/html/man/menu.3x.html
index 457e7aa..0a74892 100644
--- a/doc/html/man/menu.3x.html
+++ b/doc/html/man/menu.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -59,24 +59,25 @@
The <STRONG>menu</STRONG> library provides terminal-independent facilities for composing
menu systems on character-cell terminals. The library includes: item
routines, which create and modify menu items; and menu routines, which
- group items into menus, display menus on the screen, and handle inter-
- action with the user.
+ group items into menus, display menus on the screen, and handle
+ interaction with the user.
The <STRONG>menu</STRONG> library uses the <STRONG>curses</STRONG> libraries, and a curses initialization
- routine such as <STRONG>initscr</STRONG> must be called before using any of these func-
- tions. To use the <STRONG>menu</STRONG> library, link with the options <STRONG>-lmenu</STRONG> <STRONG>-lcurses</STRONG>.
+ routine such as <STRONG>initscr</STRONG> must be called before using any of these
+ functions. To use the <STRONG>menu</STRONG> library, link with the options <STRONG>-lmenu</STRONG>
+ <STRONG>-lcurses</STRONG>.
</PRE><H3><a name="h3-Current-Default-Values-for-Item-Attributes">Current Default Values for Item Attributes</a></H3><PRE>
- The <STRONG>menu</STRONG> library maintains a default value for item attributes. You
- can get or set this default by calling the appropriate <STRONG>get_</STRONG> or <STRONG>set_</STRONG>
- routine with a <STRONG>NULL</STRONG> item pointer. Changing this default with a <STRONG>set_</STRONG>
- function affects future item creations, but does not change the render-
- ing of items already created.
+ The <STRONG>menu</STRONG> library maintains a default value for item attributes. You
+ can get or set this default by calling the appropriate <STRONG>get_</STRONG> or <STRONG>set_</STRONG>
+ routine with a <STRONG>NULL</STRONG> item pointer. Changing this default with a <STRONG>set_</STRONG>
+ function affects future item creations, but does not change the
+ rendering of items already created.
</PRE><H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE>
- The following table lists each <STRONG>menu</STRONG> routine and the name of the manual
+ The following table lists each <STRONG>menu</STRONG> routine and the name of the manual
page on which it is described.
<STRONG>curses</STRONG> Routine Name Manual Page Name
@@ -111,8 +112,8 @@
menu_pattern <STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>
menu_request_by_name <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
menu_request_name <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
- menu_spacing <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>
+ menu_spacing <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>
menu_sub <STRONG><A HREF="menu_win.3x.html">menu_win(3x)</A></STRONG>
menu_term <STRONG><A HREF="menu_hook.3x.html">menu_hook(3x)</A></STRONG>
menu_userptr <STRONG><A HREF="menu_userptr.3x.html">menu_userptr(3x)</A></STRONG>
@@ -149,7 +150,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- Routines that return pointers return <STRONG>NULL</STRONG> on error. Routines that
+ Routines that return pointers return <STRONG>NULL</STRONG> on error. Routines that
return an integer return one of the following error codes:
<STRONG>E_OK</STRONG> The routine succeeded.
@@ -189,19 +190,19 @@
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- The header file <STRONG>&lt;menu.h&gt;</STRONG> automatically includes the header files
+ The header file <STRONG>&lt;menu.h&gt;</STRONG> automatically includes the header files
<STRONG>&lt;curses.h&gt;</STRONG> and <STRONG>&lt;eti.h&gt;</STRONG>.
In your library list, libmenu.a should be before libncurses.a; that is,
- you should say "-lmenu -lncurses", not the other way around (which
+ you should say "-lmenu -lncurses", not the other way around (which
would give a link-error when using static libraries).
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
- The menu facility was documented in SVr4.2 in <EM>Character</EM> <EM>User</EM> <EM>Interface</EM>
+ The menu facility was documented in SVr4.2 in <EM>Character</EM> <EM>User</EM> <EM>Interface</EM>
<EM>Programming</EM> <EM>(UNIX</EM> <EM>SVR4.2)</EM>.
It is not part of X/Open Curses.
@@ -214,15 +215,15 @@
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
- Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric S.
+ Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric S.
Raymond.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for detailed
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for detailed
descriptions of the entry points.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/menu_attributes.3x.html b/doc/html/man/menu_attributes.3x.html
index 0d1f876..b98ddd5 100644
--- a/doc/html/man/menu_attributes.3x.html
+++ b/doc/html/man/menu_attributes.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_attributes.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_attributes.3x,v 1.19 2020/10/17 23:58:58 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -49,20 +49,24 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
<STRONG>menu_back</STRONG>, <STRONG>menu_fore</STRONG>, <STRONG>menu_grey</STRONG>, <STRONG>menu_pad</STRONG>, <STRONG>set_menu_back</STRONG>,
- <STRONG>set_menu_fore</STRONG>, <STRONG>set_menu_grey</STRONG>, <STRONG>set_menu_pad</STRONG> - color and attribute con-
- trol for menus
+ <STRONG>set_menu_fore</STRONG>, <STRONG>set_menu_grey</STRONG>, <STRONG>set_menu_pad</STRONG> - color and attribute
+ control for menus
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_fore(MENU *menu, chtype attr);
- chtype menu_fore(const MENU *menu);
- int set_menu_back(MENU *menu, chtype attr);
- chtype menu_back(const MENU *menu);
- int set_menu_grey(MENU *menu, chtype attr);
- chtype menu_grey(const MENU *menu);
- int set_menu_pad(MENU *menu, int pad);
- int menu_pad(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_fore(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attr</EM><STRONG>);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>menu_fore(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_menu_back(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attr</EM><STRONG>);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>menu_back(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_menu_grey(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attr</EM><STRONG>);</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>menu_grey(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_menu_pad(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pad</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>menu_pad(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -108,8 +112,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_cursor.3x.html b/doc/html/man/menu_cursor.3x.html
index 86aff55..266542e 100644
--- a/doc/html/man/menu_cursor.3x.html
+++ b/doc/html/man/menu_cursor.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_cursor.3x,v 1.12 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_cursor.3x,v 1.13 2020/10/17 23:41:31 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,14 +53,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int pos_menu_cursor(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>pos_menu_cursor(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The function <STRONG>pos_menu_cursor</STRONG> restores the cursor to the current posi-
- tion associated with the menu's selected item. This is useful after
- <STRONG>curses</STRONG> routines have been called to do screen-painting in response to a
- menu select.
+ The function <STRONG>pos_menu_cursor</STRONG> restores the cursor to the current
+ position associated with the menu's selected item. This is useful
+ after <STRONG>curses</STRONG> routines have been called to do screen-painting in
+ response to a menu select.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -88,8 +89,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_driver.3x.html b/doc/html/man/menu_driver.3x.html
index bf5da3e..f7000ae 100644
--- a/doc/html/man/menu_driver.3x.html
+++ b/doc/html/man/menu_driver.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_driver.3x,v 1.26 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_driver.3x,v 1.28 2020/12/19 21:33:37 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -52,7 +52,8 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int menu_driver(MENU *menu, int c);
+
+ <STRONG>int</STRONG> <STRONG>menu_driver(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -64,8 +65,8 @@
and character codes returned by <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG>.
<STRONG>o</STRONG> The input is a printable character. Printable characters (which
- must be positive, less than 256) are checked according to the pro-
- gram's locale settings.
+ must be positive, less than 256) are checked according to the
+ program's locale settings.
<STRONG>o</STRONG> The input is the KEY_MOUSE special key associated with an mouse
event.
@@ -173,10 +174,10 @@
</PRE><H3><a name="h3-APPLICATION-DEFINED-COMMANDS">APPLICATION-DEFINED COMMANDS</a></H3><PRE>
If the second argument is neither printable nor one of the above pre-
- defined menu requests or KEY_MOUSE, the drive assumes it is an applica-
- tion-specific command and returns <STRONG>E_UNKNOWN_COMMAND</STRONG>. Application-
- defined commands should be defined relative to <STRONG>MAX_COMMAND</STRONG>, the maximum
- value of these pre-defined requests.
+ defined menu requests or KEY_MOUSE, the drive assumes it is an
+ application-specific command and returns <STRONG>E_UNKNOWN_COMMAND</STRONG>.
+ Application-defined commands should be defined relative to <STRONG>MAX_COMMAND</STRONG>,
+ the maximum value of these pre-defined requests.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -207,7 +208,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>.
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -216,9 +217,9 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions. The support for mouse events is
- ncurses specific.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions. The support for mouse events
+ is ncurses specific.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_format.3x.html b/doc/html/man/menu_format.3x.html
index 44e2125..da6e492 100644
--- a/doc/html/man/menu_format.3x.html
+++ b/doc/html/man/menu_format.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_format.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_format.3x,v 1.18 2020/10/17 23:43:11 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,16 +53,17 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_format(MENU *menu, int rows, int cols);
- void menu_format(const MENU *menu, int *rows, int *cols);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_format(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>rows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>cols</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>menu_format(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>rows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>cols</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The function <STRONG>set_menu_format</STRONG> sets the maximum display size of the given
menu. If this size is too small to display all menu items, the menu
- will be made scrollable. If this size is larger than the menus subwin-
- dow and the subwindow is too small to display all menu items, <STRONG>post_menu</STRONG>
- will fail.
+ will be made scrollable. If this size is larger than the menus
+ subwindow and the subwindow is too small to display all menu items,
+ <STRONG>post_menu</STRONG> will fail.
The default format is 16 rows, 1 column. Calling <STRONG>set_menu_format</STRONG> with
a null menu pointer will change this default. A zero row or column
@@ -101,8 +102,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_hook.3x.html b/doc/html/man/menu_hook.3x.html
index 17b298f..f7bda22 100644
--- a/doc/html/man/menu_hook.3x.html
+++ b/doc/html/man/menu_hook.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_hook.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_hook.3x,v 1.15 2020/10/17 23:44:57 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,14 +53,18 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_item_init(MENU *menu, Menu_Hook func);
- Menu_Hook item_init(const MENU *menu);
- int set_item_term(MENU *menu, Menu_Hook func);
- Menu_Hook item_term(const MENU *menu);
- int set_menu_init(MENU *menu, Menu_Hook func);
- Menu_Hook menu_init(const MENU *menu);
- int set_menu_term(MENU *menu, Menu_Hook func);
- Menu_Hook menu_term(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>set_item_init(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>Menu_Hook</STRONG> <EM>func);</EM>
+ <STRONG>Menu_Hook</STRONG> <STRONG>item_init(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu);</EM>
+
+ <STRONG>int</STRONG> <STRONG>set_item_term(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>Menu_Hook</STRONG> <EM>func);</EM>
+ <STRONG>Menu_Hook</STRONG> <STRONG>item_term(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu);</EM>
+
+ <STRONG>int</STRONG> <STRONG>set_menu_init(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>Menu_Hook</STRONG> <EM>func);</EM>
+ <STRONG>Menu_Hook</STRONG> <STRONG>menu_init(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu);</EM>
+
+ <STRONG>int</STRONG> <STRONG>set_menu_term(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>Menu_Hook</STRONG> <EM>func);</EM>
+ <STRONG>Menu_Hook</STRONG> <STRONG>menu_term(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu);</EM>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -109,8 +113,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_items.3x.html b/doc/html/man/menu_items.3x.html
index e5cdf9c..cb0eaba 100644
--- a/doc/html/man/menu_items.3x.html
+++ b/doc/html/man/menu_items.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_items.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_items.3x,v 1.17 2020/10/24 09:00:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,9 +54,10 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_items(MENU *menu, ITEM **items);
- ITEM **menu_items(const MENU *menu);
- int item_count(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_items(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>ITEM</STRONG> <STRONG>**</STRONG><EM>items</EM><STRONG>);</STRONG>
+ <STRONG>ITEM</STRONG> <STRONG>**menu_items(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>item_count(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -70,7 +71,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The function <STRONG>menu_items</STRONG> returns a pointer (which may be <STRONG>NULL</STRONG>). It does
- not set errno.
+ not set <STRONG>errno</STRONG>.
The function <STRONG>item_count</STRONG> returns <STRONG>ERR</STRONG> (the general <STRONG>curses</STRONG> error return
value) if its <EM>menu</EM> parameter is <STRONG>NULL</STRONG>.
@@ -103,8 +104,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
The SVr4 menu library documentation specifies the <STRONG>item_count</STRONG> error
value as -1 (which is the value of <STRONG>ERR</STRONG>).
diff --git a/doc/html/man/menu_mark.3x.html b/doc/html/man/menu_mark.3x.html
index d023db2..84b0db6 100644
--- a/doc/html/man/menu_mark.3x.html
+++ b/doc/html/man/menu_mark.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_mark.3x,v 1.15 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_mark.3x,v 1.18 2020/10/24 08:59:04 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_mark(MENU *menu, const char *mark);
- const char *menu_mark(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_mark(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>mark</EM><STRONG>);</STRONG>
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*menu_mark(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -76,7 +77,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The function <STRONG>menu_mark</STRONG> returns a pointer (which may be <STRONG>NULL</STRONG>). It does
- not set errno.
+ not set <STRONG>errno</STRONG>.
The function <STRONG>set_menu_mark</STRONG> may return the following error codes:
@@ -99,8 +100,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_new.3x.html b/doc/html/man/menu_new.3x.html
index 5838d7f..082882c 100644
--- a/doc/html/man/menu_new.3x.html
+++ b/doc/html/man/menu_new.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_new.3x,v 1.15 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_new.3x,v 1.18 2020/10/24 08:57:51 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- MENU *new_menu(ITEM **items);
- int free_menu(MENU *menu);
+
+ <STRONG>MENU</STRONG> <STRONG>*new_menu(ITEM</STRONG> <STRONG>**</STRONG><EM>items</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_menu(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -66,7 +67,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The function <STRONG>new_menu</STRONG> returns <STRONG>NULL</STRONG> on error. It sets errno according
+ The function <STRONG>new_menu</STRONG> returns <STRONG>NULL</STRONG> on error. It sets <STRONG>errno</STRONG> according
to the function's failure:
<STRONG>E_NOT_CONNECTED</STRONG>
@@ -99,8 +100,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_opts.3x.html b/doc/html/man/menu_opts.3x.html
index 5b9ee06..937c4cd 100644
--- a/doc/html/man/menu_opts.3x.html
+++ b/doc/html/man/menu_opts.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_opts.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_opts.3x,v 1.18 2020/10/17 23:46:35 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,10 +54,12 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_opts(MENU *menu, Menu_Options opts);
- int menu_opts_on(MENU *menu, Menu_Options opts);
- int menu_opts_off(MENU *menu, Menu_Options opts);
- Menu_Options menu_opts(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_opts(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>Menu_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>Menu_Options</STRONG> <STRONG>menu_opts(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>menu_opts_on(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>Menu_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>menu_opts_off(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>Menu_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -94,9 +96,10 @@
other end of the menu.
O_MOUSE_MENU
- If user clicks with the mouse and it does not fall on the cur-
- rently active menu, push <STRONG>KEY_MOUSE</STRONG> and the <STRONG>MEVENT</STRONG> data back on the
- queue to allow processing in another part of the calling program.
+ If user clicks with the mouse and it does not fall on the
+ currently active menu, push <STRONG>KEY_MOUSE</STRONG> and the <STRONG>MEVENT</STRONG> data back on
+ the queue to allow processing in another part of the calling
+ program.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -121,8 +124,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_pattern.3x.html b/doc/html/man/menu_pattern.3x.html
index 1be9d1b..d9ba95c 100644
--- a/doc/html/man/menu_pattern.3x.html
+++ b/doc/html/man/menu_pattern.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2015 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_pattern.3x,v 1.18 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_pattern.3x,v 1.21 2020/10/18 00:41:14 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -52,8 +52,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_pattern(MENU *menu, const char *pattern);
- char *menu_pattern(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_pattern(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>pattern</EM><STRONG>);</STRONG>
+ <STRONG>char</STRONG> <STRONG>*menu_pattern(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -71,7 +72,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The function <STRONG>menu_pattern</STRONG> returns a pointer, which is <STRONG>NULL</STRONG> if the <EM>menu</EM>
parameter is <STRONG>NULL</STRONG>. Otherwise, it is a pointer to a string which is
- empty if no pattern has been set. It does not set errno.
+ empty if no pattern has been set. It does not set <STRONG>errno</STRONG>.
The function <STRONG>set_menu_pattern</STRONG> may return the following error codes:
@@ -103,8 +104,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_post.3x.html b/doc/html/man/menu_post.3x.html
index a2fc2bc..2930fb9 100644
--- a/doc/html/man/menu_post.3x.html
+++ b/doc/html/man/menu_post.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_post.3x,v 1.18 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_post.3x,v 1.19 2020/10/17 23:47:21 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -48,14 +48,15 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- <STRONG>post_menu</STRONG>, <STRONG>unpost_menu</STRONG> - write or erase menus from associated subwin-
- dows
+ <STRONG>post_menu</STRONG>, <STRONG>unpost_menu</STRONG> - write or erase menus from associated
+ subwindows
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int post_menu(MENU *menu);
- int unpost_menu(MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>post_menu(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>unpost_menu(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -106,8 +107,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/menu_requestname.3x.html b/doc/html/man/menu_requestname.3x.html
index 7b7674b..4d263ed 100644
--- a/doc/html/man/menu_requestname.3x.html
+++ b/doc/html/man/menu_requestname.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_requestname.3x,v 1.12 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_requestname.3x,v 1.15 2020/10/18 00:40:34 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,8 +54,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- const char *menu_request_name(int request);
- int menu_request_by_name(const char *name);
+
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*menu_request_name(int</STRONG> <EM>request</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>menu_request_by_name(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -67,10 +68,10 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- <STRONG>menu_request_name</STRONG> returns <STRONG>NULL</STRONG> on error and sets errno to <STRONG>E_BAD_ARGU-</STRONG>
- <STRONG>MENT</STRONG>.
+ <STRONG>menu_request_name</STRONG> returns <STRONG>NULL</STRONG> on error and sets <STRONG>errno</STRONG> to
+ <STRONG>E_BAD_ARGUMENT</STRONG>.
<STRONG>menu_request_by_name</STRONG> returns <STRONG>E_NO_MATCH</STRONG> on error. It does not set
- errno.
+ <STRONG>errno</STRONG>.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
diff --git a/doc/html/man/menu_spacing.3x.html b/doc/html/man/menu_spacing.3x.html
index f7a812e..7e4b412 100644
--- a/doc/html/man/menu_spacing.3x.html
+++ b/doc/html/man/menu_spacing.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_spacing.3x,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_spacing.3x,v 1.17 2020/10/17 23:48:53 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,14 +54,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_spacing(MENU *menu,
- int spc_description,
- int spc_rows,
- int spc_columns);
- int menu_spacing(const MENU *menu,
- int* spc_description,
- int* spc_rows,
- int* spc_columns);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_spacing(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <EM>spc</EM><STRONG>_</STRONG><EM>description</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <EM>spc</EM><STRONG>_</STRONG><EM>rows</EM><STRONG>,</STRONG>
+ <STRONG>int</STRONG> <EM>spc</EM><STRONG>_</STRONG><EM>columns</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>menu_spacing(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG>
+ <STRONG>int*</STRONG> <EM>spc</EM><STRONG>_</STRONG><EM>description</EM><STRONG>,</STRONG>
+ <STRONG>int*</STRONG> <EM>spc</EM><STRONG>_</STRONG><EM>rows</EM><STRONG>,</STRONG>
+ <STRONG>int*</STRONG> <EM>spc</EM><STRONG>_</STRONG><EM>columns</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -73,8 +74,8 @@
<STRONG>spc_rows</STRONG> parameter controls the number of rows that are used for an
item. It must not be larger than 3. The menu system inserts the blank
lines between item rows, these lines will contain the pad character in
- the appropriate positions. The <STRONG>spc_columns</STRONG> parameter controls the num-
- ber of blanks between columns of items. It must not be larger than
+ the appropriate positions. The <STRONG>spc_columns</STRONG> parameter controls the
+ number of blanks between columns of items. It must not be larger than
<STRONG>TABSIZE</STRONG>. A value of 0 for all the spacing values resets them to the
default, which is 1 for all of them.
The function <STRONG>menu_spacing</STRONG> passes back the spacing info for the menu.
diff --git a/doc/html/man/menu_userptr.3x.html b/doc/html/man/menu_userptr.3x.html
index 9ced809..4a267be 100644
--- a/doc/html/man/menu_userptr.3x.html
+++ b/doc/html/man/menu_userptr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_userptr.3x,v 1.13 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_userptr.3x,v 1.16 2020/10/18 00:39:49 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,8 +54,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_userptr(MENU *menu, void *userptr);
- void *menu_userptr(const MENU *menu);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_userptr(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>userptr</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>*menu_userptr(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -66,7 +67,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
<STRONG>menu_userptr</STRONG> returns a pointer (which may be <STRONG>NULL</STRONG>). It does not set
- errno.
+ <STRONG>errno</STRONG>.
<STRONG>set_menu_userptr</STRONG> returns <STRONG>E_OK</STRONG> (success).
@@ -81,8 +82,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
The user pointer is a void pointer. We chose not to leave it as a char
pointer for SVr4 compatibility.
diff --git a/doc/html/man/menu_win.3x.html b/doc/html/man/menu_win.3x.html
index 020064a..6ada6b6 100644
--- a/doc/html/man/menu_win.3x.html
+++ b/doc/html/man/menu_win.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: menu_win.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: menu_win.3x,v 1.15 2020/10/17 23:50:51 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,29 +53,32 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_menu_win(MENU *menu, WINDOW *win);
- WINDOW *menu_win(const MENU *menu);
- int set_menu_sub(MENU *menu, WINDOW *sub);
- WINDOW *menu_sub(const MENU *menu);
- int scale_menu(const MENU *menu, int *rows, int *columns);
+
+ <STRONG>int</STRONG> <STRONG>set_menu_win(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW</STRONG> <STRONG>*menu_win(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_menu_sub(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>sub</EM><STRONG>);</STRONG>
+ <STRONG>WINDOW</STRONG> <STRONG>*menu_sub(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>scale_menu(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu,</EM> <EM>int</EM> <EM>*rows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>columns);</EM>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
Every menu has an associated pair of <STRONG>curses</STRONG> windows. The menu window
- displays any title and border associated with the window; the menu sub-
- window displays the items of the menu that are currently available for
- selection.
+ displays any title and border associated with the window; the menu
+ subwindow displays the items of the menu that are currently available
+ for selection.
- The first four functions get and set those windows. It is not neces-
- sary to set either window; by default, the driver code uses <STRONG>stdscr</STRONG> for
- both.
+ The first four functions get and set those windows. It is not
+ necessary to set either window; by default, the driver code uses <STRONG>stdscr</STRONG>
+ for both.
In the <STRONG>set_</STRONG> functions, window argument of <STRONG>NULL</STRONG> is treated as though it
were <STRONG>stsdcr</STRONG>. A menu argument of <STRONG>NULL</STRONG> is treated as a request to change
the system default menu window or subwindow.
- The function <STRONG>scale_menu</STRONG> returns the minimum size required for the sub-
- window of <EM>menu</EM>.
+ The function <STRONG>scale_menu</STRONG> returns the minimum size required for the
+ subwindow of <EM>menu</EM>.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -107,8 +110,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/mitem_current.3x.html b/doc/html/man/mitem_current.3x.html
index 77f2616..df6aada 100644
--- a/doc/html/man/mitem_current.3x.html
+++ b/doc/html/man/mitem_current.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: mitem_current.3x,v 1.17 2020/02/02 23:34:34 tom Exp @
+ * @Id: mitem_current.3x,v 1.20 2020/10/18 00:39:06 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,11 +53,14 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_current_item(MENU *menu, ITEM *item);
- ITEM *current_item(const MENU *menu);
- int set_top_row(MENU *menu, int row);
- int top_row(const MENU *menu);
- int item_index(const ITEM *item);
+
+ <STRONG>int</STRONG> <STRONG>set_current_item(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
+ <STRONG>ITEM</STRONG> <STRONG>*current_item(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_top_row(MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>row</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>top_row(const</STRONG> <STRONG>MENU</STRONG> <STRONG>*</STRONG><EM>menu</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>item_index(const</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -77,7 +80,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
<STRONG>current_item</STRONG> returns a pointer (which may be <STRONG>NULL</STRONG>). It does not set
- errno.
+ <STRONG>errno</STRONG>.
<STRONG>top_row</STRONG> and <STRONG>item_index</STRONG> return <STRONG>ERR</STRONG> (the general <STRONG>curses</STRONG> error value) if
their <EM>menu</EM> parameter is <STRONG>NULL</STRONG>.
@@ -109,8 +112,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
The SVr4 menu library documentation specifies the <STRONG>top_row</STRONG> and
<STRONG>index_item</STRONG> error value as -1 (which is the value of <STRONG>ERR</STRONG>).
diff --git a/doc/html/man/mitem_name.3x.html b/doc/html/man/mitem_name.3x.html
index a22e0c9..637434a 100644
--- a/doc/html/man/mitem_name.3x.html
+++ b/doc/html/man/mitem_name.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: mitem_name.3x,v 1.11 2020/02/02 23:34:34 tom Exp @
+ * @Id: mitem_name.3x,v 1.14 2020/10/18 00:37:48 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- const char *item_name(const ITEM *item);
- const char *item_description(const ITEM *item);
+
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*item_name(const</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
+ <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*item_description(const</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -65,7 +66,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
These routines return a pointer (which may be <STRONG>NULL</STRONG>). They do not set
- errno.
+ <STRONG>errno</STRONG>.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
@@ -78,8 +79,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/mitem_new.3x.html b/doc/html/man/mitem_new.3x.html
index f9db946..bb3160d 100644
--- a/doc/html/man/mitem_new.3x.html
+++ b/doc/html/man/mitem_new.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: mitem_new.3x,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: mitem_new.3x,v 1.19 2020/10/18 00:37:03 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,8 +53,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- ITEM *new_item(const char *name, const char *description);
- int free_item(ITEM *item);
+
+ <STRONG>ITEM</STRONG> <STRONG>*new_item(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>description</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_item(ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -69,7 +70,7 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- The function <STRONG>new_item</STRONG> returns <STRONG>NULL</STRONG> on error. It sets errno according
+ The function <STRONG>new_item</STRONG> returns <STRONG>NULL</STRONG> on error. It sets <STRONG>errno</STRONG> according
to the function's failure:
<STRONG>E_BAD_ARGUMENT</STRONG>
@@ -102,8 +103,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/mitem_opts.3x.html b/doc/html/man/mitem_opts.3x.html
index 3665188..72b0f00 100644
--- a/doc/html/man/mitem_opts.3x.html
+++ b/doc/html/man/mitem_opts.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: mitem_opts.3x,v 1.15 2020/02/02 23:34:34 tom Exp @
+ * @Id: mitem_opts.3x,v 1.16 2020/10/17 23:52:26 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,10 +54,12 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_item_opts(ITEM *item, Item_Options opts);
- int item_opts_on(ITEM *item, Item_Options opts);
- int item_opts_off(ITEM *item, Item_Options opts);
- Item_Options item_opts(const ITEM *item);
+
+ <STRONG>int</STRONG> <STRONG>set_item_opts(ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>,</STRONG> <STRONG>Item_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>Item_Options</STRONG> <STRONG>item_opts(const</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>item_opts_on(ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>,</STRONG> <STRONG>Item_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>item_opts_off(ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>,</STRONG> <STRONG>Item_Options</STRONG> <EM>opts</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -96,8 +98,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/mitem_userptr.3x.html b/doc/html/man/mitem_userptr.3x.html
index 00d0a4b..1e9f29f 100644
--- a/doc/html/man/mitem_userptr.3x.html
+++ b/doc/html/man/mitem_userptr.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: mitem_userptr.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: mitem_userptr.3x,v 1.17 2020/10/18 00:36:16 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,19 +54,20 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_item_userptr(ITEM *item, void *userptr);
- void *item_userptr(const ITEM *item);
+
+ <STRONG>int</STRONG> <STRONG>set_item_userptr(ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>userptr</EM><STRONG>);</STRONG>
+ <STRONG>void</STRONG> <STRONG>*item_userptr(const</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- Every menu item has a field that can be used to hold application-spe-
- cific data (that is, the menu-driver code leaves it alone). These
+ Every menu item has a field that can be used to hold application-
+ specific data (that is, the menu-driver code leaves it alone). These
functions get and set that field.
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
The function <STRONG>item_userptr</STRONG> returns a pointer (possibly <STRONG>NULL</STRONG>). It does
- not set errno.
+ not set <STRONG>errno</STRONG>.
The <STRONG>set_item_userptr</STRONG> always returns <STRONG>E_OK</STRONG> (success).
@@ -81,8 +82,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
The user pointer is a void pointer. We chose not to leave it as a char
pointer for SVr4 compatibility.
diff --git a/doc/html/man/mitem_value.3x.html b/doc/html/man/mitem_value.3x.html
index 2b55d6e..f900f12 100644
--- a/doc/html/man/mitem_value.3x.html
+++ b/doc/html/man/mitem_value.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2010,2015 Free Software Foundation, Inc. *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: mitem_value.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: mitem_value.3x,v 1.15 2020/10/17 23:53:24 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -52,8 +52,9 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- int set_item_value(ITEM *item, bool value);
- bool item_value(const ITEM *item);
+
+ <STRONG>int</STRONG> <STRONG>set_item_value(ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>value</EM><STRONG>);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>item_value(const</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -88,8 +89,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/mitem_visible.3x.html b/doc/html/man/mitem_visible.3x.html
index 98e0a75..5336712 100644
--- a/doc/html/man/mitem_visible.3x.html
+++ b/doc/html/man/mitem_visible.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
* t
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: mitem_visible.3x,v 1.9 2020/02/02 23:34:34 tom Exp @
+ * @Id: mitem_visible.3x,v 1.10 2020/10/17 23:53:55 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -53,7 +53,8 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
- bool item_visible(const ITEM *item);
+
+ <STRONG>bool</STRONG> <STRONG>item_visible(const</STRONG> <STRONG>ITEM</STRONG> <STRONG>*</STRONG><EM>item</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
@@ -72,8 +73,8 @@
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These routines emulate the System V menu library. They were not sup-
- ported on Version 7 or BSD versions.
+ These routines emulate the System V menu library. They were not
+ supported on Version 7 or BSD versions.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/ncurses.3x.html b/doc/html/man/ncurses.3x.html
index 4275f02..f473109 100644
--- a/doc/html/man/ncurses.3x.html
+++ b/doc/html/man/ncurses.3x.html
@@ -1,7 +1,7 @@
-<!--
+<!--
* t
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: ncurses.3x,v 1.144 2020/02/02 23:34:34 tom Exp @
+ * @Id: ncurses.3x,v 1.153 2021/08/22 17:17:16 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -60,33 +60,33 @@
method of updating character screens with reasonable optimization.
This implementation is "new curses" (ncurses) and is the approved
replacement for 4.4BSD classic curses, which has been discontinued.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
The <STRONG>ncurses</STRONG> library emulates the curses library of System V Release 4
UNIX, and XPG4 (X/Open Portability Guide) curses (also known as XSI
curses). XSI stands for X/Open System Interfaces Extension. The
<STRONG>ncurses</STRONG> library is freely redistributable in source form. Differences
- from the SVr4 curses are summarized under the <STRONG>EXTENSIONS</STRONG> and <STRONG>PORTABIL-</STRONG>
- <STRONG>ITY</STRONG> sections below and described in detail in the respective <STRONG>EXTEN-</STRONG>
- <STRONG>SIONS</STRONG>, <STRONG>PORTABILITY</STRONG> and <STRONG>BUGS</STRONG> sections of individual man pages.
+ from the SVr4 curses are summarized under the <STRONG>EXTENSIONS</STRONG> and
+ <STRONG>PORTABILITY</STRONG> sections below and described in detail in the respective
+ <STRONG>EXTENSIONS</STRONG>, <STRONG>PORTABILITY</STRONG> and <STRONG>BUGS</STRONG> sections of individual man pages.
- The <STRONG>ncurses</STRONG> library also provides many useful extensions, i.e., fea-
- tures which cannot be implemented by a simple add-on library but which
- require access to the internals of the library.
+ The <STRONG>ncurses</STRONG> library also provides many useful extensions, i.e.,
+ features which cannot be implemented by a simple add-on library but
+ which require access to the internals of the library.
A program using these routines must be linked with the <STRONG>-lncurses</STRONG>
option, or (if it has been generated) with the debugging library
<STRONG>-lncurses_g</STRONG>. (Your system integrator may also have installed these
libraries under the names <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.) The ncurses_g
- library generates trace logs (in a file called 'trace' in the current
+ library generates trace logs (in a file called "trace" in the current
directory) that describe curses actions. See also the section on
<STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>.
- The <STRONG>ncurses</STRONG> package supports: overall screen, window and pad manipula-
- tion; output to windows and pads; reading terminal input; control over
- terminal and <STRONG>curses</STRONG> input and output options; environment query rou-
- tines; color manipulation; use of soft label keys; terminfo capabili-
- ties; and access to low-level terminal-manipulation routines.
+ The <STRONG>ncurses</STRONG> package supports: overall screen, window and pad
+ manipulation; output to windows and pads; reading terminal input;
+ control over terminal and <STRONG>curses</STRONG> input and output options; environment
+ query routines; color manipulation; use of soft label keys; terminfo
+ capabilities; and access to low-level terminal-manipulation routines.
</PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
@@ -102,8 +102,8 @@
The function <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> must be called to initialize the
library before any of the other routines that deal with windows and
- screens are used. The routine <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG> must be called before exit-
- ing.
+ screens are used. The routine <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG> must be called before
+ exiting.
To get character-at-a-time input without echoing (most interactive,
screen oriented programs want this), the following sequence should be
@@ -113,28 +113,27 @@
Most programs would additionally use the sequence:
- <STRONG>nonl();</STRONG>
<STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
<STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
Before a <STRONG>curses</STRONG> program is run, the tab stops of the terminal should be
set and its initialization strings, if defined, must be output. This
- can be done by executing the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environ-
- ment variable <STRONG>TERM</STRONG> has been exported. <STRONG>tset(1)</STRONG> is usually responsible
- for doing this. [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
+ can be done by executing the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell
+ environment variable <STRONG>TERM</STRONG> has been exported. <STRONG>tset(1)</STRONG> is usually
+ responsible for doing this. [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
</PRE><H3><a name="h3-Datatypes">Datatypes</a></H3><PRE>
The <STRONG>ncurses</STRONG> library permits manipulation of data structures, called
- <EM>windows</EM>, which can be thought of as two-dimensional arrays of charac-
- ters representing all or part of a CRT screen. A default window called
- <STRONG>stdscr</STRONG>, which is the size of the terminal screen, is supplied. Others
- may be created with <STRONG>newwin</STRONG>.
+ <EM>windows</EM>, which can be thought of as two-dimensional arrays of
+ characters representing all or part of a CRT screen. A default window
+ called <STRONG>stdscr</STRONG>, which is the size of the terminal screen, is supplied.
+ Others may be created with <STRONG>newwin</STRONG>.
Note that <STRONG>curses</STRONG> does not handle overlapping windows, that's done by
the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that you can either use <STRONG>stdscr</STRONG> or
- divide the screen into tiled windows and not using <STRONG>stdscr</STRONG> at all. Mix-
- ing the two will result in unpredictable, and undesired, effects.
+ divide the screen into tiled windows and not using <STRONG>stdscr</STRONG> at all.
+ Mixing the two will result in unpredictable, and undesired, effects.
Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>. These data
structures are manipulated with routines described here and elsewhere
@@ -151,36 +150,37 @@
Special windows called <EM>pads</EM> may also be manipulated. These are windows
which are not constrained to the size of the screen and whose contents
- need not be completely displayed. See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more informa-
- tion.
+ need not be completely displayed. See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more
+ information.
In addition to drawing characters on the screen, video attributes and
colors may be supported, causing the characters to show up in such
modes as underlined, in reverse video, or in color on terminals that
support such display enhancements. Line drawing characters may be
specified to be output. On input, <STRONG>curses</STRONG> is also able to translate
- arrow and function keys that transmit escape sequences into single val-
- ues. The video attributes, line drawing characters, and input values
- use names, defined in <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and
- <STRONG>KEY_LEFT</STRONG>.
+ arrow and function keys that transmit escape sequences into single
+ values. The video attributes, line drawing characters, and input
+ values use names, defined in <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>,
+ and <STRONG>KEY_LEFT</STRONG>.
</PRE><H3><a name="h3-Environment-variables">Environment variables</a></H3><PRE>
- If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or if the pro-
- gram is executing in a window environment, line and column information
- in the environment will override information read by <EM>terminfo</EM>. This
- would affect a program running in an AT&amp;T 630 layer, for example, where
- the size of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
-
- If the environment variable <STRONG>TERMINFO</STRONG> is defined, any program using
- <STRONG>curses</STRONG> checks for a local terminal definition before checking in the
- standard place. For example, if <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the com-
- piled terminal definition is found in
+ If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or if the
+ program is executing in a window environment, line and column
+ information in the environment will override information read by
+ <EM>terminfo</EM>. This would affect a program running in an AT&amp;T 630 layer,
+ for example, where the size of a screen is changeable (see
+ <STRONG>ENVIRONMENT</STRONG>).
+
+ If the environment variable <STRONG>TERMINFO</STRONG> is defined, any program using
+ <STRONG>curses</STRONG> checks for a local terminal definition before checking in the
+ standard place. For example, if <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the
+ compiled terminal definition is found in
<STRONG>/usr/share/terminfo/a/att4424</STRONG>.
- (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid creation of
- huge directories.) However, if <STRONG>TERMINFO</STRONG> is set to <STRONG>$HOME/myterms</STRONG>,
+ (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid creation of
+ huge directories.) However, if <STRONG>TERMINFO</STRONG> is set to <STRONG>$HOME/myterms</STRONG>,
<STRONG>curses</STRONG> first checks
<STRONG>$HOME/myterms/a/att4424</STRONG>,
@@ -189,114 +189,104 @@
<STRONG>/usr/share/terminfo/a/att4424</STRONG>.
- This is useful for developing experimental definitions or when write
+ This is useful for developing experimental definitions or when write
permission in <STRONG>/usr/share/terminfo</STRONG> is not available.
The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in <STRONG>&lt;curses.h&gt;</STRONG> and will
- be filled in by <STRONG>initscr</STRONG> with the size of the screen. The constants
+ be filled in by <STRONG>initscr</STRONG> with the size of the screen. The constants
<STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the values <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
- The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable <STRONG>curscr</STRONG> which is
- used for certain low-level operations like clearing and redrawing a
- screen containing garbage. The <STRONG>curscr</STRONG> can be used in only a few rou-
- tines.
+ The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable <STRONG>curscr</STRONG> which is
+ used for certain low-level operations like clearing and redrawing a
+ screen containing garbage. The <STRONG>curscr</STRONG> can be used in only a few
+ routines.
</PRE><H3><a name="h3-Routine-and-Argument-Names">Routine and Argument Names</a></H3><PRE>
- Many <STRONG>curses</STRONG> routines have two or more versions. The routines prefixed
+ Many <STRONG>curses</STRONG> routines have two or more versions. The routines prefixed
with <STRONG>w</STRONG> require a window argument. The routines prefixed with <STRONG>p</STRONG> require
a pad argument. Those without a prefix generally use <STRONG>stdscr</STRONG>.
- The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate to move to
+ The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate to move to
before performing the appropriate action. The <STRONG>mv</STRONG> routines imply a call
- to <STRONG>move</STRONG> before the call to the other routine. The coordinate <EM>y</EM> always
- refers to the row (of the window), and <EM>x</EM> always refers to the column.
+ to <STRONG>move</STRONG> before the call to the other routine. The coordinate <EM>y</EM> always
+ refers to the row (of the window), and <EM>x</EM> always refers to the column.
The upper left-hand corner is always (0,0), not (1,1).
- The routines prefixed with <STRONG>mvw</STRONG> take both a window argument and <EM>x</EM> and <EM>y</EM>
- coordinates. The window argument is always specified before the coor-
- dinates.
+ The routines prefixed with <STRONG>mvw</STRONG> take both a window argument and <EM>x</EM> and <EM>y</EM>
+ coordinates. The window argument is always specified before the
+ coordinates.
- In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the pad affected;
+ In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the pad affected;
<EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WINDOW</STRONG>.
- Option setting routines require a Boolean flag <EM>bf</EM> with the value <STRONG>TRUE</STRONG>
- or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. Most of the data types used in
- the library routines, such as <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are
- defined in <STRONG>&lt;curses.h&gt;</STRONG>. Types used for the terminfo routines such as
+ Option setting routines require a Boolean flag <EM>bf</EM> with the value <STRONG>TRUE</STRONG>
+ or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. Most of the data types used in
+ the library routines, such as <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are
+ defined in <STRONG>&lt;curses.h&gt;</STRONG>. Types used for the terminfo routines such as
<STRONG>TERMINAL</STRONG> are defined in <STRONG>&lt;term.h&gt;</STRONG>.
- This manual page describes functions which may appear in any configura-
- tion of the library. There are two common configurations of the
- library:
+ This manual page describes functions which may appear in any
+ configuration of the library. There are two common configurations of
+ the library:
<EM>ncurses</EM>
- the "normal" library, which handles 8-bit characters. The nor-
- mal (8-bit) library stores characters combined with attributes
- in <STRONG>chtype</STRONG> data.
+ the "normal" library, which handles 8-bit characters. The
+ normal (8-bit) library stores characters combined with
+ attributes in <STRONG>chtype</STRONG> data.
- Attributes alone (no corresponding character) may be stored in
+ Attributes alone (no corresponding character) may be stored in
<STRONG>chtype</STRONG> or the equivalent <STRONG>attr_t</STRONG> data. In either case, the data
is stored in something like an integer.
Each cell (row and column) in a <STRONG>WINDOW</STRONG> is stored as a <STRONG>chtype</STRONG>.
<EM>ncursesw</EM>
- the so-called "wide" library, which handles multibyte charac-
- ters (see the section on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>). The "wide"
- library includes all of the calls from the "normal" library.
- It adds about one third more calls using data types which store
- multibyte characters:
+ the so-called "wide" library, which handles multibyte
+ characters (see the section on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>). The
+ "wide" library includes all of the calls from the "normal"
+ library. It adds about one third more calls using data types
+ which store multibyte characters:
<STRONG>cchar_t</STRONG>
corresponds to <STRONG>chtype</STRONG>. However it is a structure, because
- more data is stored than can fit into an integer. The
- characters are large enough to require a full integer
+ more data is stored than can fit into an integer. The
+ characters are large enough to require a full integer
value - and there may be more than one character per cell.
- The video attributes and color are stored in separate
+ The video attributes and color are stored in separate
fields of the structure.
- Each cell (row and column) in a <STRONG>WINDOW</STRONG> is stored as a
+ Each cell (row and column) in a <STRONG>WINDOW</STRONG> is stored as a
<STRONG>cchar_t</STRONG>.
- The <STRONG><A HREF="setcchar.3x.html">setcchar(3x)</A></STRONG> and <STRONG><A HREF="getcchar.3x.html">getcchar(3x)</A></STRONG> functions store and
+ The <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG> and <STRONG><A HREF="curs_getcchar.3x.html">getcchar(3x)</A></STRONG> functions store and
retrieve the data from a <STRONG>cchar_t</STRONG> structure.
<STRONG>wchar_t</STRONG>
- stores a "wide" character. Like <STRONG>chtype</STRONG>, this may be an
+ stores a "wide" character. Like <STRONG>chtype</STRONG>, this may be an
integer.
<STRONG>wint_t</STRONG>
- stores a <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same, though both may
+ stores a <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same, though both may
have the same size.
- The "wide" library provides new functions which are analogous
- to functions in the "normal" library. There is a naming con-
- vention which relates many of the normal/wide variants: a "_w"
- is inserted into the name. For example, <STRONG>waddch</STRONG> becomes
+ The "wide" library provides new functions which are analogous
+ to functions in the "normal" library. There is a naming
+ convention which relates many of the normal/wide variants: a
+ "_w" is inserted into the name. For example, <STRONG>waddch</STRONG> becomes
<STRONG>wadd_wch</STRONG>.
</PRE><H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE>
- The following table lists each <STRONG>curses</STRONG> routine and the name of the man-
- ual page on which it is described. Routines flagged with "*" are
- ncurses-specific, not described by XPG4 or present in SVr4.
+ The following table lists the <STRONG>curses</STRONG> routines provided in the "normal"
+ and "wide" libraries and the names of the manual pages on which they
+ are described. Routines flagged with "*" are ncurses-specific, not
+ described by XPG4 or present in SVr4.
<STRONG>curses</STRONG> Routine Name Manual Page Name
---------------------------------------------
COLOR_PAIR <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
PAIR_NUMBER <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
- _nc_free_and_exit <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
- _nc_freeall <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
- _nc_tracebits <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _traceattr <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _traceattr2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _tracechar <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _tracechtype <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _tracechtype2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _tracedump <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _tracef <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
- _tracemouse <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
add_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
add_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
add_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
@@ -313,7 +303,6 @@
attr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
attr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
attr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
-
attroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
attron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
attrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
@@ -324,6 +313,7 @@
bkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
bkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
border <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
+
border_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
box <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
box_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
@@ -338,6 +328,7 @@
color_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
copywin <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
curs_set <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
+ curses_trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
curses_version <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
def_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
def_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
@@ -358,6 +349,8 @@
erase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
erasechar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
erasewchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
+ exit_curses <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
+ exit_terminfo <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
extended_color_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
extended_pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
extended_slk_color <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
@@ -379,7 +372,6 @@
getcurx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
getcury <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
getmaxx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
-
getmaxy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
getmaxyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
getmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
@@ -387,6 +379,7 @@
getnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
getparx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
getpary <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
+
getparyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
getstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
getsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
@@ -397,6 +390,7 @@
has_ic <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
has_il <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
has_key <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
+ has_mouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
hline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
hline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
idcok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
@@ -445,13 +439,13 @@
key_defined <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
key_name <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
keybound <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
-
keyname <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
keyok <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
keypad <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
killchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
killwchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
leaveok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+
longname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
mcprint <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
meta <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
@@ -511,13 +505,13 @@
mvwaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
mvwaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
mvwaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
-
mvwchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
mvwdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
mvwget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
mvwget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
mvwgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
mvwgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
+
mvwgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
mvwgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
mvwhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
@@ -547,18 +541,19 @@
newpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
newterm <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
newwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
- nl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+ nl <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
nocbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
nodelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
noecho <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
nofilter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
- nonl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+ nonl <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
noqiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
noraw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
notimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
overlay <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
overwrite <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
+ pecho_wchar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>*
pechochar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
pnoutrefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
prefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
@@ -569,6 +564,7 @@
raw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
redrawwin <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
refresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
+ reset_color_pairs <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
reset_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
reset_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
resetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
@@ -577,11 +573,11 @@
restartterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
ripoffline <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
savetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
-
scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
scr_dump <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
scr_init <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
scr_restore <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
+
scr_set <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
scrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
scroll <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
@@ -591,7 +587,6 @@
setcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
setscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
setsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
- setterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
setupterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
slk_attr <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
slk_attr_off <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
@@ -609,6 +604,7 @@
slk_restore <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
slk_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
slk_touch <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
+ slk_wset <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
standend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
standout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
start_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
@@ -643,11 +639,11 @@
use_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
use_env <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
use_extended_names <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
-
use_legacy_coding <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>*
use_tioctl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
vid_attr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
vid_puts <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
+
vidattr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
vidputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
vline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
@@ -709,11 +705,11 @@
winch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
winchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
winchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
-
winnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
winnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
wins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
wins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
+
wins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
winsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
winsdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
@@ -742,34 +738,51 @@
wvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
wvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
+ Depending on the configuration, additional sets of functions may be
+ available:
+
+ <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG> - curses memory-leak checking
+
+ <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> - curses screen-pointer extension
+
+ <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> - curses thread support
+
+ <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG> - curses debugging routines
+
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- Routines that return an integer return <STRONG>ERR</STRONG> upon failure and an integer
+ Routines that return an integer return <STRONG>ERR</STRONG> upon failure and an integer
value other than <STRONG>ERR</STRONG> upon successful completion, unless otherwise noted
in the routine descriptions.
- As a general rule, routines check for null pointers passed as parame-
- ters, and handle this as an error.
+ As a general rule, routines check for null pointers passed as
+ parameters, and handle this as an error.
- All macros return the value of the <STRONG>w</STRONG> version, except <STRONG>setscrreg</STRONG>,
- <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>. The return values of
- <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG> are undefined
- (i.e., these should not be used as the right-hand side of assignment
+ All macros return the value of the <STRONG>w</STRONG> version, except <STRONG>setscrreg</STRONG>,
+ <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>. The return values of
+ <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG> are undefined
+ (i.e., these should not be used as the right-hand side of assignment
statements).
+ Functions with a "mv" prefix first perform a cursor movement using
+ <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
+ the window pointer is null. Most "mv"-prefixed functions (except
+ variadic functions such as <STRONG>mvprintw</STRONG>) are provided both as macros and
+ functions.
+
Routines that return pointers return <STRONG>NULL</STRONG> on error.
</PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
- The following environment symbols are useful for customizing the run-
- time behavior of the <STRONG>ncurses</STRONG> library. The most important ones have
+ The following environment symbols are useful for customizing the
+ runtime behavior of the <STRONG>ncurses</STRONG> library. The most important ones have
been already discussed in detail.
</PRE><H3><a name="h3-CC-command-character">CC command-character</a></H3><PRE>
- When set, change occurrences of the command_character (i.e., the <STRONG>cmdch</STRONG>
- capability) of the loaded terminfo entries to the value of this vari-
- able. Very few terminfo entries provide this feature.
+ When set, change occurrences of the command_character (i.e., the <STRONG>cmdch</STRONG>
+ capability) of the loaded terminfo entries to the value of this
+ variable. Very few terminfo entries provide this feature.
Because this name is also used in development environments to represent
the C compiler's name, <STRONG>ncurses</STRONG> ignores it if it does not happen to be a
@@ -777,34 +790,34 @@
</PRE><H3><a name="h3-BAUDRATE">BAUDRATE</a></H3><PRE>
- The debugging library checks this environment variable when the appli-
- cation has redirected output to a file. The variable's numeric value
- is used for the baudrate. If no value is found, <STRONG>ncurses</STRONG> uses 9600.
- This allows testers to construct repeatable test-cases that take into
- account costs that depend on baudrate.
+ The debugging library checks this environment variable when the
+ application has redirected output to a file. The variable's numeric
+ value is used for the baudrate. If no value is found, <STRONG>ncurses</STRONG> uses
+ 9600. This allows testers to construct repeatable test-cases that take
+ into account costs that depend on baudrate.
</PRE><H3><a name="h3-COLUMNS">COLUMNS</a></H3><PRE>
Specify the width of the screen in characters. Applications running in
- a windowing environment usually are able to obtain the width of the
- window in which they are executing. If neither the <STRONG>COLUMNS</STRONG> value nor
- the terminal's screen size is available, <STRONG>ncurses</STRONG> uses the size which
+ a windowing environment usually are able to obtain the width of the
+ window in which they are executing. If neither the <STRONG>COLUMNS</STRONG> value nor
+ the terminal's screen size is available, <STRONG>ncurses</STRONG> uses the size which
may be specified in the terminfo database (i.e., the <STRONG>cols</STRONG> capability).
- It is important that your application use a correct size for the
- screen. This is not always possible because your application may be
- running on a host which does not honor NAWS (Negotiations About Window
- Size), or because you are temporarily running as another user. How-
- ever, setting <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG> overrides the library's use of the
- screen size obtained from the operating system.
+ It is important that your application use a correct size for the
+ screen. This is not always possible because your application may be
+ running on a host which does not honor NAWS (Negotiations About Window
+ Size), or because you are temporarily running as another user.
+ However, setting <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG> overrides the library's use of
+ the screen size obtained from the operating system.
- Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified independently. This
- is mainly useful to circumvent legacy misfeatures of terminal descrip-
- tions, e.g., xterm which commonly specifies a 65 line screen. For best
- results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified in a terminal descrip-
- tion for terminals which are run as emulations.
+ Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified independently. This
+ is mainly useful to circumvent legacy misfeatures of terminal
+ descriptions, e.g., xterm which commonly specifies a 65 line screen.
+ For best results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified in a terminal
+ description for terminals which are run as emulations.
- Use the <STRONG>use_env</STRONG> function to disable all use of external environment
+ Use the <STRONG>use_env</STRONG> function to disable all use of external environment
(but not including system calls) to determine the screen size. Use the
<STRONG>use_tioctl</STRONG> function to update <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> to match the screen size
obtained from system calls or the terminal database.
@@ -812,31 +825,31 @@
</PRE><H3><a name="h3-ESCDELAY">ESCDELAY</a></H3><PRE>
Specifies the total time, in milliseconds, for which ncurses will await
- a character sequence, e.g., a function key. The default value, 1000
- milliseconds, is enough for most uses. However, it is made a variable
+ a character sequence, e.g., a function key. The default value, 1000
+ milliseconds, is enough for most uses. However, it is made a variable
to accommodate unusual applications.
- The most common instance where you may wish to change this value is to
- work with slow hosts, e.g., running on a network. If the host cannot
- read characters rapidly enough, it will have the same effect as if the
- terminal did not send characters rapidly enough. The library will
+ The most common instance where you may wish to change this value is to
+ work with slow hosts, e.g., running on a network. If the host cannot
+ read characters rapidly enough, it will have the same effect as if the
+ terminal did not send characters rapidly enough. The library will
still see a timeout.
- Note that xterm mouse events are built up from character sequences
- received from the xterm. If your application makes heavy use of multi-
- ple-clicking, you may wish to lengthen this default value because the
- timeout applies to the composed multi-click event as well as the indi-
- vidual clicks.
+ Note that xterm mouse events are built up from character sequences
+ received from the xterm. If your application makes heavy use of
+ multiple-clicking, you may wish to lengthen this default value because
+ the timeout applies to the composed multi-click event as well as the
+ individual clicks.
In addition to the environment variable, this implementation provides a
- global variable with the same name. Portable applications should not
- rely upon the presence of ESCDELAY in either form, but setting the
- environment variable rather than the global variable does not create
+ global variable with the same name. Portable applications should not
+ rely upon the presence of ESCDELAY in either form, but setting the
+ environment variable rather than the global variable does not create
problems when compiling an application.
</PRE><H3><a name="h3-HOME">HOME</a></H3><PRE>
- Tells <STRONG>ncurses</STRONG> where your home directory is. That is where it may read
+ Tells <STRONG>ncurses</STRONG> where your home directory is. That is where it may read
and write auxiliary terminal descriptions:
$HOME/.termcap
@@ -844,51 +857,51 @@
</PRE><H3><a name="h3-LINES">LINES</a></H3><PRE>
- Like COLUMNS, specify the height of the screen in characters. See COL-
- UMNS for a detailed description.
+ Like COLUMNS, specify the height of the screen in characters. See
+ COLUMNS for a detailed description.
</PRE><H3><a name="h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></H3><PRE>
- This applies only to the OS/2 EMX port. It specifies the order of but-
- tons on the mouse. OS/2 numbers a 3-button mouse inconsistently from
- other platforms:
+ This applies only to the OS/2 EMX port. It specifies the order of
+ buttons on the mouse. OS/2 numbers a 3-button mouse inconsistently
+ from other platforms:
1 = left
2 = right
3 = middle.
This variable lets you customize the mouse. The variable must be three
- numeric digits 1-3 in any order, e.g., 123 or 321. If it is not speci-
- fied, <STRONG>ncurses</STRONG> uses 132.
+ numeric digits 1-3 in any order, e.g., 123 or 321. If it is not
+ specified, <STRONG>ncurses</STRONG> uses 132.
</PRE><H3><a name="h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></H3><PRE>
- Override the compiled-in assumption that the terminal's default colors
- are white-on-black (see <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>). You may set the fore-
- ground and background color values with this environment variable by
- proving a 2-element list: foreground,background. For example, to tell
- ncurses to not assume anything about the colors, set this to "-1,-1".
- To make it green-on-black, set it to "2,0". Any positive value from
- zero to the terminfo <STRONG>max_colors</STRONG> value is allowed.
+ Override the compiled-in assumption that the terminal's default colors
+ are white-on-black (see <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>). You may set the
+ foreground and background color values with this environment variable
+ by proving a 2-element list: foreground,background. For example, to
+ tell ncurses to not assume anything about the colors, set this to
+ "-1,-1". To make it green-on-black, set it to "2,0". Any positive
+ value from zero to the terminfo <STRONG>max_colors</STRONG> value is allowed.
</PRE><H3><a name="h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></H3><PRE>
This applies only to the MinGW port of ncurses.
- The <STRONG>Console2</STRONG> program's handling of the Microsoft Console API call <STRONG>Cre-</STRONG>
- <STRONG>ateConsoleScreenBuffer</STRONG> is defective. Applications which use this will
- hang. However, it is possible to simulate the action of this call by
- mapping coordinates, explicitly saving and restoring the original
- screen contents. Setting the environment variable <STRONG>NCGDB</STRONG> has the same
+ The <STRONG>Console2</STRONG> program's handling of the Microsoft Console API call
+ <STRONG>CreateConsoleScreenBuffer</STRONG> is defective. Applications which use this
+ will hang. However, it is possible to simulate the action of this call
+ by mapping coordinates, explicitly saving and restoring the original
+ screen contents. Setting the environment variable <STRONG>NCGDB</STRONG> has the same
effect.
</PRE><H3><a name="h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></H3><PRE>
This applies only to ncurses configured to use the GPM interface.
- If present, the environment variable is a list of one or more terminal
- names against which the <STRONG>TERM</STRONG> environment variable is matched. Setting
- it to an empty value disables the GPM interface; using the built-in
+ If present, the environment variable is a list of one or more terminal
+ names against which the <STRONG>TERM</STRONG> environment variable is matched. Setting
+ it to an empty value disables the GPM interface; using the built-in
support for xterm, etc.
If the environment variable is absent, ncurses will attempt to open GPM
@@ -896,40 +909,40 @@
</PRE><H3><a name="h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></H3><PRE>
- <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement optimization. In
- some cases, your terminal driver may not handle these properly. Set
- this environment variable to disable the feature. You can also adjust
+ <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement optimization. In
+ some cases, your terminal driver may not handle these properly. Set
+ this environment variable to disable the feature. You can also adjust
your <STRONG>stty</STRONG> settings to avoid the problem.
</PRE><H3><a name="h3-NCURSES_NO_MAGIC_COOKIE">NCURSES_NO_MAGIC_COOKIE</a></H3><PRE>
- Some terminals use a magic-cookie feature which requires special han-
- dling to make highlighting and other video attributes display properly.
- You can suppress the highlighting entirely for these terminals by set-
- ting this environment variable.
+ Some terminals use a magic-cookie feature which requires special
+ handling to make highlighting and other video attributes display
+ properly. You can suppress the highlighting entirely for these
+ terminals by setting this environment variable.
</PRE><H3><a name="h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></H3><PRE>
- Most of the terminal descriptions in the terminfo database are written
- for real "hardware" terminals. Many people use terminal emulators
+ Most of the terminal descriptions in the terminfo database are written
+ for real "hardware" terminals. Many people use terminal emulators
which run in a windowing environment and use curses-based applications.
- Terminal emulators can duplicate all of the important aspects of a
- hardware terminal, but they do not have the same limitations. The
- chief limitation of a hardware terminal from the standpoint of your
- application is the management of dataflow, i.e., timing. Unless a
- hardware terminal is interfaced into a terminal concentrator (which
- does flow control), it (or your application) must manage dataflow, pre-
- venting overruns. The cheapest solution (no hardware cost) is for your
- program to do this by pausing after operations that the terminal does
- slowly, such as clearing the display.
-
- As a result, many terminal descriptions (including the vt100) have
- delay times embedded. You may wish to use these descriptions, but not
+ Terminal emulators can duplicate all of the important aspects of a
+ hardware terminal, but they do not have the same limitations. The
+ chief limitation of a hardware terminal from the standpoint of your
+ application is the management of dataflow, i.e., timing. Unless a
+ hardware terminal is interfaced into a terminal concentrator (which
+ does flow control), it (or your application) must manage dataflow,
+ preventing overruns. The cheapest solution (no hardware cost) is for
+ your program to do this by pausing after operations that the terminal
+ does slowly, such as clearing the display.
+
+ As a result, many terminal descriptions (including the vt100) have
+ delay times embedded. You may wish to use these descriptions, but not
want to pay the performance penalty.
- Set the NCURSES_NO_PADDING environment variable to disable all but
- mandatory padding. Mandatory padding is used as a part of special con-
- trol sequences such as <EM>flash</EM>.
+ Set the NCURSES_NO_PADDING environment variable to disable all but
+ mandatory padding. Mandatory padding is used as a part of special
+ control sequences such as <EM>flash</EM>.
</PRE><H3><a name="h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></H3><PRE>
@@ -939,44 +952,44 @@
<STRONG>o</STRONG> continued though 5.9 patch 20130126
- <STRONG>ncurses</STRONG> enabled buffered output during terminal initialization. This
- was done (as in SVr4 curses) for performance reasons. For testing pur-
- poses, both of <STRONG>ncurses</STRONG> and certain applications, this feature was made
- optional. Setting the NCURSES_NO_SETBUF variable disabled output
- buffering, leaving the output in the original (usually line buffered)
+ <STRONG>ncurses</STRONG> enabled buffered output during terminal initialization. This
+ was done (as in SVr4 curses) for performance reasons. For testing
+ purposes, both of <STRONG>ncurses</STRONG> and certain applications, this feature was
+ made optional. Setting the NCURSES_NO_SETBUF variable disabled output
+ buffering, leaving the output in the original (usually line buffered)
mode.
- In the current implementation, ncurses performs its own buffering and
- does not require this workaround. It does not modify the buffering of
+ In the current implementation, ncurses performs its own buffering and
+ does not require this workaround. It does not modify the buffering of
the standard output.
- The reason for the change was to make the behavior for interrupts and
- other signals more robust. One drawback is that certain nonconven-
- tional programs would mix ordinary stdio calls with ncurses calls and
- (usually) work. This is no longer possible since ncurses is not using
- the buffered standard output but its own output (to the same file
- descriptor). As a special case, the low-level calls such as <STRONG>putp</STRONG> still
- use the standard output. But high-level curses calls do not.
+ The reason for the change was to make the behavior for interrupts and
+ other signals more robust. One drawback is that certain
+ nonconventional programs would mix ordinary stdio calls with ncurses
+ calls and (usually) work. This is no longer possible since ncurses is
+ not using the buffered standard output but its own output (to the same
+ file descriptor). As a special case, the low-level calls such as <STRONG>putp</STRONG>
+ still use the standard output. But high-level curses calls do not.
</PRE><H3><a name="h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></H3><PRE>
- During initialization, the <STRONG>ncurses</STRONG> library checks for special cases
+ During initialization, the <STRONG>ncurses</STRONG> library checks for special cases
where VT100 line-drawing (and the corresponding alternate character set
- capabilities) described in the terminfo are known to be missing.
- Specifically, when running in a UTF-8 locale, the Linux console emula-
- tor and the GNU screen program ignore these. Ncurses checks the <STRONG>TERM</STRONG>
- environment variable for these. For other special cases, you should
- set this environment variable. Doing this tells ncurses to use Unicode
- values which correspond to the VT100 line-drawing glyphs. That works
- for the special cases cited, and is likely to work for terminal emula-
- tors.
-
- When setting this variable, you should set it to a nonzero value. Set-
- ting it to zero (or to a nonnumber) disables the special check for
+ capabilities) described in the terminfo are known to be missing.
+ Specifically, when running in a UTF-8 locale, the Linux console
+ emulator and the GNU screen program ignore these. Ncurses checks the
+ <STRONG>TERM</STRONG> environment variable for these. For other special cases, you
+ should set this environment variable. Doing this tells ncurses to use
+ Unicode values which correspond to the VT100 line-drawing glyphs. That
+ works for the special cases cited, and is likely to work for terminal
+ emulators.
+
+ When setting this variable, you should set it to a nonzero value.
+ Setting it to zero (or to a nonnumber) disables the special check for
"linux" and "screen".
- As an alternative to the environment variable, ncurses checks for an
- extended terminfo capability <STRONG>U8</STRONG>. This is a numeric capability which
+ As an alternative to the environment variable, ncurses checks for an
+ extended terminfo capability <STRONG>U8</STRONG>. This is a numeric capability which
can be compiled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>. For example
# linux console, if patched to provide working
@@ -988,67 +1001,67 @@
xterm-utf8|xterm relying on UTF-8 line-graphics,
U8#1, use=xterm,
- The name "U8" is chosen to be two characters, to permit it to be used
+ The name "U8" is chosen to be two characters, to permit it to be used
by applications that use ncurses' termcap interface.
</PRE><H3><a name="h3-NCURSES_TRACE">NCURSES_TRACE</a></H3><PRE>
- During initialization, the <STRONG>ncurses</STRONG> debugging library checks the
- NCURSES_TRACE environment variable. If it is defined, to a numeric
- value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function, using that value as the argu-
- ment.
+ During initialization, the <STRONG>ncurses</STRONG> debugging library checks the
+ NCURSES_TRACE environment variable. If it is defined, to a numeric
+ value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function, using that value as the
+ argument.
- The argument values, which are defined in <STRONG>curses.h</STRONG>, provide several
- types of information. When running with traces enabled, your applica-
- tion will write the file <STRONG>trace</STRONG> to the current directory.
+ The argument values, which are defined in <STRONG>curses.h</STRONG>, provide several
+ types of information. When running with traces enabled, your
+ application will write the file <STRONG>trace</STRONG> to the current directory.
See <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG> for more information.
</PRE><H3><a name="h3-TERM">TERM</a></H3><PRE>
- Denotes your terminal type. Each terminal type is distinct, though
+ Denotes your terminal type. Each terminal type is distinct, though
many are similar.
- <STRONG>TERM</STRONG> is commonly set by terminal emulators to help applications find a
- workable terminal description. Some of those choose a popular approxi-
- mation, e.g., "ansi", "vt100", "xterm" rather than an exact fit. Not
- infrequently, your application will have problems with that approach,
- e.g., incorrect function-key definitions.
-
- If you set <STRONG>TERM</STRONG> in your environment, it has no effect on the operation
- of the terminal emulator. It only affects the way applications work
- within the terminal. Likewise, as a general rule (<STRONG>xterm</STRONG> being a rare
- exception), terminal emulators which allow you to specify <STRONG>TERM</STRONG> as a
- parameter or configuration value do not change their behavior to match
+ <STRONG>TERM</STRONG> is commonly set by terminal emulators to help applications find a
+ workable terminal description. Some of those choose a popular
+ approximation, e.g., "ansi", "vt100", "xterm" rather than an exact fit.
+ Not infrequently, your application will have problems with that
+ approach, e.g., incorrect function-key definitions.
+
+ If you set <STRONG>TERM</STRONG> in your environment, it has no effect on the operation
+ of the terminal emulator. It only affects the way applications work
+ within the terminal. Likewise, as a general rule (<STRONG>xterm</STRONG> being a rare
+ exception), terminal emulators which allow you to specify <STRONG>TERM</STRONG> as a
+ parameter or configuration value do not change their behavior to match
that setting.
</PRE><H3><a name="h3-TERMCAP">TERMCAP</a></H3><PRE>
- If the <STRONG>ncurses</STRONG> library has been configured with <EM>termcap</EM> support,
- <STRONG>ncurses</STRONG> will check for a terminal's description in termcap form if it
+ If the <STRONG>ncurses</STRONG> library has been configured with <EM>termcap</EM> support,
+ <STRONG>ncurses</STRONG> will check for a terminal's description in termcap form if it
is not available in the terminfo database.
The <STRONG>TERMCAP</STRONG> environment variable contains either a terminal description
- (with newlines stripped out), or a file name telling where the informa-
- tion denoted by the <STRONG>TERM</STRONG> environment variable exists. In either case,
- setting it directs <STRONG>ncurses</STRONG> to ignore the usual place for this informa-
- tion, e.g., /etc/termcap.
+ (with newlines stripped out), or a file name telling where the
+ information denoted by the <STRONG>TERM</STRONG> environment variable exists. In either
+ case, setting it directs <STRONG>ncurses</STRONG> to ignore the usual place for this
+ information, e.g., /etc/termcap.
</PRE><H3><a name="h3-TERMINFO">TERMINFO</a></H3><PRE>
- <STRONG>ncurses</STRONG> can be configured to read from multiple terminal databases.
- The <STRONG>TERMINFO</STRONG> variable overrides the location for the default terminal
- database. Terminal descriptions (in terminal format) are stored in
+ <STRONG>ncurses</STRONG> can be configured to read from multiple terminal databases.
+ The <STRONG>TERMINFO</STRONG> variable overrides the location for the default terminal
+ database. Terminal descriptions (in terminal format) are stored in
terminal databases:
<STRONG>o</STRONG> Normally these are stored in a directory tree, using subdirectories
named by the first letter of the terminal names therein.
This is the scheme used in System V, which legacy Unix systems use,
- and the <STRONG>TERMINFO</STRONG> variable is used by <EM>curses</EM> applications on those
+ and the <STRONG>TERMINFO</STRONG> variable is used by <EM>curses</EM> applications on those
systems to override the default location of the terminal database.
- <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built to use hashed databases, then each entry in
+ <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built to use hashed databases, then each entry in
this list may be the path of a hashed database file, e.g.,
/usr/share/terminfo.db
@@ -1057,30 +1070,30 @@
/usr/share/terminfo/
- The hashed database uses less disk-space and is a little faster
- than the directory tree. However, some applications assume the
- existence of the directory tree, reading it directly rather than
+ The hashed database uses less disk-space and is a little faster
+ than the directory tree. However, some applications assume the
+ existence of the directory tree, reading it directly rather than
using the terminfo library calls.
- <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built with a support for reading termcap files
- directly, then an entry in this list may be the path of a termcap
+ <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built with a support for reading termcap files
+ directly, then an entry in this list may be the path of a termcap
file.
<STRONG>o</STRONG> If the <STRONG>TERMINFO</STRONG> variable begins with "hex:" or "b64:", <STRONG>ncurses</STRONG> uses
- the remainder of that variable as a compiled terminal description.
+ the remainder of that variable as a compiled terminal description.
You might produce the base64 format using <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>:
TERMINFO="$(infocmp -0 -Q2 -q)"
export TERMINFO
- The compiled description is used if it corresponds to the terminal
+ The compiled description is used if it corresponds to the terminal
identified by the <STRONG>TERM</STRONG> variable.
- Setting <STRONG>TERMINFO</STRONG> is the simplest, but not the only way to set location
- of the default terminal database. The complete list of database loca-
- tions in order follows:
+ Setting <STRONG>TERMINFO</STRONG> is the simplest, but not the only way to set location
+ of the default terminal database. The complete list of database
+ locations in order follows:
- <STRONG>o</STRONG> the last terminal database to which <STRONG>ncurses</STRONG> wrote, if any, is
+ <STRONG>o</STRONG> the last terminal database to which <STRONG>ncurses</STRONG> wrote, if any, is
searched first
<STRONG>o</STRONG> the location specified by the TERMINFO environment variable
@@ -1089,31 +1102,31 @@
<STRONG>o</STRONG> locations listed in the TERMINFO_DIRS environment variable
- <STRONG>o</STRONG> one or more locations whose names are configured and compiled
+ <STRONG>o</STRONG> one or more locations whose names are configured and compiled
into the ncurses library, i.e.,
- <STRONG>o</STRONG> /usr/local/ncurses/share/terminfo:/usr/share/terminfo (corre-
- sponding to the TERMINFO_DIRS variable)
+ <STRONG>o</STRONG> no default value (corresponding to the TERMINFO_DIRS
+ variable)
<STRONG>o</STRONG> /usr/share/terminfo (corresponding to the TERMINFO variable)
</PRE><H3><a name="h3-TERMINFO_DIRS">TERMINFO_DIRS</a></H3><PRE>
- Specifies a list of locations to search for terminal descriptions.
- Each location in the list is a terminal database as described in the
- section on the <STRONG>TERMINFO</STRONG> variable. The list is separated by colons
+ Specifies a list of locations to search for terminal descriptions.
+ Each location in the list is a terminal database as described in the
+ section on the <STRONG>TERMINFO</STRONG> variable. The list is separated by colons
(i.e., ":") on Unix, semicolons on OS/2 EMX.
- There is no corresponding feature in System V terminfo; it is an exten-
- sion developed for <STRONG>ncurses</STRONG>.
+ There is no corresponding feature in System V terminfo; it is an
+ extension developed for <STRONG>ncurses</STRONG>.
</PRE><H3><a name="h3-TERMPATH">TERMPATH</a></H3><PRE>
- If <STRONG>TERMCAP</STRONG> does not hold a file name then <STRONG>ncurses</STRONG> checks the <STRONG>TERMPATH</STRONG>
- environment variable. This is a list of filenames separated by spaces
+ If <STRONG>TERMCAP</STRONG> does not hold a file name then <STRONG>ncurses</STRONG> checks the <STRONG>TERMPATH</STRONG>
+ environment variable. This is a list of filenames separated by spaces
or colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
- If the <STRONG>TERMPATH</STRONG> environment variable is not set, <STRONG>ncurses</STRONG> looks in the
+ If the <STRONG>TERMPATH</STRONG> environment variable is not set, <STRONG>ncurses</STRONG> looks in the
files
/etc/termcap, /usr/share/misc/termcap and $HOME/.termcap,
@@ -1121,38 +1134,38 @@
in that order.
The library may be configured to disregard the following variables when
- the current user is the superuser (root), or if the application uses
+ the current user is the superuser (root), or if the application uses
setuid or setgid permissions:
$TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
</PRE><H2><a name="h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></H2><PRE>
- Several different configurations are possible, depending on the config-
- ure script options used when building <STRONG>ncurses</STRONG>. There are a few main
- options whose effects are visible to the applications developer using
- <STRONG>ncurses</STRONG>:
+ Several different configurations are possible, depending on the
+ configure script options used when building <STRONG>ncurses</STRONG>. There are a few
+ main options whose effects are visible to the applications developer
+ using <STRONG>ncurses</STRONG>:
--disable-overwrite
The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYNOPSIS</STRONG>:
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- This option is used to avoid filename conflicts when <STRONG>ncurses</STRONG> is
+ This option is used to avoid filename conflicts when <STRONG>ncurses</STRONG> is
not the main implementation of curses of the computer. If <STRONG>ncurses</STRONG>
- is installed disabling overwrite, it puts its headers in a subdi-
- rectory, e.g.,
+ is installed disabling overwrite, it puts its headers in a
+ subdirectory, e.g.,
<STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG>
- It also omits a symbolic link which would allow you to use
+ It also omits a symbolic link which would allow you to use
<STRONG>-lcurses</STRONG> to build executables.
--enable-widec
- The configure script renames the library and (if the <STRONG>--dis-</STRONG>
- <STRONG>able-overwrite</STRONG> option is used) puts the header files in a differ-
- ent subdirectory. All of the library names have a "w" appended to
- them, i.e., instead of
+ The configure script renames the library and (if the
+ <STRONG>--disable-overwrite</STRONG> option is used) puts the header files in a
+ different subdirectory. All of the library names have a "w"
+ appended to them, i.e., instead of
<STRONG>-lncurses</STRONG>
@@ -1160,45 +1173,45 @@
<STRONG>-lncursesw</STRONG>
- You must also enable the wide-character features in the header
- file when compiling for the wide-character library to use the
- extended (wide-character) functions. The symbol which enables
+ You must also enable the wide-character features in the header
+ file when compiling for the wide-character library to use the
+ extended (wide-character) functions. The symbol which enables
these features has changed since XSI Curses, Issue 4:
- <STRONG>o</STRONG> Originally, the wide-character feature required the symbol
+ <STRONG>o</STRONG> Originally, the wide-character feature required the symbol
<STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> but that was only valid for XPG4
(1996).
- <STRONG>o</STRONG> Later, that was deemed conflicting with <STRONG>_XOPEN_SOURCE</STRONG> defined
+ <STRONG>o</STRONG> Later, that was deemed conflicting with <STRONG>_XOPEN_SOURCE</STRONG> defined
to 500.
- <STRONG>o</STRONG> As of mid-2018, none of the features in this implementation
- require a <STRONG>_XOPEN_SOURCE</STRONG> feature greater than 600. However,
+ <STRONG>o</STRONG> As of mid-2018, none of the features in this implementation
+ require a <STRONG>_XOPEN_SOURCE</STRONG> feature greater than 600. However,
X/Open Curses, Issue 7 (2009) recommends defining it to 700.
- <STRONG>o</STRONG> Alternatively, you can enable the feature by defining
- <STRONG>NCURSES_WIDECHAR</STRONG> with the caveat that some other header file
- than <STRONG>curses.h</STRONG> may require a specific value for <STRONG>_XOPEN_SOURCE</STRONG>
+ <STRONG>o</STRONG> Alternatively, you can enable the feature by defining
+ <STRONG>NCURSES_WIDECHAR</STRONG> with the caveat that some other header file
+ than <STRONG>curses.h</STRONG> may require a specific value for <STRONG>_XOPEN_SOURCE</STRONG>
(or a system-specific symbol).
- The <STRONG>curses.h</STRONG> file which is installed for the wide-character
- library is designed to be compatible with the normal library's
- header. Only the size of the <STRONG>WINDOW</STRONG> structure differs, and very
+ The <STRONG>curses.h</STRONG> file which is installed for the wide-character
+ library is designed to be compatible with the normal library's
+ header. Only the size of the <STRONG>WINDOW</STRONG> structure differs, and very
few applications require more than a pointer to <STRONG>WINDOW</STRONG>s.
- If the headers are installed allowing overwrite, the wide-charac-
- ter library's headers should be installed last, to allow applica-
- tions to be built using either library from the same set of head-
- ers.
+ If the headers are installed allowing overwrite, the wide-
+ character library's headers should be installed last, to allow
+ applications to be built using either library from the same set of
+ headers.
--with-pthread
- The configure script renames the library. All of the library
- names have a "t" appended to them (before any "w" added by
+ The configure script renames the library. All of the library
+ names have a "t" appended to them (before any "w" added by
<STRONG>--enable-widec</STRONG>).
The global variables such as <STRONG>LINES</STRONG> are replaced by macros to allow
read-only access. At the same time, setter-functions are provided
- to set these values. Some applications (very few) may require
+ to set these values. Some applications (very few) may require
changes to work with this convention.
--with-shared
@@ -1208,84 +1221,118 @@
--with-debug
--with-profile
- The shared and normal (static) library names differ by their suf-
- fixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libncurses.a</STRONG>. The debug and pro-
- filing libraries add a "_g" and a "_p" to the root names respec-
- tively, e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
+ The shared and normal (static) library names differ by their
+ suffixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libncurses.a</STRONG>. The debug and
+ profiling libraries add a "_g" and a "_p" to the root names
+ respectively, e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
+
+ --with-termlib
+ Low-level functions which do not depend upon whether the library
+ supports wide-characters, are provided in the tinfo library.
+
+ By doing this, it is possible to share the tinfo library between
+ wide/normal configurations as well as reduce the size of the
+ library when only low-level functions are needed.
+
+ Those functions are described in these pages:
+
+ <STRONG>o</STRONG> <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG> - miscellaneous curses extensions
+
+ <STRONG>o</STRONG> <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> - <STRONG>curses</STRONG> input options
+
+ <STRONG>o</STRONG> <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> - low-level <STRONG>curses</STRONG> routines
+
+ <STRONG>o</STRONG> <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> - <STRONG>curses</STRONG> environment query routines
+
+ <STRONG>o</STRONG> <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> - <STRONG>curses</STRONG> emulation of termcap
+
+ <STRONG>o</STRONG> <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - <STRONG>curses</STRONG> interfaces to terminfo database
+
+ <STRONG>o</STRONG> <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> - miscellaneous <STRONG>curses</STRONG> utility routines
--with-trace
The <STRONG>trace</STRONG> function normally resides in the debug library, but it
- is sometimes useful to configure this in the shared library. Con-
- figure scripts should check for the function's existence rather
+ is sometimes useful to configure this in the shared library.
+ Configure scripts should check for the function's existence rather
than assuming it is always in the debug library.
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
/usr/share/tabset
- directory containing initialization files for the terminal capa-
- bility database /usr/share/terminfo terminal capability database
+ directory containing initialization files for the terminal
+ capability database /usr/share/terminfo terminal capability
+ database
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" for detailed
+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" for detailed
routine descriptions.
<STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
<STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> for user-defined capabilities
</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
- The <STRONG>ncurses</STRONG> library can be compiled with an option (<STRONG>-DUSE_GETCAP</STRONG>) that
- falls back to the old-style /etc/termcap file if the terminal setup
- code cannot find a terminfo entry corresponding to <STRONG>TERM</STRONG>. Use of this
- feature is not recommended, as it essentially includes an entire term-
- cap compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost in core
- and startup cycles.
-
- The <STRONG>ncurses</STRONG> library includes facilities for capturing mouse events on
- certain terminals (including xterm). See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual
+ The <STRONG>ncurses</STRONG> library can be compiled with an option (<STRONG>-DUSE_GETCAP</STRONG>) that
+ falls back to the old-style /etc/termcap file if the terminal setup
+ code cannot find a terminfo entry corresponding to <STRONG>TERM</STRONG>. Use of this
+ feature is not recommended, as it essentially includes an entire
+ termcap compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost in
+ core and startup cycles.
+
+ The <STRONG>ncurses</STRONG> library includes facilities for capturing mouse events on
+ certain terminals (including xterm). See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual
page for details.
- The <STRONG>ncurses</STRONG> library includes facilities for responding to window resiz-
- ing events, e.g., when running in an xterm. See the <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and
- <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for details. In addition, the library may be
- configured with a <STRONG>SIGWINCH</STRONG> handler.
+ The <STRONG>ncurses</STRONG> library includes facilities for responding to window
+ resizing events, e.g., when running in an xterm. See the
+ <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for details. In addition,
+ the library may be configured with a <STRONG>SIGWINCH</STRONG> handler.
- The <STRONG>ncurses</STRONG> library extends the fixed set of function key capabilities
- of terminals by allowing the application designer to define additional
- key sequences at runtime. See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and
+ The <STRONG>ncurses</STRONG> library extends the fixed set of function key capabilities
+ of terminals by allowing the application designer to define additional
+ key sequences at runtime. See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and
<STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> manual pages for details.
- The <STRONG>ncurses</STRONG> library can exploit the capabilities of terminals which
- implement the ISO-6429 SGR 39 and SGR 49 controls, which allow an
- application to reset the terminal to its original foreground and back-
- ground colors. From the users' perspective, the application is able to
- draw colored text on a background whose color is set independently,
- providing better control over color contrasts. See the <STRONG>default_col-</STRONG>
- <STRONG><A HREF="default_colors.3x.html">ors(3x)</A></STRONG> manual page for details.
+ The <STRONG>ncurses</STRONG> library can exploit the capabilities of terminals which
+ implement the ISO-6429 SGR 39 and SGR 49 controls, which allow an
+ application to reset the terminal to its original foreground and
+ background colors. From the users' perspective, the application is
+ able to draw colored text on a background whose color is set
+ independently, providing better control over color contrasts. See the
+ <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
- The <STRONG>ncurses</STRONG> library includes a function for directing application out-
- put to a printer attached to the terminal device. See the
+ The <STRONG>ncurses</STRONG> library includes a function for directing application
+ output to a printer attached to the terminal device. See the
<STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- The <STRONG>ncurses</STRONG> library is intended to be BASE-level conformant with XSI
- Curses. The EXTENDED XSI Curses functionality (including color sup-
- port) is supported.
+ The <STRONG>ncurses</STRONG> library is intended to be BASE-level conformant with XSI
+ Curses. The EXTENDED XSI Curses functionality (including color
+ support) is supported.
- A small number of local differences (that is, individual differences
- between the XSI Curses and <STRONG>ncurses</STRONG> calls) are described in <STRONG>PORTABILITY</STRONG>
+ A small number of local differences (that is, individual differences
+ between the XSI Curses and <STRONG>ncurses</STRONG> calls) are described in <STRONG>PORTABILITY</STRONG>
sections of the library man pages.
- Unlike other implementations, this one checks parameters such as point-
- ers to WINDOW structures to ensure they are not null. The main reason
- for providing this behavior is to guard against programmer error. The
- standard interface does not provide a way for the library to tell an
- application which of several possible errors were detected. Relying on
- this (or some other) extension will adversely affect the portability of
- curses applications.
- This implementation also contains several extensions:
+</PRE><H3><a name="h3-Error-checking">Error checking</a></H3><PRE>
+ In many cases, X/Open Curses is vague about error conditions, omitting
+ some of the SVr4 documentation.
+
+ Unlike other implementations, this one checks parameters such as
+ pointers to WINDOW structures to ensure they are not null. The main
+ reason for providing this behavior is to guard against programmer
+ error. The standard interface does not provide a way for the library
+ to tell an application which of several possible errors were detected.
+ Relying on this (or some other) extension will adversely affect the
+ portability of curses applications.
+
+
+</PRE><H3><a name="h3-Extensions-versus-portability">Extensions versus portability</a></H3><PRE>
+ Most of the extensions provided by ncurses have not been standardized.
+ Some have been incorporated into other implementations, such as
+ PDCurses or NetBSD curses. Here are a few to consider:
<STRONG>o</STRONG> The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present in SVr4.
See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for details.
@@ -1298,36 +1345,126 @@
are they present in SVr4. See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for
details.
- <STRONG>o</STRONG> The routine <STRONG>mcprint</STRONG> was not present in any previous curses imple-
- mentation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
+ <STRONG>o</STRONG> The routine <STRONG>mcprint</STRONG> was not present in any previous curses
+ implementation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
<STRONG>o</STRONG> The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present in SVr4.
See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for details.
- <STRONG>o</STRONG> The WINDOW structure's internal details can be hidden from applica-
- tion programs. See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for the discussion of <STRONG>is_scrol-</STRONG>
- <STRONG>lok</STRONG>, etc.
+ <STRONG>o</STRONG> The WINDOW structure's internal details can be hidden from
+ application programs. See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for the discussion of
+ <STRONG>is_scrollok</STRONG>, etc.
- <STRONG>o</STRONG> This implementation can be configured to provide rudimentary sup-
- port for multi-threaded applications. See <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for
+ <STRONG>o</STRONG> This implementation can be configured to provide rudimentary
+ support for multi-threaded applications. See <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for
details.
<STRONG>o</STRONG> This implementation can also be configured to provide a set of
functions which improve the ability to manage multiple screens.
See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details.
+
+</PRE><H3><a name="h3-Padding-differences">Padding differences</a></H3><PRE>
In historic curses versions, delays embedded in the capabilities <STRONG>cr</STRONG>,
<STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding delay bits in the UNIX
tty driver. In this implementation, all padding is done by sending NUL
- bytes. This method is slightly more expensive, but narrows the inter-
- face to the UNIX kernel significantly and increases the package's
+ bytes. This method is slightly more expensive, but narrows the
+ interface to the UNIX kernel significantly and increases the package's
portability correspondingly.
-</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+</PRE><H3><a name="h3-Header-files">Header files</a></H3><PRE>
The header file <STRONG>&lt;curses.h&gt;</STRONG> automatically includes the header files
<STRONG>&lt;stdio.h&gt;</STRONG> and <STRONG>&lt;unctrl.h&gt;</STRONG>.
+ X/Open Curses has more to say, but does not finish the story:
+
+ The inclusion of &lt;curses.h&gt; may make visible all symbols from the
+ headers &lt;stdio.h&gt;, &lt;term.h&gt;, &lt;termios.h&gt;, and &lt;wchar.h&gt;.
+
+ Here is a more complete story:
+
+ <STRONG>o</STRONG> Starting with BSD curses, all implementations have included
+ &lt;stdio.h&gt;.
+
+ BSD curses included &lt;curses.h&gt; and &lt;unctrl.h&gt; from an internal
+ header "curses.ext" ("ext" was a short name for <EM>externs</EM>).
+
+ BSD curses used &lt;stdio.h&gt; internally (for <STRONG>printw</STRONG> and <STRONG>scanw</STRONG>), but
+ nothing in &lt;curses.h&gt; itself relied upon &lt;stdio.h&gt;.
+
+ <STRONG>o</STRONG> SVr2 curses added <STRONG><A HREF="curs_initscr.3x.html">newterm(3x)</A></STRONG>, which relies upon &lt;stdio.h&gt;. That
+ is, the function prototype uses <STRONG>FILE</STRONG>.
+
+ SVr4 curses added <STRONG>putwin</STRONG> and <STRONG>getwin</STRONG>, which also use &lt;stdio.h&gt;.
+
+ X/Open Curses documents all three of these functions.
+
+ SVr4 curses and X/Open Curses do not require the developer to
+ include &lt;stdio.h&gt; before including &lt;curses.h&gt;. Both document
+ curses showing &lt;curses.h&gt; as the only required header.
+
+ As a result, standard &lt;curses.h&gt; will always include &lt;stdio.h&gt;.
+
+ <STRONG>o</STRONG> X/Open Curses is inconsistent with respect to SVr4 regarding
+ &lt;unctrl.h&gt;.
+
+ As noted in <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, ncurses includes &lt;unctrl.h&gt; from
+ &lt;curses.h&gt; (like SVr4).
+
+ <STRONG>o</STRONG> X/Open's comments about &lt;term.h&gt; and &lt;termios.h&gt; may refer to HP-UX
+ and AIX:
+
+ HP-UX curses includes &lt;term.h&gt; from &lt;curses.h&gt; to declare <STRONG>setupterm</STRONG>
+ in curses.h, but ncurses (and Solaris curses) do not.
+
+ AIX curses includes &lt;term.h&gt; and &lt;termios.h&gt;. Again, ncurses (and
+ Solaris curses) do not.
+
+ <STRONG>o</STRONG> X/Open says that &lt;curses.h&gt; <EM>may</EM> include &lt;term.h&gt;, but there is no
+ requirement that it do that.
+
+ Some programs use functions declared in both &lt;curses.h&gt; and
+ &lt;term.h&gt;, and must include both headers in the same module. Very
+ old versions of AIX curses required including &lt;curses.h&gt; before
+ including &lt;term.h&gt;.
+
+ Because ncurses header files include the headers needed to define
+ datatypes used in the headers, ncurses header files can be included
+ in any order. But for portability, you should include &lt;curses.h&gt;
+ before &lt;term.h&gt;.
+
+ <STRONG>o</STRONG> X/Open Curses says <EM>"may</EM> <EM>make</EM> <EM>visible"</EM> because including a header
+ file does not necessarily make all symbols in it visible (there are
+ ifdef's to consider).
+
+ For instance, in ncurses &lt;wchar.h&gt; <EM>may</EM> be included if the proper
+ symbol is defined, and if ncurses is configured for wide-character
+ support. If the header is included, its symbols may be made
+ visible. That depends on the value used for <STRONG>_XOPEN_SOURCE</STRONG> feature
+ test macro.
+
+ <STRONG>o</STRONG> X/Open Curses documents one required header, in a special case:
+ &lt;stdarg.h&gt; before &lt;curses.h&gt; to prototype the <STRONG>vw_printw</STRONG> and
+ <STRONG>vw_scanw</STRONG> functions (as well as the obsolete the <STRONG>vwprintw</STRONG> and
+ <STRONG>vwscanw</STRONG> functions). Each of those uses a <STRONG>va_list</STRONG> parameter.
+
+ The two obsolete functions were introduced in SVr3. The other
+ functions were introduced in X/Open Curses. In between, SVr4
+ curses provided for the possibility that an application might
+ include either &lt;varargs.h&gt; or &lt;stdarg.h&gt;. Initially, that was done
+ by using <STRONG>void*</STRONG> for the <STRONG>va_list</STRONG> parameter. Later, a special type
+ (defined in &lt;stdio.h&gt;) was introduced, to allow for compiler type-
+ checking. That special type is always available, because &lt;stdio.h&gt;
+ is always included by &lt;curses.h&gt;.
+
+ None of the X/Open Curses implementations require an application to
+ include &lt;stdarg.h&gt; before &lt;curses.h&gt; because they either have
+ allowed for a special type, or (like ncurses) include &lt;stdarg.h&gt;
+ directly to provide a portable interface.
+
+
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
If standard output from a <STRONG>ncurses</STRONG> program is re-directed to something
which is not a tty, screen updates will be directed to standard error.
This was an undocumented feature of AT&amp;T System V Release 3 curses.
@@ -1384,7 +1521,14 @@
<li><a href="#h2-FILES">FILES</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
-<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a>
+<ul>
+<li><a href="#h3-Error-checking">Error checking</a></li>
+<li><a href="#h3-Extensions-versus-portability">Extensions versus portability</a></li>
+<li><a href="#h3-Padding-differences">Padding differences</a></li>
+<li><a href="#h3-Header-files">Header files</a></li>
+</ul>
+</li>
<li><a href="#h2-NOTES">NOTES</a></li>
<li><a href="#h2-AUTHORS">AUTHORS</a></li>
</ul>
diff --git a/doc/html/man/ncurses6-config.1.html b/doc/html/man/ncurses6-config.1.html
index f5fdc4f..9e62696 100644
--- a/doc/html/man/ncurses6-config.1.html
+++ b/doc/html/man/ncurses6-config.1.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: MKncu_config.in,v 1.4 2020/02/02 23:34:34 tom Exp @
+ * @Id: MKncu_config.in,v 1.5 2021/06/17 21:20:30 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -101,11 +101,11 @@
<STRONG>--terminfo-dirs</STRONG>
echos the $TERMINFO_DIRS directory list, e.g.,
- /usr/local/ncurses/share/terminfo:/usr/share/terminfo
+ /usr/share/terminfo
<STRONG>--termpath</STRONG>
- echos the $TERMPATH termcap list, if support for termcap is con-
- figured.
+ echos the $TERMPATH termcap list, if support for termcap is
+ configured.
<STRONG>--help</STRONG> prints this message
@@ -113,7 +113,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/new_pair.3x.html b/doc/html/man/new_pair.3x.html
index dec3de1..12214be 100644
--- a/doc/html/man/new_pair.3x.html
+++ b/doc/html/man/new_pair.3x.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey
- * @Id: new_pair.3x,v 1.14 2020/02/02 23:34:34 tom Exp @
+ * @Id: new_pair.3x,v 1.16 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,33 +54,33 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>alloc_pair(int</STRONG> <STRONG>fg,</STRONG> <STRONG>int</STRONG> <STRONG>bg);</STRONG>
- <STRONG>int</STRONG> <STRONG>find_pair(int</STRONG> <STRONG>fg,</STRONG> <STRONG>int</STRONG> <STRONG>bg);</STRONG>
- <STRONG>int</STRONG> <STRONG>free_pair(int</STRONG> <STRONG>pair);</STRONG>
+ <STRONG>int</STRONG> <STRONG>alloc_pair(int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>find_pair(int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>free_pair(int</STRONG> <EM>pair</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
These functions are an extension to the curses library. They permit an
- application to dynamically allocate a color pair using the fore-
- ground/background colors rather than assign a fixed color pair number,
- and return an unused pair to the pool.
+ application to dynamically allocate a color pair using the
+ foreground/background colors rather than assign a fixed color pair
+ number, and return an unused pair to the pool.
The number of colors may be related to the number of possible color
pairs for a given terminal, or it may not:
- <STRONG>o</STRONG> While almost all terminals allow setting the color <EM>attributes</EM> inde-
- pendently, it is unlikely that your terminal allows you to modify
- the attributes of a given character cell without rewriting it.
- That is, the foreground and background colors are applied as a
+ <STRONG>o</STRONG> While almost all terminals allow setting the color <EM>attributes</EM>
+ independently, it is unlikely that your terminal allows you to
+ modify the attributes of a given character cell without rewriting
+ it. That is, the foreground and background colors are applied as a
pair.
- <STRONG>o</STRONG> Color pairs are the curses library's way of managing a color pal-
- ette on a terminal. If the library does not keep track of the <EM>com-</EM>
- <EM>binations</EM> of colors which are displayed, it will be inefficient.
+ <STRONG>o</STRONG> Color pairs are the curses library's way of managing a color
+ palette on a terminal. If the library does not keep track of the
+ <EM>combinations</EM> of colors which are displayed, it will be inefficient.
- <STRONG>o</STRONG> For simple terminal emulators with only a few dozen color combina-
- tions, it is convenient to use the maximum number of combinations
- as the limit on color pairs:
+ <STRONG>o</STRONG> For simple terminal emulators with only a few dozen color
+ combinations, it is convenient to use the maximum number of
+ combinations as the limit on color pairs:
<STRONG>COLORS</STRONG> <EM>*</EM> <STRONG>COLORS</STRONG>
@@ -93,8 +93,8 @@
a predefined color scheme.
Beyond that lies in the realm of programs using the foreground and
- background colors for "ASCII art" (or some other non-textual appli-
- cation).
+ background colors for "ASCII art" (or some other non-textual
+ application).
Also beyond those few dozen pairs, the required size for a table to
represent the combinations grows rapidly with an increasing number
@@ -105,9 +105,9 @@
</PRE><H3><a name="h3-alloc_pair">alloc_pair</a></H3><PRE>
- The <STRONG>alloc_pair</STRONG> function accepts parameters for foreground and back-
- ground color, and checks if that color combination is already associ-
- ated with a color pair.
+ The <STRONG>alloc_pair</STRONG> function accepts parameters for foreground and
+ background color, and checks if that color combination is already
+ associated with a color pair.
<STRONG>o</STRONG> If the combination already exists, <STRONG>alloc_pair</STRONG> returns the existing
pair.
@@ -115,21 +115,21 @@
<STRONG>o</STRONG> If the combination does not exist, <STRONG>alloc_pair</STRONG> allocates a new color
pair and returns that.
- <STRONG>o</STRONG> If the table fills up, <STRONG>alloc_pair</STRONG> discards the least-recently allo-
- cated entry using <STRONG>free_pair</STRONG> and allocates a new color pair.
+ <STRONG>o</STRONG> If the table fills up, <STRONG>alloc_pair</STRONG> discards the least-recently
+ allocated entry using <STRONG>free_pair</STRONG> and allocates a new color pair.
All of the color pairs are allocated from a table of possible color
- pairs. The size of the table is determined by the terminfo <EM>pairs</EM> capa-
- bility. The table is shared with <STRONG>init_pair</STRONG>; in fact <STRONG>alloc_pair</STRONG> calls
- <STRONG>init_pair</STRONG> after updating the ncurses library's fast index to the colors
- versus color pairs.
+ pairs. The size of the table is determined by the terminfo <EM>pairs</EM>
+ capability. The table is shared with <STRONG>init_pair</STRONG>; in fact <STRONG>alloc_pair</STRONG>
+ calls <STRONG>init_pair</STRONG> after updating the ncurses library's fast index to the
+ colors versus color pairs.
</PRE><H3><a name="h3-find_pair">find_pair</a></H3><PRE>
The <STRONG>find_pair</STRONG> function accepts parameters for foreground and background
color, and checks if that color combination is already associated with
- a color pair, returning the pair number if it has been allocated. Oth-
- erwise it returns -1.
+ a color pair, returning the pair number if it has been allocated.
+ Otherwise it returns -1.
</PRE><H3><a name="h3-free_pair">free_pair</a></H3><PRE>
diff --git a/doc/html/man/panel.3x.html b/doc/html/man/panel.3x.html
index 2d44419..24d5087 100644
--- a/doc/html/man/panel.3x.html
+++ b/doc/html/man/panel.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
@@ -27,7 +27,24 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: panel.3x,v 1.28 2020/02/02 23:34:34 tom Exp @
+ * @Id: panel.3x,v 1.39 2020/02/15 21:06:40 tom Exp @
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
+ * ---------
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,30 +72,39 @@
<STRONG>cc</STRONG> <STRONG>[flags]</STRONG> <STRONG>sourcefiles</STRONG> <STRONG>-lpanel</STRONG> <STRONG>-lncurses</STRONG>
- <STRONG>PANEL</STRONG> <STRONG>*new_panel(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>bottom_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>top_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>show_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*new_panel(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>bottom_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>top_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>show_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
<STRONG>void</STRONG> <STRONG>update_panels(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>hide_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>WINDOW</STRONG> <STRONG>*panel_window(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>replace_panel(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*window);</STRONG>
- <STRONG>int</STRONG> <STRONG>move_panel(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>int</STRONG> <STRONG>starty,</STRONG> <STRONG>int</STRONG> <STRONG>startx);</STRONG>
- <STRONG>int</STRONG> <STRONG>panel_hidden(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>PANEL</STRONG> <STRONG>*panel_above(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>PANEL</STRONG> <STRONG>*panel_below(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>set_panel_userptr(PANEL</STRONG> <STRONG>*pan,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*ptr);</STRONG>
- <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*panel_userptr(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*pan);</STRONG>
- <STRONG>int</STRONG> <STRONG>del_panel(PANEL</STRONG> <STRONG>*pan);</STRONG>
+ <STRONG>int</STRONG> <STRONG>hide_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>WINDOW</STRONG> <STRONG>*panel_window(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>replace_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>window</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>move_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>starty</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>startx</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>panel_hidden(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>PANEL</STRONG> <STRONG>*panel_above(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*panel_below(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>set_panel_userptr(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>ptr</EM><STRONG>);</STRONG>
+ <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*panel_userptr(const</STRONG> <STRONG>PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ <STRONG>int</STRONG> <STRONG>del_panel(PANEL</STRONG> <STRONG>*</STRONG><EM>pan</EM><STRONG>);</STRONG>
+
+ /* ncurses-extensions */
+ <STRONG>PANEL</STRONG> <STRONG>*ground_panel(SCREEN</STRONG> <STRONG>*</STRONG><EM>sp</EM><STRONG>);</STRONG>
+ <STRONG>PANEL</STRONG> <STRONG>*ceiling_panel(SCREEN</STRONG> <STRONG>*</STRONG><EM>sp</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
Panels are <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> windows with the added feature of depth. Panel
- functions allow the use of stacked windows and ensure the proper por-
- tions of each window and the curses <STRONG>stdscr</STRONG> window are hidden or dis-
- played when panels are added, moved, modified or removed. The set of
- currently visible panels is the stack of panels. The <STRONG>stdscr</STRONG> window is
- beneath all panels, and is not considered part of the stack.
+ functions allow the use of stacked windows and ensure the proper
+ portions of each window and the curses <STRONG>stdscr</STRONG> window are hidden or
+ displayed when panels are added, moved, modified or removed. The set
+ of currently visible panels is the stack of panels. The <STRONG>stdscr</STRONG> window
+ is beneath all panels, and is not considered part of the stack.
A window is associated with every panel. The panel routines enable you
to create, move, hide, and show panels, as well as position a panel at
@@ -89,95 +115,128 @@
</PRE><H2><a name="h2-FUNCTIONS">FUNCTIONS</a></H2><PRE>
- <STRONG>new_panel(win)</STRONG>
- allocates a <STRONG>PANEL</STRONG> structure, associates it with <STRONG>win</STRONG>, places
- the panel on the top of the stack (causes it to be displayed
- above any other panel) and returns a pointer to the new panel.
-
- <STRONG>update_panels</STRONG>
- refreshes the <EM>virtual</EM> <EM>screen</EM> to reflect the relations between
- the panels in the stack, but does not call <STRONG>doupdate</STRONG> to refresh
- the <EM>physical</EM> <EM>screen</EM>. Use this function and not <STRONG>wrefresh</STRONG> or
- <STRONG>wnoutrefresh</STRONG>. <STRONG>update_panels</STRONG> may be called more than once before
- a call to <STRONG>doupdate</STRONG>, but <STRONG>doupdate</STRONG> is the function responsible for
- updating the <EM>physical</EM> <EM>screen</EM>.
-
- <STRONG>del_panel(pan)</STRONG>
- removes the given panel from the stack and deallocates the
- <STRONG>PANEL</STRONG> structure (but not its associated window).
-
- <STRONG>hide_panel(pan)</STRONG>
- removes the given panel from the panel stack and thus hides it
- from view. The <STRONG>PANEL</STRONG> structure is not lost, merely removed from
- the stack.
-
- <STRONG>panel_hidden(pan)</STRONG>
- returns <STRONG>TRUE</STRONG> if the panel is in the panel stack, <STRONG>FALSE</STRONG> if it is
- not. If the panel is a null pointer, return <STRONG>ERR</STRONG>.
-
- <STRONG>show_panel(pan)</STRONG>
- makes a hidden panel visible by placing it on top of the panels
- in the panel stack. See COMPATIBILITY below.
-
- <STRONG>top_panel(pan)</STRONG>
- puts the given visible panel on top of all panels in the stack.
- See COMPATIBILITY below.
-
- <STRONG>bottom_panel(pan)</STRONG>
- puts panel at the bottom of all panels.
-
- <STRONG>move_panel(pan,starty,startx)</STRONG>
- moves the given panel window so that its upper-left corner is at
- <STRONG>starty</STRONG>, <STRONG>startx</STRONG>. It does not change the position of the panel in
- the stack. Be sure to use this function, not <STRONG>mvwin</STRONG>, to move a
- panel window.
-
- <STRONG>replace_panel(pan,window)</STRONG>
- replaces the current window of panel with <STRONG>window</STRONG> (useful, for
- example if you want to resize a panel; if you're using <STRONG>ncurses</STRONG>,
- you can call <STRONG>replace_panel</STRONG> on the output of <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>). It
- does not change the position of the panel in the stack.
-
- <STRONG>panel_above(pan)</STRONG>
- returns a pointer to the panel above pan. If the panel argument
- is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the bottom panel in the
- stack.
-
- <STRONG>panel_below(pan)</STRONG>
- returns a pointer to the panel just below pan. If the panel
- argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the top panel in
- the stack.
-
- <STRONG>set_panel_userptr(pan,ptr)</STRONG>
- sets the panel's user pointer.
-
- <STRONG>panel_userptr(pan)</STRONG>
- returns the user pointer for a given panel.
-
- <STRONG>panel_window(pan)</STRONG>
- returns a pointer to the window of the given panel.
+
+</PRE><H3><a name="h3-bottom_panel">bottom_panel</a></H3><PRE>
+ <STRONG>bottom_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> puts panel <EM>pan</EM> at the bottom of all panels.
+
+
+</PRE><H3><a name="h3-ceiling_panel">ceiling_panel</a></H3><PRE>
+ <STRONG>ceiling_panel(</STRONG><EM>sp</EM><STRONG>)</STRONG> acts like <STRONG>panel_below(NULL)</STRONG>, for the given <STRONG>SCREEN</STRONG> <EM>sp</EM>.
+
+
+</PRE><H3><a name="h3-del_panel">del_panel</a></H3><PRE>
+ <STRONG>del_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> removes the given panel <EM>pan</EM> from the stack and
+ deallocates the <STRONG>PANEL</STRONG> structure (but not its associated window).
+
+
+</PRE><H3><a name="h3-ground_panel">ground_panel</a></H3><PRE>
+ <STRONG>ground_panel(</STRONG><EM>sp</EM><STRONG>)</STRONG> acts like <STRONG>panel_above(NULL)</STRONG>, for the given <STRONG>SCREEN</STRONG> <EM>sp</EM>.
+
+
+</PRE><H3><a name="h3-hide_panel">hide_panel</a></H3><PRE>
+ <STRONG>hide_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> removes the given panel <EM>pan</EM> from the panel stack and
+ thus hides it from view. The <STRONG>PANEL</STRONG> structure is not lost, merely
+ removed from the stack.
+
+
+</PRE><H3><a name="h3-move_panel">move_panel</a></H3><PRE>
+ <STRONG>move_panel(</STRONG><EM>pan</EM><STRONG>,</STRONG><EM>starty</EM><STRONG>,</STRONG><EM>startx</EM><STRONG>)</STRONG> moves the given panel <EM>pan</EM>'s window so
+ that its upper-left corner is at <EM>starty</EM>, <EM>startx</EM>. It does not change
+ the position of the panel in the stack. Be sure to use this function,
+ not <STRONG><A HREF="curs_window.3x.html">mvwin(3x)</A></STRONG>, to move a panel window.
+
+
+</PRE><H3><a name="h3-new_panel">new_panel</a></H3><PRE>
+ <STRONG>new_panel(</STRONG><EM>win</EM><STRONG>)</STRONG> allocates a <STRONG>PANEL</STRONG> structure, associates it with <EM>win</EM>,
+ places the panel on the top of the stack (causes it to be displayed
+ above any other panel) and returns a pointer to the new panel.
+
+
+</PRE><H3><a name="h3-panel_above">panel_above</a></H3><PRE>
+ <STRONG>panel_above(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns a pointer to the panel above <EM>pan</EM>. If the
+ panel argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the bottom panel
+ in the stack.
+
+
+</PRE><H3><a name="h3-panel_below">panel_below</a></H3><PRE>
+ <STRONG>panel_below(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns a pointer to the panel just below <EM>pan</EM>. If the
+ panel argument is <STRONG>(PANEL</STRONG> <STRONG>*)0</STRONG>, it returns a pointer to the top panel in
+ the stack.
+
+
+</PRE><H3><a name="h3-panel_hidden">panel_hidden</a></H3><PRE>
+ <STRONG>panel_hidden(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns <STRONG>TRUE</STRONG> if the panel <EM>pan</EM> is in the panel stack,
+ <STRONG>FALSE</STRONG> if it is not. If the panel is a null pointer, return <STRONG>ERR</STRONG>.
+
+
+</PRE><H3><a name="h3-panel_userptr">panel_userptr</a></H3><PRE>
+ <STRONG>panel_userptr(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns the user pointer for a given panel <EM>pan</EM>.
+
+
+</PRE><H3><a name="h3-panel_window">panel_window</a></H3><PRE>
+ <STRONG>panel_window(</STRONG><EM>pan</EM><STRONG>)</STRONG> returns a pointer to the window of the given panel
+ <EM>pan</EM>.
+
+
+</PRE><H3><a name="h3-replace_panel">replace_panel</a></H3><PRE>
+ <STRONG>replace_panel(</STRONG><EM>pan</EM><STRONG>,</STRONG><EM>window</EM><STRONG>)</STRONG> replaces the current window of panel <EM>pan</EM> with
+ <EM>window</EM> This is useful, for example if you want to resize a panel. In
+ <STRONG>ncurses</STRONG>, you can call <STRONG>replace_panel</STRONG> to resize a panel using a window
+ resized with <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>. It does not change the position of the panel
+ in the stack.
+
+
+</PRE><H3><a name="h3-set_panel_userptr">set_panel_userptr</a></H3><PRE>
+ <STRONG>set_panel_userptr(</STRONG><EM>pan</EM><STRONG>,</STRONG><EM>ptr</EM><STRONG>)</STRONG> sets the panel's user pointer.
+
+
+</PRE><H3><a name="h3-show_panel">show_panel</a></H3><PRE>
+ <STRONG>show_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> makes a hidden panel visible by placing it on top of
+ the panels in the panel stack. See <STRONG>COMPATIBILITY</STRONG> below.
+
+
+</PRE><H3><a name="h3-top_panel">top_panel</a></H3><PRE>
+ <STRONG>top_panel(</STRONG><EM>pan</EM><STRONG>)</STRONG> puts the given visible panel <EM>pan</EM> on top of all panels in
+ the stack. See <STRONG>COMPATIBILITY</STRONG> below.
+
+
+</PRE><H3><a name="h3-update_panels">update_panels</a></H3><PRE>
+ <STRONG>update_panels()</STRONG> refreshes the <EM>virtual</EM> <EM>screen</EM> to reflect the relations
+ between the panels in the stack, but does not call <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> to
+ refresh the <EM>physical</EM> <EM>screen</EM>. Use this function and not <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG> or
+ <STRONG><A HREF="curs_refresh.3x.html">wnoutrefresh(3x)</A></STRONG>.
+
+ <STRONG>update_panels</STRONG> may be called more than once before a call to <STRONG>doupdate</STRONG>,
+ but <STRONG>doupdate</STRONG> is the function responsible for updating the <EM>physical</EM>
+ <EM>screen</EM>.
</PRE><H2><a name="h2-DIAGNOSTICS">DIAGNOSTICS</a></H2><PRE>
Each routine that returns a pointer returns <STRONG>NULL</STRONG> if an error occurs.
- Each routine that returns an int value returns <STRONG>OK</STRONG> if it executes suc-
- cessfully and <STRONG>ERR</STRONG> if not.
+ Each routine that returns an int value returns <STRONG>OK</STRONG> if it executes
+ successfully and <STRONG>ERR</STRONG> if not.
+
+ Except as noted, the <EM>pan</EM> and <EM>window</EM> parameters must be non-null. If
+ those are null, an error is returned.
+
+ The <STRONG>move_panel</STRONG> function uses <STRONG><A HREF="curs_window.3x.html">mvwin(3x)</A></STRONG>, and will return an error if
+ <STRONG>mvwin</STRONG> returns an error.
</PRE><H2><a name="h2-COMPATIBILITY">COMPATIBILITY</a></H2><PRE>
Reasonable care has been taken to ensure compatibility with the
native panel facility introduced in System V (inspection of the SVr4
manual pages suggests the programming interface is unchanged). The
- <STRONG>PANEL</STRONG> data structures are merely similar. The programmer is cau-
- tioned not to directly use <STRONG>PANEL</STRONG> fields.
+ <STRONG>PANEL</STRONG> data structures are merely similar. The programmer is
+ cautioned not to directly use <STRONG>PANEL</STRONG> fields.
- The functions <STRONG>show_panel</STRONG> and <STRONG>top_panel</STRONG> are identical in this implemen-
- tation, and work equally well with displayed or hidden panels. In the
- native System V implementation, <STRONG>show_panel</STRONG> is intended for making a
- hidden panel visible (at the top of the stack) and <STRONG>top_panel</STRONG> is
- intended for making an already-visible panel move to the top of the
- stack. You are cautioned to use the correct function to ensure compat-
- ibility with native panel libraries.
+ The functions <STRONG>show_panel</STRONG> and <STRONG>top_panel</STRONG> are identical in this
+ implementation, and work equally well with displayed or hidden panels.
+ In the native System V implementation, <STRONG>show_panel</STRONG> is intended for
+ making a hidden panel visible (at the top of the stack) and <STRONG>top_panel</STRONG>
+ is intended for making an already-visible panel move to the top of the
+ stack. You are cautioned to use the correct function to ensure
+ compatibility with native panel libraries.
</PRE><H2><a name="h2-NOTE">NOTE</a></H2><PRE>
@@ -192,8 +251,25 @@
It is not part of X/Open Curses.
- Aside from ncurses, only systems based on SVr4 source code, e.g.,
- Solaris provide this library.
+ A few implementations exist:
+
+ <STRONG>o</STRONG> Systems based on SVr4 source code, e.g., Solaris, provide this
+ library.
+
+ <STRONG>o</STRONG> <STRONG>ncurses</STRONG> (since version 0.6 in 1993) and <STRONG>PDCurses</STRONG> (since version 2.2
+ in 1995) provide a panel library whose common ancestor was a public
+ domain implementation by Warren Tucker published in <EM>u386mon</EM> 2.20
+ (1990).
+
+ According to Tucker, the SystemV panel library was first released
+ in SVr3.2 (1988), and his implementation helped with a port to
+ SVr3.1 (1987).
+
+ Several developers have improved each of these; they are no longer
+ the same as Tucker's implementation.
+
+ <STRONG>o</STRONG> NetBSD 8 (2018) has a panel library begun by Valery Ushakov in
+ 2015. This is based on the AT&amp;T documentation.
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
@@ -205,13 +281,17 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
- Originally written by Warren Tucker &lt;wht@n4hgf.mt-park.ga.us&gt;, primar-
- ily to assist in porting u386mon to systems without a native panels
- library. Repackaged for ncurses by Zeyd ben-Halim.
+ Originally written by Warren Tucker &lt;wht@n4hgf.mt-park.ga.us&gt;,
+ primarily to assist in porting <EM>u386mon</EM> to systems without a native
+ panels library.
+
+ Repackaged for ncurses by Zeyd ben-Halim.
+
+ Juergen Pfeifer and Thomas E. Dickey revised/improved the library.
@@ -222,7 +302,27 @@
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
-<li><a href="#h2-FUNCTIONS">FUNCTIONS</a></li>
+<li><a href="#h2-FUNCTIONS">FUNCTIONS</a>
+<ul>
+<li><a href="#h3-bottom_panel">bottom_panel</a></li>
+<li><a href="#h3-ceiling_panel">ceiling_panel</a></li>
+<li><a href="#h3-del_panel">del_panel</a></li>
+<li><a href="#h3-ground_panel">ground_panel</a></li>
+<li><a href="#h3-hide_panel">hide_panel</a></li>
+<li><a href="#h3-move_panel">move_panel</a></li>
+<li><a href="#h3-new_panel">new_panel</a></li>
+<li><a href="#h3-panel_above">panel_above</a></li>
+<li><a href="#h3-panel_below">panel_below</a></li>
+<li><a href="#h3-panel_hidden">panel_hidden</a></li>
+<li><a href="#h3-panel_userptr">panel_userptr</a></li>
+<li><a href="#h3-panel_window">panel_window</a></li>
+<li><a href="#h3-replace_panel">replace_panel</a></li>
+<li><a href="#h3-set_panel_userptr">set_panel_userptr</a></li>
+<li><a href="#h3-show_panel">show_panel</a></li>
+<li><a href="#h3-top_panel">top_panel</a></li>
+<li><a href="#h3-update_panels">update_panels</a></li>
+</ul>
+</li>
<li><a href="#h2-DIAGNOSTICS">DIAGNOSTICS</a></li>
<li><a href="#h2-COMPATIBILITY">COMPATIBILITY</a></li>
<li><a href="#h2-NOTE">NOTE</a></li>
diff --git a/doc/html/man/resizeterm.3x.html b/doc/html/man/resizeterm.3x.html
index 3705e3c..9a099ea 100644
--- a/doc/html/man/resizeterm.3x.html
+++ b/doc/html/man/resizeterm.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018-2019,2020 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 1996-on
- * @Id: resizeterm.3x,v 1.27 2020/02/02 23:34:34 tom Exp @
+ * @Id: resizeterm.3x,v 1.28 2020/10/17 23:55:41 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -55,15 +55,15 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>bool</STRONG> <STRONG>is_term_resized(int</STRONG> <STRONG>lines,</STRONG> <STRONG>int</STRONG> <STRONG>columns);</STRONG>
- <STRONG>int</STRONG> <STRONG>resize_term(int</STRONG> <STRONG>lines,</STRONG> <STRONG>int</STRONG> <STRONG>columns);</STRONG>
- <STRONG>int</STRONG> <STRONG>resizeterm(int</STRONG> <STRONG>lines,</STRONG> <STRONG>int</STRONG> <STRONG>columns);</STRONG>
+ <STRONG>bool</STRONG> <STRONG>is_term_resized(int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>resize_term(int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG>
+ <STRONG>int</STRONG> <STRONG>resizeterm(int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
This is an extension to the curses library. It provides callers with a
- hook into the <STRONG>ncurses</STRONG> data to resize windows, primarily for use by pro-
- grams running in an X Window terminal (e.g., xterm).
+ hook into the <STRONG>ncurses</STRONG> data to resize windows, primarily for use by
+ programs running in an X Window terminal (e.g., xterm).
</PRE><H3><a name="h3-resizeterm">resizeterm</a></H3><PRE>
@@ -76,7 +76,7 @@
</PRE><H3><a name="h3-resize_term">resize_term</a></H3><PRE>
Most of the work is done by the inner function <STRONG>resize_term</STRONG>. The outer
function <STRONG>resizeterm</STRONG> adds bookkeeping for the <STRONG>SIGWINCH</STRONG> handler, as well
- as repainting the soft-key area (see <STRONG><A HREF="slk_touch.3x.html">slk_touch(3x)</A></STRONG>).
+ as repainting the soft-key area (see <STRONG><A HREF="curs_slk.3x.html">slk_touch(3x)</A></STRONG>).
When resizing the windows, <STRONG>resize_term</STRONG> blank-fills the areas that are
extended. The calling application should fill in these areas with
@@ -102,15 +102,15 @@
</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
Except as noted, these functions return the integer <STRONG>ERR</STRONG> upon failure
and <STRONG>OK</STRONG> on success. They will fail if either of the dimensions are less
- than or equal to zero, or if an error occurs while (re)allocating mem-
- ory for the windows.
+ than or equal to zero, or if an error occurs while (re)allocating
+ memory for the windows.
</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
- While these functions are intended to be used to support a signal han-
- dler (i.e., for <STRONG>SIGWINCH</STRONG>), care should be taken to avoid invoking them
- in a context where <STRONG>malloc</STRONG> or <STRONG>realloc</STRONG> may have been interrupted, since
- it uses those functions.
+ While these functions are intended to be used to support a signal
+ handler (i.e., for <STRONG>SIGWINCH</STRONG>), care should be taken to avoid invoking
+ them in a context where <STRONG>malloc</STRONG> or <STRONG>realloc</STRONG> may have been interrupted,
+ since it uses those functions.
If ncurses is configured to supply its own <STRONG>SIGWINCH</STRONG> handler,
@@ -132,9 +132,9 @@
resize the ncurses data structures.
If the environment variables <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG> are set, this overrides
- the library's use of the window size obtained from the operating sys-
- tem. Thus, even if a <STRONG>SIGWINCH</STRONG> is received, no screen size change may
- be recorded.
+ the library's use of the window size obtained from the operating
+ system. Thus, even if a <STRONG>SIGWINCH</STRONG> is received, no screen size change
+ may be recorded.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
diff --git a/doc/html/man/scr_dump.5.html b/doc/html/man/scr_dump.5.html
index e73ebc0..e01ea35 100644
--- a/doc/html/man/scr_dump.5.html
+++ b/doc/html/man/scr_dump.5.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: scr_dump.5,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: scr_dump.5,v 1.17 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -60,8 +60,8 @@
read it back using <STRONG>scr_restore</STRONG> or <STRONG>getwin</STRONG>.
The <STRONG>putwin</STRONG> and <STRONG>getwin</STRONG> functions do the work; while <STRONG>scr_dump</STRONG> and
- <STRONG>scr_restore</STRONG> conveniently save and restore the whole screen, i.e., <STRONG>std-</STRONG>
- <STRONG>scr</STRONG>.
+ <STRONG>scr_restore</STRONG> conveniently save and restore the whole screen, i.e.,
+ <STRONG>stdscr</STRONG>.
</PRE><H3><a name="h3-ncurses6">ncurses6</a></H3><PRE>
@@ -72,8 +72,8 @@
allowing applications (such as <STRONG>file(1)</STRONG>) to recognize curses dump
files.
- Because ncurses6 uses a new format, that requires a new magic num-
- ber was unused by other applications. This 16-bit number was
+ Because ncurses6 uses a new format, that requires a new magic
+ number was unused by other applications. This 16-bit number was
unused:
0x8888 (octal "\210\210")
@@ -82,8 +82,8 @@
0x88888888 (octal "\210\210\210\210")
- This is the pattern submitted to the maintainers of the <STRONG>file</STRONG> pro-
- gram:
+ This is the pattern submitted to the maintainers of the <STRONG>file</STRONG>
+ program:
#
# ncurses5 (and before) did not use a magic number,
@@ -95,17 +95,17 @@
<STRONG>o</STRONG> The screen dumps are written in textual form, so that internal data
sizes are not directly related to the dump-format, and enabling the
- library to read dumps from either narrow- or wide-character- con-
- figurations.
+ library to read dumps from either narrow- or wide-character-
+ configurations.
The <EM>narrow</EM> library configuration holds characters and video
attributes in a 32-bit <STRONG>chtype</STRONG>, while the <EM>wide-character</EM> library
stores this information in the <STRONG>cchar_t</STRONG> structure, which is much
larger than 32-bits.
- <STRONG>o</STRONG> It is possible to read a screen dump into a terminal with a differ-
- ent screen-size, because the library truncates or fills the screen
- as necessary.
+ <STRONG>o</STRONG> It is possible to read a screen dump into a terminal with a
+ different screen-size, because the library truncates or fills the
+ screen as necessary.
<STRONG>o</STRONG> The ncurses6 <STRONG>getwin</STRONG> reads the legacy screen dumps from ncurses5.
@@ -139,8 +139,8 @@
X/Open's documentation for <EM>enhanced</EM> <EM>curses</EM> says only:
The <EM>getwin(</EM> <EM>)</EM> function reads window-related data stored in the file
- by <EM>putwin(</EM> <EM>)</EM>. The function then creates and initializes a new win-
- dow using that data.
+ by <EM>putwin(</EM> <EM>)</EM>. The function then creates and initializes a new
+ window using that data.
The <EM>putwin(</EM> <EM>)</EM> function writes all data associated with <EM>win</EM> into the
<EM>stdio</EM> stream to which <EM>filep</EM> points, using an <STRONG>unspecified</STRONG> <STRONG>format</STRONG>.
@@ -157,17 +157,17 @@
for applications originally written to be compiled on systems
based on the UNIX operating system. Therefore, the features
described may not be present on systems that conform to <STRONG>XPG4</STRONG> <STRONG>or</STRONG>
- <STRONG>to</STRONG> <STRONG>earlier</STRONG> <STRONG>XPG</STRONG> <STRONG>releases</STRONG>. The relevant reference pages may pro-
- vide additional or more specific portability warnings about use
- of the material.
+ <STRONG>to</STRONG> <STRONG>earlier</STRONG> <STRONG>XPG</STRONG> <STRONG>releases</STRONG>. The relevant reference pages may
+ provide additional or more specific portability warnings about
+ use of the material.
In the foregoing, emphasis was added to <STRONG>unspecified</STRONG> <STRONG>format</STRONG> and to <STRONG>XPG4</STRONG>
<STRONG>or</STRONG> <STRONG>to</STRONG> <STRONG>earlier</STRONG> <STRONG>XPG</STRONG> <STRONG>releases</STRONG>, for clarity.
</PRE><H3><a name="h3-Unix-SystemV">Unix SystemV</a></H3><PRE>
- Unix SystemV curses identified the file format by writing a "magic num-
- ber" at the beginning of the dump. The <STRONG>WINDOW</STRONG> data and the lines of
+ Unix SystemV curses identified the file format by writing a "magic
+ number" at the beginning of the dump. The <STRONG>WINDOW</STRONG> data and the lines of
text follow, all in binary form.
The Solaris curses source has these definitions:
@@ -198,9 +198,10 @@
be seen using <STRONG>od(1)</STRONG>, none of the Unix systems documents the format used
for screen-dumps.
- The Unix systems do not use identical formats. While collecting infor-
- mation for for this manual page, the <EM>savescreen</EM> test-program produced
- dumps of different size (all on 64-bit hardware, on 40x80 screens):
+ The Unix systems do not use identical formats. While collecting
+ information for for this manual page, the <EM>savescreen</EM> test-program
+ produced dumps of different size (all on 64-bit hardware, on 40x80
+ screens):
<STRONG>o</STRONG> AIX (51817 bytes)
@@ -212,27 +213,27 @@
</PRE><H3><a name="h3-Solaris">Solaris</a></H3><PRE>
- As noted above, Solaris curses has no magic number corresponding to
- SVr4 curses. This is odd since Solaris was the first operating system
+ As noted above, Solaris curses has no magic number corresponding to
+ SVr4 curses. This is odd since Solaris was the first operating system
to pass the SVr4 guidelines. Solaris has two versions of curses:
<STRONG>o</STRONG> The default curses library uses the SVr3 magic number.
- <STRONG>o</STRONG> There is an alternate curses library in <STRONG>/usr/xpg4</STRONG>. This uses a
+ <STRONG>o</STRONG> There is an alternate curses library in <STRONG>/usr/xpg4</STRONG>. This uses a
textual format with no magic number.
- According to the copyright notice, the <EM>xpg4</EM> Solaris curses library
+ According to the copyright notice, the <EM>xpg4</EM> Solaris curses library
was developed by MKS (Mortice Kern Systems) from 1990 to 1995.
- Like ncurses6, there is a file-header with parameters. Unlike
- ncurses6, the contents of the window are written piecemeal, with
- coordinates and attributes for each chunk of text rather than writ-
- ing the whole window from top to bottom.
+ Like ncurses6, there is a file-header with parameters. Unlike
+ ncurses6, the contents of the window are written piecemeal, with
+ coordinates and attributes for each chunk of text rather than
+ writing the whole window from top to bottom.
</PRE><H3><a name="h3-PDCurses">PDCurses</a></H3><PRE>
- PDCurses added support for screen dumps in version 2.7 (2005). Like
- Unix SystemV and ncurses5, it writes the <STRONG>WINDOW</STRONG> structure in binary,
+ PDCurses added support for screen dumps in version 2.7 (2005). Like
+ Unix SystemV and ncurses5, it writes the <STRONG>WINDOW</STRONG> structure in binary,
but begins the file with its three-byte identifier "PDC", followed by a
one-byte version, e.g.,
@@ -243,7 +244,7 @@
As of April 2017, NetBSD curses does not support <STRONG>scr_dump</STRONG> and
<STRONG>scr_restore</STRONG> (or <STRONG>scr_init</STRONG>, <STRONG>scr_set</STRONG>), although it has <STRONG>putwin</STRONG> and <STRONG>getwin</STRONG>.
- Like ncurses5, NetBSD <STRONG>putwin</STRONG> does not identify its dumps with a useful
+ Like ncurses5, NetBSD <STRONG>putwin</STRONG> does not identify its dumps with a useful
magic number. It writes
<STRONG>o</STRONG> the curses shared library major and minor versions as the first two
@@ -251,14 +252,14 @@
<STRONG>o</STRONG> followed by a binary dump of the <STRONG>WINDOW</STRONG>,
- <STRONG>o</STRONG> some data for wide-characters referenced by the <STRONG>WINDOW</STRONG> structure,
+ <STRONG>o</STRONG> some data for wide-characters referenced by the <STRONG>WINDOW</STRONG> structure,
and
<STRONG>o</STRONG> finally, lines as done by other implementations.
</PRE><H2><a name="h2-EXAMPLE">EXAMPLE</a></H2><PRE>
- Given a simple program which writes text to the screen (and for the
+ Given a simple program which writes text to the screen (and for the
sake of example, limiting the screen-size to 10x20):
#include &lt;curses.h&gt;
@@ -316,13 +317,13 @@
<STRONG>o</STRONG> The actual color pair values are not written to the file.
- <STRONG>o</STRONG> All characters are shown in printable form; spaces are "\s" to
+ <STRONG>o</STRONG> All characters are shown in printable form; spaces are "\s" to
ensure they are not overlooked.
- <STRONG>o</STRONG> Attributes are written in escaped curly braces, e.g., "\{BOLD}",
+ <STRONG>o</STRONG> Attributes are written in escaped curly braces, e.g., "\{BOLD}",
and may include a color-pair (C1 or C2 in this example).
- <STRONG>o</STRONG> The parameters in the header are written out only if they are
+ <STRONG>o</STRONG> The parameters in the header are written out only if they are
nonzero. When reading back, order does not matter.
Running the same program with Solaris <EM>xpg4</EM> curses gives this dump:
@@ -361,13 +362,13 @@
9,19,0,0,
CUR=11,5
- Solaris <STRONG>getwin</STRONG> requires that all parameters are present, and in the
- same order. The <EM>xpg4</EM> curses library does not know about the <STRONG>bce</STRONG> (back
+ Solaris <STRONG>getwin</STRONG> requires that all parameters are present, and in the
+ same order. The <EM>xpg4</EM> curses library does not know about the <STRONG>bce</STRONG> (back
color erase) capability, and does not color the window background.
- On the other hand, the SVr4 curses library does know about the back-
- ground color. However, its screen dumps are in binary. Here is the
- corresponding dump (using "od -t x1"):
+ On the other hand, the SVr4 curses library does know about the
+ background color. However, its screen dumps are in binary. Here is
+ the corresponding dump (using "od -t x1"):
0000000 1c 01 c3 d6 f3 58 05 00 0b 00 0a 00 14 00 00 00
0000020 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/doc/html/man/tabs.1.html b/doc/html/man/tabs.1.html
index 8a785fc..0833c81 100644
--- a/doc/html/man/tabs.1.html
+++ b/doc/html/man/tabs.1.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2008-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tabs.1,v 1.27 2020/02/02 23:34:34 tom Exp @
+ * @Id: tabs.1,v 1.32 2021/10/16 13:37:43 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -63,20 +63,21 @@
stty tab0
Like <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>tabs</STRONG> writes to the standard output. You can redirect
- the standard output to a file (which prevents <STRONG>tabs</STRONG> from actually chang-
- ing the tabstops), and later <STRONG>cat</STRONG> the file to the screen, setting tab-
- stops at that point.
-
- These are hardware tabs, which cannot be queried rapidly by applica-
- tions running in the terminal, if at all. Curses and other full-screen
- applications may use hardware tabs in optimizing their output to the
- terminal. If the hardware tabstops differ from the information in the
- terminal database, the result is unpredictable. Before running curses
- programs, you should either reset tab-stops to the standard interval
+ the standard output to a file (which prevents <STRONG>tabs</STRONG> from actually
+ changing the tabstops), and later <STRONG>cat</STRONG> the file to the screen, setting
+ tabstops at that point.
+
+ These are hardware tabs, which cannot be queried rapidly by
+ applications running in the terminal, if at all. Curses and other
+ full-screen applications may use hardware tabs in optimizing their
+ output to the terminal. If the hardware tabstops differ from the
+ information in the terminal database, the result is unpredictable.
+ Before running curses programs, you should either reset tab-stops to
+ the standard interval
tabs -8
- or use the <STRONG>reset</STRONG> program, since the normal initialization sequences do
+ or use the <STRONG>reset</STRONG> program, since the normal initialization sequences do
not ensure that tab-stops are reset.
@@ -84,29 +85,29 @@
</PRE><H3><a name="h3-General-Options">General Options</a></H3><PRE>
<STRONG>-T</STRONG><EM>name</EM>
- Tell <STRONG>tabs</STRONG> which terminal type to use. If this option is not
- given, <STRONG>tabs</STRONG> will use the <STRONG>$TERM</STRONG> environment variable. If that is
+ Tell <STRONG>tabs</STRONG> which terminal type to use. If this option is not
+ given, <STRONG>tabs</STRONG> will use the <STRONG>$TERM</STRONG> environment variable. If that is
not set, it will use the <EM>ansi+tabs</EM> entry.
- <STRONG>-d</STRONG> The debugging option shows a ruler line, followed by two data
- lines. The first data line shows the expected tab-stops marked
- with asterisks. The second data line shows the actual tab-stops,
+ <STRONG>-d</STRONG> The debugging option shows a ruler line, followed by two data
+ lines. The first data line shows the expected tab-stops marked
+ with asterisks. The second data line shows the actual tab-stops,
marked with asterisks.
- <STRONG>-n</STRONG> This option tells <STRONG>tabs</STRONG> to check the options and run any debugging
+ <STRONG>-n</STRONG> This option tells <STRONG>tabs</STRONG> to check the options and run any debugging
option, but not to modify the terminal settings.
<STRONG>-V</STRONG> reports the version of ncurses which was used in this program, and
exits.
The <STRONG>tabs</STRONG> program processes a single list of tab stops. The last option
- to be processed which defines a list is the one that determines the
+ to be processed which defines a list is the one that determines the
list to be processed.
</PRE><H3><a name="h3-Implicit-Lists">Implicit Lists</a></H3><PRE>
- Use a single number as an option, e.g., "<STRONG>-5</STRONG>" to set tabs at the given
- interval (in this case 1, 6, 11, 16, 21, etc.). Tabs are repeated up
+ Use a single number as an option, e.g., "<STRONG>-5</STRONG>" to set tabs at the given
+ interval (in this case 1, 6, 11, 16, 21, etc.). Tabs are repeated up
to the right margin of the screen.
Use "<STRONG>-0</STRONG>" to clear all tabs.
@@ -115,15 +116,15 @@
</PRE><H3><a name="h3-Explicit-Lists">Explicit Lists</a></H3><PRE>
- An explicit list can be defined after the options (this does not use a
- "-"). The values in the list must be in increasing numeric order, and
- greater than zero. They are separated by a comma or a blank, for exam-
- ple,
+ An explicit list can be defined after the options (this does not use a
+ "-"). The values in the list must be in increasing numeric order, and
+ greater than zero. They are separated by a comma or a blank, for
+ example,
tabs 1,6,11,16,21
tabs 1 6 11 16 21
- Use a "+" to treat a number as an increment relative to the previous
+ Use a "+" to treat a number as an increment relative to the previous
value, e.g.,
tabs 1,+5,+5,+5,+5
@@ -132,57 +133,102 @@
</PRE><H3><a name="h3-Predefined-Tab-Stops">Predefined Tab-Stops</a></H3><PRE>
- X/Open defines several predefined lists of tab stops.
+ POSIX defines several predefined lists of tab stops.
<STRONG>-a</STRONG> Assembler, IBM S/370, first format
+ 1,10,16,36,72
<STRONG>-a2</STRONG> Assembler, IBM S/370, second format
+ 1,10,16,40,72
<STRONG>-c</STRONG> COBOL, normal format
+ 1,8,12,16,20,55
<STRONG>-c2</STRONG> COBOL compact format
+ 1,6,10,14,49
<STRONG>-c3</STRONG> COBOL compact format extended
+ 1,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,67
<STRONG>-f</STRONG> FORTRAN
+ 1,7,11,15,19,23
<STRONG>-p</STRONG> PL/I
+ 1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61
<STRONG>-s</STRONG> SNOBOL
+ 1,10,55
<STRONG>-u</STRONG> UNIVAC 1100 Assembler
+ 1,12,20,44
+
+
+</PRE><H3><a name="h3-Margins">Margins</a></H3><PRE>
+ A few terminals provide the capability for changing their left/right
+ margins. The tabs program has an option to use this feature:
+
+ <STRONG>+m</STRONG> <EM>margin</EM>
+ The effect depends on whether the terminal has the margin
+ capabilities:
+
+ <STRONG>o</STRONG> If the terminal provides the capability for setting the left
+ margin, tabs uses this, and adjusts the available width for
+ tab-stops.
+
+ <STRONG>o</STRONG> If the terminal does not provide the margin capabilities, tabs
+ imitates the effect, putting the tab stops at the appropriate
+ place on each line. The terminal's left-margin is not
+ modified.
+
+ If the <EM>margin</EM> parameter is omitted, the default is 10. Use <STRONG>+m0</STRONG> to
+ reset the left margin, i.e., to the left edge of the terminal's
+ display. Before setting a left-margin, tabs resets the margin to
+ reduce problems which might arise on moving the cursor before the
+ current left-margin.
+
+ When setting or resetting the left-margin, tabs may reset the right-
+ margin.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- <EM>IEEE</EM> <EM>Std</EM> <EM>1003.1/The</EM> <EM>Open</EM> <EM>Group</EM> <EM>Base</EM> <EM>Specifications</EM> <EM>Issue</EM> <EM>7</EM>
+ <EM>IEEE</EM> <EM>Std</EM> <EM>1003.1/The</EM> <EM>Open</EM> <EM>Group</EM> <EM>Base</EM> <EM>Specifications</EM> <EM>Issue</EM> <EM>7</EM>
(POSIX.1-2008) describes a <STRONG>tabs</STRONG> utility. However
- <STRONG>o</STRONG> This standard describes a <STRONG>+m</STRONG> option, to set a terminal's left-mar-
- gin. Very few of the entries in the terminal database provide the
- <STRONG>smgl</STRONG> (<STRONG>set_left_margin</STRONG>) or <STRONG>smglp</STRONG> (<STRONG>set_left_margin_parm</STRONG>) capability
- needed to support the feature.
+ <STRONG>o</STRONG> This standard describes a <STRONG>+m</STRONG> option, to set a terminal's left-
+ margin. Very few of the entries in the terminal database provide
+ the <STRONG>smgl</STRONG> (<STRONG>set_left_margin</STRONG>) or <STRONG>smglp</STRONG> (<STRONG>set_left_margin_parm</STRONG>)
+ capability needed to support the feature.
- <STRONG>o</STRONG> There is no counterpart in X/Open Curses Issue 7 for this utility,
- unlike <STRONG>tput(1)</STRONG>.
+ <STRONG>o</STRONG> There is no counterpart in X/Open Curses Issue 7 for this utility,
+ unlike <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>.
- The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions not provided by
+ The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions not provided by
other implementations.
- A <STRONG>tabs</STRONG> utility appeared in PWB/Unix 1.0 (1977). There was a reduced
- version of the <STRONG>tabs</STRONG> utility in Unix 7th edition and in 3BSD (1979).
- The latter supported a single "-n" option (to cause the first tab stop
+ A <STRONG>tabs</STRONG> utility appeared in PWB/Unix 1.0 (1977). There was a reduced
+ version of the <STRONG>tabs</STRONG> utility in Unix 7th edition and in 3BSD (1979).
+ The latter supported a single "-n" option (to cause the first tab stop
to be set on the left margin). That option is not documented by POSIX.
- The PWB/Unix <STRONG>tabs</STRONG> utility, which was included in System III (1980),
- used built-in tables rather than the terminal database, to support a
- half-dozen terminal types. It also had built-in logic to support the
- left-margin, as well as a feature for copying the tab settings from a
- file.
-
- Later versions of Unix, e.g., SVr4, added support for the terminal
- database, but kept the tables, as a fallback. In an earlier develop-
- ment effort, the tab-stop initialization provided by <STRONG>tset</STRONG> (1982) and
- incorporated into <STRONG>tput</STRONG> uses the terminal database,
+ The PWB/Unix <STRONG>tabs</STRONG> utility, which was included in System III (1980),
+ used built-in tables rather than the terminal database, to support a
+ half-dozen hardcopy terminal (printer) types. It also had built-in
+ logic to support the left-margin, as well as a feature for copying the
+ tab settings from a file.
+
+ Later versions of Unix, e.g., SVr4, added support for the terminal
+ database, but kept the tables to support the printers. In an earlier
+ development effort, the tab-stop initialization provided by <STRONG>tset</STRONG> (1982)
+ and incorporated into <STRONG>tput</STRONG> uses the terminal database,
+
+ The <STRONG>+m</STRONG> option was documented in the Base Specifications Issue 5
+ (Unix98, 1997), and omitted in Issue 6 (Unix03, 2004) without
+ documenting the rationale, though an introductory comment <EM>"and</EM>
+ <EM>optionally</EM> <EM>adjusts</EM> <EM>the</EM> <EM>margin"</EM> remains, overlooked in the removal. The
+ documented <STRONG>tabs</STRONG> utility in Issues 6 and later has no mechanism for
+ setting margins. The <STRONG>+m</STRONG> option in this implementation differs from the
+ feature in SVr4 by using terminal capabilities rather than built-in
+ tables.
POSIX documents no limits on the number of tab stops. Documentation
for other implementations states that there is a limit on the number of
@@ -198,15 +244,15 @@
no known historical version of tabs supports the capability of
setting arbitrary tab stops.
- However, the <EM>Explicit</EM> <EM>Lists</EM> described in this manual page were imple-
- mented in PWB/Unix. Those provide the capability of setting abitrary
- tab stops.
+ However, the <EM>Explicit</EM> <EM>Lists</EM> described in this manual page were
+ implemented in PWB/Unix. Those provide the capability of setting
+ abitrary tab stops.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
+ <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
@@ -223,6 +269,7 @@
<li><a href="#h3-Implicit-Lists">Implicit Lists</a></li>
<li><a href="#h3-Explicit-Lists">Explicit Lists</a></li>
<li><a href="#h3-Predefined-Tab-Stops">Predefined Tab-Stops</a></li>
+<li><a href="#h3-Margins">Margins</a></li>
</ul>
</li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
diff --git a/doc/html/man/term.5.html b/doc/html/man/term.5.html
index bc60a21..941c2d8 100644
--- a/doc/html/man/term.5.html
+++ b/doc/html/man/term.5.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: term.5,v 1.33 2020/02/02 23:34:34 tom Exp @
+ * @Id: term.5,v 1.40 2021/08/15 19:38:47 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -65,108 +65,139 @@
A two-level scheme is used to avoid a linear search of a huge UNIX
system directory: <STRONG>/usr/share/terminfo/c/name</STRONG> where <EM>name</EM> is the
name of the terminal, and <EM>c</EM> is the first character of <EM>name</EM>. Thus,
- <EM>act4</EM> can be found in the file <STRONG>/usr/share/terminfo/a/act4</STRONG>. Syn-
- onyms for the same terminal are implemented by multiple links to
- the same compiled file.
+ <EM>act4</EM> can be found in the file <STRONG>/usr/share/terminfo/a/act4</STRONG>.
+ Synonyms for the same terminal are implemented by multiple links
+ to the same compiled file.
<STRONG>hashed</STRONG> <STRONG>database</STRONG>
- Using Berkeley database, two types of records are stored: the ter-
- minfo data in the same format as stored in a directory tree with
- the terminfo's primary name as a key, and records containing only
- aliases pointing to the primary name.
+ Using Berkeley database, two types of records are stored: the
+ terminfo data in the same format as stored in a directory tree
+ with the terminfo's primary name as a key, and records containing
+ only aliases pointing to the primary name.
- If built to write hashed databases, <STRONG>ncurses</STRONG> can still read ter-
- minfo databases organized as a directory tree, but cannot write
+ If built to write hashed databases, <STRONG>ncurses</STRONG> can still read
+ terminfo databases organized as a directory tree, but cannot write
entries into the directory tree. It can write (or rewrite)
entries in the hashed database.
- <STRONG>ncurses</STRONG> distinguishes the two cases in the TERMINFO and TER-
- MINFO_DIRS environment variable by assuming a directory tree for
- entries that correspond to an existing directory, and hashed data-
- base otherwise.
+ <STRONG>ncurses</STRONG> distinguishes the two cases in the TERMINFO and
+ TERMINFO_DIRS environment variable by assuming a directory tree
+ for entries that correspond to an existing directory, and hashed
+ database otherwise.
</PRE><H3><a name="h3-LEGACY-STORAGE-FORMAT">LEGACY STORAGE FORMAT</a></H3><PRE>
The format has been chosen so that it will be the same on all hardware.
- An 8 or more bit byte is assumed, but no assumptions about byte order-
- ing or sign extension are made.
+ An 8 or more bit byte is assumed, but no assumptions about byte
+ ordering or sign extension are made.
- The compiled file is created with the <STRONG>tic</STRONG> program, and read by the rou-
- tine <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>. The file is divided into six parts: the header,
- terminal names, boolean flags, numbers, strings, and string table.
+ The compiled file is created with the <STRONG>tic</STRONG> program, and read by the
+ routine <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>. The file is divided into six parts:
- The header section begins the file. This section contains six short
+ a) <EM>header</EM>,
+
+ b) <EM>terminal</EM> <EM>names</EM>,
+
+ c) <EM>boolean</EM> <EM>flags</EM>,
+
+ d) <EM>numbers</EM>,
+
+ e) <EM>strings</EM>, and
+
+ f) <EM>string</EM> <EM>table</EM>.
+
+ The <EM>header</EM> section begins the file. This section contains six short
integers in the format described below. These integers are
- (1) the magic number (octal 0432);
+ (1) the <EM>magic</EM> <EM>number</EM> (octal 0432);
+
+ (2) the size, in bytes, of the <EM>terminal</EM> <EM>names</EM> section;
+
+ (3) the number of bytes in the <EM>boolean</EM> <EM>flags</EM> section;
- (2) the size, in bytes, of the names section;
+ (4) the number of short integers in the <EM>numbers</EM> section;
- (3) the number of bytes in the boolean section;
+ (5) the number of offsets (short integers) in the <EM>strings</EM> section;
- (4) the number of short integers in the numbers section;
+ (6) the size, in bytes, of the <EM>string</EM> <EM>table</EM>.
- (5) the number of offsets (short integers) in the strings section;
+ The capabilities in the <EM>boolean</EM> <EM>flags</EM>, <EM>numbers</EM>, and <EM>strings</EM> sections
+ are in the same order as the file &lt;term.h&gt;.
- (6) the size, in bytes, of the string table.
+ Short integers are signed, in the range -32768 to 32767. They are
+ stored as two 8-bit bytes. The first byte contains the least
+ significant 8 bits of the value, and the second byte contains the most
+ significant 8 bits. (Thus, the value represented is 256*second+first.)
+ This format corresponds to the hardware of the VAX and PDP-11 (that is,
+ little-endian machines). Machines where this does not correspond to
+ the hardware must read the integers as two bytes and compute the
+ little-endian value.
- Short integers are stored in two 8-bit bytes. The first byte contains
- the least significant 8 bits of the value, and the second byte contains
- the most significant 8 bits. (Thus, the value represented is 256*sec-
- ond+first.) The value -1 is represented by the two bytes 0377, 0377;
- other negative values are illegal. This value generally means that the
- corresponding capability is missing from this terminal. Note that this
- format corresponds to the hardware of the VAX and PDP-11 (that is, lit-
- tle-endian machines). Machines where this does not correspond to the
- hardware must read the integers as two bytes and compute the little-
- endian value.
+ Numbers in a terminal description, whether they are entries in the
+ <EM>numbers</EM> or <EM>strings</EM> table, are positive integers. Boolean flags are
+ treated as positive one-byte integers. In each case, those positive
+ integers represent a terminal capability. The terminal compiler tic
+ uses negative integers to handle the cases where a capability is not
+ available:
- The terminal names section comes next. It contains the first line of
- the terminfo description, listing the various names for the terminal,
- separated by the "|" character. The section is terminated with an
- ASCII NUL character.
+ <STRONG>o</STRONG> If a capability is absent from this terminal, tic stores a -1 in
+ the corresponding table.
- The boolean flags have one byte for each flag. This byte is either 0
- or 1 as the flag is present or absent. The capabilities are in the
- same order as the file &lt;term.h&gt;.
+ The integer value -1 is represented by two bytes 0377, 0377.
+ Absent boolean values are represented by the byte 0 (false).
- Between the boolean section and the number section, a null byte will be
- inserted, if necessary, to ensure that the number section begins on an
- even byte (this is a relic of the PDP-11's word-addressed architecture,
- originally designed in to avoid IOT traps induced by addressing a word
- on an odd byte boundary). All short integers are aligned on a short
- word boundary.
+ <STRONG>o</STRONG> If a capability has been canceled from this terminal, tic stores a
+ -2 in the corresponding table.
- The numbers section is similar to the flags section. Each capability
- takes up two bytes, and is stored as a little-endian short integer. If
- the value represented is -1, the capability is taken to be missing.
+ The integer value -2 is represented by two bytes 0377, 0376.
+ The boolean value -2 is represented by the byte 0376.
- The strings section is also similar. Each capability is stored as a
- short integer, in the format above. A value of -1 means the capability
- is missing. Otherwise, the value is taken as an offset from the begin-
- ning of the string table. Special characters in ^X or \c notation are
- stored in their interpreted form, not the printing representation.
- Padding information $&lt;nn&gt; and parameter information %x are stored
- intact in uninterpreted form.
+ <STRONG>o</STRONG> Other negative values are illegal.
- The final section is the string table. It contains all the values of
- string capabilities referenced in the string section. Each string is
- null terminated.
+ The <EM>terminal</EM> <EM>names</EM> section comes after the <EM>header</EM>. It contains the
+ first line of the terminfo description, listing the various names for
+ the terminal, separated by the "|" character. The <EM>terminal</EM> <EM>names</EM>
+ section is terminated with an ASCII NUL character.
+
+ The <EM>boolean</EM> <EM>flags</EM> section has one byte for each flag. Boolean
+ capabilities are either 1 or 0 (true or false) according to whether the
+ terminal supports the given capability or not.
+
+ Between the <EM>boolean</EM> <EM>flags</EM> section and the <EM>number</EM> section, a null byte
+ will be inserted, if necessary, to ensure that the <EM>number</EM> section
+ begins on an even byte This is a relic of the PDP-11's word-addressed
+ architecture, originally designed to avoid traps induced by addressing
+ a word on an odd byte boundary. All short integers are aligned on a
+ short word boundary.
+
+ The <EM>numbers</EM> section is similar to the <EM>boolean</EM> <EM>flags</EM> section. Each
+ capability takes up two bytes, and is stored as a little-endian short
+ integer.
+
+ The <EM>strings</EM> section is also similar. Each capability is stored as a
+ short integer. The capability value is an index into the <EM>string</EM> <EM>table</EM>.
+
+ The <EM>string</EM> <EM>table</EM> is the last section. It contains all of the values of
+ string capabilities referenced in the <EM>strings</EM> section. Each string is
+ null-terminated. Special characters in ^X or \c notation are stored in
+ their interpreted form, not the printing representation. Padding
+ information $&lt;nn&gt; and parameter information %x are stored intact in
+ uninterpreted form.
</PRE><H3><a name="h3-EXTENDED-STORAGE-FORMAT">EXTENDED STORAGE FORMAT</a></H3><PRE>
The previous section describes the conventional terminfo binary format.
- With some minor variations of the offsets (see PORTABILITY), the same
- binary format is used in all modern UNIX systems. Each system uses a
+ With some minor variations of the offsets (see PORTABILITY), the same
+ binary format is used in all modern UNIX systems. Each system uses a
predefined set of boolean, number or string capabilities.
The <STRONG>ncurses</STRONG> libraries and applications support extended terminfo binary
- format, allowing users to define capabilities which are loaded at run-
- time. This extension is made possible by using the fact that the other
- implementations stop reading the terminfo data when they have reached
- the end of the size given in the header. <STRONG>ncurses</STRONG> checks the size, and
- if it exceeds that due to the predefined data, continues to parse
- according to its own scheme.
+ format, allowing users to define capabilities which are loaded at
+ runtime. This extension is made possible by using the fact that the
+ other implementations stop reading the terminfo data when they have
+ reached the end of the size given in the header. <STRONG>ncurses</STRONG> checks the
+ size, and if it exceeds that due to the predefined data, continues to
+ parse according to its own scheme.
First, it reads the extended header (5 short integers):
@@ -180,103 +211,103 @@
(5) size of the extended string table in bytes
- The count- and size-values for the extended string table include the
+ The count- and size-values for the extended string table include the
extended capability <EM>names</EM> as well as extended capability <EM>values</EM>.
Using the counts and sizes, <STRONG>ncurses</STRONG> allocates arrays and reads data for
the extended capabilities in the same order as the header information.
- The extended string table contains values for string capabilities.
- After the end of these values, it contains the names for each of the
- extended capabilities in order, e.g., booleans, then numbers and
+ The extended string table contains values for string capabilities.
+ After the end of these values, it contains the names for each of the
+ extended capabilities in order, e.g., booleans, then numbers and
finally strings.
- Applications which manipulate terminal data can use the definitions
- described in <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG> which associate the long capability
+ Applications which manipulate terminal data can use the definitions
+ described in <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG> which associate the long capability
names with members of a <STRONG>TERMTYPE</STRONG> structure.
</PRE><H3><a name="h3-EXTENDED-NUMBER-FORMAT">EXTENDED NUMBER FORMAT</a></H3><PRE>
On occasion, 16-bit signed integers are not large enough. With <STRONG>ncurses</STRONG>
- 6.1, a new format was introduced by making a few changes to the legacy
+ 6.1, a new format was introduced by making a few changes to the legacy
format:
<STRONG>o</STRONG> a different magic number (octal 01036)
- <STRONG>o</STRONG> changing the type for the <EM>number</EM> array from signed 16-bit integers
+ <STRONG>o</STRONG> changing the type for the <EM>number</EM> array from signed 16-bit integers
to signed 32-bit integers.
- To maintain compatibility, the library presents the same data struc-
- tures to direct users of the <STRONG>TERMTYPE</STRONG> structure as in previous formats.
- However, that cannot provide callers with the extended numbers. The
- library uses a similar but hidden data structure <STRONG>TERMTYPE2</STRONG> to provide
- data for the terminfo functions.
+ To maintain compatibility, the library presents the same data
+ structures to direct users of the <STRONG>TERMTYPE</STRONG> structure as in previous
+ formats. However, that cannot provide callers with the extended
+ numbers. The library uses a similar but hidden data structure
+ <STRONG>TERMTYPE2</STRONG> to provide data for the terminfo functions.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
</PRE><H3><a name="h3-setupterm">setupterm</a></H3><PRE>
- Note that it is possible for <STRONG>setupterm</STRONG> to expect a different set of
- capabilities than are actually present in the file. Either the data-
- base may have been updated since <STRONG>setupterm</STRONG> has been recompiled (result-
- ing in extra unrecognized entries in the file) or the program may have
- been recompiled more recently than the database was updated (resulting
- in missing entries). The routine <STRONG>setupterm</STRONG> must be prepared for both
- possibilities - this is why the numbers and sizes are included. Also,
- new capabilities must always be added at the end of the lists of bool-
- ean, number, and string capabilities.
+ Note that it is possible for <STRONG>setupterm</STRONG> to expect a different set of
+ capabilities than are actually present in the file. Either the
+ database may have been updated since <STRONG>setupterm</STRONG> was recompiled
+ (resulting in extra unrecognized entries in the file) or the program
+ may have been recompiled more recently than the database was updated
+ (resulting in missing entries). The routine <STRONG>setupterm</STRONG> must be prepared
+ for both possibilities - this is why the numbers and sizes are
+ included. Also, new capabilities must always be added at the end of
+ the lists of boolean, number, and string capabilities.
</PRE><H3><a name="h3-Binary-format">Binary format</a></H3><PRE>
- X/Open Curses does not specify a format for the terminfo database.
- UNIX System V curses used a directory-tree of binary files, one per
+ X/Open Curses does not specify a format for the terminfo database.
+ UNIX System V curses used a directory-tree of binary files, one per
terminal description.
- Despite the consistent use of little-endian for numbers and the other-
- wise self-describing format, it is not wise to count on portability of
- binary terminfo entries between commercial UNIX versions. The problem
- is that there are at least three versions of terminfo (under HP-UX,
- AIX, and OSF/1) which diverged from System V terminfo after SVr1, and
- have added extension capabilities to the string table that (in the
- binary format) collide with System V and XSI Curses extensions. See
- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for detailed discussion of terminfo source compatibility
- issues.
-
- This implementation is by default compatible with the binary terminfo
- format used by Solaris curses, except in a few less-used details where
- it was found that the latter did not match X/Open Curses. The format
+ Despite the consistent use of little-endian for numbers and the
+ otherwise self-describing format, it is not wise to count on
+ portability of binary terminfo entries between commercial UNIX
+ versions. The problem is that there are at least three versions of
+ terminfo (under HP-UX, AIX, and OSF/1) which diverged from System V
+ terminfo after SVr1, and have added extension capabilities to the
+ string table that (in the binary format) collide with System V and XSI
+ Curses extensions. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for detailed discussion of terminfo
+ source compatibility issues.
+
+ This implementation is by default compatible with the binary terminfo
+ format used by Solaris curses, except in a few less-used details where
+ it was found that the latter did not match X/Open Curses. The format
used by the other Unix versions can be matched by building ncurses with
different configuration options.
</PRE><H3><a name="h3-Magic-codes">Magic codes</a></H3><PRE>
- The magic number in a binary terminfo file is the first 16-bits (two
- bytes). Besides making it more reliable for the library to check that
- a file is terminfo, utilities such as <STRONG>file</STRONG> also use that to tell what
- the file-format is. System V defined more than one magic number, with
+ The magic number in a binary terminfo file is the first 16-bits (two
+ bytes). Besides making it more reliable for the library to check that
+ a file is terminfo, utilities such as <STRONG>file</STRONG> also use that to tell what
+ the file-format is. System V defined more than one magic number, with
0433, 0435 as screen-dumps (see <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>). This implementation uses
- 01036 as a continuation of that sequence, but with a different high-
+ 01036 as a continuation of that sequence, but with a different high-
order byte to avoid confusion.
</PRE><H3><a name="h3-The-TERMTYPE-structure">The TERMTYPE structure</a></H3><PRE>
- Direct access to the <STRONG>TERMTYPE</STRONG> structure is provided for legacy applica-
- tions. Portable applications should use the <STRONG>tigetflag</STRONG> and related
- functions described in <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> for reading terminal capabili-
- ties.
+ Direct access to the <STRONG>TERMTYPE</STRONG> structure is provided for legacy
+ applications. Portable applications should use the <STRONG>tigetflag</STRONG> and
+ related functions described in <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> for reading terminal
+ capabilities.
</PRE><H3><a name="h3-Mixed-case-terminal-names">Mixed-case terminal names</a></H3><PRE>
- A small number of terminal descriptions use uppercase characters in
- their names. If the underlying filesystem ignores the difference
- between uppercase and lowercase, <STRONG>ncurses</STRONG> represents the "first charac-
- ter" of the terminal name used as the intermediate level of a directory
- tree in (two-character) hexadecimal form.
+ A small number of terminal descriptions use uppercase characters in
+ their names. If the underlying filesystem ignores the difference
+ between uppercase and lowercase, <STRONG>ncurses</STRONG> represents the "first
+ character" of the terminal name used as the intermediate level of a
+ directory tree in (two-character) hexadecimal form.
</PRE><H2><a name="h2-EXAMPLE">EXAMPLE</a></H2><PRE>
- As an example, here is a description for the Lear-Siegler ADM-3, a pop-
- ular though rather stupid early terminal:
+ As an example, here is a description for the Lear-Siegler ADM-3, a
+ popular though rather stupid early terminal:
adm3a|lsi adm3a,
am,
@@ -316,17 +347,22 @@
</PRE><H2><a name="h2-LIMITS">LIMITS</a></H2><PRE>
Some limitations:
- <STRONG>o</STRONG> total compiled entries cannot exceed 4096 bytes in the legacy for-
- mat.
+ <STRONG>o</STRONG> total compiled entries cannot exceed 4096 bytes in the legacy
+ format.
- <STRONG>o</STRONG> total compiled entries cannot exceed 32768 bytes in the extended
+ <STRONG>o</STRONG> total compiled entries cannot exceed 32768 bytes in the extended
format.
<STRONG>o</STRONG> the name field cannot exceed 128 bytes.
+ Compiled entries are limited to 32768 bytes because offsets into the
+ <EM>strings</EM> <EM>table</EM> use two-byte integers. The legacy format could have
+ supported 32768-byte entries, but was limited a virtual memory page's
+ 4096 bytes.
+
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
- /usr/share/terminfo/*/* compiled terminal capability data base
+ /usr/share/terminfo/*/* compiled terminal capability database
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
diff --git a/doc/html/man/term.7.html b/doc/html/man/term.7.html
index a967141..e9d3512 100644
--- a/doc/html/man/term.7.html
+++ b/doc/html/man/term.7.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2011,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: term.7,v 1.28 2020/02/02 23:34:34 tom Exp @
+ * @Id: term.7,v 1.30 2021/08/15 19:39:57 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -58,8 +58,8 @@
A default <STRONG>TERM</STRONG> value will be set on a per-line basis by either
<STRONG>/etc/inittab</STRONG> (e.g., System-V-like UNIXes) or <STRONG>/etc/ttys</STRONG> (BSD UNIXes).
- This will nearly always suffice for workstation and microcomputer con-
- soles.
+ This will nearly always suffice for workstation and microcomputer
+ consoles.
If you use a dialup line, the type of device attached to it may vary.
Older UNIX systems pre-set a very dumb terminal type like "dumb" or
@@ -69,10 +69,10 @@
Modern telnets pass your <STRONG>TERM</STRONG> environment variable from the local side
to the remote one. There can be problems if the remote terminfo or
- termcap entry for your type is not compatible with yours, but this sit-
- uation is rare and can almost always be avoided by explicitly exporting
- "vt100" (assuming you are in fact using a VT100-superset console, ter-
- minal, or terminal emulator.)
+ termcap entry for your type is not compatible with yours, but this
+ situation is rare and can almost always be avoided by explicitly
+ exporting "vt100" (assuming you are in fact using a VT100-superset
+ console, terminal, or terminal emulator).
In any case, you are free to override the system <STRONG>TERM</STRONG> setting to your
taste in your shell profile. The <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG> utility may be of assistance;
@@ -90,10 +90,10 @@
toe | more
- from your shell. These capability files are in a binary format opti-
- mized for retrieval speed (unlike the old text-based <STRONG>termcap</STRONG> format
- they replace); to examine an entry, you must use the <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> com-
- mand. Invoke it as follows:
+ from your shell. These capability files are in a binary format
+ optimized for retrieval speed (unlike the old text-based <STRONG>termcap</STRONG> format
+ they replace); to examine an entry, you must use the <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
+ command. Invoke it as follows:
infocmp <EM>entry</EM><STRONG>_</STRONG><EM>name</EM>
@@ -109,21 +109,21 @@
name field (if distinct from the first) is actually a description of
the terminal type (it may contain blanks; the others must be single
words). Name fields between the first and last (if present) are
- aliases for the terminal, usually historical names retained for compat-
- ibility.
+ aliases for the terminal, usually historical names retained for
+ compatibility.
There are some conventions for how to choose terminal primary names
that help keep them informative and unique. Here is a step-by-step
guide to naming terminals that also explains how to parse them:
- First, choose a root name. The root will consist of a lower-case let-
- ter followed by up to seven lower-case letters or digits. You need to
- avoid using punctuation characters in root names, because they are used
- and interpreted as filenames and shell meta-characters (such as !, $,
- *, ?, etc.) embedded in them may cause odd and unhelpful behavior. The
- slash (/), or any other character that may be interpreted by anyone's
- file system (\, $, [, ]), is especially dangerous (terminfo is plat-
- form-independent, and choosing names with special characters could
+ First, choose a root name. The root will consist of a lower-case
+ letter followed by up to seven lower-case letters or digits. You need
+ to avoid using punctuation characters in root names, because they are
+ used and interpreted as filenames and shell meta-characters (such as !,
+ $, *, ?, etc.) embedded in them may cause odd and unhelpful behavior.
+ The slash (/), or any other character that may be interpreted by
+ anyone's file system (\, $, [, ]), is especially dangerous (terminfo is
+ platform-independent, and choosing names with special characters could
someday make life difficult for users of a future port). The dot (.)
character is relatively safe as long as there is at most one per root
name; some historical terminfo names use it.
@@ -144,18 +144,18 @@
or the console driver release level.
The root name for a terminal emulator (assuming it does not fit one of
- the standard ANSI or vt100 types) should be the program name or a read-
- ily recognizable abbreviation of it (i.e., <STRONG>versaterm</STRONG>, <STRONG>ctrm</STRONG>).
+ the standard ANSI or vt100 types) should be the program name or a
+ readily recognizable abbreviation of it (i.e., <STRONG>versaterm</STRONG>, <STRONG>ctrm</STRONG>).
Following the root name, you may add any reasonable number of hyphen-
separated feature suffixes.
2p Has two pages of memory. Likewise 4p, 8p, etc.
- mc Magic-cookie. Some terminals (notably older Wyses) can only sup-
- port one attribute without magic-cookie lossage. Their base entry
- is usually paired with another that has this suffix and uses magic
- cookies to support multiple attributes.
+ mc Magic-cookie. Some terminals (notably older Wyses) can only
+ support one attribute without magic-cookie lossage. Their base
+ entry is usually paired with another that has this suffix and uses
+ magic cookies to support multiple attributes.
-am Enable auto-margin (right-margin wraparound).
@@ -191,8 +191,8 @@
Commands which use a terminal type to control display often accept a -T
option that accepts a terminal name argument. Such programs should
- fall back on the <STRONG>TERM</STRONG> environment variable when no -T option is speci-
- fied.
+ fall back on the <STRONG>TERM</STRONG> environment variable when no -T option is
+ specified.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
@@ -202,7 +202,7 @@
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
/usr/share/terminfo/?/*
- compiled terminal capability data base
+ compiled terminal capability database
/etc/inittab
tty line initialization (AT&amp;T-like UNIXes)
diff --git a/doc/html/man/term_variables.3x.html b/doc/html/man/term_variables.3x.html
index 8db8399..a61911b 100644
--- a/doc/html/man/term_variables.3x.html
+++ b/doc/html/man/term_variables.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2019,2020 Thomas E. Dickey *
* Copyright 2010-2015,2017 Free Software Foundation, Inc. *
diff --git a/doc/html/man/terminfo.5.html b/doc/html/man/terminfo.5.html
index 4e45c86..0e20061 100644
--- a/doc/html/man/terminfo.5.html
+++ b/doc/html/man/terminfo.5.html
@@ -1,11 +1,11 @@
-<!--
+<!--
* t
* DO NOT EDIT THIS FILE BY HAND!
* It is generated from terminfo.head, ./../include/Caps ./../include/Caps-ncurses, and terminfo.tail.
* Note: this must be run through tbl before nroff.
* The magic cookie on the first line triggers this under some man programs.
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,10 +32,10 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: terminfo.head,v 1.39 2020/02/02 23:34:34 tom Exp @
+ * @Id: terminfo.head,v 1.41 2021/08/15 19:32:53 tom Exp @
* Head of terminfo man page ends here
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -62,7 +62,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: terminfo.tail,v 1.99 2020/02/02 23:34:34 tom Exp @
+ * @Id: terminfo.tail,v 1.108 2021/10/09 23:13:23 tom Exp @
*.in -2
*.in +2
*.in -2
@@ -87,7 +87,7 @@
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- terminfo - terminal capability data base
+ terminfo - terminal capability database
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
@@ -95,44 +95,46 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- <EM>Terminfo</EM> is a data base describing terminals, used by screen-oriented
- programs such as <STRONG>nvi(1)</STRONG>, <STRONG>lynx(1)</STRONG>, <STRONG>mutt(1)</STRONG>, and other curses applica-
- tions, using high-level calls to libraries such as <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. It is
- also used via low-level calls by non-curses applications which may be
- screen-oriented (such as <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>) or non-screen (such as <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>).
+ <EM>Terminfo</EM> is a database describing terminals, used by screen-oriented
+ programs such as <STRONG>nvi(1)</STRONG>, <STRONG>lynx(1)</STRONG>, <STRONG>mutt(1)</STRONG>, and other curses
+ applications, using high-level calls to libraries such as <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
+ It is also used via low-level calls by non-curses applications which
+ may be screen-oriented (such as <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>) or non-screen (such as
+ <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>).
<EM>Terminfo</EM> describes terminals by giving a set of capabilities which they
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences.
- This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This manual describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
Entries in <EM>terminfo</EM> consist of a sequence of fields:
- <STRONG>o</STRONG> Each field ends with a comma "," (embedded commas may be escaped
+ <STRONG>o</STRONG> Each field ends with a comma "," (embedded commas may be escaped
with a backslash or written as "\054").
<STRONG>o</STRONG> White space between fields is ignored.
<STRONG>o</STRONG> The first field in a <EM>terminfo</EM> entry begins in the first column.
- <STRONG>o</STRONG> Newlines and leading whitespace (spaces or tabs) may be used for
- formatting entries for readability. These are removed from parsed
+ <STRONG>o</STRONG> Newlines and leading whitespace (spaces or tabs) may be used for
+ formatting entries for readability. These are removed from parsed
entries.
- The <STRONG>infocmp</STRONG> <STRONG>-f</STRONG> and <STRONG>-W</STRONG> options rely on this to format if-then-else
- expressions, or to enforce maximum line-width. The resulting for-
- matted terminal description can be read by <STRONG>tic</STRONG>.
+ The <STRONG>infocmp</STRONG> <STRONG>-f</STRONG> and <STRONG>-W</STRONG> options rely on this to format if-then-else
+ expressions, or to enforce maximum line-width. The resulting
+ formatted terminal description can be read by <STRONG>tic</STRONG>.
- <STRONG>o</STRONG> The first field for each terminal gives the names which are known
+ <STRONG>o</STRONG> The first field for each terminal gives the names which are known
for the terminal, separated by "|" characters.
- The first name given is the most common abbreviation for the termi-
- nal (its primary name), the last name given should be a long name
- fully identifying the terminal (see <STRONG><A HREF="curs_termattrs.3x.html">longname(3x)</A></STRONG>), and all others
- are treated as synonyms (aliases) for the primary terminal name.
+ The first name given is the most common abbreviation for the
+ terminal (its primary name), the last name given should be a long
+ name fully identifying the terminal (see <STRONG><A HREF="curs_termattrs.3x.html">longname(3x)</A></STRONG>), and all
+ others are treated as synonyms (aliases) for the primary terminal
+ name.
X/Open Curses advises that all names but the last should be in
lower case and contain no blanks; the last name may well contain
@@ -143,20 +145,20 @@
it allows that to be both an alias and a verbose name (but will
warn about this ambiguity).
- <STRONG>o</STRONG> Lines beginning with a "#" in the first column are treated as com-
- ments.
+ <STRONG>o</STRONG> Lines beginning with a "#" in the first column are treated as
+ comments.
While comment lines are legal at any point, the output of <STRONG>captoinfo</STRONG>
and <STRONG>infotocap</STRONG> (aliases for <STRONG>tic</STRONG>) will move comments so they occur
only between entries.
Terminal names (except for the last, verbose entry) should be chosen
- using the following conventions. The particular piece of hardware mak-
- ing up the terminal should have a root name, thus "hp2621". This name
- should not contain hyphens. Modes that the hardware can be in, or user
- preferences, should be indicated by appending a hyphen and a mode suf-
- fix. Thus, a vt100 in 132-column mode would be vt100-w. The following
- suffixes should be used where possible:
+ using the following conventions. The particular piece of hardware
+ making up the terminal should have a root name, thus "hp2621". This
+ name should not contain hyphens. Modes that the hardware can be in, or
+ user preferences, should be indicated by appending a hyphen and a mode
+ suffix. Thus, a vt100 in 132-column mode would be vt100-w. The
+ following suffixes should be used where possible:
<STRONG>Suffix</STRONG> <STRONG>Meaning</STRONG> <STRONG>Example</STRONG>
-<EM>nn</EM> Number of lines on the screen aaa-60
@@ -178,8 +180,8 @@
</PRE><H3><a name="h3-Terminfo-Capabilities-Syntax">Terminfo Capabilities Syntax</a></H3><PRE>
The terminfo entry consists of several <EM>capabilities</EM>, i.e., features
- that the terminal has, or methods for exercising the terminal's fea-
- tures.
+ that the terminal has, or methods for exercising the terminal's
+ features.
After the first field (giving the name(s) of the terminal entry), there
should be one or more <EM>capability</EM> fields. These are boolean, numeric or
@@ -206,9 +208,9 @@
</PRE><H3><a name="h3-Similar-Terminals">Similar Terminals</a></H3><PRE>
If there are two very similar terminals, one (the variant) can be
- defined as being just like the other (the base) with certain excep-
- tions. In the definition of the variant, the string capability <STRONG>use</STRONG> can
- be given with the name of the base terminal:
+ defined as being just like the other (the base) with certain
+ exceptions. In the definition of the variant, the string capability
+ <STRONG>use</STRONG> can be given with the name of the base terminal:
<STRONG>o</STRONG> The capabilities given before <STRONG>use</STRONG> override those in the base type
named by <STRONG>use</STRONG>.
@@ -220,9 +222,9 @@
<STRONG>o</STRONG> Capabilities given explicitly in the entry override those brought
in by <STRONG>use</STRONG> references.
- A capability can be canceled by placing <STRONG>xx@</STRONG> to the left of the use ref-
- erence that imports it, where <EM>xx</EM> is the capability. For example, the
- entry
+ A capability can be canceled by placing <STRONG>xx@</STRONG> to the left of the use
+ reference that imports it, where <EM>xx</EM> is the capability. For example,
+ the entry
2621-nl, smkx@, rmkx@, use=2621,
@@ -248,8 +250,8 @@
used by a person updating the database. Whenever possible, capnames
are chosen to be the same as or similar to the ANSI X3.64-1979 standard
(now superseded by ECMA-48, which uses identical or very similar
- names). Semantics are also intended to match those of the specifica-
- tion.
+ names). Semantics are also intended to match those of the
+ specification.
The termcap code is the old <STRONG>termcap</STRONG> capability name (some capabilities
are new, and have names which termcap did not originate).
@@ -264,7 +266,11 @@
(P) indicates that padding may be specified
#[1-9] in the description field indicates that the string is passed
- through tparm with parms as given (#<EM>i</EM>).
+ through <STRONG><A HREF="curs_terminfo.3x.html">tparm(3x)</A></STRONG> with parameters as given (#<EM>i</EM>).
+
+ If no parameters are listed in the description, passing the
+ string through <STRONG><A HREF="curs_terminfo.3x.html">tparm(3x)</A></STRONG> may give unexpected results, e.g., if
+ it contains percent (%%) signs.
(P*) indicates that padding may vary in proportion to the number of
lines affected
@@ -277,51 +283,53 @@
<STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG>
<STRONG>Booleans</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG>
- auto_left_margin bw bw cub1 wraps from col-
- umn 0 to last column
- auto_right_margin am am terminal has auto-
- matic margins
- back_color_erase bce ut screen erased with
- background color
+ auto_left_margin bw bw cub1 wraps from
+ column 0 to last
+ column
+ auto_right_margin am am terminal has
+ automatic margins
+ back_color_erase bce ut screen erased with
+ background color
can_change ccc cc terminal can re-
- define existing col-
- ors
+ define existing
+ colors
ceol_standout_glitch xhp xs standout not erased
by overwriting (hp)
col_addr_glitch xhpa YA only positive motion
for hpa/mhpa caps
cpi_changes_res cpix YF changing character
- pitch changes reso-
- lution
+ pitch changes
+ resolution
cr_cancels_micro_mode crxm YB using cr turns off
micro mode
dest_tabs_magic_smso xt xt tabs destructive,
magic so char
(t1061)
eat_newline_glitch xenl xn newline ignored
- after 80 cols (con-
- cept)
- erase_overstrike eo eo can erase over-
- strikes with a blank
+ after 80 cols
+ (concept)
+ erase_overstrike eo eo can erase
+ overstrikes with a
+ blank
generic_type gn gn generic line type
hard_copy hc hc hardcopy terminal
hard_cursor chts HC cursor is hard to
see
has_meta_key km km Has a meta key
(i.e., sets 8th-bit)
- has_print_wheel daisy YC printer needs opera-
- tor to change char-
- acter set
+ has_print_wheel daisy YC printer needs
+ operator to change
+ character set
has_status_line hs hs has extra status
line
hue_lightness_saturation hls hl terminal uses only
HLS color notation
(Tektronix)
- insert_null_glitch in in insert mode distin-
- guishes nulls
+ insert_null_glitch in in insert mode
+ distinguishes nulls
lpi_changes_res lpix YG changing line pitch
changes resolution
memory_above da da display may be
@@ -343,15 +351,15 @@
not exist
non_dest_scroll_region ndscr ND scrolling region is
non-destructive
+
non_rev_rmcup nrrmc NR smcup does not
reverse rmcup
- over_strike os os terminal can over-
- strike
+ over_strike os os terminal can
+ overstrike
prtr_silent mc5i 5i printer will not
echo on screen
row_addr_glitch xvpa YD only positive motion
for vpa/mvpa caps
-
semi_auto_right_margin sam YE printing in last
column causes cr
status_line_esc_ok eslok es escape can be used
@@ -409,26 +417,24 @@
with SVr4's printer support.
+
<STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG>
<STRONG>Numeric</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG>
bit_image_entwining bitwin Yo number of passes for
each bit-image row
bit_image_type bitype Yp type of bit-image
device
-
-
-
buffer_capacity bufsz Ya numbers of bytes
buffered before
printing
buttons btns BT number of buttons on
mouse
- dot_horz_spacing spinh Yc spacing of dots hor-
- izontally in dots
+ dot_horz_spacing spinh Yc spacing of dots
+ horizontally in dots
+ per inch
+ dot_vert_spacing spinv Yb spacing of pins
+ vertically in pins
per inch
- dot_vert_spacing spinv Yb spacing of pins ver-
- tically in pins per
- inch
max_micro_address maddr Yd maximum value in
micro_..._address
max_micro_jump mjump Ye maximum value in
@@ -439,18 +445,19 @@
in micro mode
number_of_pins npins Yh numbers of pins in
print-head
- output_res_char orc Yi horizontal resolu-
- tion in units per
- line
- output_res_horz_inch orhi Yk horizontal resolu-
- tion in units per
- inch
+ output_res_char orc Yi horizontal
+ resolution in units
+ per line
+ output_res_horz_inch orhi Yk horizontal
+ resolution in units
+ per inch
output_res_line orl Yj vertical resolution
in units per line
output_res_vert_inch orvi Yl vertical resolution
in units per inch
- print_rate cps Ym print rate in char-
- acters per second
+ print_rate cps Ym print rate in
+ characters per
+ second
wide_char_size widcs Yn character step size
when in double wide
mode
@@ -475,15 +482,15 @@
lines per inch to #1
change_res_horz chr ZC Change horizontal
resolution to #1
- change_res_vert cvr ZD Change vertical res-
- olution to #1
+
+
+ change_res_vert cvr ZD Change vertical
+ resolution to #1
change_scroll_region csr cs change region to
line #1 to line #2
(P)
char_padding rmp rP like ip but when in
insert mode
-
-
clear_all_tabs tbc ct clear all tab stops
(P)
clear_margins mgc MC clear right and left
@@ -503,17 +510,18 @@
prototype !?
create_window cwin CW define a window #1
from #2,#3 to #4,#5
- cursor_address cup cm move to row #1 col-
- umns #2
+ cursor_address cup cm move to row #1
+ columns #2
cursor_down cud1 do down one line
cursor_home home ho home cursor (if no
cup)
- cursor_invisible civis vi make cursor invisi-
- ble
+ cursor_invisible civis vi make cursor
+ invisible
cursor_left cub1 le move left one space
- cursor_mem_address mrcup CM memory relative cur-
- sor addressing, move
- to row #1 columns #2
+ cursor_mem_address mrcup CM memory relative
+ cursor addressing,
+ move to row #1
+ columns #2
cursor_normal cnorm ve make cursor appear
normal (undo
civis/cvvis)
@@ -541,23 +549,23 @@
character set (P)
enter_am_mode smam SA turn on automatic
margins
+
enter_blink_mode blink mb turn on blinking
enter_bold_mode bold md turn on bold (extra
bright) mode
- enter_ca_mode smcup ti string to start pro-
- grams using cup
+ enter_ca_mode smcup ti string to start
+ programs using cup
enter_delete_mode smdc dm enter delete mode
enter_dim_mode dim mh turn on half-bright
mode
-
enter_doublewide_mode swidm ZF Enter double-wide
mode
enter_draft_quality sdrfq ZG Enter draft-quality
mode
enter_insert_mode smir im enter insert mode
enter_italics_mode sitm ZH Enter italic mode
- enter_leftward_mode slm ZI Start leftward car-
- riage motion
+ enter_leftward_mode slm ZI Start leftward
+ carriage motion
enter_micro_mode smicm ZJ Start micro-motion
mode
enter_near_letter_quality snlq ZK Enter NLQ mode
@@ -568,8 +576,8 @@
enter_reverse_mode rev mr turn on reverse
video mode
enter_secure_mode invis mk turn on blank mode
- (characters invisi-
- ble)
+ (characters
+ invisible)
enter_shadow_mode sshm ZM Enter shadow-print
mode
enter_standout_mode smso so begin standout mode
@@ -577,20 +585,20 @@
enter_superscript_mode ssupm ZO Enter superscript
mode
enter_underline_mode smul us begin underline mode
- enter_upward_mode sum ZP Start upward car-
- riage motion
+ enter_upward_mode sum ZP Start upward
+ carriage motion
enter_xon_mode smxon SX turn on xon/xoff
handshaking
erase_chars ech ec erase #1 characters
(P)
- exit_alt_charset_mode rmacs ae end alternate char-
- acter set (P)
+ exit_alt_charset_mode rmacs ae end alternate
+ character set (P)
exit_am_mode rmam RA turn off automatic
margins
exit_attribute_mode sgr0 me turn off all
attributes
- exit_ca_mode rmcup te strings to end pro-
- grams using cup
+ exit_ca_mode rmcup te strings to end
+ programs using cup
exit_delete_mode rmdc ed end delete mode
exit_doublewide_mode rwidm ZQ End double-wide mode
exit_insert_mode rmir ei exit insert mode
@@ -604,18 +612,19 @@
exit_subscript_mode rsubm ZV End subscript mode
exit_superscript_mode rsupm ZW End superscript mode
exit_underline_mode rmul ue exit underline mode
- exit_upward_mode rum ZX End reverse charac-
- ter motion
+ exit_upward_mode rum ZX End reverse
+ character motion
+
+
exit_xon_mode rmxon RX turn off xon/xoff
handshaking
- fixed_pause pause PA pause for 2-3 sec-
- onds
+ fixed_pause pause PA pause for 2-3
+ seconds
flash_hook hook fh flash switch hook
flash_screen flash vb visible bell (may
not move cursor)
form_feed ff ff hardcopy terminal
page eject (P*)
-
from_status_line fsl fs return from status
line
goto_window wingo WG go to window #1
@@ -626,8 +635,8 @@
string
init_3string is3 i3 initialization
string
- init_file if if name of initializa-
- tion file
+ init_file if if name of
+ initialization file
init_prog iprog iP path name of program
for initialization
initialize_color initc Ic initialize color #1
@@ -641,15 +650,15 @@
insert_padding ip ip insert padding after
inserted character
key_a1 ka1 K1 upper left of keypad
- key_a3 ka3 K3 upper right of key-
- pad
+ key_a3 ka3 K3 upper right of
+ keypad
key_b2 kb2 K2 center of keypad
key_backspace kbs kb backspace key
key_beg kbeg @1 begin key
key_btab kcbt kB back-tab key
key_c1 kc1 K4 lower left of keypad
- key_c3 kc3 K5 lower right of key-
- pad
+ key_c3 kc3 K5 lower right of
+ keypad
key_cancel kcan @2 cancel key
key_catab ktbc ka clear-all-tabs key
key_clear kclr kC clear-screen or
@@ -672,6 +681,7 @@
screen key
key_exit kext @9 exit key
key_f0 kf0 k0 F0 function key
+
key_f1 kf1 k1 F1 function key
key_f10 kf10 k; F10 function key
key_f11 kf11 F1 F11 function key
@@ -681,7 +691,6 @@
key_f15 kf15 F5 F15 function key
key_f16 kf16 F6 F16 function key
key_f17 kf17 F7 F17 function key
-
key_f18 kf18 F8 F18 function key
key_f19 kf19 F9 F19 function key
key_f2 kf2 k2 F2 function key
@@ -738,6 +747,7 @@
key_f9 kf9 k9 F9 function key
key_find kfnd @0 find key
key_help khlp %1 help key
+
key_home khome kh home key
key_ic kich1 kI insert-character key
key_il kil1 kA insert-line key
@@ -747,7 +757,6 @@
key_mark kmrk %2 mark key
key_message kmsg %3 message key
key_move kmov %4 move key
-
key_next knxt %5 next key
key_npage knp kN next-page key
key_open kopn %6 open key
@@ -768,8 +777,8 @@
key_scommand kCMD *1 shifted command key
key_scopy kCPY *2 shifted copy key
key_screate kCRT *3 shifted create key
- key_sdc kDC *4 shifted delete-char-
- acter key
+ key_sdc kDC *4 shifted delete-
+ character key
key_sdl kDL *5 shifted delete-line
key
key_select kslt *6 select key
@@ -781,8 +790,8 @@
key_sfind kFND *0 shifted find key
key_shelp kHLP #1 shifted help key
key_shome kHOM #2 shifted home key
- key_sic kIC #3 shifted insert-char-
- acter key
+ key_sic kIC #3 shifted insert-
+ character key
key_sleft kLFT #4 shifted left-arrow
key
key_smessage kMSG %a shifted message key
@@ -804,16 +813,17 @@
key_suspend kspd &amp;7 suspend key
key_undo kund &amp;8 undo key
key_up kcuu1 ku up-arrow key
- keypad_local rmkx ke leave 'key-
- board_transmit' mode
- keypad_xmit smkx ks enter 'key-
- board_transmit' mode
+
+ keypad_local rmkx ke leave
+ 'keyboard_transmit'
+ mode
+ keypad_xmit smkx ks enter
+ 'keyboard_transmit'
+ mode
lab_f0 lf0 l0 label on function
key f0 if not f0
lab_f1 lf1 l1 label on function
key f1 if not f1
-
-
lab_f10 lf10 la label on function
key f10 if not f10
lab_f2 lf2 l2 label on function
@@ -864,22 +874,25 @@
(P*)
parm_delete_line dl DL delete #1 lines (P*)
parm_down_cursor cud DO down #1 lines (P*)
- parm_down_micro mcud Zf Like parm_down_cur-
- sor in micro mode
+ parm_down_micro mcud Zf Like
+ parm_down_cursor in
+ micro mode
parm_ich ich IC insert #1 characters
(P*)
+
parm_index indn SF scroll forward #1
lines (P)
parm_insert_line il AL insert #1 lines (P*)
parm_left_cursor cub LE move #1 characters
to the left (P)
- parm_left_micro mcub Zg Like parm_left_cur-
- sor in micro mode
+ parm_left_micro mcub Zg Like
+ parm_left_cursor in
+ micro mode
parm_right_cursor cuf RI move #1 characters
to the right (P*)
- parm_right_micro mcuf Zh Like parm_right_cur-
- sor in micro mode
-
+ parm_right_micro mcuf Zh Like
+ parm_right_cursor in
+ micro mode
parm_rindex rin SR scroll back #1 lines
(P)
parm_up_cursor cuu UP up #1 lines (P*)
@@ -902,8 +915,8 @@
prtr_off mc4 pf turn off printer
prtr_on mc5 po turn on printer
pulse pulse PU select pulse dialing
- quick_dial qdial QD dial number #1 with-
- out checking
+ quick_dial qdial QD dial number #1
+ without checking
remove_clock rmclk RC remove clock
repeat_char rep rp repeat char #1 #2
times (P*)
@@ -931,6 +944,8 @@
#1
set_bottom_margin smgb Zk Set bottom margin at
current line
+
+
set_bottom_margin_parm smgbp Zl Set bottom margin at
line #1 or (if smgtp
is not given) #2
@@ -941,21 +956,15 @@
pair to #1
set_foreground setf Sf Set foreground color
#1
-
-
-
-
-
set_left_margin smgl ML set left soft margin
- at current col-
- umn. See smgl.
- (ML is not in BSD
- termcap).
+ at current
+ column. (ML is
+ not in BSD termcap).
set_left_margin_parm smglp Zm Set left (right)
margin at column #1
- set_right_margin smgr MR set right soft mar-
- gin at current col-
- umn
+ set_right_margin smgr MR set right soft
+ margin at current
+ column
set_right_margin_parm smgrp Zn Set right margin at
column #1
set_tab hts st set a tab in every
@@ -977,10 +986,12 @@
image graphics
stop_char_set_def rcsd Zt End definition of
character set #1
- subscript_characters subcs Zu List of subscript-
- able characters
- superscript_characters supcs Zv List of superscript-
- able characters
+ subscript_characters subcs Zu List of
+ subscriptable
+ characters
+ superscript_characters supcs Zv List of
+ superscriptable
+ characters
tab ht ta tab to next 8-space
hardware tab stop
these_cause_cr docr Zw Printing any of
@@ -1000,24 +1011,25 @@
user4 u4 u4 User string #4
user5 u5 u5 User string #5
user6 u6 u6 User string #6
+
user7 u7 u7 User string #7
user8 u8 u8 User string #8
user9 u9 u9 User string #9
wait_tone wait WA wait for dial-tone
xoff_character xoffc XF XOFF character
xon_character xonc XN XON character
- zero_motion zerom Zx No motion for subse-
- quent character
+ zero_motion zerom Zx No motion for
+ subsequent character
- The following string capabilities are present in the SVr4.0 term struc-
- ture, but were originally not documented in the man page.
+ The following string capabilities are present in the SVr4.0 term
+ structure, but were originally not documented in the man page.
<STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG>
<STRONG>String</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG>
alt_scancode_esc scesa S8 Alternate escape
- for scancode emu-
- lation
+ for scancode
+ emulation
bit_image_carriage_return bicr Yv Move to beginning
of same row
bit_image_newline binel Zz Move to next row
@@ -1025,19 +1037,20 @@
bit_image_repeat birep Xy Repeat bit image
cell #1 #2 times
char_set_names csnm Zy Produce #1'th item
- from list of char-
- acter set names
+ from list of
+ character set
+ names
code_set_init csin ci Init sequence for
multiple codesets
color_names colornm Yw Give name for
color #1
define_bit_image_region defbi Yx Define rectangular
bit image region
- device_type devt dv Indicate lan-
- guage/codeset sup-
- port
- display_pc_char dispc S1 Display PC charac-
- ter #1
+ device_type devt dv Indicate
+ language/codeset
+ support
+ display_pc_char dispc S1 Display PC
+ character #1
end_bit_image_region endbi Yy End a bit-image
region
enter_pc_charset_mode smpch S2 Enter PC character
@@ -1064,8 +1077,9 @@
string #3
req_mouse_pos reqmp RQ Request mouse
position
- scancode_escape scesc S7 Escape for scan-
- code emulation
+
+ scancode_escape scesc S7 Escape for
+ scancode emulation
set0_des_seq s0ds s0 Shift to codeset 0
(EUC set 0, ASCII)
set1_des_seq s1ds s1 Shift to codeset 1
@@ -1077,25 +1091,24 @@
set_a_foreground setaf AF Set foreground
color to #1, using
ANSI escape
-
set_color_band setcolor Yz Change to ribbon
color #1
set_lr_margin smglr ML Set both left and
right margins to
#1, #2. (ML is
- not in BSD term-
- cap).
+ not in BSD
+ termcap).
set_page_length slines YZ Set page length to
#1 lines
set_tb_margin smgtb MT Sets both top and
bottom margins to
#1, #2
- The XSI Curses standard added these hardcopy capabilities. They were
- used in some post-4.1 versions of System V curses, e.g., Solaris 2.5
- and IRIX 6.x. Except for <STRONG>YI</STRONG>, the <STRONG>ncurses</STRONG> termcap names for them are
- invented. According to the XSI Curses standard, they have no termcap
- names. If your compiled terminfo entries use these, they may not be
+ The XSI Curses standard added these hardcopy capabilities. They were
+ used in some post-4.1 versions of System V curses, e.g., Solaris 2.5
+ and IRIX 6.x. Except for <STRONG>YI</STRONG>, the <STRONG>ncurses</STRONG> termcap names for them are
+ invented. According to the XSI Curses standard, they have no termcap
+ names. If your compiled terminfo entries use these, they may not be
binary-compatible with System V terminfo entries after SVr4.1; beware!
@@ -1107,63 +1120,63 @@
mode
enter_low_hl_mode elohlm Xo Enter low highlight
mode
- enter_right_hl_mode erhlm Xr Enter right high-
- light mode
+ enter_right_hl_mode erhlm Xr Enter right
+ highlight mode
enter_top_hl_mode ethlm Xt Enter top highlight
mode
- enter_vertical_hl_mode evhlm Xv Enter vertical high-
- light mode
+ enter_vertical_hl_mode evhlm Xv Enter vertical
+ highlight mode
set_a_attributes sgr1 sA Define second set of
video attributes
#1-#6
set_pglen_inch slength YI Set page length to
#1 hundredth of an
- inch (some implemen-
- tations use sL for
- termcap).
+ inch (some
+ implementations use
+ sL for termcap).
</PRE><H3><a name="h3-User-Defined-Capabilities">User-Defined Capabilities</a></H3><PRE>
- The preceding section listed the <EM>predefined</EM> capabilities. They deal
- with some special features for terminals no longer (or possibly never)
- produced. Occasionally there are special features of newer terminals
- which are awkward or impossible to represent by reusing the predefined
+ The preceding section listed the <EM>predefined</EM> capabilities. They deal
+ with some special features for terminals no longer (or possibly never)
+ produced. Occasionally there are special features of newer terminals
+ which are awkward or impossible to represent by reusing the predefined
capabilities.
- <STRONG>ncurses</STRONG> addresses this limitation by allowing user-defined capabili-
- ties. The <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> programs provide the <STRONG>-x</STRONG> option for this pur-
- pose. When <STRONG>-x</STRONG> is set, <STRONG>tic</STRONG> treats unknown capabilities as user-defined.
- That is, if <STRONG>tic</STRONG> encounters a capability name which it does not recog-
- nize, it infers its type (boolean, number or string) from the syntax
- and makes an extended table entry for that capability. The
- <STRONG><A HREF="curs_extend.3x.html">use_extended_names(3x)</A></STRONG> function makes this information conditionally
- available to applications. The ncurses library provides the data leav-
- ing most of the behavior to applications:
-
- <STRONG>o</STRONG> User-defined capability strings whose name begins with "k" are
+ <STRONG>ncurses</STRONG> addresses this limitation by allowing user-defined
+ capabilities. The <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> programs provide the <STRONG>-x</STRONG> option for
+ this purpose. When <STRONG>-x</STRONG> is set, <STRONG>tic</STRONG> treats unknown capabilities as user-
+ defined. That is, if <STRONG>tic</STRONG> encounters a capability name which it does
+ not recognize, it infers its type (boolean, number or string) from the
+ syntax and makes an extended table entry for that capability. The
+ <STRONG><A HREF="curs_extend.3x.html">use_extended_names(3x)</A></STRONG> function makes this information conditionally
+ available to applications. The ncurses library provides the data
+ leaving most of the behavior to applications:
+
+ <STRONG>o</STRONG> User-defined capability strings whose name begins with "k" are
treated as function keys.
- <STRONG>o</STRONG> The types (boolean, number, string) determined by <STRONG>tic</STRONG> can be
+ <STRONG>o</STRONG> The types (boolean, number, string) determined by <STRONG>tic</STRONG> can be
inferred by successful calls on <STRONG>tigetflag</STRONG>, etc.
<STRONG>o</STRONG> If the capability name happens to be two characters, the capability
is also available through the termcap interface.
- While termcap is said to be extensible because it does not use a prede-
- fined set of capabilities, in practice it has been limited to the capa-
- bilities defined by terminfo implementations. As a rule, user-defined
- capabilities intended for use by termcap applications should be limited
- to booleans and numbers to avoid running past the 1023 byte limit
- assumed by termcap implementations and their applications. In particu-
- lar, providing extended sets of function keys (past the 60 numbered
- keys and the handful of special named keys) is best done using the
- longer names available using terminfo.
+ While termcap is said to be extensible because it does not use a
+ predefined set of capabilities, in practice it has been limited to the
+ capabilities defined by terminfo implementations. As a rule, user-
+ defined capabilities intended for use by termcap applications should be
+ limited to booleans and numbers to avoid running past the 1023 byte
+ limit assumed by termcap implementations and their applications. In
+ particular, providing extended sets of function keys (past the 60
+ numbered keys and the handful of special named keys) is best done using
+ the longer names available using terminfo.
</PRE><H3><a name="h3-A-Sample-Entry">A Sample Entry</a></H3><PRE>
- The following entry, describing an ANSI-standard terminal, is represen-
- tative of what a <STRONG>terminfo</STRONG> entry for a modern terminal typically looks
- like.
+ The following entry, describing an ANSI-standard terminal, is
+ representative of what a <STRONG>terminfo</STRONG> entry for a modern terminal typically
+ looks like.
ansi|ansi/pc-term compatible with color,
am, mc5i, mir, msgr,
@@ -1196,37 +1209,37 @@
smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n,
u8=\E[?%[;0123456789]c, u9=\E[c, vpa=\E[%i%p1%dd,
- Entries may continue onto multiple lines by placing white space at the
- beginning of each line except the first. Comments may be included on
+ Entries may continue onto multiple lines by placing white space at the
+ beginning of each line except the first. Comments may be included on
lines beginning with "#". Capabilities in <EM>terminfo</EM> are of three types:
- <STRONG>o</STRONG> Boolean capabilities which indicate that the terminal has some par-
- ticular feature,
+ <STRONG>o</STRONG> Boolean capabilities which indicate that the terminal has some
+ particular feature,
<STRONG>o</STRONG> numeric capabilities giving the size of the terminal or the size of
particular delays, and
- <STRONG>o</STRONG> string capabilities, which give a sequence which can be used to
+ <STRONG>o</STRONG> string capabilities, which give a sequence which can be used to
perform particular terminal operations.
</PRE><H3><a name="h3-Types-of-Capabilities">Types of Capabilities</a></H3><PRE>
All capabilities have names. For instance, the fact that ANSI-standard
- terminals have <EM>automatic</EM> <EM>margins</EM> (i.e., an automatic return and line-
- feed when the end of a line is reached) is indicated by the capability
- <STRONG>am</STRONG>. Hence the description of ansi includes <STRONG>am</STRONG>. Numeric capabilities
- are followed by the character "#" and then a positive value. Thus
+ terminals have <EM>automatic</EM> <EM>margins</EM> (i.e., an automatic return and line-
+ feed when the end of a line is reached) is indicated by the capability
+ <STRONG>am</STRONG>. Hence the description of ansi includes <STRONG>am</STRONG>. Numeric capabilities
+ are followed by the character "#" and then a positive value. Thus
<STRONG>cols</STRONG>, which indicates the number of columns the terminal has, gives the
- value "80" for ansi. Values for numeric capabilities may be specified
- in decimal, octal or hexadecimal, using the C programming language con-
- ventions (e.g., 255, 0377 and 0xff or 0xFF).
+ value "80" for ansi. Values for numeric capabilities may be specified
+ in decimal, octal or hexadecimal, using the C programming language
+ conventions (e.g., 255, 0377 and 0xff or 0xFF).
- Finally, string valued capabilities, such as <STRONG>el</STRONG> (clear to end of line
- sequence) are given by the two-character code, an "=", and then a
+ Finally, string valued capabilities, such as <STRONG>el</STRONG> (clear to end of line
+ sequence) are given by the two-character code, an "=", and then a
string ending at the next following ",".
- A number of escape sequences are provided in the string valued capabil-
- ities for easy encoding of characters there:
+ A number of escape sequences are provided in the string valued
+ capabilities for easy encoding of characters there:
<STRONG>o</STRONG> Both <STRONG>\E</STRONG> and <STRONG>\e</STRONG> map to an ESCAPE character,
@@ -1243,9 +1256,9 @@
respectively.
X/Open Curses does not say what "appropriate <EM>x</EM>" might be. In practice,
- that is a printable ASCII graphic character. The special case "^?" is
- interpreted as DEL (127). In all other cases, the character value is
- AND'd with 0x1f, mapping to ASCII control codes in the range 0 through
+ that is a printable ASCII graphic character. The special case "^?" is
+ interpreted as DEL (127). In all other cases, the character value is
+ AND'd with 0x1f, mapping to ASCII control codes in the range 0 through
31.
Other escapes include
@@ -1261,71 +1274,70 @@
<STRONG>o</STRONG> and <STRONG>\0</STRONG> for null.
<STRONG>\0</STRONG> will produce \200, which does not terminate a string but behaves
- as a null character on most terminals, providing CS7 is specified.
+ as a null character on most terminals, providing CS7 is specified.
See <STRONG>stty(1)</STRONG>.
- The reason for this quirk is to maintain binary compatibility of
- the compiled terminfo files with other implementations, e.g., the
- SVr4 systems, which document this. Compiled terminfo files use
- null-terminated strings, with no lengths. Modifying this would
- require a new binary format, which would not work with other imple-
- mentations.
+ The reason for this quirk is to maintain binary compatibility of
+ the compiled terminfo files with other implementations, e.g., the
+ SVr4 systems, which document this. Compiled terminfo files use
+ null-terminated strings, with no lengths. Modifying this would
+ require a new binary format, which would not work with other
+ implementations.
Finally, characters may be given as three octal digits after a <STRONG>\</STRONG>.
- A delay in milliseconds may appear anywhere in a string capability,
- enclosed in $&lt;..&gt; brackets, as in <STRONG>el</STRONG>=\EK$&lt;5&gt;, and padding characters
+ A delay in milliseconds may appear anywhere in a string capability,
+ enclosed in $&lt;..&gt; brackets, as in <STRONG>el</STRONG>=\EK$&lt;5&gt;, and padding characters
are supplied by <STRONG><A HREF="curs_terminfo.3x.html">tputs(3x)</A></STRONG> to provide this delay.
- <STRONG>o</STRONG> The delay must be a number with at most one decimal place of preci-
- sion; it may be followed by suffixes "*" or "/" or both.
+ <STRONG>o</STRONG> The delay must be a number with at most one decimal place of
+ precision; it may be followed by suffixes "*" or "/" or both.
- <STRONG>o</STRONG> A "*" indicates that the padding required is proportional to the
- number of lines affected by the operation, and the amount given is
- the per-affected-unit padding required. (In the case of insert
+ <STRONG>o</STRONG> A "*" indicates that the padding required is proportional to the
+ number of lines affected by the operation, and the amount given is
+ the per-affected-unit padding required. (In the case of insert
character, the factor is still the number of <EM>lines</EM> affected.)
Normally, padding is advisory if the device has the <STRONG>xon</STRONG> capability;
it is used for cost computation but does not trigger delays.
- <STRONG>o</STRONG> A "/" suffix indicates that the padding is mandatory and forces a
+ <STRONG>o</STRONG> A "/" suffix indicates that the padding is mandatory and forces a
delay of the given number of milliseconds even on devices for which
<STRONG>xon</STRONG> is present to indicate flow control.
- Sometimes individual capabilities must be commented out. To do this,
- put a period before the capability name. For example, see the second
+ Sometimes individual capabilities must be commented out. To do this,
+ put a period before the capability name. For example, see the second
<STRONG>ind</STRONG> in the example above.
</PRE><H3><a name="h3-Fetching-Compiled-Descriptions">Fetching Compiled Descriptions</a></H3><PRE>
- The <STRONG>ncurses</STRONG> library searches for terminal descriptions in several
- places. It uses only the first description found. The library has a
- compiled-in list of places to search which can be overridden by envi-
- ronment variables. Before starting to search, <STRONG>ncurses</STRONG> eliminates
+ The <STRONG>ncurses</STRONG> library searches for terminal descriptions in several
+ places. It uses only the first description found. The library has a
+ compiled-in list of places to search which can be overridden by
+ environment variables. Before starting to search, <STRONG>ncurses</STRONG> eliminates
duplicates in its search list.
- <STRONG>o</STRONG> If the environment variable TERMINFO is set, it is interpreted as
+ <STRONG>o</STRONG> If the environment variable TERMINFO is set, it is interpreted as
the pathname of a directory containing the compiled description you
are working on. Only that directory is searched.
- <STRONG>o</STRONG> If TERMINFO is not set, <STRONG>ncurses</STRONG> will instead look in the directory
+ <STRONG>o</STRONG> If TERMINFO is not set, <STRONG>ncurses</STRONG> will instead look in the directory
<STRONG>$HOME/.terminfo</STRONG> for a compiled description.
- <STRONG>o</STRONG> Next, if the environment variable TERMINFO_DIRS is set, <STRONG>ncurses</STRONG>
- will interpret the contents of that variable as a list of colon-
+ <STRONG>o</STRONG> Next, if the environment variable TERMINFO_DIRS is set, <STRONG>ncurses</STRONG>
+ will interpret the contents of that variable as a list of colon-
separated directories (or database files) to be searched.
- An empty directory name (i.e., if the variable begins or ends with
- a colon, or contains adjacent colons) is interpreted as the system
+ An empty directory name (i.e., if the variable begins or ends with
+ a colon, or contains adjacent colons) is interpreted as the system
location <EM>/usr/share/terminfo</EM>.
<STRONG>o</STRONG> Finally, <STRONG>ncurses</STRONG> searches these compiled-in locations:
- <STRONG>o</STRONG> a list of directories (/usr/local/ncurses/share/ter-
- minfo:/usr/share/terminfo), and
+ <STRONG>o</STRONG> a list of directories (no default value), and
- <STRONG>o</STRONG> the system terminfo directory, <EM>/usr/share/terminfo</EM> (the com-
- piled-in default).
+ <STRONG>o</STRONG> the system terminfo directory, <EM>/usr/share/terminfo</EM> (the
+ compiled-in default).
</PRE><H3><a name="h3-Preparing-Descriptions">Preparing Descriptions</a></H3><PRE>
@@ -1352,15 +1364,15 @@
wraps around to the beginning of the next line when it reaches the
right margin, then it should have the <STRONG>am</STRONG> capability. If the terminal
can clear its screen, leaving the cursor in the home position, then
- this is given by the <STRONG>clear</STRONG> string capability. If the terminal over-
- strikes (rather than clearing a position when a character is struck
+ this is given by the <STRONG>clear</STRONG> string capability. If the terminal
+ overstrikes (rather than clearing a position when a character is struck
over) then it should have the <STRONG>os</STRONG> capability. If the terminal is a
printing terminal, with no soft copy unit, give it both <STRONG>hc</STRONG> and <STRONG>os</STRONG>. (<STRONG>os</STRONG>
applies to storage scope terminals, such as TEKTRONIX 4010 series, as
well as hard copy and APL terminals.) If there is a code to move the
cursor to the left edge of the current row, give this as <STRONG>cr</STRONG>. (Normally
- this will be carriage return, control/M.) If there is a code to pro-
- duce an audible signal (bell, beep, etc) give this as <STRONG>bel</STRONG>.
+ this will be carriage return, control/M.) If there is a code to
+ produce an audible signal (bell, beep, etc) give this as <STRONG>bel</STRONG>.
If there is a code to move the cursor one position to the left (such as
backspace) that capability should be given as <STRONG>cub1</STRONG>. Similarly, codes
@@ -1393,14 +1405,14 @@
the effect is undefined. This is useful for drawing a box around the
edge of the screen, for example. If the terminal has switch selectable
automatic margins, the <EM>terminfo</EM> file usually assumes that this is on;
- i.e., <STRONG>am</STRONG>. If the terminal has a command which moves to the first col-
- umn of the next line, that command can be given as <STRONG>nel</STRONG> (newline). It
- does not matter if the command clears the remainder of the current
+ i.e., <STRONG>am</STRONG>. If the terminal has a command which moves to the first
+ column of the next line, that command can be given as <STRONG>nel</STRONG> (newline).
+ It does not matter if the command clears the remainder of the current
line, so if the terminal has no <STRONG>cr</STRONG> and <STRONG>lf</STRONG> it may still be possible to
craft a working <STRONG>nel</STRONG> out of one or both of them.
- These capabilities suffice to describe hard-copy and "glass-tty" termi-
- nals. Thus the model 33 teletype is described as
+ These capabilities suffice to describe hard-copy and "glass-tty"
+ terminals. Thus the model 33 teletype is described as
33|tty33|tty|model 33 teletype,
bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,
@@ -1413,21 +1425,21 @@
</PRE><H3><a name="h3-Parameterized-Strings">Parameterized Strings</a></H3><PRE>
- Cursor addressing and other strings requiring parameters in the termi-
- nal are described by a parameterized string capability, with <EM>printf</EM>-
- like escapes such as <EM>%x</EM> in it. For example, to address the cursor, the
- <STRONG>cup</STRONG> capability is given, using two parameters: the row and column to
- address to. (Rows and columns are numbered from zero and refer to the
- physical screen visible to the user, not to any unseen memory.) If the
- terminal has memory relative cursor addressing, that can be indicated
- by <STRONG>mrcup</STRONG>.
+ Cursor addressing and other strings requiring parameters in the
+ terminal are described by a parameterized string capability, with
+ <EM>printf</EM>-like escapes such as <EM>%x</EM> in it. For example, to address the
+ cursor, the <STRONG>cup</STRONG> capability is given, using two parameters: the row and
+ column to address to. (Rows and columns are numbered from zero and
+ refer to the physical screen visible to the user, not to any unseen
+ memory.) If the terminal has memory relative cursor addressing, that
+ can be indicated by <STRONG>mrcup</STRONG>.
The parameter mechanism uses a stack and special <STRONG>%</STRONG> codes to manipulate
it. Typically a sequence will push one of the parameters onto the
- stack and then print it in some format. Print (e.g., "%d") is a spe-
- cial case. Other operations, including "%t" pop their operand from the
- stack. It is noted that more complex operations are often necessary,
- e.g., in the <STRONG>sgr</STRONG> string.
+ stack and then print it in some format. Print (e.g., "%d") is a
+ special case. Other operations, including "%t" pop their operand from
+ the stack. It is noted that more complex operations are often
+ necessary, e.g., in the <STRONG>sgr</STRONG> string.
The <STRONG>%</STRONG> encodings have the following meanings:
@@ -1461,7 +1473,32 @@
these are simply two different sets of variables, whose values are
not reset between calls to <STRONG><A HREF="curs_terminfo.3x.html">tparm(3x)</A></STRONG>. However, that fact is not
documented in other implementations. Relying on it will adversely
- impact portability to other implementations.
+ impact portability to other implementations:
+
+ <STRONG>o</STRONG> SVr2 curses supported <EM>dynamic</EM> variables. Those are set only
+ by a <STRONG>%P</STRONG> operator. A <STRONG>%g</STRONG> for a given variable without first
+ setting it with <STRONG>%P</STRONG> will give unpredictable results, because
+ dynamic variables are an uninitialized local array on the
+ stack in the <STRONG>tparm</STRONG> function.
+
+ <STRONG>o</STRONG> SVr3.2 curses supported <EM>static</EM> variables. Those are an array
+ in the <STRONG>TERMINAL</STRONG> structure (declared in <STRONG>term.h</STRONG>), and are zeroed
+ automatically when the <STRONG>setupterm</STRONG> function allocates the data.
+
+ <STRONG>o</STRONG> SVr4 curses made no further improvements to the <EM>dynamic/static</EM>
+ variable feature.
+
+ <STRONG>o</STRONG> Solaris XPG4 curses does not distinguish between <EM>dynamic</EM> and
+ <EM>static</EM> variables. They are the same. Like SVr4 curses, XPG4
+ curses does not initialize these explicitly.
+
+ <STRONG>o</STRONG> Before version 6.3, ncurses stores both <EM>dynamic</EM> and <EM>static</EM>
+ variables in persistent storage, initialized to zeros.
+
+ <STRONG>o</STRONG> Beginning with version 6.3, ncurses stores <EM>static</EM> and <EM>dynamic</EM>
+ variables in the same manner as SVr4. Unlike other
+ implementations, ncurses zeros dynamic variables before the
+ first <STRONG>%g</STRONG> or <STRONG>%P</STRONG> operator.
<STRONG>%'</STRONG><EM>c</EM><STRONG>'</STRONG> char constant <EM>c</EM>
@@ -1489,8 +1526,8 @@
<STRONG>%?</STRONG> <EM>expr</EM> <STRONG>%t</STRONG> <EM>thenpart</EM> <STRONG>%e</STRONG> <EM>elsepart</EM> <STRONG>%;</STRONG>
This forms an if-then-else. The <STRONG>%e</STRONG> <EM>elsepart</EM> is optional. Usually
- the <STRONG>%?</STRONG> <EM>expr</EM> part pushes a value onto the stack, and <STRONG>%t</STRONG> pops it
- from the stack, testing if it is nonzero (true). If it is zero
+ the <STRONG>%?</STRONG> <EM>expr</EM> part pushes a value onto the stack, and <STRONG>%t</STRONG> pops it
+ from the stack, testing if it is nonzero (true). If it is zero
(false), control passes to the <STRONG>%e</STRONG> (else) part.
It is possible to form else-if's a la Algol 68:
@@ -1498,127 +1535,237 @@
where ci are conditions, bi are bodies.
- Use the <STRONG>-f</STRONG> option of <STRONG>tic</STRONG> or <STRONG>infocmp</STRONG> to see the structure of if-
+ Use the <STRONG>-f</STRONG> option of <STRONG>tic</STRONG> or <STRONG>infocmp</STRONG> to see the structure of if-
then-else's. Some strings, e.g., <STRONG>sgr</STRONG> can be very complicated when
- written on one line. The <STRONG>-f</STRONG> option splits the string into lines
+ written on one line. The <STRONG>-f</STRONG> option splits the string into lines
with the parts indented.
- Binary operations are in postfix form with the operands in the usual
- order. That is, to get x-5 one would use "%gx%{5}%-". <STRONG>%P</STRONG> and <STRONG>%g</STRONG> vari-
- ables are persistent across escape-string evaluations.
+ Binary operations are in postfix form with the operands in the usual
+ order. That is, to get x-5 one would use "%gx%{5}%-". <STRONG>%P</STRONG> and <STRONG>%g</STRONG>
+ variables are persistent across escape-string evaluations.
- Consider the HP2645, which, to get to row 3 and column 12, needs to be
- sent \E&amp;a12c03Y padded for 6 milliseconds. Note that the order of the
- rows and columns is inverted here, and that the row and column are
- printed as two digits. Thus its <STRONG>cup</STRONG> capability is
+ Consider the HP2645, which, to get to row 3 and column 12, needs to be
+ sent \E&amp;a12c03Y padded for 6 milliseconds. Note that the order of the
+ rows and columns is inverted here, and that the row and column are
+ printed as two digits. Thus its <STRONG>cup</STRONG> capability is
"cup=6\E&amp;%p2%2dc%p1%2dY".
- The Microterm ACT-IV needs the current row and column sent preceded by
- a <STRONG>^T</STRONG>, with the row and column simply encoded in binary,
- "cup=^T%p1%c%p2%c". Terminals which use "%c" need to be able to
- backspace the cursor (<STRONG>cub1</STRONG>), and to move the cursor up one line on the
- screen (<STRONG>cuu1</STRONG>). This is necessary because it is not always safe to
- transmit <STRONG>\n</STRONG> <STRONG>^D</STRONG> and <STRONG>\r</STRONG>, as the system may change or discard them. (The
- library routines dealing with terminfo set tty modes so that tabs are
- never expanded, so \t is safe to send. This turns out to be essential
+ The Microterm ACT-IV needs the current row and column sent preceded by
+ a <STRONG>^T</STRONG>, with the row and column simply encoded in binary,
+ "cup=^T%p1%c%p2%c". Terminals which use "%c" need to be able to
+ backspace the cursor (<STRONG>cub1</STRONG>), and to move the cursor up one line on the
+ screen (<STRONG>cuu1</STRONG>). This is necessary because it is not always safe to
+ transmit <STRONG>\n</STRONG> <STRONG>^D</STRONG> and <STRONG>\r</STRONG>, as the system may change or discard them. (The
+ library routines dealing with terminfo set tty modes so that tabs are
+ never expanded, so \t is safe to send. This turns out to be essential
for the Ann Arbor 4080.)
- A final example is the LSI ADM-3a, which uses row and column offset by
+ A final example is the LSI ADM-3a, which uses row and column offset by
a blank character, thus "cup=\E=%p1%' '%+%c%p2%' '%+%c". After sending
- "\E=", this pushes the first parameter, pushes the ASCII value for a
+ "\E=", this pushes the first parameter, pushes the ASCII value for a
space (32), adds them (pushing the sum on the stack in place of the two
- previous values) and outputs that value as a character. Then the same
- is done for the second parameter. More complex arithmetic is possible
+ previous values) and outputs that value as a character. Then the same
+ is done for the second parameter. More complex arithmetic is possible
using the stack.
</PRE><H3><a name="h3-Cursor-Motions">Cursor Motions</a></H3><PRE>
- If the terminal has a fast way to home the cursor (to very upper left
- corner of screen) then this can be given as <STRONG>home</STRONG>; similarly a fast way
- of getting to the lower left-hand corner can be given as <STRONG>ll</STRONG>; this may
+ If the terminal has a fast way to home the cursor (to very upper left
+ corner of screen) then this can be given as <STRONG>home</STRONG>; similarly a fast way
+ of getting to the lower left-hand corner can be given as <STRONG>ll</STRONG>; this may
involve going up with <STRONG>cuu1</STRONG> from the home position, but a program should
never do this itself (unless <STRONG>ll</STRONG> does) because it can make no assumption
- about the effect of moving up from the home position. Note that the
- home position is the same as addressing to (0,0): to the top left cor-
- ner of the screen, not of memory. (Thus, the \EH sequence on HP termi-
- nals cannot be used for <STRONG>home</STRONG>.)
+ about the effect of moving up from the home position. Note that the
+ home position is the same as addressing to (0,0): to the top left
+ corner of the screen, not of memory. (Thus, the \EH sequence on HP
+ terminals cannot be used for <STRONG>home</STRONG>.)
If the terminal has row or column absolute cursor addressing, these can
- be given as single parameter capabilities <STRONG>hpa</STRONG> (horizontal position
- absolute) and <STRONG>vpa</STRONG> (vertical position absolute). Sometimes these are
- shorter than the more general two parameter sequence (as with the
- hp2645) and can be used in preference to <STRONG>cup</STRONG>. If there are parameter-
- ized local motions (e.g., move <EM>n</EM> spaces to the right) these can be
- given as <STRONG>cud</STRONG>, <STRONG>cub</STRONG>, <STRONG>cuf</STRONG>, and <STRONG>cuu</STRONG> with a single parameter indicating how
- many spaces to move. These are primarily useful if the terminal does
- not have <STRONG>cup</STRONG>, such as the TEKTRONIX 4025.
-
- If the terminal needs to be in a special mode when running a program
+ be given as single parameter capabilities <STRONG>hpa</STRONG> (horizontal position
+ absolute) and <STRONG>vpa</STRONG> (vertical position absolute). Sometimes these are
+ shorter than the more general two parameter sequence (as with the
+ hp2645) and can be used in preference to <STRONG>cup</STRONG>. If there are
+ parameterized local motions (e.g., move <EM>n</EM> spaces to the right) these
+ can be given as <STRONG>cud</STRONG>, <STRONG>cub</STRONG>, <STRONG>cuf</STRONG>, and <STRONG>cuu</STRONG> with a single parameter
+ indicating how many spaces to move. These are primarily useful if the
+ terminal does not have <STRONG>cup</STRONG>, such as the TEKTRONIX 4025.
+
+ If the terminal needs to be in a special mode when running a program
that uses these capabilities, the codes to enter and exit this mode can
- be given as <STRONG>smcup</STRONG> and <STRONG>rmcup</STRONG>. This arises, for example, from terminals
- like the Concept with more than one page of memory. If the terminal
- has only memory relative cursor addressing and not screen relative cur-
- sor addressing, a one screen-sized window must be fixed into the termi-
- nal for cursor addressing to work properly. This is also used for the
- TEKTRONIX 4025, where <STRONG>smcup</STRONG> sets the command character to be the one
- used by terminfo. If the <STRONG>smcup</STRONG> sequence will not restore the screen
- after an <STRONG>rmcup</STRONG> sequence is output (to the state prior to outputting
- <STRONG>rmcup</STRONG>), specify <STRONG>nrrmc</STRONG>.
+ be given as <STRONG>smcup</STRONG> and <STRONG>rmcup</STRONG>. This arises, for example, from terminals
+ like the Concept with more than one page of memory. If the terminal
+ has only memory relative cursor addressing and not screen relative
+ cursor addressing, a one screen-sized window must be fixed into the
+ terminal for cursor addressing to work properly. This is also used for
+ the TEKTRONIX 4025, where <STRONG>smcup</STRONG> sets the command character to be the
+ one used by terminfo. If the <STRONG>smcup</STRONG> sequence will not restore the
+ screen after an <STRONG>rmcup</STRONG> sequence is output (to the state prior to
+ outputting <STRONG>rmcup</STRONG>), specify <STRONG>nrrmc</STRONG>.
+
+
+</PRE><H3><a name="h3-Margins">Margins</a></H3><PRE>
+ SVr4 (and X/Open Curses) list several string capabilities for setting
+ margins. Two were intended for use with terminals, and another six
+ were intended for use with printers.
+
+ <STRONG>o</STRONG> The two terminal capabilities assume that the terminal may have the
+ capability of setting the left and/or right margin at the current
+ cursor column position.
+
+ <STRONG>o</STRONG> The printer capabilities assume that the printer may have two types
+ of capability:
+
+ <STRONG>o</STRONG> the ability to set a top and/or bottom margin using the current
+ line position, and
+
+ <STRONG>o</STRONG> parameterized capabilities for setting the top, bottom, left,
+ right margins given the number of rows or columns.
+
+ In practice, the categorization into "terminal" and "printer" is not
+ suitable:
+
+ <STRONG>o</STRONG> The AT&amp;T SVr4 terminal database uses <STRONG>smgl</STRONG> four times, for AT&amp;T
+ hardware.
+
+ Three of the four are printers. They lack the ability to set
+ left/right margins by specifying the column.
+
+ <STRONG>o</STRONG> Other (non-AT&amp;T) terminals may support margins but using different
+ assumptions from AT&amp;T.
+
+ For instance, the DEC VT420 supports left/right margins, but only
+ using a column parameter. As an added complication, the VT420 uses
+ two settings to fully enable left/right margins (left/right margin
+ mode, and origin mode). The former enables the margins, which
+ causes printed text to wrap within margins, but the latter is
+ needed to prevent cursor-addressing outside those margins.
+
+ <STRONG>o</STRONG> Both DEC VT420 left/right margins are set with a single control
+ sequence. If either is omitted, the corresponding margin is set to
+ the left or right edge of the display (rather than leaving the
+ margin unmodified).
+
+ These are the margin-related capabilities:
+
+ <STRONG>Name</STRONG> <STRONG>Description</STRONG>
+ ------------------------------------------------------
+ smgl Set left margin at current column
+ smgr Set right margin at current column
+ smgb Set bottom margin at current line
+ smgt Set top margin at current line
+ smgbp Set bottom margin at line <EM>N</EM>
+ smglp Set left margin at column <EM>N</EM>
+ smgrp Set right margin at column <EM>N</EM>
+ smgtp Set top margin at line <EM>N</EM>
+ smglr Set both left and right margins to <EM>L</EM> and <EM>R</EM>
+ smgtb Set both top and bottom margins to <EM>T</EM> and <EM>B</EM>
+
+ When writing an application that uses these string capabilities, the
+ pairs should be first checked to see if each capability in the pair is
+ set or only one is set:
+
+ <STRONG>o</STRONG> If both <STRONG>smglp</STRONG> and <STRONG>smgrp</STRONG> are set, each is used with a single
+ argument, <EM>N</EM>, that gives the column number of the left and right
+ margin, respectively.
+
+ <STRONG>o</STRONG> If both <STRONG>smgtp</STRONG> and <STRONG>smgbp</STRONG> are set, each is used to set the top and
+ bottom margin, respectively:
+
+ <STRONG>o</STRONG> <STRONG>smgtp</STRONG> is used with a single argument, <EM>N</EM>, the line number of the
+ top margin.
+
+ <STRONG>o</STRONG> <STRONG>smgbp</STRONG> is used with two arguments, <EM>N</EM> and <EM>M</EM>, that give the line
+ number of the bottom margin, the first counting from the top of
+ the page and the second counting from the bottom. This
+ accommodates the two styles of specifying the bottom margin in
+ different manufacturers' printers.
+
+ When designing a terminfo entry for a printer that has a settable
+ bottom margin, only the first or second argument should be used,
+ depending on the printer. When developing an application that uses
+ <STRONG>smgbp</STRONG> to set the bottom margin, both arguments must be given.
+
+ Conversely, when only one capability in the pair is set:
+
+ <STRONG>o</STRONG> If only one of <STRONG>smglp</STRONG> and <STRONG>smgrp</STRONG> is set, then it is used with two
+ arguments, the column number of the left and right margins, in that
+ order.
+
+ <STRONG>o</STRONG> Likewise, if only one of <STRONG>smgtp</STRONG> and <STRONG>smgbp</STRONG> is set, then it is used
+ with two arguments that give the top and bottom margins, in that
+ order, counting from the top of the page.
+
+ When designing a terminfo entry for a printer that requires setting
+ both left and right or top and bottom margins simultaneously, only
+ one capability in the pairs <STRONG>smglp</STRONG> and <STRONG>smgrp</STRONG> or <STRONG>smgtp</STRONG> and <STRONG>smgbp</STRONG>
+ should be defined, leaving the other unset.
+
+ Except for very old terminal descriptions, e.g., those developed for
+ SVr4, the scheme just described should be considered obsolete. An
+ improved set of capabilities was added late in the SVr4 releases (<STRONG>smglr</STRONG>
+ and <STRONG>smgtb</STRONG>), which explicitly use two parameters for setting the
+ left/right or top/bottom margins.
+
+ When setting margins, the line- and column-values are zero-based.
+
+ The <STRONG>mgc</STRONG> string capability should be defined. Applications such as
+ <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG> rely upon this to reset all margins.
</PRE><H3><a name="h3-Area-Clears">Area Clears</a></H3><PRE>
- If the terminal can clear from the current position to the end of the
- line, leaving the cursor where it is, this should be given as <STRONG>el</STRONG>. If
- the terminal can clear from the beginning of the line to the current
- position inclusive, leaving the cursor where it is, this should be
- given as <STRONG>el1</STRONG>. If the terminal can clear from the current position to
- the end of the display, then this should be given as <STRONG>ed</STRONG>. <STRONG>Ed</STRONG> is only
+ If the terminal can clear from the current position to the end of the
+ line, leaving the cursor where it is, this should be given as <STRONG>el</STRONG>. If
+ the terminal can clear from the beginning of the line to the current
+ position inclusive, leaving the cursor where it is, this should be
+ given as <STRONG>el1</STRONG>. If the terminal can clear from the current position to
+ the end of the display, then this should be given as <STRONG>ed</STRONG>. <STRONG>Ed</STRONG> is only
defined from the first column of a line. (Thus, it can be simulated by
- a request to delete a large number of lines, if a true <STRONG>ed</STRONG> is not avail-
- able.)
+ a request to delete a large number of lines, if a true <STRONG>ed</STRONG> is not
+ available.)
</PRE><H3><a name="h3-Insert_delete-line-and-vertical-motions">Insert/delete line and vertical motions</a></H3><PRE>
- If the terminal can open a new blank line before the line where the
- cursor is, this should be given as <STRONG>il1</STRONG>; this is done only from the
- first position of a line. The cursor must then appear on the newly
- blank line. If the terminal can delete the line which the cursor is
- on, then this should be given as <STRONG>dl1</STRONG>; this is done only from the first
+ If the terminal can open a new blank line before the line where the
+ cursor is, this should be given as <STRONG>il1</STRONG>; this is done only from the
+ first position of a line. The cursor must then appear on the newly
+ blank line. If the terminal can delete the line which the cursor is
+ on, then this should be given as <STRONG>dl1</STRONG>; this is done only from the first
position on the line to be deleted. Versions of <STRONG>il1</STRONG> and <STRONG>dl1</STRONG> which take
a single parameter and insert or delete that many lines can be given as
<STRONG>il</STRONG> and <STRONG>dl</STRONG>.
- If the terminal has a settable scrolling region (like the vt100) the
- command to set this can be described with the <STRONG>csr</STRONG> capability, which
+ If the terminal has a settable scrolling region (like the vt100) the
+ command to set this can be described with the <STRONG>csr</STRONG> capability, which
takes two parameters: the top and bottom lines of the scrolling region.
The cursor position is, alas, undefined after using this command.
- It is possible to get the effect of insert or delete line using <STRONG>csr</STRONG> on
- a properly chosen region; the <STRONG>sc</STRONG> and <STRONG>rc</STRONG> (save and restore cursor) com-
- mands may be useful for ensuring that your synthesized insert/delete
- string does not move the cursor. (Note that the <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> library
- does this synthesis automatically, so you need not compose
+ It is possible to get the effect of insert or delete line using <STRONG>csr</STRONG> on
+ a properly chosen region; the <STRONG>sc</STRONG> and <STRONG>rc</STRONG> (save and restore cursor)
+ commands may be useful for ensuring that your synthesized insert/delete
+ string does not move the cursor. (Note that the <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> library
+ does this synthesis automatically, so you need not compose
insert/delete strings for an entry with <STRONG>csr</STRONG>).
- Yet another way to construct insert and delete might be to use a combi-
- nation of index with the memory-lock feature found on some terminals
- (like the HP-700/90 series, which however also has insert/delete).
+ Yet another way to construct insert and delete might be to use a
+ combination of index with the memory-lock feature found on some
+ terminals (like the HP-700/90 series, which however also has
+ insert/delete).
Inserting lines at the top or bottom of the screen can also be done
using <STRONG>ri</STRONG> or <STRONG>ind</STRONG> on many terminals without a true insert/delete line,
and is often faster even on terminals with those features.
- The boolean <STRONG>non_dest_scroll_region</STRONG> should be set if each scrolling win-
- dow is effectively a view port on a screen-sized canvas. To test for
- this capability, create a scrolling region in the middle of the screen,
- write something to the bottom line, move the cursor to the top of the
- region, and do <STRONG>ri</STRONG> followed by <STRONG>dl1</STRONG> or <STRONG>ind</STRONG>. If the data scrolled off the
- bottom of the region by the <STRONG>ri</STRONG> re-appears, then scrolling is non-
- destructive. System V and XSI Curses expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>, and
- <STRONG>rin</STRONG> will simulate destructive scrolling; their documentation cautions
- you not to define <STRONG>csr</STRONG> unless this is true. This <STRONG>curses</STRONG> implementation
- is more liberal and will do explicit erases after scrolling if <STRONG>ndsrc</STRONG> is
- defined.
+ The boolean <STRONG>non_dest_scroll_region</STRONG> should be set if each scrolling
+ window is effectively a view port on a screen-sized canvas. To test
+ for this capability, create a scrolling region in the middle of the
+ screen, write something to the bottom line, move the cursor to the top
+ of the region, and do <STRONG>ri</STRONG> followed by <STRONG>dl1</STRONG> or <STRONG>ind</STRONG>. If the data scrolled
+ off the bottom of the region by the <STRONG>ri</STRONG> re-appears, then scrolling is
+ non-destructive. System V and XSI Curses expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>,
+ and <STRONG>rin</STRONG> will simulate destructive scrolling; their documentation
+ cautions you not to define <STRONG>csr</STRONG> unless this is true. This <STRONG>curses</STRONG>
+ implementation is more liberal and will do explicit erases after
+ scrolling if <STRONG>ndsrc</STRONG> is defined.
If the terminal has the ability to define a window as part of memory,
which all commands affect, it should be given as the parameterized
@@ -1635,110 +1782,111 @@
</PRE><H3><a name="h3-Insert_Delete-Character">Insert/Delete Character</a></H3><PRE>
There are two basic kinds of intelligent terminals with respect to
insert/delete character which can be described using <EM>terminfo.</EM> The
- most common insert/delete character operations affect only the charac-
- ters on the current line and shift characters off the end of the line
- rigidly. Other terminals, such as the Concept 100 and the Perkin Elmer
- Owl, make a distinction between typed and untyped blanks on the screen,
- shifting upon an insert or delete only to an untyped blank on the
- screen which is either eliminated, or expanded to two untyped blanks.
-
- You can determine the kind of terminal you have by clearing the screen
- and then typing text separated by cursor motions. Type "abc def"
- using local cursor motions (not spaces) between the "abc" and the
- "def". Then position the cursor before the "abc" and put the terminal
- in insert mode. If typing characters causes the rest of the line to
- shift rigidly and characters to fall off the end, then your terminal
- does not distinguish between blanks and untyped positions. If the
- "abc" shifts over to the "def" which then move together around the end
- of the current line and onto the next as you insert, you have the sec-
- ond type of terminal, and should give the capability <STRONG>in</STRONG>, which stands
- for "insert null".
-
- While these are two logically separate attributes (one line versus
- multi-line insert mode, and special treatment of untyped spaces) we
- have seen no terminals whose insert mode cannot be described with the
+ most common insert/delete character operations affect only the
+ characters on the current line and shift characters off the end of the
+ line rigidly. Other terminals, such as the Concept 100 and the Perkin
+ Elmer Owl, make a distinction between typed and untyped blanks on the
+ screen, shifting upon an insert or delete only to an untyped blank on
+ the screen which is either eliminated, or expanded to two untyped
+ blanks.
+
+ You can determine the kind of terminal you have by clearing the screen
+ and then typing text separated by cursor motions. Type "abc def"
+ using local cursor motions (not spaces) between the "abc" and the
+ "def". Then position the cursor before the "abc" and put the terminal
+ in insert mode. If typing characters causes the rest of the line to
+ shift rigidly and characters to fall off the end, then your terminal
+ does not distinguish between blanks and untyped positions. If the
+ "abc" shifts over to the "def" which then move together around the end
+ of the current line and onto the next as you insert, you have the
+ second type of terminal, and should give the capability <STRONG>in</STRONG>, which
+ stands for "insert null".
+
+ While these are two logically separate attributes (one line versus
+ multi-line insert mode, and special treatment of untyped spaces) we
+ have seen no terminals whose insert mode cannot be described with the
single attribute.
- Terminfo can describe both terminals which have an insert mode, and
- terminals which send a simple sequence to open a blank position on the
+ Terminfo can describe both terminals which have an insert mode, and
+ terminals which send a simple sequence to open a blank position on the
current line. Give as <STRONG>smir</STRONG> the sequence to get into insert mode. Give
- as <STRONG>rmir</STRONG> the sequence to leave insert mode. Now give as <STRONG>ich1</STRONG> any
- sequence needed to be sent just before sending the character to be
- inserted. Most terminals with a true insert mode will not give <STRONG>ich1</STRONG>;
- terminals which send a sequence to open a screen position should give
+ as <STRONG>rmir</STRONG> the sequence to leave insert mode. Now give as <STRONG>ich1</STRONG> any
+ sequence needed to be sent just before sending the character to be
+ inserted. Most terminals with a true insert mode will not give <STRONG>ich1</STRONG>;
+ terminals which send a sequence to open a screen position should give
it here.
- If your terminal has both, insert mode is usually preferable to <STRONG>ich1</STRONG>.
- Technically, you should not give both unless the terminal actually
- requires both to be used in combination. Accordingly, some non-curses
- applications get confused if both are present; the symptom is doubled
- characters in an update using insert. This requirement is now rare;
- most <STRONG>ich</STRONG> sequences do not require previous smir, and most smir insert
- modes do not require <STRONG>ich1</STRONG> before each character. Therefore, the new
- <STRONG>curses</STRONG> actually assumes this is the case and uses either <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> or
- <STRONG>ich</STRONG>/<STRONG>ich1</STRONG> as appropriate (but not both). If you have to write an entry
- to be used under new curses for a terminal old enough to need both,
+ If your terminal has both, insert mode is usually preferable to <STRONG>ich1</STRONG>.
+ Technically, you should not give both unless the terminal actually
+ requires both to be used in combination. Accordingly, some non-curses
+ applications get confused if both are present; the symptom is doubled
+ characters in an update using insert. This requirement is now rare;
+ most <STRONG>ich</STRONG> sequences do not require previous smir, and most smir insert
+ modes do not require <STRONG>ich1</STRONG> before each character. Therefore, the new
+ <STRONG>curses</STRONG> actually assumes this is the case and uses either <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> or
+ <STRONG>ich</STRONG>/<STRONG>ich1</STRONG> as appropriate (but not both). If you have to write an entry
+ to be used under new curses for a terminal old enough to need both,
include the <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> sequences in <STRONG>ich1</STRONG>.
If post insert padding is needed, give this as a number of milliseconds
- in <STRONG>ip</STRONG> (a string option). Any other sequence which may need to be sent
+ in <STRONG>ip</STRONG> (a string option). Any other sequence which may need to be sent
after an insert of a single character may also be given in <STRONG>ip</STRONG>. If your
- terminal needs both to be placed into an "insert mode" and a special
- code to precede each inserted character, then both <STRONG>smir</STRONG>/<STRONG>rmir</STRONG> and <STRONG>ich1</STRONG>
- can be given, and both will be used. The <STRONG>ich</STRONG> capability, with one
+ terminal needs both to be placed into an "insert mode" and a special
+ code to precede each inserted character, then both <STRONG>smir</STRONG>/<STRONG>rmir</STRONG> and <STRONG>ich1</STRONG>
+ can be given, and both will be used. The <STRONG>ich</STRONG> capability, with one
parameter, <EM>n</EM>, will repeat the effects of <STRONG>ich1</STRONG> <EM>n</EM> times.
- If padding is necessary between characters typed while not in insert
+ If padding is necessary between characters typed while not in insert
mode, give this as a number of milliseconds padding in <STRONG>rmp</STRONG>.
- It is occasionally necessary to move around while in insert mode to
- delete characters on the same line (e.g., if there is a tab after the
- insertion position). If your terminal allows motion while in insert
- mode you can give the capability <STRONG>mir</STRONG> to speed up inserting in this
- case. Omitting <STRONG>mir</STRONG> will affect only speed. Some terminals (notably
- Datamedia's) must not have <STRONG>mir</STRONG> because of the way their insert mode
+ It is occasionally necessary to move around while in insert mode to
+ delete characters on the same line (e.g., if there is a tab after the
+ insertion position). If your terminal allows motion while in insert
+ mode you can give the capability <STRONG>mir</STRONG> to speed up inserting in this
+ case. Omitting <STRONG>mir</STRONG> will affect only speed. Some terminals (notably
+ Datamedia's) must not have <STRONG>mir</STRONG> because of the way their insert mode
works.
- Finally, you can specify <STRONG>dch1</STRONG> to delete a single character, <STRONG>dch</STRONG> with
- one parameter, <EM>n</EM>, to delete <EM>n</EM> <EM>characters,</EM> and delete mode by giving
- <STRONG>smdc</STRONG> and <STRONG>rmdc</STRONG> to enter and exit delete mode (any mode the terminal
+ Finally, you can specify <STRONG>dch1</STRONG> to delete a single character, <STRONG>dch</STRONG> with
+ one parameter, <EM>n</EM>, to delete <EM>n</EM> <EM>characters,</EM> and delete mode by giving
+ <STRONG>smdc</STRONG> and <STRONG>rmdc</STRONG> to enter and exit delete mode (any mode the terminal
needs to be placed in for <STRONG>dch1</STRONG> to work).
- A command to erase <EM>n</EM> characters (equivalent to outputting <EM>n</EM> blanks
+ A command to erase <EM>n</EM> characters (equivalent to outputting <EM>n</EM> blanks
without moving the cursor) can be given as <STRONG>ech</STRONG> with one parameter.
</PRE><H3><a name="h3-Highlighting_-Underlining_-and-Visible-Bells">Highlighting, Underlining, and Visible Bells</a></H3><PRE>
If your terminal has one or more kinds of display attributes, these can
- be represented in a number of different ways. You should choose one
- display form as <EM>standout</EM> <EM>mode</EM>, representing a good, high contrast,
- easy-on-the-eyes, format for highlighting error messages and other
- attention getters. (If you have a choice, reverse video plus half-
- bright is good, or reverse video alone.) The sequences to enter and
- exit standout mode are given as <STRONG>smso</STRONG> and <STRONG>rmso</STRONG>, respectively. If the
- code to change into or out of standout mode leaves one or even two
- blank spaces on the screen, as the TVI 912 and Teleray 1061 do, then
+ be represented in a number of different ways. You should choose one
+ display form as <EM>standout</EM> <EM>mode</EM>, representing a good, high contrast,
+ easy-on-the-eyes, format for highlighting error messages and other
+ attention getters. (If you have a choice, reverse video plus half-
+ bright is good, or reverse video alone.) The sequences to enter and
+ exit standout mode are given as <STRONG>smso</STRONG> and <STRONG>rmso</STRONG>, respectively. If the
+ code to change into or out of standout mode leaves one or even two
+ blank spaces on the screen, as the TVI 912 and Teleray 1061 do, then
<STRONG>xmc</STRONG> should be given to tell how many spaces are left.
Codes to begin underlining and end underlining can be given as <STRONG>smul</STRONG> and
<STRONG>rmul</STRONG> respectively. If the terminal has a code to underline the current
- character and move the cursor one space to the right, such as the
+ character and move the cursor one space to the right, such as the
Microterm Mime, this can be given as <STRONG>uc</STRONG>.
- Other capabilities to enter various highlighting modes include <STRONG>blink</STRONG>
- (blinking) <STRONG>bold</STRONG> (bold or extra bright) <STRONG>dim</STRONG> (dim or half-bright) <STRONG>invis</STRONG>
- (blanking or invisible text) <STRONG>prot</STRONG> (protected) <STRONG>rev</STRONG> (reverse video) <STRONG>sgr0</STRONG>
- (turn off <EM>all</EM> attribute modes) <STRONG>smacs</STRONG> (enter alternate character set
+ Other capabilities to enter various highlighting modes include <STRONG>blink</STRONG>
+ (blinking) <STRONG>bold</STRONG> (bold or extra bright) <STRONG>dim</STRONG> (dim or half-bright) <STRONG>invis</STRONG>
+ (blanking or invisible text) <STRONG>prot</STRONG> (protected) <STRONG>rev</STRONG> (reverse video) <STRONG>sgr0</STRONG>
+ (turn off <EM>all</EM> attribute modes) <STRONG>smacs</STRONG> (enter alternate character set
mode) and <STRONG>rmacs</STRONG> (exit alternate character set mode). Turning on any of
these modes singly may or may not turn off other modes.
- If there is a sequence to set arbitrary combinations of modes, this
- should be given as <STRONG>sgr</STRONG> (set attributes), taking 9 parameters. Each
- parameter is either 0 or nonzero, as the corresponding attribute is on
- or off. The 9 parameters are, in order: standout, underline, reverse,
- blink, dim, bold, blank, protect, alternate character set. Not all
- modes need be supported by <STRONG>sgr</STRONG>, only those for which corresponding sep-
- arate attribute commands exist.
+ If there is a sequence to set arbitrary combinations of modes, this
+ should be given as <STRONG>sgr</STRONG> (set attributes), taking 9 parameters. Each
+ parameter is either 0 or nonzero, as the corresponding attribute is on
+ or off. The 9 parameters are, in order: standout, underline, reverse,
+ blink, dim, bold, blank, protect, alternate character set. Not all
+ modes need be supported by <STRONG>sgr</STRONG>, only those for which corresponding
+ separate attribute commands exist.
For example, the DEC vt220 supports most of the modes:
@@ -1755,17 +1903,17 @@
p8 protect not used
p9 altcharset ^O (off) ^N (on)
- We begin each escape sequence by turning off any existing modes, since
- there is no quick way to determine whether they are active. Standout
- is set up to be the combination of reverse and bold. The vt220 termi-
- nal has a protect mode, though it is not commonly used in sgr because
- it protects characters on the screen from the host's erasures. The
- altcharset mode also is different in that it is either ^O or ^N,
- depending on whether it is off or on. If all modes are turned on, the
+ We begin each escape sequence by turning off any existing modes, since
+ there is no quick way to determine whether they are active. Standout
+ is set up to be the combination of reverse and bold. The vt220
+ terminal has a protect mode, though it is not commonly used in sgr
+ because it protects characters on the screen from the host's erasures.
+ The altcharset mode also is different in that it is either ^O or ^N,
+ depending on whether it is off or on. If all modes are turned on, the
resulting sequence is \E[0;1;4;5;7;8m^N.
- Some sequences are common to different modes. For example, ;7 is out-
- put when either p1 or p3 is true, that is, if either standout or
+ Some sequences are common to different modes. For example, ;7 is
+ output when either p1 or p3 is true, that is, if either standout or
reverse modes are turned on.
Writing out the above sequences, along with their dependencies yields
@@ -1786,54 +1934,54 @@
sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p4%t;5%;
%?%p1%p3%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
- Remember that if you specify sgr, you must also specify sgr0. Also,
- some implementations rely on sgr being given if sgr0 is, Not all ter-
- minfo entries necessarily have an sgr string, however. Many terminfo
- entries are derived from termcap entries which have no sgr string. The
- only drawback to adding an sgr string is that termcap also assumes that
- sgr0 does not exit alternate character set mode.
-
- Terminals with the "magic cookie" glitch (<STRONG>xmc</STRONG>) deposit special "cook-
- ies" when they receive mode-setting sequences, which affect the display
- algorithm rather than having extra bits for each character. Some ter-
- minals, such as the HP 2621, automatically leave standout mode when
- they move to a new line or the cursor is addressed. Programs using
- standout mode should exit standout mode before moving the cursor or
- sending a newline, unless the <STRONG>msgr</STRONG> capability, asserting that it is
+ Remember that if you specify sgr, you must also specify sgr0. Also,
+ some implementations rely on sgr being given if sgr0 is, Not all
+ terminfo entries necessarily have an sgr string, however. Many
+ terminfo entries are derived from termcap entries which have no sgr
+ string. The only drawback to adding an sgr string is that termcap also
+ assumes that sgr0 does not exit alternate character set mode.
+
+ Terminals with the "magic cookie" glitch (<STRONG>xmc</STRONG>) deposit special
+ "cookies" when they receive mode-setting sequences, which affect the
+ display algorithm rather than having extra bits for each character.
+ Some terminals, such as the HP 2621, automatically leave standout mode
+ when they move to a new line or the cursor is addressed. Programs
+ using standout mode should exit standout mode before moving the cursor
+ or sending a newline, unless the <STRONG>msgr</STRONG> capability, asserting that it is
safe to move in standout mode, is present.
- If the terminal has a way of flashing the screen to indicate an error
- quietly (a bell replacement) then this can be given as <STRONG>flash</STRONG>; it must
+ If the terminal has a way of flashing the screen to indicate an error
+ quietly (a bell replacement) then this can be given as <STRONG>flash</STRONG>; it must
not move the cursor.
- If the cursor needs to be made more visible than normal when it is not
+ If the cursor needs to be made more visible than normal when it is not
on the bottom line (to make, for example, a non-blinking underline into
- an easier to find block or blinking underline) give this sequence as
+ an easier to find block or blinking underline) give this sequence as
<STRONG>cvvis</STRONG>. If there is a way to make the cursor completely invisible, give
- that as <STRONG>civis</STRONG>. The capability <STRONG>cnorm</STRONG> should be given which undoes the
+ that as <STRONG>civis</STRONG>. The capability <STRONG>cnorm</STRONG> should be given which undoes the
effects of both of these modes.
- If your terminal correctly generates underlined characters (with no
- special codes needed) even though it does not overstrike, then you
- should give the capability <STRONG>ul</STRONG>. If a character overstriking another
- leaves both characters on the screen, specify the capability <STRONG>os</STRONG>. If
+ If your terminal correctly generates underlined characters (with no
+ special codes needed) even though it does not overstrike, then you
+ should give the capability <STRONG>ul</STRONG>. If a character overstriking another
+ leaves both characters on the screen, specify the capability <STRONG>os</STRONG>. If
overstrikes are erasable with a blank, then this should be indicated by
giving <STRONG>eo</STRONG>.
</PRE><H3><a name="h3-Keypad-and-Function-Keys">Keypad and Function Keys</a></H3><PRE>
- If the terminal has a keypad that transmits codes when the keys are
- pressed, this information can be given. Note that it is not possible
+ If the terminal has a keypad that transmits codes when the keys are
+ pressed, this information can be given. Note that it is not possible
to handle terminals where the keypad only works in local (this applies,
- for example, to the unshifted HP 2621 keys). If the keypad can be set
- to transmit or not transmit, give these codes as <STRONG>smkx</STRONG> and <STRONG>rmkx</STRONG>. Other-
- wise the keypad is assumed to always transmit.
+ for example, to the unshifted HP 2621 keys). If the keypad can be set
+ to transmit or not transmit, give these codes as <STRONG>smkx</STRONG> and <STRONG>rmkx</STRONG>.
+ Otherwise the keypad is assumed to always transmit.
- The codes sent by the left arrow, right arrow, up arrow, down arrow,
- and home keys can be given as <STRONG>kcub1,</STRONG> <STRONG>kcuf1,</STRONG> <STRONG>kcuu1,</STRONG> <STRONG>kcud1,</STRONG> and <STRONG>khome</STRONG>
+ The codes sent by the left arrow, right arrow, up arrow, down arrow,
+ and home keys can be given as <STRONG>kcub1,</STRONG> <STRONG>kcuf1,</STRONG> <STRONG>kcuu1,</STRONG> <STRONG>kcud1,</STRONG> and <STRONG>khome</STRONG>
respectively. If there are function keys such as f0, f1, ..., f10, the
- codes they send can be given as <STRONG>kf0,</STRONG> <STRONG>kf1,</STRONG> <STRONG>...,</STRONG> <STRONG>kf10</STRONG>. If these keys
- have labels other than the default f0 through f10, the labels can be
+ codes they send can be given as <STRONG>kf0,</STRONG> <STRONG>kf1,</STRONG> <STRONG>...,</STRONG> <STRONG>kf10</STRONG>. If these keys
+ have labels other than the default f0 through f10, the labels can be
given as <STRONG>lf0,</STRONG> <STRONG>lf1,</STRONG> <STRONG>...,</STRONG> <STRONG>lf10</STRONG>.
The codes transmitted by certain other special keys can be given:
@@ -1872,64 +2020,64 @@
<STRONG>o</STRONG> <STRONG>khts</STRONG> (set a tab stop in this column).
- In addition, if the keypad has a 3 by 3 array of keys including the
- four arrow keys, the other five keys can be given as <STRONG>ka1</STRONG>, <STRONG>ka3</STRONG>, <STRONG>kb2</STRONG>,
- <STRONG>kc1</STRONG>, and <STRONG>kc3</STRONG>. These keys are useful when the effects of a 3 by 3
+ In addition, if the keypad has a 3 by 3 array of keys including the
+ four arrow keys, the other five keys can be given as <STRONG>ka1</STRONG>, <STRONG>ka3</STRONG>, <STRONG>kb2</STRONG>,
+ <STRONG>kc1</STRONG>, and <STRONG>kc3</STRONG>. These keys are useful when the effects of a 3 by 3
directional pad are needed.
Strings to program function keys can be given as <STRONG>pfkey</STRONG>, <STRONG>pfloc</STRONG>, and <STRONG>pfx</STRONG>.
- A string to program screen labels should be specified as <STRONG>pln</STRONG>. Each of
- these strings takes two parameters: the function key number to program
+ A string to program screen labels should be specified as <STRONG>pln</STRONG>. Each of
+ these strings takes two parameters: the function key number to program
(from 0 to 10) and the string to program it with. Function key numbers
- out of this range may program undefined keys in a terminal dependent
- manner. The difference between the capabilities is that <STRONG>pfkey</STRONG> causes
- pressing the given key to be the same as the user typing the given
- string; <STRONG>pfloc</STRONG> causes the string to be executed by the terminal in
+ out of this range may program undefined keys in a terminal dependent
+ manner. The difference between the capabilities is that <STRONG>pfkey</STRONG> causes
+ pressing the given key to be the same as the user typing the given
+ string; <STRONG>pfloc</STRONG> causes the string to be executed by the terminal in
local; and <STRONG>pfx</STRONG> causes the string to be transmitted to the computer.
- The capabilities <STRONG>nlab</STRONG>, <STRONG>lw</STRONG> and <STRONG>lh</STRONG> define the number of programmable
- screen labels and their width and height. If there are commands to
- turn the labels on and off, give them in <STRONG>smln</STRONG> and <STRONG>rmln</STRONG>. <STRONG>smln</STRONG> is nor-
- mally output after one or more pln sequences to make sure that the
+ The capabilities <STRONG>nlab</STRONG>, <STRONG>lw</STRONG> and <STRONG>lh</STRONG> define the number of programmable
+ screen labels and their width and height. If there are commands to
+ turn the labels on and off, give them in <STRONG>smln</STRONG> and <STRONG>rmln</STRONG>. <STRONG>smln</STRONG> is
+ normally output after one or more pln sequences to make sure that the
change becomes visible.
</PRE><H3><a name="h3-Tabs-and-Initialization">Tabs and Initialization</a></H3><PRE>
A few capabilities are used only for tabs:
- <STRONG>o</STRONG> If the terminal has hardware tabs, the command to advance to the
+ <STRONG>o</STRONG> If the terminal has hardware tabs, the command to advance to the
next tab stop can be given as <STRONG>ht</STRONG> (usually control/I).
<STRONG>o</STRONG> A "back-tab" command which moves leftward to the preceding tab stop
can be given as <STRONG>cbt</STRONG>.
- By convention, if the teletype modes indicate that tabs are being
- expanded by the computer rather than being sent to the terminal,
- programs should not use <STRONG>ht</STRONG> or <STRONG>cbt</STRONG> even if they are present, since
+ By convention, if the teletype modes indicate that tabs are being
+ expanded by the computer rather than being sent to the terminal,
+ programs should not use <STRONG>ht</STRONG> or <STRONG>cbt</STRONG> even if they are present, since
the user may not have the tab stops properly set.
- <STRONG>o</STRONG> If the terminal has hardware tabs which are initially set every <EM>n</EM>
+ <STRONG>o</STRONG> If the terminal has hardware tabs which are initially set every <EM>n</EM>
spaces when the terminal is powered up, the numeric parameter <STRONG>it</STRONG> is
given, showing the number of spaces the tabs are set to.
The <STRONG>it</STRONG> capability is normally used by the <STRONG>tset</STRONG> command to determine
- whether to set the mode for hardware tab expansion, and whether to
+ whether to set the mode for hardware tab expansion, and whether to
set the tab stops. If the terminal has tab stops that can be saved
- in non-volatile memory, the terminfo description can assume that
+ in non-volatile memory, the terminfo description can assume that
they are properly set.
Other capabilities include
<STRONG>o</STRONG> <STRONG>is1</STRONG>, <STRONG>is2</STRONG>, and <STRONG>is3</STRONG>, initialization strings for the terminal,
- <STRONG>o</STRONG> <STRONG>iprog</STRONG>, the path name of a program to be run to initialize the ter-
- minal,
+ <STRONG>o</STRONG> <STRONG>iprog</STRONG>, the path name of a program to be run to initialize the
+ terminal,
<STRONG>o</STRONG> and <STRONG>if</STRONG>, the name of a file containing long initialization strings.
- These strings are expected to set the terminal into modes consistent
- with the rest of the terminfo description. They are normally sent to
- the terminal, by the <EM>init</EM> option of the <STRONG>tput</STRONG> program, each time the
+ These strings are expected to set the terminal into modes consistent
+ with the rest of the terminfo description. They are normally sent to
+ the terminal, by the <EM>init</EM> option of the <STRONG>tput</STRONG> program, each time the
user logs in. They will be printed in the following order:
run the program
@@ -1953,114 +2101,114 @@
and finally output
<STRONG>is3</STRONG>.
- Most initialization is done with <STRONG>is2</STRONG>. Special terminal modes can be
- set up without duplicating strings by putting the common sequences in
+ Most initialization is done with <STRONG>is2</STRONG>. Special terminal modes can be
+ set up without duplicating strings by putting the common sequences in
<STRONG>is2</STRONG> and special cases in <STRONG>is1</STRONG> and <STRONG>is3</STRONG>.
- A set of sequences that does a harder reset from a totally unknown
+ A set of sequences that does a harder reset from a totally unknown
state can be given as <STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rf</STRONG> and <STRONG>rs3</STRONG>, analogous to <STRONG>is1</STRONG> <STRONG>,</STRONG> <STRONG>is2</STRONG> <STRONG>,</STRONG> <STRONG>if</STRONG>
- and <STRONG>is3</STRONG> respectively. These strings are output by <EM>reset</EM> option of
- <STRONG>tput</STRONG>, or by the <STRONG>reset</STRONG> program (an alias of <STRONG>tset</STRONG>), which is used when
+ and <STRONG>is3</STRONG> respectively. These strings are output by <EM>reset</EM> option of
+ <STRONG>tput</STRONG>, or by the <STRONG>reset</STRONG> program (an alias of <STRONG>tset</STRONG>), which is used when
the terminal gets into a wedged state. Commands are normally placed in
<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG> <STRONG>rs3</STRONG> and <STRONG>rf</STRONG> only if they produce annoying effects on the screen
and are not necessary when logging in. For example, the command to set
- the vt100 into 80-column mode would normally be part of <STRONG>is2</STRONG>, but it
- causes an annoying glitch of the screen and is not normally needed
+ the vt100 into 80-column mode would normally be part of <STRONG>is2</STRONG>, but it
+ causes an annoying glitch of the screen and is not normally needed
since the terminal is usually already in 80-column mode.
- The <STRONG>reset</STRONG> program writes strings including <STRONG>iprog</STRONG>, etc., in the same
- order as the <EM>init</EM> program, using <STRONG>rs1</STRONG>, etc., instead of <STRONG>is1</STRONG>, etc. If
- any of <STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, or <STRONG>rf</STRONG> reset capability strings are missing, the
- <STRONG>reset</STRONG> program falls back upon the corresponding initialization capabil-
- ity string.
+ The <STRONG>reset</STRONG> program writes strings including <STRONG>iprog</STRONG>, etc., in the same
+ order as the <EM>init</EM> program, using <STRONG>rs1</STRONG>, etc., instead of <STRONG>is1</STRONG>, etc. If
+ any of <STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, or <STRONG>rf</STRONG> reset capability strings are missing, the
+ <STRONG>reset</STRONG> program falls back upon the corresponding initialization
+ capability string.
- If there are commands to set and clear tab stops, they can be given as
+ If there are commands to set and clear tab stops, they can be given as
<STRONG>tbc</STRONG> (clear all tab stops) and <STRONG>hts</STRONG> (set a tab stop in the current column
- of every row). If a more complex sequence is needed to set the tabs
+ of every row). If a more complex sequence is needed to set the tabs
than can be described by this, the sequence can be placed in <STRONG>is2</STRONG> or <STRONG>if</STRONG>.
- The <STRONG>tput</STRONG> <STRONG>reset</STRONG> command uses the same capability strings as the <STRONG>reset</STRONG>
- command, although the two programs (<STRONG>tput</STRONG> and <STRONG>reset</STRONG>) provide different
+ The <STRONG>tput</STRONG> <STRONG>reset</STRONG> command uses the same capability strings as the <STRONG>reset</STRONG>
+ command, although the two programs (<STRONG>tput</STRONG> and <STRONG>reset</STRONG>) provide different
command-line options.
- In practice, these terminfo capabilities are not often used in initial-
- ization of tabs (though they are required for the <STRONG>tabs</STRONG> program):
+ In practice, these terminfo capabilities are not often used in
+ initialization of tabs (though they are required for the <STRONG>tabs</STRONG> program):
<STRONG>o</STRONG> Almost all hardware terminals (at least those which supported tabs)
initialized those to every <EM>eight</EM> columns:
- The only exception was the AT&amp;T 2300 series, which set tabs to
+ The only exception was the AT&amp;T 2300 series, which set tabs to
every <EM>five</EM> columns.
- <STRONG>o</STRONG> In particular, developers of the hardware terminals which are com-
- monly used as models for modern terminal emulators provided docu-
- mentation demonstrating that <EM>eight</EM> columns were the standard.
+ <STRONG>o</STRONG> In particular, developers of the hardware terminals which are
+ commonly used as models for modern terminal emulators provided
+ documentation demonstrating that <EM>eight</EM> columns were the standard.
<STRONG>o</STRONG> Because of this, the terminal initialization programs <STRONG>tput</STRONG> and <STRONG>tset</STRONG>
- use the <STRONG>tbc</STRONG> (<STRONG>clear_all_tabs</STRONG>) and <STRONG>hts</STRONG> (<STRONG>set_tab</STRONG>) capabilities
- directly only when the <STRONG>it</STRONG> (<STRONG>init_tabs</STRONG>) capability is set to a value
+ use the <STRONG>tbc</STRONG> (<STRONG>clear_all_tabs</STRONG>) and <STRONG>hts</STRONG> (<STRONG>set_tab</STRONG>) capabilities
+ directly only when the <STRONG>it</STRONG> (<STRONG>init_tabs</STRONG>) capability is set to a value
other than <EM>eight</EM>.
</PRE><H3><a name="h3-Delays-and-Padding">Delays and Padding</a></H3><PRE>
- Many older and slower terminals do not support either XON/XOFF or DTR
- handshaking, including hard copy terminals and some very archaic CRTs
- (including, for example, DEC VT100s). These may require padding char-
- acters after certain cursor motions and screen changes.
+ Many older and slower terminals do not support either XON/XOFF or DTR
+ handshaking, including hard copy terminals and some very archaic CRTs
+ (including, for example, DEC VT100s). These may require padding
+ characters after certain cursor motions and screen changes.
If the terminal uses xon/xoff handshaking for flow control (that is, it
- automatically emits ^S back to the host when its input buffers are
- close to full), set <STRONG>xon</STRONG>. This capability suppresses the emission of
- padding. You can also set it for memory-mapped console devices effec-
- tively that do not have a speed limit. Padding information should
- still be included so that routines can make better decisions about rel-
- ative costs, but actual pad characters will not be transmitted.
+ automatically emits ^S back to the host when its input buffers are
+ close to full), set <STRONG>xon</STRONG>. This capability suppresses the emission of
+ padding. You can also set it for memory-mapped console devices
+ effectively that do not have a speed limit. Padding information should
+ still be included so that routines can make better decisions about
+ relative costs, but actual pad characters will not be transmitted.
If <STRONG>pb</STRONG> (padding baud rate) is given, padding is suppressed at baud rates
- below the value of <STRONG>pb</STRONG>. If the entry has no padding baud rate, then
+ below the value of <STRONG>pb</STRONG>. If the entry has no padding baud rate, then
whether padding is emitted or not is completely controlled by <STRONG>xon</STRONG>.
- If the terminal requires other than a null (zero) character as a pad,
- then this can be given as <STRONG>pad</STRONG>. Only the first character of the <STRONG>pad</STRONG>
+ If the terminal requires other than a null (zero) character as a pad,
+ then this can be given as <STRONG>pad</STRONG>. Only the first character of the <STRONG>pad</STRONG>
string is used.
</PRE><H3><a name="h3-Status-Lines">Status Lines</a></H3><PRE>
- Some terminals have an extra "status line" which is not normally used
+ Some terminals have an extra "status line" which is not normally used
by software (and thus not counted in the terminal's <STRONG>lines</STRONG> capability).
- The simplest case is a status line which is cursor-addressable but not
+ The simplest case is a status line which is cursor-addressable but not
part of the main scrolling region on the screen; the Heathkit H19 has a
- status line of this kind, as would a 24-line VT100 with a 23-line
+ status line of this kind, as would a 24-line VT100 with a 23-line
scrolling region set up on initialization. This situation is indicated
by the <STRONG>hs</STRONG> capability.
- Some terminals with status lines need special sequences to access the
- status line. These may be expressed as a string with single parameter
- <STRONG>tsl</STRONG> which takes the cursor to a given zero-origin column on the status
- line. The capability <STRONG>fsl</STRONG> must return to the main-screen cursor posi-
- tions before the last <STRONG>tsl</STRONG>. You may need to embed the string values of
- <STRONG>sc</STRONG> (save cursor) and <STRONG>rc</STRONG> (restore cursor) in <STRONG>tsl</STRONG> and <STRONG>fsl</STRONG> to accomplish
- this.
+ Some terminals with status lines need special sequences to access the
+ status line. These may be expressed as a string with single parameter
+ <STRONG>tsl</STRONG> which takes the cursor to a given zero-origin column on the status
+ line. The capability <STRONG>fsl</STRONG> must return to the main-screen cursor
+ positions before the last <STRONG>tsl</STRONG>. You may need to embed the string values
+ of <STRONG>sc</STRONG> (save cursor) and <STRONG>rc</STRONG> (restore cursor) in <STRONG>tsl</STRONG> and <STRONG>fsl</STRONG> to
+ accomplish this.
- The status line is normally assumed to be the same width as the width
- of the terminal. If this is untrue, you can specify it with the
+ The status line is normally assumed to be the same width as the width
+ of the terminal. If this is untrue, you can specify it with the
numeric capability <STRONG>wsl</STRONG>.
A command to erase or blank the status line may be specified as <STRONG>dsl</STRONG>.
- The boolean capability <STRONG>eslok</STRONG> specifies that escape sequences, tabs,
+ The boolean capability <STRONG>eslok</STRONG> specifies that escape sequences, tabs,
etc., work ordinarily in the status line.
- The <STRONG>ncurses</STRONG> implementation does not yet use any of these capabilities.
+ The <STRONG>ncurses</STRONG> implementation does not yet use any of these capabilities.
They are documented here in case they ever become important.
</PRE><H3><a name="h3-Line-Graphics">Line Graphics</a></H3><PRE>
- Many terminals have alternate character sets useful for forms-drawing.
- Terminfo and <STRONG>curses</STRONG> have built-in support for most of the drawing char-
- acters supported by the VT100, with some characters from the AT&amp;T
- 4410v1 added. This alternate character set may be specified by the
+ Many terminals have alternate character sets useful for forms-drawing.
+ Terminfo and <STRONG>curses</STRONG> have built-in support for most of the drawing
+ characters supported by the VT100, with some characters from the AT&amp;T
+ 4410v1 added. This alternate character set may be specified by the
<STRONG>acsc</STRONG> capability.
<STRONG>Glyph</STRONG> <STRONG>ACS</STRONG> <STRONG>Ascii</STRONG> <STRONG>acsc</STRONG> <STRONG>acsc</STRONG>
@@ -2078,6 +2226,7 @@
board of squares ACS_BOARD # h 0x68
lantern symbol ACS_LANTERN # i 0x69
lower right corner ACS_LRCORNER + j 0x6a
+
upper right corner ACS_URCORNER + k 0x6b
upper left corner ACS_ULCORNER + l 0x6c
lower left corner ACS_LLCORNER + m 0x6d
@@ -2101,34 +2250,34 @@
A few notes apply to the table itself:
- <STRONG>o</STRONG> X/Open Curses incorrectly states that the mapping for <EM>lantern</EM> is
- uppercase "I" although Unix implementations use the lowercase "i"
+ <STRONG>o</STRONG> X/Open Curses incorrectly states that the mapping for <EM>lantern</EM> is
+ uppercase "I" although Unix implementations use the lowercase "i"
mapping.
- <STRONG>o</STRONG> The DEC VT100 implemented graphics using the alternate character
- set feature, temporarily switching <EM>modes</EM> and sending characters in
- the range 0x60 (96) to 0x7e (126) (the <STRONG>acsc</STRONG> <STRONG>Value</STRONG> column in the ta-
- ble).
+ <STRONG>o</STRONG> The DEC VT100 implemented graphics using the alternate character
+ set feature, temporarily switching <EM>modes</EM> and sending characters in
+ the range 0x60 (96) to 0x7e (126) (the <STRONG>acsc</STRONG> <STRONG>Value</STRONG> column in the
+ table).
<STRONG>o</STRONG> The AT&amp;T terminal added graphics characters outside that range.
- Some of the characters within the range do not match the VT100;
- presumably they were used in the AT&amp;T terminal: <EM>board</EM> <EM>of</EM> <EM>squares</EM>
- replaces the VT100 <EM>newline</EM> symbol, while <EM>lantern</EM> <EM>symbol</EM> replaces
+ Some of the characters within the range do not match the VT100;
+ presumably they were used in the AT&amp;T terminal: <EM>board</EM> <EM>of</EM> <EM>squares</EM>
+ replaces the VT100 <EM>newline</EM> symbol, while <EM>lantern</EM> <EM>symbol</EM> replaces
the VT100 <EM>vertical</EM> <EM>tab</EM> symbol. The other VT100 symbols for control
- characters (<EM>horizontal</EM> <EM>tab</EM>, <EM>carriage</EM> <EM>return</EM> and <EM>line-feed</EM>) are not
+ characters (<EM>horizontal</EM> <EM>tab</EM>, <EM>carriage</EM> <EM>return</EM> and <EM>line-feed</EM>) are not
(re)used in curses.
- The best way to define a new device's graphics set is to add a column
- to a copy of this table for your terminal, giving the character which
- (when emitted between <STRONG>smacs</STRONG>/<STRONG>rmacs</STRONG> switches) will be rendered as the
+ The best way to define a new device's graphics set is to add a column
+ to a copy of this table for your terminal, giving the character which
+ (when emitted between <STRONG>smacs</STRONG>/<STRONG>rmacs</STRONG> switches) will be rendered as the
corresponding graphic. Then read off the VT100/your terminal character
pairs right to left in sequence; these become the ACSC string.
</PRE><H3><a name="h3-Color-Handling">Color Handling</a></H3><PRE>
- The curses library functions <STRONG>init_pair</STRONG> and <STRONG>init_color</STRONG> manipulate the
- <EM>color</EM> <EM>pairs</EM> and <EM>color</EM> <EM>values</EM> discussed in this section (see
+ The curses library functions <STRONG>init_pair</STRONG> and <STRONG>init_color</STRONG> manipulate the
+ <EM>color</EM> <EM>pairs</EM> and <EM>color</EM> <EM>values</EM> discussed in this section (see
<STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> for details on these and related functions).
Most color terminals are either "Tektronix-like" or "HP-like":
@@ -2137,45 +2286,46 @@
is usually 8), and can set character-cell foreground and background
characters independently, mixing them into <EM>N</EM> * <EM>N</EM> color-pairs.
- <STRONG>o</STRONG> On HP-like terminals, the user must set each color pair up sepa-
- rately (foreground and background are not independently settable).
- Up to <EM>M</EM> color-pairs may be set up from 2*<EM>M</EM> different colors. ANSI-
- compatible terminals are Tektronix-like.
+ <STRONG>o</STRONG> On HP-like terminals, the user must set each color pair up
+ separately (foreground and background are not independently
+ settable). Up to <EM>M</EM> color-pairs may be set up from 2*<EM>M</EM> different
+ colors. ANSI-compatible terminals are Tektronix-like.
Some basic color capabilities are independent of the color method. The
- numeric capabilities <STRONG>colors</STRONG> and <STRONG>pairs</STRONG> specify the maximum numbers of
- colors and color-pairs that can be displayed simultaneously. The <STRONG>op</STRONG>
+ numeric capabilities <STRONG>colors</STRONG> and <STRONG>pairs</STRONG> specify the maximum numbers of
+ colors and color-pairs that can be displayed simultaneously. The <STRONG>op</STRONG>
(original pair) string resets foreground and background colors to their
- default values for the terminal. The <STRONG>oc</STRONG> string resets all colors or
- color-pairs to their default values for the terminal. Some terminals
- (including many PC terminal emulators) erase screen areas with the cur-
- rent background color rather than the power-up default background;
+ default values for the terminal. The <STRONG>oc</STRONG> string resets all colors or
+ color-pairs to their default values for the terminal. Some terminals
+ (including many PC terminal emulators) erase screen areas with the
+ current background color rather than the power-up default background;
these should have the boolean capability <STRONG>bce</STRONG>.
- While the curses library works with <EM>color</EM> <EM>pairs</EM> (reflecting the inabil-
- ity of some devices to set foreground and background colors indepen-
- dently), there are separate capabilities for setting these features:
+ While the curses library works with <EM>color</EM> <EM>pairs</EM> (reflecting the
+ inability of some devices to set foreground and background colors
+ independently), there are separate capabilities for setting these
+ features:
- <STRONG>o</STRONG> To change the current foreground or background color on a Tek-
- tronix-type terminal, use <STRONG>setaf</STRONG> (set ANSI foreground) and <STRONG>setab</STRONG>
- (set ANSI background) or <STRONG>setf</STRONG> (set foreground) and <STRONG>setb</STRONG> (set back-
- ground). These take one parameter, the color number. The SVr4
+ <STRONG>o</STRONG> To change the current foreground or background color on a
+ Tektronix-type terminal, use <STRONG>setaf</STRONG> (set ANSI foreground) and <STRONG>setab</STRONG>
+ (set ANSI background) or <STRONG>setf</STRONG> (set foreground) and <STRONG>setb</STRONG> (set
+ background). These take one parameter, the color number. The SVr4
documentation describes only <STRONG>setaf</STRONG>/<STRONG>setab</STRONG>; the XPG4 draft says that
"If the terminal supports ANSI escape sequences to set background
- and foreground, they should be coded as <STRONG>setaf</STRONG> and <STRONG>setab</STRONG>, respec-
- tively.
+ and foreground, they should be coded as <STRONG>setaf</STRONG> and <STRONG>setab</STRONG>,
+ respectively.
<STRONG>o</STRONG> If the terminal supports other escape sequences to set background
- and foreground, they should be coded as <STRONG>setf</STRONG> and <STRONG>setb</STRONG>, respec-
- tively. The <STRONG>vidputs</STRONG> and the <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> functions use the <STRONG>setaf</STRONG>
- and <STRONG>setab</STRONG> capabilities if they are defined.
+ and foreground, they should be coded as <STRONG>setf</STRONG> and <STRONG>setb</STRONG>,
+ respectively. The <STRONG>vidputs</STRONG> and the <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> functions use the
+ <STRONG>setaf</STRONG> and <STRONG>setab</STRONG> capabilities if they are defined.
- The <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> and <STRONG>setf</STRONG>/<STRONG>setb</STRONG> capabilities take a single numeric argu-
- ment each. Argument values 0-7 of <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> are portably defined as
- follows (the middle column is the symbolic #define available in the
+ The <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> and <STRONG>setf</STRONG>/<STRONG>setb</STRONG> capabilities take a single numeric
+ argument each. Argument values 0-7 of <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> are portably defined
+ as follows (the middle column is the symbolic #define available in the
header for the <STRONG>curses</STRONG> or <STRONG>ncurses</STRONG> libraries). The terminal hardware is
- free to map these as it likes, but the RGB values indicate normal loca-
- tions in color space.
+ free to map these as it likes, but the RGB values indicate normal
+ locations in color space.
<STRONG>Color</STRONG> <STRONG>#define</STRONG> <STRONG>Value</STRONG> <STRONG>RGB</STRONG>
black <STRONG>COLOR_BLACK</STRONG> 0 0, 0, 0
@@ -2200,8 +2350,8 @@
yellow <STRONG>COLOR_YELLOW</STRONG> 6 max,max,0
white <STRONG>COLOR_WHITE</STRONG> 7 max,max,max
- It is important to not confuse the two sets of color capabilities; oth-
- erwise red/blue will be interchanged on the display.
+ It is important to not confuse the two sets of color capabilities;
+ otherwise red/blue will be interchanged on the display.
On an HP-like terminal, use <STRONG>scp</STRONG> with a color-pair number parameter to
set which color pair is current.
@@ -2212,20 +2362,21 @@
indicate that colors can be modified. If so, the <STRONG>initc</STRONG> capability
will take a color number (0 to <STRONG>colors</STRONG> - 1)and three more parameters
which describe the color. These three parameters default to being
- interpreted as RGB (Red, Green, Blue) values. If the boolean capa-
- bility <STRONG>hls</STRONG> is present, they are instead as HLS (Hue, Lightness,
+ interpreted as RGB (Red, Green, Blue) values. If the boolean
+ capability <STRONG>hls</STRONG> is present, they are instead as HLS (Hue, Lightness,
Saturation) indices. The ranges are terminal-dependent.
<STRONG>o</STRONG> On an HP-like terminal, <STRONG>initp</STRONG> may give a capability for changing a
- color-pair value. It will take seven parameters; a color-pair num-
- ber (0 to <STRONG>max_pairs</STRONG> - 1), and two triples describing first back-
- ground and then foreground colors. These parameters must be (Red,
- Green, Blue) or (Hue, Lightness, Saturation) depending on <STRONG>hls</STRONG>.
+ color-pair value. It will take seven parameters; a color-pair
+ number (0 to <STRONG>max_pairs</STRONG> - 1), and two triples describing first
+ background and then foreground colors. These parameters must be
+ (Red, Green, Blue) or (Hue, Lightness, Saturation) depending on
+ <STRONG>hls</STRONG>.
- On some color terminals, colors collide with highlights. You can reg-
- ister these collisions with the <STRONG>ncv</STRONG> capability. This is a bit-mask of
- attributes not to be used when colors are enabled. The correspondence
- with the attributes understood by <STRONG>curses</STRONG> is as follows:
+ On some color terminals, colors collide with highlights. You can
+ register these collisions with the <STRONG>ncv</STRONG> capability. This is a bit-mask
+ of attributes not to be used when colors are enabled. The
+ correspondence with the attributes understood by <STRONG>curses</STRONG> is as follows:
<STRONG>Attribute</STRONG> <STRONG>Bit</STRONG> <STRONG>Decimal</STRONG> <STRONG>Set</STRONG> <STRONG>by</STRONG>
A_STANDOUT 0 1 sgr
@@ -2236,7 +2387,6 @@
A_BOLD 5 32 sgr
A_INVIS 6 64 sgr
A_PROTECT 7 128 sgr
-
A_ALTCHARSET 8 256 sgr
A_HORIZONTAL 9 512 sgr1
A_LEFT 10 1024 sgr1
@@ -2246,134 +2396,134 @@
A_VERTICAL 14 16384 sgr1
A_ITALIC 15 32768 sitm
- For example, on many IBM PC consoles, the underline attribute collides
- with the foreground color blue and is not available in color mode.
+ For example, on many IBM PC consoles, the underline attribute collides
+ with the foreground color blue and is not available in color mode.
These should have an <STRONG>ncv</STRONG> capability of 2.
- SVr4 curses does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it and optimizes
+ SVr4 curses does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it and optimizes
the output in favor of colors.
</PRE><H3><a name="h3-Miscellaneous">Miscellaneous</a></H3><PRE>
- If the terminal requires other than a null (zero) character as a pad,
- then this can be given as pad. Only the first character of the pad
+ If the terminal requires other than a null (zero) character as a pad,
+ then this can be given as pad. Only the first character of the pad
string is used. If the terminal does not have a pad character, specify
- npc. Note that ncurses implements the termcap-compatible <STRONG>PC</STRONG> variable;
- though the application may set this value to something other than a
- null, ncurses will test <STRONG>npc</STRONG> first and use napms if the terminal has no
+ npc. Note that ncurses implements the termcap-compatible <STRONG>PC</STRONG> variable;
+ though the application may set this value to something other than a
+ null, ncurses will test <STRONG>npc</STRONG> first and use napms if the terminal has no
pad character.
- If the terminal can move up or down half a line, this can be indicated
- with <STRONG>hu</STRONG> (half-line up) and <STRONG>hd</STRONG> (half-line down). This is primarily use-
- ful for superscripts and subscripts on hard-copy terminals. If a hard-
- copy terminal can eject to the next page (form feed), give this as <STRONG>ff</STRONG>
- (usually control/L).
+ If the terminal can move up or down half a line, this can be indicated
+ with <STRONG>hu</STRONG> (half-line up) and <STRONG>hd</STRONG> (half-line down). This is primarily
+ useful for superscripts and subscripts on hard-copy terminals. If a
+ hard-copy terminal can eject to the next page (form feed), give this as
+ <STRONG>ff</STRONG> (usually control/L).
- If there is a command to repeat a given character a given number of
- times (to save time transmitting a large number of identical charac-
- ters) this can be indicated with the parameterized string <STRONG>rep</STRONG>. The
- first parameter is the character to be repeated and the second is the
- number of times to repeat it. Thus, tparm(repeat_char, 'x', 10) is the
- same as "xxxxxxxxxx".
+ If there is a command to repeat a given character a given number of
+ times (to save time transmitting a large number of identical
+ characters) this can be indicated with the parameterized string <STRONG>rep</STRONG>.
+ The first parameter is the character to be repeated and the second is
+ the number of times to repeat it. Thus, tparm(repeat_char, 'x', 10) is
+ the same as "xxxxxxxxxx".
If the terminal has a settable command character, such as the TEKTRONIX
- 4025, this can be indicated with <STRONG>cmdch</STRONG>. A prototype command character
- is chosen which is used in all capabilities. This character is given
- in the <STRONG>cmdch</STRONG> capability to identify it. The following convention is
+ 4025, this can be indicated with <STRONG>cmdch</STRONG>. A prototype command character
+ is chosen which is used in all capabilities. This character is given
+ in the <STRONG>cmdch</STRONG> capability to identify it. The following convention is
supported on some UNIX systems: The environment is to be searched for a
- <STRONG>CC</STRONG> variable, and if found, all occurrences of the prototype character
+ <STRONG>CC</STRONG> variable, and if found, all occurrences of the prototype character
are replaced with the character in the environment variable.
- Terminal descriptions that do not represent a specific kind of known
- terminal, such as <EM>switch</EM>, <EM>dialup</EM>, <EM>patch</EM>, and <EM>network</EM>, should include
- the <STRONG>gn</STRONG> (generic) capability so that programs can complain that they do
- not know how to talk to the terminal. (This capability does not apply
- to <EM>virtual</EM> terminal descriptions for which the escape sequences are
+ Terminal descriptions that do not represent a specific kind of known
+ terminal, such as <EM>switch</EM>, <EM>dialup</EM>, <EM>patch</EM>, and <EM>network</EM>, should include
+ the <STRONG>gn</STRONG> (generic) capability so that programs can complain that they do
+ not know how to talk to the terminal. (This capability does not apply
+ to <EM>virtual</EM> terminal descriptions for which the escape sequences are
known.)
If the terminal has a "meta key" which acts as a shift key, setting the
- 8th bit of any character transmitted, this fact can be indicated with
- <STRONG>km</STRONG>. Otherwise, software will assume that the 8th bit is parity and it
- will usually be cleared. If strings exist to turn this "meta mode" on
+ 8th bit of any character transmitted, this fact can be indicated with
+ <STRONG>km</STRONG>. Otherwise, software will assume that the 8th bit is parity and it
+ will usually be cleared. If strings exist to turn this "meta mode" on
and off, they can be given as <STRONG>smm</STRONG> and <STRONG>rmm</STRONG>.
If the terminal has more lines of memory than will fit on the screen at
- once, the number of lines of memory can be indicated with <STRONG>lm</STRONG>. A value
+ once, the number of lines of memory can be indicated with <STRONG>lm</STRONG>. A value
of <STRONG>lm</STRONG>#0 indicates that the number of lines is not fixed, but that there
is still more memory than fits on the screen.
- If the terminal is one of those supported by the UNIX virtual terminal
+ If the terminal is one of those supported by the UNIX virtual terminal
protocol, the terminal number can be given as <STRONG>vt</STRONG>.
- Media copy strings which control an auxiliary printer connected to the
- terminal can be given as <STRONG>mc0</STRONG>: print the contents of the screen, <STRONG>mc4</STRONG>:
- turn off the printer, and <STRONG>mc5</STRONG>: turn on the printer. When the printer
- is on, all text sent to the terminal will be sent to the printer. It
- is undefined whether the text is also displayed on the terminal screen
- when the printer is on. A variation <STRONG>mc5p</STRONG> takes one parameter, and
- leaves the printer on for as many characters as the value of the param-
- eter, then turns the printer off. The parameter should not exceed 255.
- All text, including <STRONG>mc4</STRONG>, is transparently passed to the printer while
- an <STRONG>mc5p</STRONG> is in effect.
+ Media copy strings which control an auxiliary printer connected to the
+ terminal can be given as <STRONG>mc0</STRONG>: print the contents of the screen, <STRONG>mc4</STRONG>:
+ turn off the printer, and <STRONG>mc5</STRONG>: turn on the printer. When the printer
+ is on, all text sent to the terminal will be sent to the printer. It
+ is undefined whether the text is also displayed on the terminal screen
+ when the printer is on. A variation <STRONG>mc5p</STRONG> takes one parameter, and
+ leaves the printer on for as many characters as the value of the
+ parameter, then turns the printer off. The parameter should not exceed
+ 255. All text, including <STRONG>mc4</STRONG>, is transparently passed to the printer
+ while an <STRONG>mc5p</STRONG> is in effect.
</PRE><H3><a name="h3-Glitches-and-Braindamage">Glitches and Braindamage</a></H3><PRE>
- Hazeltine terminals, which do not allow "~" characters to be displayed
+ Hazeltine terminals, which do not allow "~" characters to be displayed
should indicate <STRONG>hz</STRONG>.
- Terminals which ignore a line-feed immediately after an <STRONG>am</STRONG> wrap, such
+ Terminals which ignore a line-feed immediately after an <STRONG>am</STRONG> wrap, such
as the Concept and vt100, should indicate <STRONG>xenl</STRONG>.
- If <STRONG>el</STRONG> is required to get rid of standout (instead of merely writing
+ If <STRONG>el</STRONG> is required to get rid of standout (instead of merely writing
normal text on top of it), <STRONG>xhp</STRONG> should be given.
Teleray terminals, where tabs turn all characters moved over to blanks,
- should indicate <STRONG>xt</STRONG> (destructive tabs). Note: the variable indicating
- this is now "dest_tabs_magic_smso"; in older versions, it was tel-
- eray_glitch. This glitch is also taken to mean that it is not possible
- to position the cursor on top of a "magic cookie", that to erase stand-
- out mode it is instead necessary to use delete and insert line. The
- ncurses implementation ignores this glitch.
-
- The Beehive Superbee, which is unable to correctly transmit the escape
- or control/C characters, has <STRONG>xsb</STRONG>, indicating that the f1 key is used
- for escape and f2 for control/C. (Only certain Superbees have this
- problem, depending on the ROM.) Note that in older terminfo versions,
+ should indicate <STRONG>xt</STRONG> (destructive tabs). Note: the variable indicating
+ this is now "dest_tabs_magic_smso"; in older versions, it was
+ teleray_glitch. This glitch is also taken to mean that it is not
+ possible to position the cursor on top of a "magic cookie", that to
+ erase standout mode it is instead necessary to use delete and insert
+ line. The ncurses implementation ignores this glitch.
+
+ The Beehive Superbee, which is unable to correctly transmit the escape
+ or control/C characters, has <STRONG>xsb</STRONG>, indicating that the f1 key is used
+ for escape and f2 for control/C. (Only certain Superbees have this
+ problem, depending on the ROM.) Note that in older terminfo versions,
this capability was called "beehive_glitch"; it is now "no_esc_ctl_c".
- Other specific terminal problems may be corrected by adding more capa-
- bilities of the form <STRONG>x</STRONG><EM>x</EM>.
+ Other specific terminal problems may be corrected by adding more
+ capabilities of the form <STRONG>x</STRONG><EM>x</EM>.
</PRE><H3><a name="h3-Pitfalls-of-Long-Entries">Pitfalls of Long Entries</a></H3><PRE>
- Long terminfo entries are unlikely to be a problem; to date, no entry
- has even approached terminfo's 4096-byte string-table maximum. Unfor-
- tunately, the termcap translations are much more strictly limited (to
- 1023 bytes), thus termcap translations of long terminfo entries can
+ Long terminfo entries are unlikely to be a problem; to date, no entry
+ has even approached terminfo's 4096-byte string-table maximum.
+ Unfortunately, the termcap translations are much more strictly limited
+ (to 1023 bytes), thus termcap translations of long terminfo entries can
cause problems.
- The man pages for 4.3BSD and older versions of <STRONG>tgetent</STRONG> instruct the
- user to allocate a 1024-byte buffer for the termcap entry. The entry
- gets null-terminated by the termcap library, so that makes the maximum
- safe length for a termcap entry 1k-1 (1023) bytes. Depending on what
- the application and the termcap library being used does, and where in
- the termcap file the terminal type that <STRONG>tgetent</STRONG> is searching for is,
+ The man pages for 4.3BSD and older versions of <STRONG>tgetent</STRONG> instruct the
+ user to allocate a 1024-byte buffer for the termcap entry. The entry
+ gets null-terminated by the termcap library, so that makes the maximum
+ safe length for a termcap entry 1k-1 (1023) bytes. Depending on what
+ the application and the termcap library being used does, and where in
+ the termcap file the terminal type that <STRONG>tgetent</STRONG> is searching for is,
several bad things can happen.
- Some termcap libraries print a warning message or exit if they find an
+ Some termcap libraries print a warning message or exit if they find an
entry that's longer than 1023 bytes; others do not; others truncate the
- entries to 1023 bytes. Some application programs allocate more than
+ entries to 1023 bytes. Some application programs allocate more than
the recommended 1K for the termcap entry; others do not.
- Each termcap entry has two important sizes associated with it: before
- "tc" expansion, and after "tc" expansion. "tc" is the capability that
+ Each termcap entry has two important sizes associated with it: before
+ "tc" expansion, and after "tc" expansion. "tc" is the capability that
tacks on another termcap entry to the end of the current one, to add on
its capabilities. If a termcap entry does not use the "tc" capability,
then of course the two lengths are the same.
- The "before tc expansion" length is the most important one, because it
- affects more than just users of that particular terminal. This is the
- length of the entry as it exists in /etc/termcap, minus the backslash-
+ The "before tc expansion" length is the most important one, because it
+ affects more than just users of that particular terminal. This is the
+ length of the entry as it exists in /etc/termcap, minus the backslash-
newline pairs, which <STRONG>tgetent</STRONG> strips out while reading it. Some termcap
libraries strip off the final newline, too (GNU termcap does not). Now
suppose:
@@ -2382,105 +2532,105 @@
<STRONG>o</STRONG> and the application has only allocated a 1k buffer,
- <STRONG>o</STRONG> and the termcap library (like the one in BSD/OS 1.1 and GNU) reads
- the whole entry into the buffer, no matter what its length, to see
+ <STRONG>o</STRONG> and the termcap library (like the one in BSD/OS 1.1 and GNU) reads
+ the whole entry into the buffer, no matter what its length, to see
if it is the entry it wants,
- <STRONG>o</STRONG> and <STRONG>tgetent</STRONG> is searching for a terminal type that either is the
- long entry, appears in the termcap file after the long entry, or
- does not appear in the file at all (so that <STRONG>tgetent</STRONG> has to search
+ <STRONG>o</STRONG> and <STRONG>tgetent</STRONG> is searching for a terminal type that either is the
+ long entry, appears in the termcap file after the long entry, or
+ does not appear in the file at all (so that <STRONG>tgetent</STRONG> has to search
the whole termcap file).
- Then <STRONG>tgetent</STRONG> will overwrite memory, perhaps its stack, and probably
- core dump the program. Programs like telnet are particularly vulnera-
- ble; modern telnets pass along values like the terminal type automati-
- cally. The results are almost as undesirable with a termcap library,
- like SunOS 4.1.3 and Ultrix 4.4, that prints warning messages when it
- reads an overly long termcap entry. If a termcap library truncates
- long entries, like OSF/1 3.0, it is immune to dying here but will
- return incorrect data for the terminal.
+ Then <STRONG>tgetent</STRONG> will overwrite memory, perhaps its stack, and probably
+ core dump the program. Programs like telnet are particularly
+ vulnerable; modern telnets pass along values like the terminal type
+ automatically. The results are almost as undesirable with a termcap
+ library, like SunOS 4.1.3 and Ultrix 4.4, that prints warning messages
+ when it reads an overly long termcap entry. If a termcap library
+ truncates long entries, like OSF/1 3.0, it is immune to dying here but
+ will return incorrect data for the terminal.
- The "after tc expansion" length will have a similar effect to the
+ The "after tc expansion" length will have a similar effect to the
above, but only for people who actually set TERM to that terminal type,
- since <STRONG>tgetent</STRONG> only does "tc" expansion once it is found the terminal
+ since <STRONG>tgetent</STRONG> only does "tc" expansion once it is found the terminal
type it was looking for, not while searching.
- In summary, a termcap entry that is longer than 1023 bytes can cause,
- on various combinations of termcap libraries and applications, a core
- dump, warnings, or incorrect operation. If it is too long even before
- "tc" expansion, it will have this effect even for users of some other
- terminal types and users whose TERM variable does not have a termcap
+ In summary, a termcap entry that is longer than 1023 bytes can cause,
+ on various combinations of termcap libraries and applications, a core
+ dump, warnings, or incorrect operation. If it is too long even before
+ "tc" expansion, it will have this effect even for users of some other
+ terminal types and users whose TERM variable does not have a termcap
entry.
- When in -C (translate to termcap) mode, the <STRONG>ncurses</STRONG> implementation of
- <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> issues warning messages when the pre-tc length of a termcap
- translation is too long. The -c (check) option also checks resolved
+ When in -C (translate to termcap) mode, the <STRONG>ncurses</STRONG> implementation of
+ <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> issues warning messages when the pre-tc length of a termcap
+ translation is too long. The -c (check) option also checks resolved
(after tc expansion) lengths.
</PRE><H3><a name="h3-Binary-Compatibility">Binary Compatibility</a></H3><PRE>
- It is not wise to count on portability of binary terminfo entries
- between commercial UNIX versions. The problem is that there are at
- least two versions of terminfo (under HP-UX and AIX) which diverged
- from System V terminfo after SVr1, and have added extension capabili-
- ties to the string table that (in the binary format) collide with Sys-
- tem V and XSI Curses extensions.
+ It is not wise to count on portability of binary terminfo entries
+ between commercial UNIX versions. The problem is that there are at
+ least two versions of terminfo (under HP-UX and AIX) which diverged
+ from System V terminfo after SVr1, and have added extension
+ capabilities to the string table that (in the binary format) collide
+ with System V and XSI Curses extensions.
</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
- Searching for terminal descriptions in <STRONG>$HOME/.terminfo</STRONG> and TER-
- MINFO_DIRS is not supported by older implementations.
+ Searching for terminal descriptions in <STRONG>$HOME/.terminfo</STRONG> and
+ TERMINFO_DIRS is not supported by older implementations.
- Some SVr4 <STRONG>curses</STRONG> implementations, and all previous to SVr4, do not
+ Some SVr4 <STRONG>curses</STRONG> implementations, and all previous to SVr4, do not
interpret the %A and %O operators in parameter strings.
- SVr4/XPG4 do not specify whether <STRONG>msgr</STRONG> licenses movement while in an
- alternate-character-set mode (such modes may, among other things, map
- CR and NL to characters that do not trigger local motions). The
- <STRONG>ncurses</STRONG> implementation ignores <STRONG>msgr</STRONG> in <STRONG>ALTCHARSET</STRONG> mode. This raises
- the possibility that an XPG4 implementation making the opposite inter-
- pretation may need terminfo entries made for <STRONG>ncurses</STRONG> to have <STRONG>msgr</STRONG>
+ SVr4/XPG4 do not specify whether <STRONG>msgr</STRONG> licenses movement while in an
+ alternate-character-set mode (such modes may, among other things, map
+ CR and NL to characters that do not trigger local motions). The
+ <STRONG>ncurses</STRONG> implementation ignores <STRONG>msgr</STRONG> in <STRONG>ALTCHARSET</STRONG> mode. This raises
+ the possibility that an XPG4 implementation making the opposite
+ interpretation may need terminfo entries made for <STRONG>ncurses</STRONG> to have <STRONG>msgr</STRONG>
turned off.
The <STRONG>ncurses</STRONG> library handles insert-character and insert-character modes
- in a slightly non-standard way to get better update efficiency. See
+ in a slightly non-standard way to get better update efficiency. See
the <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG> subsection above.
- The parameter substitutions for <STRONG>set_clock</STRONG> and <STRONG>display_clock</STRONG> are not
- documented in SVr4 or the XSI Curses standard. They are deduced from
+ The parameter substitutions for <STRONG>set_clock</STRONG> and <STRONG>display_clock</STRONG> are not
+ documented in SVr4 or the XSI Curses standard. They are deduced from
the documentation for the AT&amp;T 505 terminal.
- Be careful assigning the <STRONG>kmous</STRONG> capability. The <STRONG>ncurses</STRONG> library wants
- to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals and emulators like
- xterm that can return mouse-tracking information in the keyboard-input
+ Be careful assigning the <STRONG>kmous</STRONG> capability. The <STRONG>ncurses</STRONG> library wants
+ to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals and emulators like
+ xterm that can return mouse-tracking information in the keyboard-input
stream.
- X/Open Curses does not mention italics. Portable applications must
- assume that numeric capabilities are signed 16-bit values. This
- includes the <EM>no</EM><STRONG>_</STRONG><EM>color</EM><STRONG>_</STRONG><EM>video</EM> (ncv) capability. The 32768 mask value
- used for italics with ncv can be confused with an absent or cancelled
- ncv. If italics should work with colors, then the ncv value must be
+ X/Open Curses does not mention italics. Portable applications must
+ assume that numeric capabilities are signed 16-bit values. This
+ includes the <EM>no</EM><STRONG>_</STRONG><EM>color</EM><STRONG>_</STRONG><EM>video</EM> (ncv) capability. The 32768 mask value
+ used for italics with ncv can be confused with an absent or cancelled
+ ncv. If italics should work with colors, then the ncv value must be
specified, even if it is zero.
- Different commercial ports of terminfo and curses support different
- subsets of the XSI Curses standard and (in some cases) different exten-
- sion sets. Here is a summary, accurate as of October 1995:
+ Different commercial ports of terminfo and curses support different
+ subsets of the XSI Curses standard and (in some cases) different
+ extension sets. Here is a summary, accurate as of October 1995:
<STRONG>o</STRONG> <STRONG>SVR4,</STRONG> <STRONG>Solaris,</STRONG> <STRONG>ncurses</STRONG> -- These support all SVr4 capabilities.
<STRONG>o</STRONG> <STRONG>SGI</STRONG> -- Supports the SVr4 set, adds one undocumented extended string
capability (<STRONG>set_pglen</STRONG>).
- <STRONG>o</STRONG> <STRONG>SVr1,</STRONG> <STRONG>Ultrix</STRONG> -- These support a restricted subset of terminfo capa-
- bilities. The booleans end with <STRONG>xon_xoff</STRONG>; the numerics with
+ <STRONG>o</STRONG> <STRONG>SVr1,</STRONG> <STRONG>Ultrix</STRONG> -- These support a restricted subset of terminfo
+ capabilities. The booleans end with <STRONG>xon_xoff</STRONG>; the numerics with
<STRONG>width_status_line</STRONG>; and the strings with <STRONG>prtr_non</STRONG>.
- <STRONG>o</STRONG> <STRONG>HP/UX</STRONG> -- Supports the SVr1 subset, plus the SVr[234] numerics
- <STRONG>num_labels</STRONG>, <STRONG>label_height</STRONG>, <STRONG>label_width</STRONG>, plus function keys 11
- through 63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and <STRONG>label_off</STRONG>, plus some
+ <STRONG>o</STRONG> <STRONG>HP/UX</STRONG> -- Supports the SVr1 subset, plus the SVr[234] numerics
+ <STRONG>num_labels</STRONG>, <STRONG>label_height</STRONG>, <STRONG>label_width</STRONG>, plus function keys 11
+ through 63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and <STRONG>label_off</STRONG>, plus some
incompatible extensions in the string table.
- <STRONG>o</STRONG> <STRONG>AIX</STRONG> -- Supports the SVr1 subset, plus function keys 11 through 63,
+ <STRONG>o</STRONG> <STRONG>AIX</STRONG> -- Supports the SVr1 subset, plus function keys 11 through 63,
plus a number of incompatible string table extensions.
<STRONG>o</STRONG> <STRONG>OSF</STRONG> -- Supports both the SVr4 set and the AIX extensions.
@@ -2491,8 +2641,9 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG>curs_vari-</STRONG>
- <STRONG><A HREF="curs_variables.3x.html">ables(3x)</A></STRONG>, <STRONG>printf(3)</STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
+ <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>,
+ <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>printf(3)</STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>. <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.
+ <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
@@ -2521,6 +2672,7 @@
<li><a href="#h3-Basic-Capabilities">Basic Capabilities</a></li>
<li><a href="#h3-Parameterized-Strings">Parameterized Strings</a></li>
<li><a href="#h3-Cursor-Motions">Cursor Motions</a></li>
+<li><a href="#h3-Margins">Margins</a></li>
<li><a href="#h3-Area-Clears">Area Clears</a></li>
<li><a href="#h3-Insert_delete-line-and-vertical-motions">Insert/delete line and vertical motions</a></li>
<li><a href="#h3-Insert_Delete-Character">Insert/Delete Character</a></li>
diff --git a/doc/html/man/tic.1m.html b/doc/html/man/tic.1m.html
index b61a006..4dff1db 100644
--- a/doc/html/man/tic.1m.html
+++ b/doc/html/man/tic.1m.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tic.1m,v 1.77 2020/02/02 23:34:34 tom Exp @
+ * @Id: tic.1m,v 1.80 2021/08/15 20:01:19 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -56,8 +56,8 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The <STRONG>tic</STRONG> command translates a <STRONG>terminfo</STRONG> file from source format into com-
- piled format. The compiled format is necessary for use with the
+ The <STRONG>tic</STRONG> command translates a <STRONG>terminfo</STRONG> file from source format into
+ compiled format. The compiled format is necessary for use with the
library routines in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>.
As described in <STRONG><A HREF="term.5.html">term(5)</A></STRONG>, the database may be either a directory tree
@@ -65,8 +65,8 @@
entry). The <STRONG>tic</STRONG> command writes only one type of entry, depending on
how it was built:
- <STRONG>o</STRONG> For directory trees, the top-level directory, e.g., /usr/share/ter-
- minfo, specifies the location of the database.
+ <STRONG>o</STRONG> For directory trees, the top-level directory, e.g.,
+ /usr/share/terminfo, specifies the location of the database.
<STRONG>o</STRONG> For hashed databases, a filename is needed. If the given file is
not found by that name, but can be found by adding the suffix
@@ -75,25 +75,25 @@
The default name for the hashed database is the same as the default
directory name (only adding a ".db" suffix).
- In either case (directory or hashed database), <STRONG>tic</STRONG> will create the con-
- tainer if it does not exist. For a directory, this would be the "ter-
- minfo" leaf, versus a "terminfo.db" file.
+ In either case (directory or hashed database), <STRONG>tic</STRONG> will create the
+ container if it does not exist. For a directory, this would be the
+ "terminfo" leaf, versus a "terminfo.db" file.
The results are normally placed in the system terminfo database
<STRONG>/usr/share/terminfo</STRONG>. The compiled terminal description can be placed
in a different terminfo database. There are two ways to achieve this:
<STRONG>o</STRONG> First, you may override the system default either by using the <STRONG>-o</STRONG>
- option, or by setting the variable <STRONG>TERMINFO</STRONG> in your shell environ-
- ment to a valid database location.
+ option, or by setting the variable <STRONG>TERMINFO</STRONG> in your shell
+ environment to a valid database location.
- <STRONG>o</STRONG> Secondly, if <STRONG>tic</STRONG> cannot write in <EM>/usr/share/terminfo</EM> or the loca-
- tion specified using your TERMINFO variable, it looks for the
+ <STRONG>o</STRONG> Secondly, if <STRONG>tic</STRONG> cannot write in <EM>/usr/share/terminfo</EM> or the
+ location specified using your TERMINFO variable, it looks for the
directory <EM>$HOME/.terminfo</EM> (or hashed database <EM>$HOME/.terminfo.db)</EM>;
if that location exists, the entry is placed there.
- Libraries that read terminfo entries are expected to check in succes-
- sion
+ Libraries that read terminfo entries are expected to check in
+ succession
<STRONG>o</STRONG> a location specified with the TERMINFO environment variable,
@@ -101,14 +101,13 @@
<STRONG>o</STRONG> directories listed in the TERMINFO_DIRS environment variable,
- <STRONG>o</STRONG> a compiled-in list of directories (/usr/local/ncurses/share/ter-
- minfo:/usr/share/terminfo), and
+ <STRONG>o</STRONG> a compiled-in list of directories (no default value), and
<STRONG>o</STRONG> the system terminfo database (<EM>/usr/share/terminfo</EM>).
</PRE><H3><a name="h3-ALIASES">ALIASES</a></H3><PRE>
- This is the same program as infotocap and captoinfo; usually those are
+ This is the same program as infotocap and captoinfo; usually those are
linked to, or copied from this program:
<STRONG>o</STRONG> When invoked as infotocap, tic sets the <STRONG>-I</STRONG> option.
@@ -121,71 +120,71 @@
<STRONG>-1</STRONG> restricts the output to a single column
- <STRONG>-a</STRONG> tells <STRONG>tic</STRONG> to retain commented-out capabilities rather than dis-
- carding them. Capabilities are commented by prefixing them with
- a period. This sets the <STRONG>-x</STRONG> option, because it treats the com-
- mented-out entries as user-defined names. If the source is
- termcap, accept the 2-character names required by version 6.
+ <STRONG>-a</STRONG> tells <STRONG>tic</STRONG> to retain commented-out capabilities rather than
+ discarding them. Capabilities are commented by prefixing them
+ with a period. This sets the <STRONG>-x</STRONG> option, because it treats the
+ commented-out entries as user-defined names. If the source is
+ termcap, accept the 2-character names required by version 6.
Otherwise these are ignored.
- <STRONG>-C</STRONG> Force source translation to termcap format. Note: this differs
- from the <STRONG>-C</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> in that it does not merely
+ <STRONG>-C</STRONG> Force source translation to termcap format. Note: this differs
+ from the <STRONG>-C</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> in that it does not merely
translate capability names, but also translates terminfo strings
- to termcap format. Capabilities that are not translatable are
- left in the entry under their terminfo names but commented out
- with two preceding dots. The actual format used incorporates
- some improvements for escaped characters from terminfo format.
+ to termcap format. Capabilities that are not translatable are
+ left in the entry under their terminfo names but commented out
+ with two preceding dots. The actual format used incorporates
+ some improvements for escaped characters from terminfo format.
For a stricter BSD-compatible translation, add the <STRONG>-K</STRONG> option.
- If this is combined with <STRONG>-c</STRONG>, <STRONG>tic</STRONG> makes additional checks to
- report cases where the terminfo values do not have an exact
+ If this is combined with <STRONG>-c</STRONG>, <STRONG>tic</STRONG> makes additional checks to
+ report cases where the terminfo values do not have an exact
equivalent in termcap form. For example:
- <STRONG>o</STRONG> <STRONG>sgr</STRONG> usually will not convert, because termcap lacks the
- ability to work with more than two parameters, and because
- termcap lacks many of the arithmetic/logical operators used
+ <STRONG>o</STRONG> <STRONG>sgr</STRONG> usually will not convert, because termcap lacks the
+ ability to work with more than two parameters, and because
+ termcap lacks many of the arithmetic/logical operators used
in terminfo.
- <STRONG>o</STRONG> capabilities with more than one delay or with delays before
+ <STRONG>o</STRONG> capabilities with more than one delay or with delays before
the end of the string will not convert completely.
- <STRONG>-c</STRONG> tells <STRONG>tic</STRONG> to only check <EM>file</EM> for errors, including syntax prob-
- lems and bad use-links. If you specify <STRONG>-C</STRONG> (<STRONG>-I</STRONG>) with this
- option, the code will print warnings about entries which, after
- use resolution, are more than 1023 (4096) bytes long. Due to a
+ <STRONG>-c</STRONG> tells <STRONG>tic</STRONG> to only check <EM>file</EM> for errors, including syntax
+ problems and bad use-links. If you specify <STRONG>-C</STRONG> (<STRONG>-I</STRONG>) with this
+ option, the code will print warnings about entries which, after
+ use resolution, are more than 1023 (4096) bytes long. Due to a
fixed buffer length in older termcap libraries, as well as buggy
- checking for the buffer length (and a documented limit in ter-
- minfo), these entries may cause core dumps with other implemen-
- tations.
+ checking for the buffer length (and a documented limit in
+ terminfo), these entries may cause core dumps with other
+ implementations.
- <STRONG>tic</STRONG> checks string capabilities to ensure that those with parame-
- ters will be valid expressions. It does this check only for the
- predefined string capabilities; those which are defined with the
- <STRONG>-x</STRONG> option are ignored.
+ <STRONG>tic</STRONG> checks string capabilities to ensure that those with
+ parameters will be valid expressions. It does this check only
+ for the predefined string capabilities; those which are defined
+ with the <STRONG>-x</STRONG> option are ignored.
- <STRONG>-D</STRONG> tells <STRONG>tic</STRONG> to print the database locations that it knows about,
+ <STRONG>-D</STRONG> tells <STRONG>tic</STRONG> to print the database locations that it knows about,
and exit. The first location shown is the one to which it would
- write compiled terminal descriptions. If <STRONG>tic</STRONG> is not able to
- find a writable database location according to the rules summa-
- rized above, it will print a diagnostic and exit with an error
- rather than printing a list of database locations.
+ write compiled terminal descriptions. If <STRONG>tic</STRONG> is not able to
+ find a writable database location according to the rules
+ summarized above, it will print a diagnostic and exit with an
+ error rather than printing a list of database locations.
<STRONG>-e</STRONG> <EM>names</EM>
- Limit writes and translations to the following comma-separated
- list of terminals. If any name or alias of a terminal matches
- one of the names in the list, the entry will be written or
+ Limit writes and translations to the following comma-separated
+ list of terminals. If any name or alias of a terminal matches
+ one of the names in the list, the entry will be written or
translated as normal. Otherwise no output will be generated for
- it. The option value is interpreted as a file containing the
- list if it contains a '/'. (Note: depending on how tic was com-
- piled, this option may require <STRONG>-I</STRONG> or <STRONG>-C</STRONG>.)
+ it. The option value is interpreted as a file containing the
+ list if it contains a '/'. (Note: depending on how tic was
+ compiled, this option may require <STRONG>-I</STRONG> or <STRONG>-C</STRONG>.)
- <STRONG>-f</STRONG> Display complex terminfo strings which contain
+ <STRONG>-f</STRONG> Display complex terminfo strings which contain
if/then/else/endif expressions indented for readability.
- <STRONG>-G</STRONG> Display constant literals in decimal form rather than their
+ <STRONG>-G</STRONG> Display constant literals in decimal form rather than their
character equivalents.
- <STRONG>-g</STRONG> Display constant character literals in quoted form rather than
+ <STRONG>-g</STRONG> Display constant character literals in quoted form rather than
their decimal equivalents.
<STRONG>-I</STRONG> Force source translation to terminfo format.
@@ -193,25 +192,25 @@
<STRONG>-K</STRONG> Suppress some longstanding ncurses extensions to termcap format,
e.g., "\s" for space.
- <STRONG>-L</STRONG> Force source translation to terminfo format using the long C
+ <STRONG>-L</STRONG> Force source translation to terminfo format using the long C
variable names listed in &lt;<STRONG>term.h</STRONG>&gt;
<STRONG>-N</STRONG> Disable smart defaults. Normally, when translating from termcap
- to terminfo, the compiler makes a number of assumptions about
- the defaults of string capabilities <STRONG>reset1_string</STRONG>, <STRONG>car-</STRONG>
- <STRONG>riage_return</STRONG>, <STRONG>cursor_left</STRONG>, <STRONG>cursor_down</STRONG>, <STRONG>scroll_forward</STRONG>, <STRONG>tab</STRONG>,
+ to terminfo, the compiler makes a number of assumptions about
+ the defaults of string capabilities <STRONG>reset1_string</STRONG>,
+ <STRONG>carriage_return</STRONG>, <STRONG>cursor_left</STRONG>, <STRONG>cursor_down</STRONG>, <STRONG>scroll_forward</STRONG>, <STRONG>tab</STRONG>,
<STRONG>newline</STRONG>, <STRONG>key_backspace</STRONG>, <STRONG>key_left</STRONG>, and <STRONG>key_down</STRONG>, then attempts to
- use obsolete termcap capabilities to deduce correct values. It
+ use obsolete termcap capabilities to deduce correct values. It
also normally suppresses output of obsolete termcap capabilities
- such as <STRONG>bs</STRONG>. This option forces a more literal translation that
+ such as <STRONG>bs</STRONG>. This option forces a more literal translation that
also preserves the obsolete capabilities.
- <STRONG>-o</STRONG><EM>dir</EM> Write compiled entries to given database location. Overrides
+ <STRONG>-o</STRONG><EM>dir</EM> Write compiled entries to given database location. Overrides
the TERMINFO environment variable.
- <STRONG>-Q</STRONG><EM>n</EM> Rather than show source in terminfo (text) format, print the
- compiled (binary) format in hexadecimal or base64 form, depend-
- ing on the option's value:
+ <STRONG>-Q</STRONG><EM>n</EM> Rather than show source in terminfo (text) format, print the
+ compiled (binary) format in hexadecimal or base64 form,
+ depending on the option's value:
1 hexadecimal
@@ -223,35 +222,35 @@
source.
<STRONG>-R</STRONG><EM>subset</EM>
- Restrict output to a given subset. This option is for use with
- archaic versions of terminfo like those on SVr1, Ultrix, or
- HP/UX that do not support the full set of SVR4/XSI Curses ter-
- minfo; and outright broken ports like AIX 3.x that have their
- own extensions incompatible with SVr4/XSI. Available subsets
- are "SVr1", "Ultrix", "HP", "BSD" and "AIX"; see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for
+ Restrict output to a given subset. This option is for use with
+ archaic versions of terminfo like those on SVr1, Ultrix, or HP-
+ UX that do not support the full set of SVR4/XSI Curses terminfo;
+ and outright broken ports like AIX 3.x that have their own
+ extensions incompatible with SVr4/XSI. Available subsets are
+ "SVr1", "Ultrix", "HP", "BSD" and "AIX"; see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for
details.
- <STRONG>-r</STRONG> Force entry resolution (so there are no remaining tc capabili-
- ties) even when doing translation to termcap format. This may
- be needed if you are preparing a termcap file for a termcap
- library (such as GNU termcap through version 1.3 or BSD termcap
- through 4.3BSD) that does not handle multiple tc capabilities
- per entry.
+ <STRONG>-r</STRONG> Force entry resolution (so there are no remaining tc
+ capabilities) even when doing translation to termcap format.
+ This may be needed if you are preparing a termcap file for a
+ termcap library (such as GNU termcap through version 1.3 or BSD
+ termcap through 4.3BSD) that does not handle multiple tc
+ capabilities per entry.
- <STRONG>-s</STRONG> Summarize the compile by showing the database location into
- which entries are written, and the number of entries which are
+ <STRONG>-s</STRONG> Summarize the compile by showing the database location into
+ which entries are written, and the number of entries which are
compiled.
- <STRONG>-T</STRONG> eliminates size-restrictions on the generated text. This is
- mainly useful for testing and analysis, since the compiled
- descriptions are limited (e.g., 1023 for termcap, 4096 for ter-
- minfo).
+ <STRONG>-T</STRONG> eliminates size-restrictions on the generated text. This is
+ mainly useful for testing and analysis, since the compiled
+ descriptions are limited (e.g., 1023 for termcap, 4096 for
+ terminfo).
- <STRONG>-t</STRONG> tells <STRONG>tic</STRONG> to discard commented-out capabilities. Normally when
- translating from terminfo to termcap, untranslatable capabili-
- ties are commented-out.
+ <STRONG>-t</STRONG> tells <STRONG>tic</STRONG> to discard commented-out capabilities. Normally when
+ translating from terminfo to termcap, untranslatable
+ capabilities are commented-out.
- <STRONG>-U</STRONG> tells <STRONG>tic</STRONG> to not post-process the data after parsing the source
+ <STRONG>-U</STRONG> tells <STRONG>tic</STRONG> to not post-process the data after parsing the source
file. Normally, it infers data which is commonly missing in older
terminfo data, or in termcaps.
@@ -261,11 +260,11 @@
<STRONG>-v</STRONG><EM>n</EM> specifies that (verbose) output be written to standard error trace
information showing <STRONG>tic</STRONG>'s progress.
- The optional parameter <EM>n</EM> is a number from 1 to 10, inclusive,
+ The optional parameter <EM>n</EM> is a number from 1 to 10, inclusive,
indicating the desired level of detail of information. If ncurses
- is built without tracing support, the optional parameter is
- ignored. If <EM>n</EM> is omitted, the default level is 1. If <EM>n</EM> is speci-
- fied and greater than 1, the level of detail is increased.
+ is built without tracing support, the optional parameter is
+ ignored. If <EM>n</EM> is omitted, the default level is 1. If <EM>n</EM> is
+ specified and greater than 1, the level of detail is increased.
The debug flag levels are as follows:
@@ -285,68 +284,69 @@
If the debug level <EM>n</EM> is not given, it is taken to be one.
- <STRONG>-W</STRONG> By itself, the <STRONG>-w</STRONG> option will not force long strings to be
+ <STRONG>-W</STRONG> By itself, the <STRONG>-w</STRONG> option will not force long strings to be
wrapped. Use the <STRONG>-W</STRONG> option to do this.
- If you specify both <STRONG>-f</STRONG> and <STRONG>-W</STRONG> options, the latter is ignored when
+ If you specify both <STRONG>-f</STRONG> and <STRONG>-W</STRONG> options, the latter is ignored when
<STRONG>-f</STRONG> has already split the line.
<STRONG>-w</STRONG><EM>n</EM> specifies the width of the output. The parameter is optional. If
it is omitted, it defaults to 60.
- <STRONG>-x</STRONG> Treat unknown capabilities as user-defined (see <STRONG>user_caps(5)</STRONG>).
- That is, if you supply a capability name which <STRONG>tic</STRONG> does not recog-
- nize, it will infer its type (boolean, number or string) from the
- syntax and make an extended table entry for that. User-defined
- capability strings whose name begins with "k" are treated as func-
- tion keys.
+ <STRONG>-x</STRONG> Treat unknown capabilities as user-defined (see <STRONG>user_caps(5)</STRONG>).
+ That is, if you supply a capability name which <STRONG>tic</STRONG> does not
+ recognize, it will infer its type (boolean, number or string) from
+ the syntax and make an extended table entry for that. User-
+ defined capability strings whose name begins with "k" are treated
+ as function keys.
</PRE><H3><a name="h3-PARAMETERS">PARAMETERS</a></H3><PRE>
- <EM>file</EM> contains one or more <STRONG>terminfo</STRONG> terminal descriptions in source
- format [see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. Each description in the file
+ <EM>file</EM> contains one or more <STRONG>terminfo</STRONG> terminal descriptions in source
+ format [see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. Each description in the file
describes the capabilities of a particular terminal.
- If <EM>file</EM> is "-", then the data is read from the standard input.
+ If <EM>file</EM> is "-", then the data is read from the standard input.
The <EM>file</EM> parameter may also be the path of a character-device.
</PRE><H3><a name="h3-PROCESSING">PROCESSING</a></H3><PRE>
- All but one of the capabilities recognized by <STRONG>tic</STRONG> are documented in
+ All but one of the capabilities recognized by <STRONG>tic</STRONG> are documented in
<STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. The exception is the <STRONG>use</STRONG> capability.
When a <STRONG>use</STRONG>=<EM>entry</EM>-<EM>name</EM> field is discovered in a terminal entry currently
- being compiled, <STRONG>tic</STRONG> reads in the binary from <STRONG>/usr/share/terminfo</STRONG> to
- complete the entry. (Entries created from <EM>file</EM> will be used first.
- <STRONG>tic</STRONG> duplicates the capabilities in <EM>entry</EM>-<EM>name</EM> for the current entry,
+ being compiled, <STRONG>tic</STRONG> reads in the binary from <STRONG>/usr/share/terminfo</STRONG> to
+ complete the entry. (Entries created from <EM>file</EM> will be used first.
+ <STRONG>tic</STRONG> duplicates the capabilities in <EM>entry</EM>-<EM>name</EM> for the current entry,
with the exception of those capabilities that explicitly are defined in
the current entry.
- When an entry, e.g., <STRONG>entry_name_1</STRONG>, contains a <STRONG>use=</STRONG><EM>entry</EM>_<EM>name</EM>_<EM>2</EM> field,
- any canceled capabilities in <EM>entry</EM>_<EM>name</EM>_<EM>2</EM> must also appear in
- <STRONG>entry_name_1</STRONG> before <STRONG>use=</STRONG> for these capabilities to be canceled in
+ When an entry, e.g., <STRONG>entry_name_1</STRONG>, contains a <STRONG>use=</STRONG><EM>entry</EM>_<EM>name</EM>_<EM>2</EM> field,
+ any canceled capabilities in <EM>entry</EM>_<EM>name</EM>_<EM>2</EM> must also appear in
+ <STRONG>entry_name_1</STRONG> before <STRONG>use=</STRONG> for these capabilities to be canceled in
<STRONG>entry_name_1</STRONG>.
Total compiled entries cannot exceed 4096 bytes. The name field cannot
- exceed 512 bytes. Terminal names exceeding the maximum alias length
+ exceed 512 bytes. Terminal names exceeding the maximum alias length
(32 characters on systems with long filenames, 14 characters otherwise)
- will be truncated to the maximum alias length and a warning message
+ will be truncated to the maximum alias length and a warning message
will be printed.
</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
- System V Release 2 provided a <STRONG>tic</STRONG> utility. It accepted a single
- option: <STRONG>-v</STRONG> (optionally followed by a number). According to Ross
+ System V Release 2 provided a <STRONG>tic</STRONG> utility. It accepted a single
+ option: <STRONG>-v</STRONG> (optionally followed by a number). According to Ross
Ridge's comment in <EM>mytinfo</EM>, this version of <STRONG>tic</STRONG> was unable to represent
cancelled capabilities.
- System V Release 3 provided a different <STRONG>tic</STRONG> utility, written by Pavel
- Curtis, (originally named "compile" in <EM>pcurses</EM>). This added an option
- <STRONG>-c</STRONG> to check the file for errors, with the caveat that errors in "use="
- links would not be reported. System V Release 3 documented a few warn-
- ing messages which did not appear in <EM>pcurses</EM>. While the program itself
- was changed little as development continued with System V Release 4,
- the table of capabilities grew from 180 (<EM>pcurses</EM>) to 464 (Solaris).
+ System V Release 3 provided a different <STRONG>tic</STRONG> utility, written by Pavel
+ Curtis, (originally named "compile" in <EM>pcurses</EM>). This added an option
+ <STRONG>-c</STRONG> to check the file for errors, with the caveat that errors in "use="
+ links would not be reported. System V Release 3 documented a few
+ warning messages which did not appear in <EM>pcurses</EM>. While the program
+ itself was changed little as development continued with System V
+ Release 4, the table of capabilities grew from 180 (<EM>pcurses</EM>) to 464
+ (Solaris).
In early development of ncurses (1993), Zeyd Ben-Halim used the table
from <EM>mytinfo</EM> to extend the <EM>pcurses</EM> table to 469 capabilities (456
@@ -401,20 +401,20 @@
the <STRONG>-v</STRONG> option. The NetBSD <STRONG>tic</STRONG> program follows X/Open's documentation,
omitting the <STRONG>-v</STRONG> option.
- The X/Open rationale states that some implementations of <STRONG>tic</STRONG> read ter-
- minal descriptions from the standard input if the <EM>file</EM> parameter is
+ The X/Open rationale states that some implementations of <STRONG>tic</STRONG> read
+ terminal descriptions from the standard input if the <EM>file</EM> parameter is
omitted. None of these implementations do that. Further, it comments
- that some may choose to read from "./terminfo.src" but that is obsoles-
- cent behavior from SVr2, and is not (for example) a documented feature
- of SVr3.
+ that some may choose to read from "./terminfo.src" but that is
+ obsolescent behavior from SVr2, and is not (for example) a documented
+ feature of SVr3.
</PRE><H3><a name="h3-COMPATIBILITY">COMPATIBILITY</a></H3><PRE>
There is some evidence that historic <STRONG>tic</STRONG> implementations treated
description fields with no whitespace in them as additional aliases or
- short names. This <STRONG>tic</STRONG> does not do that, but it does warn when descrip-
- tion fields may be treated that way and check them for dangerous char-
- acters.
+ short names. This <STRONG>tic</STRONG> does not do that, but it does warn when
+ description fields may be treated that way and check them for dangerous
+ characters.
</PRE><H3><a name="h3-EXTENSIONS">EXTENSIONS</a></H3><PRE>
@@ -424,11 +424,11 @@
termcap names taken to be equivalent to terminfo names.
The SVr4 manual pages are not clear on the resolution rules for <STRONG>use</STRONG>
- capabilities. This implementation of <STRONG>tic</STRONG> will find <STRONG>use</STRONG> targets any-
- where in the source file, or anywhere in the file tree rooted at <STRONG>TER-</STRONG>
- <STRONG>MINFO</STRONG> (if <STRONG>TERMINFO</STRONG> is defined), or in the user's <EM>$HOME/.terminfo</EM> data-
- base (if it exists), or (finally) anywhere in the system's file tree of
- compiled entries.
+ capabilities. This implementation of <STRONG>tic</STRONG> will find <STRONG>use</STRONG> targets
+ anywhere in the source file, or anywhere in the file tree rooted at
+ <STRONG>TERMINFO</STRONG> (if <STRONG>TERMINFO</STRONG> is defined), or in the user's <EM>$HOME/.terminfo</EM>
+ database (if it exists), or (finally) anywhere in the system's file
+ tree of compiled entries.
The error messages from this <STRONG>tic</STRONG> have the same format as GNU C error
messages, and can be parsed by GNU Emacs's compile facility.
@@ -458,10 +458,10 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
+ <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
<STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
diff --git a/doc/html/man/toe.1m.html b/doc/html/man/toe.1m.html
index 25d5ddf..e95dcd2 100644
--- a/doc/html/man/toe.1m.html
+++ b/doc/html/man/toe.1m.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: toe.1m,v 1.32 2020/02/02 23:34:34 tom Exp @
+ * @Id: toe.1m,v 1.34 2021/06/17 21:26:02 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -57,17 +57,17 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
With no options, <STRONG>toe</STRONG> lists all available terminal types by primary name
with descriptions. File arguments specify the directories to be
- scanned; if no such arguments are given, your default terminfo direc-
- tory is scanned. If you also specify the <STRONG>-h</STRONG> option, a directory header
- will be issued as each directory is entered.
+ scanned; if no such arguments are given, your default terminfo
+ directory is scanned. If you also specify the <STRONG>-h</STRONG> option, a directory
+ header will be issued as each directory is entered.
There are other options intended for use by terminfo file maintainers:
<STRONG>-a</STRONG> report on all of the terminal databases which ncurses would
search, rather than only the first one that it finds.
- If the <STRONG>-s</STRONG> is also given, <STRONG>toe</STRONG> adds a column to the report, show-
- ing (like <STRONG>conflict(1)</STRONG>) which entries which belong to a given
+ If the <STRONG>-s</STRONG> is also given, <STRONG>toe</STRONG> adds a column to the report,
+ showing (like <STRONG>conflict(1)</STRONG>) which entries which belong to a given
terminal database. An "*" marks entries which differ, and "+"
marks equivalent entries.
@@ -77,22 +77,22 @@
<STRONG>-s</STRONG> sort the output by the entry names.
<STRONG>-u</STRONG> <EM>file</EM>
- says to write a report to the standard output, listing dependen-
- cies in the given terminfo/termcap source file. The report con-
- denses the "use" relation: each line consists of the primary
- name of a terminal that has use capabilities, followed by a
- colon, followed by the whitespace-separated primary names of all
- terminals which occur in those use capabilities, followed by a
- newline
+ says to write a report to the standard output, listing
+ dependencies in the given terminfo/termcap source file. The
+ report condenses the "use" relation: each line consists of the
+ primary name of a terminal that has use capabilities, followed
+ by a colon, followed by the whitespace-separated primary names
+ of all terminals which occur in those use capabilities, followed
+ by a newline
<STRONG>-U</STRONG> <EM>file</EM>
says to write a report to the standard output, listing reverse
dependencies in the given terminfo/termcap source file. The
report reverses the "use" relation: each line consists of the
- primary name of a terminal that occurs in use capabilities, fol-
- lowed by a colon, followed by the whitespace-separated primary
- names of all terminals which depend on it, followed by a new-
- line.
+ primary name of a terminal that occurs in use capabilities,
+ followed by a colon, followed by the whitespace-separated
+ primary names of all terminals which depend on it, followed by a
+ newline.
<STRONG>-v</STRONG><EM>n</EM> specifies that (verbose) output be written to standard error,
showing <STRONG>toe</STRONG>'s progress.
@@ -107,8 +107,8 @@
</PRE><H2><a name="h2-EXAMPLES">EXAMPLES</a></H2><PRE>
Without sorting, the <STRONG>-a</STRONG> option reports all of the names found in all of
- the terminal databases found by the <STRONG>TERMINFO</STRONG> and <STRONG>TERMINFO_DIRS</STRONG> environ-
- ment variables:
+ the terminal databases found by the <STRONG>TERMINFO</STRONG> and <STRONG>TERMINFO_DIRS</STRONG>
+ environment variables:
MtxOrb162 16x2 Matrix Orbital LCD display
MtxOrb204 20x4 Matrix Orbital LCD display
@@ -124,8 +124,8 @@
qansi-t QNX ansi without console writes
. . .
- Use the <STRONG>-a</STRONG> and <STRONG>-s</STRONG> options together to show where each terminal descrip-
- tion was found:
+ Use the <STRONG>-a</STRONG> and <STRONG>-s</STRONG> options together to show where each terminal
+ description was found:
--&gt; /usr/local/ncurses/share/terminfo
----&gt; /usr/share/terminfo
@@ -168,10 +168,10 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>ter-</STRONG>
- <STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
+ <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/tput.1.html b/doc/html/man/tput.1.html
index b6fe503..961edcb 100644
--- a/doc/html/man/tput.1.html
+++ b/doc/html/man/tput.1.html
@@ -1,7 +1,7 @@
-<!--
+<!--
* t
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tput.1,v 1.63 2020/02/02 23:34:34 tom Exp @
+ * @Id: tput.1,v 1.72 2021/10/02 21:41:00 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -62,11 +62,11 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The <STRONG>tput</STRONG> utility uses the <STRONG>terminfo</STRONG> database to make the values of ter-
- minal-dependent capabilities and information available to the shell
+ The <STRONG>tput</STRONG> utility uses the <STRONG>terminfo</STRONG> database to make the values of
+ terminal-dependent capabilities and information available to the shell
(see <STRONG>sh(1)</STRONG>), to initialize or reset the terminal, or return the long
- name of the requested terminal type. The result depends upon the capa-
- bility's type:
+ name of the requested terminal type. The result depends upon the
+ capability's type:
string
<STRONG>tput</STRONG> writes the string to the standard output. No trailing
@@ -90,9 +90,9 @@
</PRE><H3><a name="h3-Options">Options</a></H3><PRE>
<STRONG>-S</STRONG> allows more than one capability per invocation of <STRONG>tput</STRONG>. The
capabilities must be passed to <STRONG>tput</STRONG> from the standard input
- instead of from the command line (see example). Only one <EM>cap-</EM>
- <EM>name</EM> is allowed per line. The <STRONG>-S</STRONG> option changes the meaning of
- the <STRONG>0</STRONG> and <STRONG>1</STRONG> boolean and string exit codes (see the EXIT CODES
+ instead of from the command line (see example). Only one
+ <EM>capname</EM> is allowed per line. The <STRONG>-S</STRONG> option changes the meaning
+ of the <STRONG>0</STRONG> and <STRONG>1</STRONG> boolean and string exit codes (see the EXIT CODES
section).
Because some capabilities may use <EM>string</EM> parameters rather than
@@ -100,10 +100,10 @@
input to decide whether to use <STRONG><A HREF="curs_terminfo.3x.html">tparm(3x)</A></STRONG>, and how to interpret
the parameters.
- <STRONG>-T</STRONG><EM>type</EM> indicates the <EM>type</EM> of terminal. Normally this option is unnec-
- essary, because the default is taken from the environment vari-
- able <STRONG>TERM</STRONG>. If <STRONG>-T</STRONG> is specified, then the shell variables <STRONG>LINES</STRONG>
- and <STRONG>COLUMNS</STRONG> will also be ignored.
+ <STRONG>-T</STRONG><EM>type</EM> indicates the <EM>type</EM> of terminal. Normally this option is
+ unnecessary, because the default is taken from the environment
+ variable <STRONG>TERM</STRONG>. If <STRONG>-T</STRONG> is specified, then the shell variables
+ <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> will also be ignored.
<STRONG>-V</STRONG> reports the version of ncurses which was used in this program,
and exits.
@@ -116,15 +116,15 @@
A few commands (<STRONG>init</STRONG>, <STRONG>reset</STRONG> and <STRONG>longname</STRONG>) are special; they are defined
by the <STRONG>tput</STRONG> program. The others are the names of <EM>capabilities</EM> from the
terminal database (see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for a list). Although <STRONG>init</STRONG> and
- <STRONG>reset</STRONG> resemble capability names, <STRONG>tput</STRONG> uses several capabilities to per-
- form these special functions.
+ <STRONG>reset</STRONG> resemble capability names, <STRONG>tput</STRONG> uses several capabilities to
+ perform these special functions.
<EM>capname</EM>
indicates the capability from the terminal database.
- If the capability is a string that takes parameters, the argu-
- ments following the capability will be used as parameters for
- the string.
+ If the capability is a string that takes parameters, the
+ arguments following the capability will be used as parameters
+ for the string.
Most parameters are numbers. Only a few terminal capabilities
require string parameters; <STRONG>tput</STRONG> uses a table to decide which to
@@ -146,14 +146,14 @@
<STRONG>o</STRONG> ultimately "/dev/tty"
- to obtain terminal settings. Having retrieved these set-
- tings, <STRONG>tput</STRONG> remembers which file descriptor to use when
+ to obtain terminal settings. Having retrieved these
+ settings, <STRONG>tput</STRONG> remembers which file descriptor to use when
updating settings.
(2) if the window size cannot be obtained from the operating
system, but the terminal description (or environment, e.g.,
- <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> variables specify this), update the oper-
- ating system's notion of the window size.
+ <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> variables specify this), update the
+ operating system's notion of the window size.
(3) the terminal modes will be updated:
@@ -189,11 +189,11 @@
<STRONG>o</STRONG> reset any unset special characters to their default
values
- (2) Instead of putting out <EM>initialization</EM> strings, the termi-
- nal's <EM>reset</EM> strings will be output if present (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>,
- <STRONG>rs3</STRONG>, <STRONG>rf</STRONG>). If the <EM>reset</EM> strings are not present, but <EM>ini-</EM>
- <EM>tialization</EM> strings are, the <EM>initialization</EM> strings will be
- output.
+ (2) Instead of putting out <EM>initialization</EM> strings, the
+ terminal's <EM>reset</EM> strings will be output if present (<STRONG>rs1</STRONG>,
+ <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, <STRONG>rf</STRONG>). If the <EM>reset</EM> strings are not present, but
+ <EM>initialization</EM> strings are, the <EM>initialization</EM> strings will
+ be output.
Otherwise, <STRONG>reset</STRONG> acts identically to <STRONG>init</STRONG>.
@@ -201,8 +201,8 @@
If the terminal database is present and an entry for the user's
terminal exists (see <STRONG>-T</STRONG><EM>type</EM> above), then the long name of the
terminal will be put out. The long name is the last name in the
- first line of the terminal's description in the <STRONG>terminfo</STRONG> data-
- base [see <STRONG><A HREF="term.5.html">term(5)</A></STRONG>].
+ first line of the terminal's description in the <STRONG>terminfo</STRONG>
+ database [see <STRONG><A HREF="term.5.html">term(5)</A></STRONG>].
</PRE><H3><a name="h3-Aliases">Aliases</a></H3><PRE>
@@ -210,8 +210,8 @@
for the possibility that it is invoked by a link with those names.
If <STRONG>tput</STRONG> is invoked by a link named <STRONG>reset</STRONG>, this has the same effect as
- <STRONG>tput</STRONG> <STRONG>reset</STRONG>. The <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG> utility also treats a link named <STRONG>reset</STRONG> spe-
- cially.
+ <STRONG>tput</STRONG> <STRONG>reset</STRONG>. The <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG> utility also treats a link named <STRONG>reset</STRONG>
+ specially.
Before ncurses 6.1, the two utilities were different from each other:
@@ -220,8 +220,8 @@
<STRONG>o</STRONG> On the other hand, <STRONG>tset</STRONG>'s repertoire of terminal capabilities for
resetting the terminal was more limited, i.e., only <STRONG>reset_1string</STRONG>,
- <STRONG>reset_2string</STRONG> and <STRONG>reset_file</STRONG> in contrast to the tab-stops and mar-
- gins which are set by this utility.
+ <STRONG>reset_2string</STRONG> and <STRONG>reset_file</STRONG> in contrast to the tab-stops and
+ margins which are set by this utility.
<STRONG>o</STRONG> The <STRONG>reset</STRONG> program is usually an alias for <STRONG>tset</STRONG>, because of this
difference with resetting terminal modes and special characters.
@@ -229,17 +229,17 @@
With the changes made for ncurses 6.1, the <EM>reset</EM> feature of the two
programs is (mostly) the same. A few differences remain:
- <STRONG>o</STRONG> The <STRONG>tset</STRONG> program waits one second when resetting, in case it hap-
- pens to be a hardware terminal.
+ <STRONG>o</STRONG> The <STRONG>tset</STRONG> program waits one second when resetting, in case it
+ happens to be a hardware terminal.
- <STRONG>o</STRONG> The two programs write the terminal initialization strings to dif-
- ferent streams (i.e., the standard error for <STRONG>tset</STRONG> and the standard
- output for <STRONG>tput</STRONG>).
+ <STRONG>o</STRONG> The two programs write the terminal initialization strings to
+ different streams (i.e., the standard error for <STRONG>tset</STRONG> and the
+ standard output for <STRONG>tput</STRONG>).
- <STRONG>Note:</STRONG> although these programs write to different streams, redirect-
- ing their output to a file will capture only part of their actions.
- The changes to the terminal modes are not affected by redirecting
- the output.
+ <STRONG>Note:</STRONG> although these programs write to different streams,
+ redirecting their output to a file will capture only part of their
+ actions. The changes to the terminal modes are not affected by
+ redirecting the output.
If <STRONG>tput</STRONG> is invoked by a link named <STRONG>init</STRONG>, this has the same effect as
<STRONG>tput</STRONG> <STRONG>init</STRONG>. Again, you are less likely to use that link because another
@@ -247,8 +247,8 @@
</PRE><H3><a name="h3-Terminal-Size">Terminal Size</a></H3><PRE>
- Besides the special commands (e.g., <STRONG>clear</STRONG>), tput treats certain ter-
- minfo capabilities specially: <STRONG>lines</STRONG> and <STRONG>columns</STRONG>. tput calls
+ Besides the special commands (e.g., <STRONG>clear</STRONG>), tput treats certain
+ terminfo capabilities specially: <STRONG>lines</STRONG> and <STRONG>cols</STRONG>. tput calls
<STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG> to obtain the terminal size:
<STRONG>o</STRONG> first, it gets the size from the terminal database (which generally
@@ -294,9 +294,9 @@
<STRONG>bold=`tput</STRONG> <STRONG>smso`</STRONG> <STRONG>offbold=`tput</STRONG> <STRONG>rmso`</STRONG>
Set the shell variables <STRONG>bold</STRONG>, to begin stand-out mode sequence,
- and <STRONG>offbold</STRONG>, to end standout mode sequence, for the current termi-
- nal. This might be followed by a prompt: <STRONG>echo</STRONG> <STRONG>"${bold}Please</STRONG> <STRONG>type</STRONG>
- <STRONG>in</STRONG> <STRONG>your</STRONG> <STRONG>name:</STRONG> <STRONG>${offbold}\c"</STRONG>
+ and <STRONG>offbold</STRONG>, to end standout mode sequence, for the current
+ terminal. This might be followed by a prompt: <STRONG>echo</STRONG> <STRONG>"${bold}Please</STRONG>
+ <STRONG>type</STRONG> <STRONG>in</STRONG> <STRONG>your</STRONG> <STRONG>name:</STRONG> <STRONG>${offbold}\c"</STRONG>
<STRONG>tput</STRONG> <STRONG>hc</STRONG>
Set exit code to indicate if the current terminal is a hard copy
@@ -321,8 +321,8 @@
This example shows <STRONG>tput</STRONG> processing several capabilities in one
invocation. It clears the screen, moves the cursor to position
- 10, 10 and turns on bold (extra bright) mode. The list is termi-
- nated by an exclamation mark (<STRONG>!</STRONG>) on a line by itself.
+ 10, 10 and turns on bold (extra bright) mode. The list is
+ terminated by an exclamation mark (<STRONG>!</STRONG>) on a line by itself.
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
@@ -342,16 +342,16 @@
lines with errors. If no errors are found, the exit code is <STRONG>0</STRONG>. No
indication of which line failed can be given so exit code <STRONG>1</STRONG> will never
appear. Exit codes <STRONG>2</STRONG>, <STRONG>3</STRONG>, and <STRONG>4</STRONG> retain their usual interpretation. If
- the <STRONG>-S</STRONG> option is not used, the exit code depends on the type of <EM>cap-</EM>
- <EM>name</EM>:
+ the <STRONG>-S</STRONG> option is not used, the exit code depends on the type of
+ <EM>capname</EM>:
<EM>boolean</EM>
a value of <STRONG>0</STRONG> is set for TRUE and <STRONG>1</STRONG> for FALSE.
- <EM>string</EM> a value of <STRONG>0</STRONG> is set if the <EM>capname</EM> is defined for this termi-
- nal <EM>type</EM> (the value of <EM>capname</EM> is returned on standard out-
- put); a value of <STRONG>1</STRONG> is set if <EM>capname</EM> is not defined for this
- terminal <EM>type</EM> (nothing is written to standard output).
+ <EM>string</EM> a value of <STRONG>0</STRONG> is set if the <EM>capname</EM> is defined for this
+ terminal <EM>type</EM> (the value of <EM>capname</EM> is returned on standard
+ output); a value of <STRONG>1</STRONG> is set if <EM>capname</EM> is not defined for
+ this terminal <EM>type</EM> (nothing is written to standard output).
<EM>integer</EM>
a value of <STRONG>0</STRONG> is always set, whether or not <EM>capname</EM> is defined
@@ -374,7 +374,7 @@
---------------------------------------------------------------------
<STRONG>0</STRONG> (<EM>capname</EM> is a numeric variable that is not specified in
the <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> database for this terminal type, e.g.
- <STRONG>tput</STRONG> <STRONG>-T450</STRONG> <STRONG>lines</STRONG> and <STRONG>tput</STRONG> <STRONG>-T2621</STRONG> <STRONG>xmc</STRONG>)
+ <STRONG>tput</STRONG> <STRONG>-T450</STRONG> <STRONG>lines</STRONG> and <STRONG>tput</STRONG> <STRONG>-Thp2621</STRONG> <STRONG>xmc</STRONG>)
<STRONG>1</STRONG> no error message is printed, see the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> section.
<STRONG>2</STRONG> usage error
<STRONG>3</STRONG> unknown terminal <EM>type</EM> or no <STRONG>terminfo</STRONG> database
@@ -387,51 +387,62 @@
The <STRONG>tput</STRONG> command was begun by Bill Joy in 1980. The initial version
only cleared the screen.
- AT&amp;T System V provided a different <STRONG>tput</STRONG> command, whose <STRONG>init</STRONG> and <STRONG>reset</STRONG>
- subcommands (more than half the program) were incorporated from the
- <STRONG>reset</STRONG> feature of BSD <STRONG>tset</STRONG> written by Eric Allman.
+ AT&amp;T System V provided a different <STRONG>tput</STRONG> command:
- Keith Bostic replaced the BSD <STRONG>tput</STRONG> command in 1989 with a new implemen-
- tation based on the AT&amp;T System V program <STRONG>tput</STRONG>. Like the AT&amp;T program,
- Bostic's version accepted some parameters named for <EM>terminfo</EM> <EM>capabili-</EM>
- <EM>ties</EM> (<STRONG>clear</STRONG>, <STRONG>init</STRONG>, <STRONG>longname</STRONG> and <STRONG>reset</STRONG>). However (because he had only
- termcap available), it accepted <EM>termcap</EM> <EM>names</EM> for other capabilities.
- Also, Bostic's BSD <STRONG>tput</STRONG> did not modify the terminal I/O modes as the
- earlier BSD <STRONG>tset</STRONG> had done.
+ <STRONG>o</STRONG> SVr2 provided a rudimentary <STRONG>tput</STRONG> which checked the parameter
+ against each predefined capability and returned the corresponding
+ value. This version of <STRONG>tput</STRONG> did not use <STRONG><A HREF="curs_terminfo.3x.html">tparm(3x)</A></STRONG> for the
+ capabilities which are parameterized.
+
+ <STRONG>o</STRONG> SVr3 replaced that, a year later, by a more extensive program whose
+ <STRONG>init</STRONG> and <STRONG>reset</STRONG> subcommands (more than half the program) were
+ incorporated from the <STRONG>reset</STRONG> feature of BSD <STRONG>tset</STRONG> written by Eric
+ Allman.
+
+ <STRONG>o</STRONG> SVr4 added color initialization using the <EM>orig</EM><STRONG>_</STRONG><EM>colors</EM> and
+ <EM>orig</EM><STRONG>_</STRONG><EM>pairs</EM> capabilities in the <STRONG>init</STRONG> subcommand.
+
+ Keith Bostic replaced the BSD <STRONG>tput</STRONG> command in 1989 with a new
+ implementation based on the AT&amp;T System V program <STRONG>tput</STRONG>. Like the AT&amp;T
+ program, Bostic's version accepted some parameters named for <EM>terminfo</EM>
+ <EM>capabilities</EM> (<STRONG>clear</STRONG>, <STRONG>init</STRONG>, <STRONG>longname</STRONG> and <STRONG>reset</STRONG>). However (because he
+ had only termcap available), it accepted <EM>termcap</EM> <EM>names</EM> for other
+ capabilities. Also, Bostic's BSD <STRONG>tput</STRONG> did not modify the terminal I/O
+ modes as the earlier BSD <STRONG>tset</STRONG> had done.
At the same time, Bostic added a shell script named "clear", which used
<STRONG>tput</STRONG> to clear the screen.
- Both of these appeared in 4.4BSD, becoming the "modern" BSD implementa-
- tion of <STRONG>tput</STRONG>.
+ Both of these appeared in 4.4BSD, becoming the "modern" BSD
+ implementation of <STRONG>tput</STRONG>.
- This implementation of <STRONG>tput</STRONG> began from a different source than AT&amp;T or
- BSD: Ross Ridge's <EM>mytinfo</EM> package, published on <EM>comp.sources.unix</EM> in
- December 1992. Ridge's program made more sophisticated use of the ter-
- minal capabilities than the BSD program. Eric Raymond used that <STRONG>tput</STRONG>
- program (and other parts of <EM>mytinfo</EM>) in ncurses in June 1995. Using
- the portions dealing with terminal capabilities almost without change,
- Raymond made improvements to the way the command-line parameters were
- handled.
+ This implementation of <STRONG>tput</STRONG> began from a different source than AT&amp;T or
+ BSD: Ross Ridge's <EM>mytinfo</EM> package, published on <EM>comp.sources.unix</EM> in
+ December 1992. Ridge's program made more sophisticated use of the
+ terminal capabilities than the BSD program. Eric Raymond used that
+ <STRONG>tput</STRONG> program (and other parts of <EM>mytinfo</EM>) in ncurses in June 1995.
+ Using the portions dealing with terminal capabilities almost without
+ change, Raymond made improvements to the way the command-line
+ parameters were handled.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- This implementation of <STRONG>tput</STRONG> differs from AT&amp;T <STRONG>tput</STRONG> in two important
+ This implementation of <STRONG>tput</STRONG> differs from AT&amp;T <STRONG>tput</STRONG> in two important
areas:
- <STRONG>o</STRONG> <STRONG>tput</STRONG> <EM>capname</EM> writes to the standard output. That need not be a
- regular terminal. However, the subcommands which manipulate termi-
- nal modes may not use the standard output.
+ <STRONG>o</STRONG> <STRONG>tput</STRONG> <EM>capname</EM> writes to the standard output. That need not be a
+ regular terminal. However, the subcommands which manipulate
+ terminal modes may not use the standard output.
- The AT&amp;T implementation's <STRONG>init</STRONG> and <STRONG>reset</STRONG> commands use the BSD
- (4.1c) <STRONG>tset</STRONG> source, which manipulates terminal modes. It succes-
- sively tries standard output, standard error, standard input before
- falling back to "/dev/tty" and finally just assumes a 1200Bd termi-
- nal. When updating terminal modes, it ignores errors.
+ The AT&amp;T implementation's <STRONG>init</STRONG> and <STRONG>reset</STRONG> commands use the BSD
+ (4.1c) <STRONG>tset</STRONG> source, which manipulates terminal modes. It
+ successively tries standard output, standard error, standard input
+ before falling back to "/dev/tty" and finally just assumes a 1200Bd
+ terminal. When updating terminal modes, it ignores errors.
- Until changes made after ncurses 6.0, <STRONG>tput</STRONG> did not modify terminal
+ Until changes made after ncurses 6.0, <STRONG>tput</STRONG> did not modify terminal
modes. <STRONG>tput</STRONG> now uses a similar scheme, using functions shared with
- <STRONG>tset</STRONG> (and ultimately based on the 4.4BSD <STRONG>tset</STRONG>). If it is not able
+ <STRONG>tset</STRONG> (and ultimately based on the 4.4BSD <STRONG>tset</STRONG>). If it is not able
to open a terminal, e.g., when running in <STRONG>cron</STRONG>, <STRONG>tput</STRONG> will return an
error.
@@ -439,50 +450,61 @@
of the characters are numeric, or not.
Most implementations which provide support for <EM>capname</EM> operands use
- the <EM>tparm</EM> function to expand parameters in it. That function
- expects a mixture of numeric and string parameters, requiring <STRONG>tput</STRONG>
+ the <EM>tparm</EM> function to expand parameters in it. That function
+ expects a mixture of numeric and string parameters, requiring <STRONG>tput</STRONG>
to know which type to use.
- This implementation uses a table to determine the parameter types
+ This implementation uses a table to determine the parameter types
for the standard <EM>capname</EM> operands, and an internal library function
to analyze nonstandard <EM>capname</EM> operands.
- This implementation (unlike others) can accept both <EM>termcap</EM> and <EM>ter-</EM>
- <EM>minfo</EM> names for the <EM>capname</EM> feature, if <EM>termcap</EM> support is compiled in.
- However, the predefined <EM>termcap</EM> and <EM>terminfo</EM> names have two ambiguities
- in this case (and the <EM>terminfo</EM> name is assumed):
+ Besides providing more reliable operation than AT&amp;T's utility, a
+ portability problem is introduced by this analysis: An OpenBSD
+ developer adapted the internal library function from ncurses to
+ port NetBSD's termcap-based <STRONG>tput</STRONG> to terminfo. That had been
+ modified to interpret multiple commands on a line. Portable
+ applications should not rely upon this feature; ncurses provides it
+ to support applications written specifically for OpenBSD.
- <STRONG>o</STRONG> The <EM>termcap</EM> name <STRONG>dl</STRONG> corresponds to the <EM>terminfo</EM> name <STRONG>dl1</STRONG> (delete
+ This implementation (unlike others) can accept both <EM>termcap</EM> and
+ <EM>terminfo</EM> names for the <EM>capname</EM> feature, if <EM>termcap</EM> support is compiled
+ in. However, the predefined <EM>termcap</EM> and <EM>terminfo</EM> names have two
+ ambiguities in this case (and the <EM>terminfo</EM> name is assumed):
+
+ <STRONG>o</STRONG> The <EM>termcap</EM> name <STRONG>dl</STRONG> corresponds to the <EM>terminfo</EM> name <STRONG>dl1</STRONG> (delete
one line).
- The <EM>terminfo</EM> name <STRONG>dl</STRONG> corresponds to the <EM>termcap</EM> name <STRONG>DL</STRONG> (delete a
+ The <EM>terminfo</EM> name <STRONG>dl</STRONG> corresponds to the <EM>termcap</EM> name <STRONG>DL</STRONG> (delete a
given number of lines).
- <STRONG>o</STRONG> The <EM>termcap</EM> name <STRONG>ed</STRONG> corresponds to the <EM>terminfo</EM> name <STRONG>rmdc</STRONG> (end
+ <STRONG>o</STRONG> The <EM>termcap</EM> name <STRONG>ed</STRONG> corresponds to the <EM>terminfo</EM> name <STRONG>rmdc</STRONG> (end
delete mode).
- The <EM>terminfo</EM> name <STRONG>ed</STRONG> corresponds to the <EM>termcap</EM> name <STRONG>cd</STRONG> (clear to
+ The <EM>terminfo</EM> name <STRONG>ed</STRONG> corresponds to the <EM>termcap</EM> name <STRONG>cd</STRONG> (clear to
end of screen).
- The <STRONG>longname</STRONG> and <STRONG>-S</STRONG> options, and the parameter-substitution features
- used in the <STRONG>cup</STRONG> example, were not supported in BSD curses before
+ The <STRONG>longname</STRONG> and <STRONG>-S</STRONG> options, and the parameter-substitution features
+ used in the <STRONG>cup</STRONG> example, were not supported in BSD curses before
4.3reno (1989) or in AT&amp;T/USL curses before SVr4 (1988).
- IEEE Std 1003.1/The Open Group Base Specifications Issue 7
- (POSIX.1-2008) documents only the operands for <STRONG>clear</STRONG>, <STRONG>init</STRONG> and <STRONG>reset</STRONG>.
+ IEEE Std 1003.1/The Open Group Base Specifications Issue 7
+ (POSIX.1-2008) documents only the operands for <STRONG>clear</STRONG>, <STRONG>init</STRONG> and <STRONG>reset</STRONG>.
There are a few interesting observations to make regarding that:
- <STRONG>o</STRONG> In this implementation, <STRONG>clear</STRONG> is part of the <EM>capname</EM> support. The
- others (<STRONG>init</STRONG> and <STRONG>longname</STRONG>) do not correspond to terminal capabili-
- ties.
+ <STRONG>o</STRONG> In this implementation, <STRONG>clear</STRONG> is part of the <EM>capname</EM> support. The
+ others (<STRONG>init</STRONG> and <STRONG>longname</STRONG>) do not correspond to terminal
+ capabilities.
<STRONG>o</STRONG> Other implementations of <STRONG>tput</STRONG> on SVr4-based systems such as
- Solaris, IRIX64 and HPUX as well as others such as AIX and Tru64
+ Solaris, IRIX64 and HPUX as well as others such as AIX and Tru64
provide support for <EM>capname</EM> operands.
<STRONG>o</STRONG> A few platforms such as FreeBSD recognize termcap names rather than
terminfo capability names in their respective <STRONG>tput</STRONG> commands. Since
- 2010, NetBSD's <STRONG>tput</STRONG> uses terminfo names. Before that, it (like
+ 2010, NetBSD's <STRONG>tput</STRONG> uses terminfo names. Before that, it (like
FreeBSD) recognized termcap names.
+ Beginning in 2021, FreeBSD uses the ncurses <STRONG>tput</STRONG>, configured for
+ both terminfo (tested first) and termcap (as a fallback).
+
Because (apparently) <EM>all</EM> of the certified Unix systems support the full
set of capability names, the reasoning for documenting only a few may
not be apparent.
@@ -492,24 +514,24 @@
<STRONG>o</STRONG> That is, there are two standards for <STRONG>tput</STRONG>: POSIX (a subset) and
X/Open Curses (the full implementation). POSIX documents a subset
- to avoid the complication of including X/Open Curses and the termi-
- nal capabilities database.
+ to avoid the complication of including X/Open Curses and the
+ terminal capabilities database.
<STRONG>o</STRONG> While it is certainly possible to write a <STRONG>tput</STRONG> program without
- using curses, none of the systems which have a curses implementa-
- tion provide a <STRONG>tput</STRONG> utility which does not provide the <EM>capname</EM> fea-
- ture.
+ using curses, none of the systems which have a curses
+ implementation provide a <STRONG>tput</STRONG> utility which does not provide the
+ <EM>capname</EM> feature.
- X/Open Curses Issue 7 (2009) is the first version to document utili-
- ties. However that part of X/Open Curses does not follow existing
+ X/Open Curses Issue 7 (2009) is the first version to document
+ utilities. However that part of X/Open Curses does not follow existing
practice (i.e., Unix features documented in SVID 3):
<STRONG>o</STRONG> It assigns exit code 4 to "invalid operand", which may be the same
as <EM>unknown</EM> <EM>capability</EM>. For instance, the source code for Solaris'
xcurses uses the term "invalid" in this case.
- <STRONG>o</STRONG> It assigns exit code 255 to a numeric variable that is not speci-
- fied in the terminfo database. That likely is a documentation
+ <STRONG>o</STRONG> It assigns exit code 255 to a numeric variable that is not
+ specified in the terminfo database. That likely is a documentation
error, confusing the <STRONG>-1</STRONG> written to the standard output for an
absent or cancelled numeric value versus an (unsigned) exit code.
@@ -521,9 +543,9 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
+ <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/tset.1.html b/doc/html/man/tset.1.html
index 2b77410..920ff01 100644
--- a/doc/html/man/tset.1.html
+++ b/doc/html/man/tset.1.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tset.1,v 1.55 2020/02/02 23:34:34 tom Exp @
+ * @Id: tset.1,v 1.58 2021/09/18 21:21:55 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -60,8 +60,8 @@
</PRE><H3><a name="h3-tset---initialization">tset - initialization</a></H3><PRE>
This program initializes terminals.
- First, <STRONG>tset</STRONG> retrieves the current terminal mode settings for your ter-
- minal. It does this by successively testing
+ First, <STRONG>tset</STRONG> retrieves the current terminal mode settings for your
+ terminal. It does this by successively testing
<STRONG>o</STRONG> the standard error,
@@ -90,30 +90,30 @@
If the terminal type was not specified on the command-line, the <STRONG>-m</STRONG>
option mappings are then applied (see the section <STRONG>TERMINAL</STRONG> <STRONG>TYPE</STRONG> <STRONG>MAPPING</STRONG>
- for more information). Then, if the terminal type begins with a ques-
- tion mark ("?"), the user is prompted for confirmation of the terminal
- type. An empty response confirms the type, or, another type can be
- entered to specify a new type. Once the terminal type has been deter-
- mined, the terminal description for the terminal is retrieved. If no
- terminal description is found for the type, the user is prompted for
+ for more information). Then, if the terminal type begins with a
+ question mark ("?"), the user is prompted for confirmation of the
+ terminal type. An empty response confirms the type, or, another type
+ can be entered to specify a new type. Once the terminal type has been
+ determined, the terminal description for the terminal is retrieved. If
+ no terminal description is found for the type, the user is prompted for
another terminal type.
Once the terminal description is retrieved,
- <STRONG>o</STRONG> if the "<STRONG>-w</STRONG>" option is enabled, <STRONG>tset</STRONG> may update the terminal's win-
- dow size.
+ <STRONG>o</STRONG> if the "<STRONG>-w</STRONG>" option is enabled, <STRONG>tset</STRONG> may update the terminal's
+ window size.
If the window size cannot be obtained from the operating system,
- but the terminal description (or environment, e.g., <STRONG>LINES</STRONG> and <STRONG>COL-</STRONG>
- <STRONG>UMNS</STRONG> variables specify this), use this to set the operating sys-
- tem's notion of the window size.
+ but the terminal description (or environment, e.g., <STRONG>LINES</STRONG> and
+ <STRONG>COLUMNS</STRONG> variables specify this), use this to set the operating
+ system's notion of the window size.
<STRONG>o</STRONG> if the "<STRONG>-c</STRONG>" option is enabled, the backspace, interrupt and line
kill characters (among many other things) are set
- <STRONG>o</STRONG> unless the "<STRONG>-I</STRONG>" option is enabled, the terminal and tab <EM>initializa-</EM>
- <EM>tion</EM> strings are sent to the standard error output, and <STRONG>tset</STRONG> waits
- one second (in case a hardware reset was issued).
+ <STRONG>o</STRONG> unless the "<STRONG>-I</STRONG>" option is enabled, the terminal and tab
+ <EM>initialization</EM> strings are sent to the standard error output, and
+ <STRONG>tset</STRONG> waits one second (in case a hardware reset was issued).
<STRONG>o</STRONG> Finally, if the erase, interrupt and line kill characters have
changed, or are not set to their default values, their values are
@@ -154,21 +154,25 @@
<STRONG>-c</STRONG> Set control characters and modes.
- <STRONG>-e</STRONG> Set the erase character to <EM>ch</EM>.
+ <STRONG>-e</STRONG> <EM>ch</EM>
+ Set the erase character to <EM>ch</EM>.
- <STRONG>-I</STRONG> Do not send the terminal or tab initialization strings to the ter-
- minal.
+ <STRONG>-I</STRONG> Do not send the terminal or tab initialization strings to the
+ terminal.
- <STRONG>-i</STRONG> Set the interrupt character to <EM>ch</EM>.
+ <STRONG>-i</STRONG> <EM>ch</EM>
+ Set the interrupt character to <EM>ch</EM>.
- <STRONG>-k</STRONG> Set the line kill character to <EM>ch</EM>.
+ <STRONG>-k</STRONG> <EM>ch</EM>
+ Set the line kill character to <EM>ch</EM>.
- <STRONG>-m</STRONG> Specify a mapping from a port type to a terminal. See the section
+ <STRONG>-m</STRONG> <EM>mapping</EM>
+ Specify a mapping from a port type to a terminal. See the section
<STRONG>TERMINAL</STRONG> <STRONG>TYPE</STRONG> <STRONG>MAPPING</STRONG> for more information.
<STRONG>-Q</STRONG> Do not display any values for the erase, interrupt and line kill
- characters. Normally <STRONG>tset</STRONG> displays the values for control charac-
- ters which differ from the system's default values.
+ characters. Normally <STRONG>tset</STRONG> displays the values for control
+ characters which differ from the system's default values.
<STRONG>-q</STRONG> The terminal type is displayed to the standard output, and the
terminal is not initialized in any way. The option "-" by itself
@@ -210,8 +214,8 @@
</PRE><H2><a name="h2-TERMINAL-TYPE-MAPPING">TERMINAL TYPE MAPPING</a></H2><PRE>
- When the terminal is not hardwired into the system (or the current sys-
- tem information is incorrect) the terminal type derived from the
+ When the terminal is not hardwired into the system (or the current
+ system information is incorrect) the terminal type derived from the
<EM>/etc/ttys</EM> file or the <STRONG>TERM</STRONG> environmental variable is often something
generic like <STRONG>network</STRONG>, <STRONG>dialup</STRONG>, or <STRONG>unknown</STRONG>. When <STRONG>tset</STRONG> is used in a
startup script it is often desirable to provide information about the
@@ -224,18 +228,18 @@
The argument to the <STRONG>-m</STRONG> option consists of an optional port type, an
optional operator, an optional baud rate specification, an optional
colon (":") character and a terminal type. The port type is a string
- (delimited by either the operator or the colon character). The opera-
- tor may be any combination of "&gt;", "&lt;", "@", and "!"; "&gt;" means greater
- than, "&lt;" means less than, "@" means equal to and "!" inverts the sense
- of the test. The baud rate is specified as a number and is compared
- with the speed of the standard error output (which should be the con-
- trol terminal). The terminal type is a string.
-
- If the terminal type is not specified on the command line, the <STRONG>-m</STRONG> map-
- pings are applied to the terminal type. If the port type and baud rate
- match the mapping, the terminal type specified in the mapping replaces
- the current type. If more than one mapping is specified, the first
- applicable mapping is used.
+ (delimited by either the operator or the colon character). The
+ operator may be any combination of "&gt;", "&lt;", "@", and "!"; "&gt;" means
+ greater than, "&lt;" means less than, "@" means equal to and "!" inverts
+ the sense of the test. The baud rate is specified as a number and is
+ compared with the speed of the standard error output (which should be
+ the control terminal). The terminal type is a string.
+
+ If the terminal type is not specified on the command line, the <STRONG>-m</STRONG>
+ mappings are applied to the terminal type. If the port type and baud
+ rate match the mapping, the terminal type specified in the mapping
+ replaces the current type. If more than one mapping is specified, the
+ first applicable mapping is used.
For example, consider the following mapping: <STRONG>dialup&gt;9600:vt100</STRONG>. The
port type is dialup , the operator is &gt;, the baud rate specification is
@@ -254,32 +258,26 @@
No whitespace characters are permitted in the <STRONG>-m</STRONG> option argument.
Also, to avoid problems with meta-characters, it is suggested that the
entire <STRONG>-m</STRONG> option argument be placed within single quote characters, and
- that <STRONG>csh</STRONG> users insert a backslash character ("\") before any exclama-
- tion marks ("!").
+ that <STRONG>csh</STRONG> users insert a backslash character ("\") before any
+ exclamation marks ("!").
</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
- A <STRONG>reset</STRONG> command appeared in 2BSD (April 1979), written by Kurt Shoens.
+ A <STRONG>reset</STRONG> command appeared in 1BSD (March 1978), written by Kurt Shoens.
This program set the <EM>erase</EM> and <EM>kill</EM> characters to <STRONG>^H</STRONG> (backspace) and <STRONG>@</STRONG>
respectively. Mark Horton improved that in 3BSD (October 1979), adding
- <EM>intr</EM>, <EM>quit</EM>, <EM>start</EM>/<EM>stop</EM> and <EM>eof</EM> characters as well as changing the pro-
- gram to avoid modifying any user settings.
+ <EM>intr</EM>, <EM>quit</EM>, <EM>start</EM>/<EM>stop</EM> and <EM>eof</EM> characters as well as changing the
+ program to avoid modifying any user settings. That version of <STRONG>reset</STRONG>
+ did not use the termcap database.
- Later in 4.1BSD (December 1980), Mark Horton added a call to the <STRONG>tset</STRONG>
- program using the <STRONG>-I</STRONG> and <STRONG>-Q</STRONG> options, i.e., using that to improve the
- terminal modes. With those options, that version of <STRONG>reset</STRONG> did not use
- the termcap database.
+ A separate <STRONG>tset</STRONG> command was provided in 1BSD by Eric Allman, using the
+ termcap database. Allman's comments in the source code indicate that
+ he began work in October 1977, continuing development over the next few
+ years.
- A separate <STRONG>tset</STRONG> command was provided in 2BSD by Eric Allman. While the
- oldest published source (from 1979) provides both <STRONG>tset</STRONG> and <STRONG>reset</STRONG>, All-
- man's comments in the 2BSD source code indicate that he began work in
- October 1977, continuing development over the next few years.
-
- In September 1980, Eric Allman modified <STRONG>tset</STRONG>, adding the code from the
- existing "reset" feature when <STRONG>tset</STRONG> was invoked as <STRONG>reset</STRONG>. Rather than
- simply copying the existing program, in this merged version, <STRONG>tset</STRONG> used
- the termcap database to do additional (re)initialization of the termi-
- nal. This version appeared in 4.1cBSD, late in 1982.
+ According to comments in the source code, the <STRONG>tset</STRONG> program was modified
+ in September 1980, to use logic copied from the 3BSD "reset" when it
+ was invoked as <STRONG>reset</STRONG>. This version appeared in 4.1cBSD, late in 1982.
Other developers (e.g., Keith Bostic and Jim Bloom) continued to modify
<STRONG>tset</STRONG> until 4.4BSD was released in 1993.
@@ -294,71 +292,72 @@
The AT&amp;T <STRONG>tput</STRONG> utility (AIX, HPUX, Solaris) incorporated the terminal-
mode manipulation as well as termcap-based features such as resetting
- tabstops from <STRONG>tset</STRONG> in BSD (4.1c), presumably with the intention of mak-
- ing <STRONG>tset</STRONG> obsolete. However, each of those systems still provides <STRONG>tset</STRONG>.
- In fact, the commonly-used <STRONG>reset</STRONG> utility is always an alias for <STRONG>tset</STRONG>.
-
- The <STRONG>tset</STRONG> utility provides for backward-compatibility with BSD environ-
- ments (under most modern UNIXes, <STRONG>/etc/inittab</STRONG> and <STRONG>getty(1)</STRONG> can set <STRONG>TERM</STRONG>
- appropriately for each dial-up line; this obviates what was <STRONG>tset</STRONG>'s most
- important use). This implementation behaves like 4.4BSD <STRONG>tset</STRONG>, with a
- few exceptions specified here.
-
- A few options are different because the <STRONG>TERMCAP</STRONG> variable is no longer
+ tabstops from <STRONG>tset</STRONG> in BSD (4.1c), presumably with the intention of
+ making <STRONG>tset</STRONG> obsolete. However, each of those systems still provides
+ <STRONG>tset</STRONG>. In fact, the commonly-used <STRONG>reset</STRONG> utility is always an alias for
+ <STRONG>tset</STRONG>.
+
+ The <STRONG>tset</STRONG> utility provides for backward-compatibility with BSD
+ environments (under most modern UNIXes, <STRONG>/etc/inittab</STRONG> and <STRONG>getty(1)</STRONG> can
+ set <STRONG>TERM</STRONG> appropriately for each dial-up line; this obviates what was
+ <STRONG>tset</STRONG>'s most important use). This implementation behaves like 4.4BSD
+ <STRONG>tset</STRONG>, with a few exceptions specified here.
+
+ A few options are different because the <STRONG>TERMCAP</STRONG> variable is no longer
supported under terminfo-based <STRONG>ncurses</STRONG>:
- <STRONG>o</STRONG> The <STRONG>-S</STRONG> option of BSD <STRONG>tset</STRONG> no longer works; it prints an error mes-
- sage to the standard error and dies.
+ <STRONG>o</STRONG> The <STRONG>-S</STRONG> option of BSD <STRONG>tset</STRONG> no longer works; it prints an error
+ message to the standard error and dies.
<STRONG>o</STRONG> The <STRONG>-s</STRONG> option only sets <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>.
- There was an undocumented 4.4BSD feature that invoking <STRONG>tset</STRONG> via a link
- named "TSET" (or via any other name beginning with an upper-case let-
- ter) set the terminal to use upper-case only. This feature has been
+ There was an undocumented 4.4BSD feature that invoking <STRONG>tset</STRONG> via a link
+ named "TSET" (or via any other name beginning with an upper-case
+ letter) set the terminal to use upper-case only. This feature has been
omitted.
The <STRONG>-A</STRONG>, <STRONG>-E</STRONG>, <STRONG>-h</STRONG>, <STRONG>-u</STRONG> and <STRONG>-v</STRONG> options were deleted from the <STRONG>tset</STRONG> utility in
- 4.4BSD. None of them were documented in 4.3BSD and all are of limited
- utility at best. The <STRONG>-a</STRONG>, <STRONG>-d</STRONG>, and <STRONG>-p</STRONG> options are similarly not docu-
- mented or useful, but were retained as they appear to be in widespread
- use. It is strongly recommended that any usage of these three options
- be changed to use the <STRONG>-m</STRONG> option instead. The <STRONG>-a</STRONG>, <STRONG>-d</STRONG>, and <STRONG>-p</STRONG> options
- are therefore omitted from the usage summary above.
-
- Very old systems, e.g., 3BSD, used a different terminal driver which
- was replaced in 4BSD in the early 1980s. To accommodate these older
- systems, the 4BSD <STRONG>tset</STRONG> provided a <STRONG>-n</STRONG> option to specify that the new
- terminal driver should be used. This implementation does not provide
+ 4.4BSD. None of them were documented in 4.3BSD and all are of limited
+ utility at best. The <STRONG>-a</STRONG>, <STRONG>-d</STRONG>, and <STRONG>-p</STRONG> options are similarly not
+ documented or useful, but were retained as they appear to be in
+ widespread use. It is strongly recommended that any usage of these
+ three options be changed to use the <STRONG>-m</STRONG> option instead. The <STRONG>-a</STRONG>, <STRONG>-d</STRONG>, and
+ <STRONG>-p</STRONG> options are therefore omitted from the usage summary above.
+
+ Very old systems, e.g., 3BSD, used a different terminal driver which
+ was replaced in 4BSD in the early 1980s. To accommodate these older
+ systems, the 4BSD <STRONG>tset</STRONG> provided a <STRONG>-n</STRONG> option to specify that the new
+ terminal driver should be used. This implementation does not provide
that choice.
- It is still permissible to specify the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options without
+ It is still permissible to specify the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options without
arguments, although it is strongly recommended that such usage be fixed
to explicitly specify the character.
- As of 4.4BSD, executing <STRONG>tset</STRONG> as <STRONG>reset</STRONG> no longer implies the <STRONG>-Q</STRONG> option.
+ As of 4.4BSD, executing <STRONG>tset</STRONG> as <STRONG>reset</STRONG> no longer implies the <STRONG>-Q</STRONG> option.
Also, the interaction between the - option and the <EM>terminal</EM> argument in
some historic implementations of <STRONG>tset</STRONG> has been removed.
- The <STRONG>-c</STRONG> and <STRONG>-w</STRONG> options are not found in earlier implementations. How-
- ever, a different window size-change feature was provided in 4.4BSD.
+ The <STRONG>-c</STRONG> and <STRONG>-w</STRONG> options are not found in earlier implementations.
+ However, a different window size-change feature was provided in 4.4BSD.
- <STRONG>o</STRONG> In 4.4BSD, <STRONG>tset</STRONG> uses the window size from the termcap description
- to set the window size if <STRONG>tset</STRONG> is not able to obtain the window
+ <STRONG>o</STRONG> In 4.4BSD, <STRONG>tset</STRONG> uses the window size from the termcap description
+ to set the window size if <STRONG>tset</STRONG> is not able to obtain the window
size from the operating system.
<STRONG>o</STRONG> In ncurses, <STRONG>tset</STRONG> obtains the window size using <STRONG>setupterm</STRONG>, which may
- be from the operating system, the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment
+ be from the operating system, the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment
variables or the terminal description.
- Obtaining the window size from the terminal description is common to
- both implementations, but considered obsolescent. Its only practical
+ Obtaining the window size from the terminal description is common to
+ both implementations, but considered obsolescent. Its only practical
use is for hardware terminals. Generally speaking, a window size would
- be unset only if there were some problem obtaining the value from the
- operating system (and <STRONG>setupterm</STRONG> would still fail). For that reason,
- the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment variables may be useful for working
- around window-size problems. Those have the drawback that if the win-
- dow is resized, those variables must be recomputed and reassigned. To
- do this more easily, use the <STRONG><A HREF="resize.1.html">resize(1)</A></STRONG> program.
+ be unset only if there were some problem obtaining the value from the
+ operating system (and <STRONG>setupterm</STRONG> would still fail). For that reason,
+ the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment variables may be useful for working
+ around window-size problems. Those have the drawback that if the
+ window is resized, those variables must be recomputed and reassigned.
+ To do this more easily, use the <STRONG><A HREF="resize.1.html">resize(1)</A></STRONG> program.
</PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
@@ -367,19 +366,19 @@
SHELL
tells <STRONG>tset</STRONG> whether to initialize <STRONG>TERM</STRONG> using <STRONG>sh</STRONG> or <STRONG>csh</STRONG> syntax.
- TERM Denotes your terminal type. Each terminal type is distinct,
+ TERM Denotes your terminal type. Each terminal type is distinct,
though many are similar.
TERMCAP
- may denote the location of a termcap database. If it is not an
- absolute pathname, e.g., begins with a "/", <STRONG>tset</STRONG> removes the vari-
- able from the environment before looking for the terminal descrip-
- tion.
+ may denote the location of a termcap database. If it is not an
+ absolute pathname, e.g., begins with a "/", <STRONG>tset</STRONG> removes the
+ variable from the environment before looking for the terminal
+ description.
</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
/etc/ttys
- system port name to terminal type mapping database (BSD versions
+ system port name to terminal type mapping database (BSD versions
only).
/usr/share/terminfo
@@ -387,10 +386,10 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG>csh(1)</STRONG>, <STRONG>sh(1)</STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>tty(4)</STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
+ <STRONG>csh(1)</STRONG>, <STRONG>sh(1)</STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>tty(4)</STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
<STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20211021).
diff --git a/doc/html/man/user_caps.5.html b/doc/html/man/user_caps.5.html
index 95bb74d..0fd1f15 100644
--- a/doc/html/man/user_caps.5.html
+++ b/doc/html/man/user_caps.5.html
@@ -1,6 +1,6 @@
-<!--
+<!--
****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: user_caps.5,v 1.12 2020/02/02 23:34:34 tom Exp @
+ * @Id: user_caps.5,v 1.17 2021/06/17 21:30:22 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -57,20 +57,20 @@
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
</PRE><H3><a name="h3-Background">Background</a></H3><PRE>
- Before ncurses 5.0, terminfo databases used a <EM>fixed</EM> <EM>repertoire</EM> of ter-
- minal capabilities designed for the SVr2 terminal database in 1984, and
- extended in stages through SVr4 (1989), and standardized in the Single
- Unix Specification beginning in 1995.
+ Before ncurses 5.0, terminfo databases used a <EM>fixed</EM> <EM>repertoire</EM> of
+ terminal capabilities designed for the SVr2 terminal database in 1984,
+ and extended in stages through SVr4 (1989), and standardized in the
+ Single Unix Specification beginning in 1995.
Most of the <EM>extensions</EM> in this fixed repertoire were additions to the
tables of boolean, numeric and string capabilities. Rather than change
- the meaning of an existing capability, a new name was added. The ter-
- minfo database uses a binary format; binary compatibility was ensured
- by using a header which gave the number of items in the tables for each
- type of capability. The standardization was incomplete:
+ the meaning of an existing capability, a new name was added. The
+ terminfo database uses a binary format; binary compatibility was
+ ensured by using a header which gave the number of items in the tables
+ for each type of capability. The standardization was incomplete:
- <STRONG>o</STRONG> The <EM>binary</EM> <EM>format</EM> itself is not described in the X/Open Curses doc-
- umentation. Only the <EM>source</EM> <EM>format</EM> is described.
+ <STRONG>o</STRONG> The <EM>binary</EM> <EM>format</EM> itself is not described in the X/Open Curses
+ documentation. Only the <EM>source</EM> <EM>format</EM> is described.
Library developers rely upon the SVr4 documentation, and reverse-
engineering the compiled terminfo files to match the binary format.
@@ -91,9 +91,9 @@
While ncurses' repertoire of predefined capabilities is closest to
Solaris, Solaris's terminfo database has a few differences from the
- list published by X/Open Curses. For example, ncurses can be con-
- figured with tables which match the terminal databases for AIX, HP-
- UX or OSF/1, rather than the default Solaris-like configuration.
+ list published by X/Open Curses. For example, ncurses can be
+ configured with tables which match the terminal databases for AIX,
+ HP-UX or OSF/1, rather than the default Solaris-like configuration.
<STRONG>o</STRONG> In SVr4 curses and ncurses, the terminal database is defined at
compile-time using a text file which lists the different terminal
@@ -101,9 +101,9 @@
In principle, the text-file can be extended, but doing this
requires recompiling and reinstalling the library. The text-file
- used in ncurses for terminal capabilities includes details for var-
- ious systems past the documented X/Open Curses features. For exam-
- ple, ncurses supports these capabilities in each configuration:
+ used in ncurses for terminal capabilities includes details for
+ various systems past the documented X/Open Curses features. For
+ example, ncurses supports these capabilities in each configuration:
memory_lock
(meml) lock memory above cursor
@@ -115,16 +115,16 @@
(box1) box characters primary set
The memory lock/unlock capabilities were included because they were
- used in the X11R6 terminal description for <STRONG>xterm</STRONG>. The <EM>box1</EM> capa-
- bility is used in tic to help with terminal descriptions written
- for AIX.
+ used in the X11R6 terminal description for <STRONG>xterm</STRONG>. The <EM>box1</EM>
+ capability is used in tic to help with terminal descriptions
+ written for AIX.
During the 1990s, some users were reluctant to use terminfo in spite of
its performance advantages over termcap:
- <STRONG>o</STRONG> The fixed repertoire prevented users from adding features for unan-
- ticipated terminal improvements (or required them to reuse existing
- capabilities as a workaround).
+ <STRONG>o</STRONG> The fixed repertoire prevented users from adding features for
+ unanticipated terminal improvements (or required them to reuse
+ existing capabilities as a workaround).
<STRONG>o</STRONG> The limitation to 16-bit signed integers was also mentioned.
Because termcap stores everything as a string, it could represent
@@ -132,10 +132,10 @@
Although termcap's extensibility was rarely used (it was never the
<EM>speaker</EM> who had actually used the feature), the criticism had a point.
- ncurses 5.0 provided a way to detect nonstandard capabilities, deter-
- mine their type and optionally store and retrieve them in a way which
- did not interfere with other applications. These are referred to as
- <EM>user-defined</EM> <EM>capabilities</EM> because no modifications to the toolset's
+ ncurses 5.0 provided a way to detect nonstandard capabilities,
+ determine their type and optionally store and retrieve them in a way
+ which did not interfere with other applications. These are referred to
+ as <EM>user-defined</EM> <EM>capabilities</EM> because no modifications to the toolset's
predefined capability names are needed.
The ncurses utilities <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> have a command-line option "-x"
@@ -144,8 +144,8 @@
same purpose.
When compiling a terminal database, if "-x" is set, <STRONG>tic</STRONG> will store a
- user-defined capability if the capability name is not one of the prede-
- fined names.
+ user-defined capability if the capability name is not one of the
+ predefined names.
Because ncurses provides a termcap library interface, these user-
defined capabilities may be visible to termcap applications:
@@ -153,8 +153,8 @@
<STRONG>o</STRONG> The termcap interface (like all implementations of termcap)
requires that the capability names are 2-characters.
- When the capability is simple enough for use in a termcap applica-
- tion, it is provided as a 2-character name.
+ When the capability is simple enough for use in a termcap
+ application, it is provided as a 2-character name.
<STRONG>o</STRONG> There are other user-defined capabilities which refer to features
not usable in termcap, e.g., parameterized strings that use more
@@ -163,17 +163,17 @@
only capability names with 3 or more characters.
<STRONG>o</STRONG> Some terminals can send distinct strings for special keys (cursor-,
- keypad- or function-keys) depending on modifier keys (shift, con-
- trol, etc.). While terminfo and termcap have a set of 60 prede-
- fined function-key names, to which a series of keys can be
- assigned, that is insufficient for more than a dozen keys multi-
- plied by more than a couple of modifier combinations. The ncurses
- database uses a convention based on <STRONG>xterm</STRONG> to provide extended spe-
- cial-key names.
+ keypad- or function-keys) depending on modifier keys (shift,
+ control, etc.). While terminfo and termcap have a set of 60
+ predefined function-key names, to which a series of keys can be
+ assigned, that is insufficient for more than a dozen keys
+ multiplied by more than a couple of modifier combinations. The
+ ncurses database uses a convention based on <STRONG>xterm</STRONG> to provide
+ extended special-key names.
Fitting that into termcap's limitation of 2-character names would
- be pointless. These extended keys are available only with ter-
- minfo.
+ be pointless. These extended keys are available only with
+ terminfo.
</PRE><H3><a name="h3-Recognized-capabilities">Recognized capabilities</a></H3><PRE>
@@ -228,10 +228,10 @@
i.e., one bit per color.
U8 <EM>number</EM>, asserts that ncurses must use Unicode values for line-
- drawing characters, and that it should ignore the alternate char-
- acter set capabilities when the locale uses UTF-8 encoding. For
- more information, see the discussion of <STRONG>NCURSES_NO_UTF8_ACS</STRONG> in
- <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>.
+ drawing characters, and that it should ignore the alternate
+ character set capabilities when the locale uses UTF-8 encoding.
+ For more information, see the discussion of <STRONG>NCURSES_NO_UTF8_ACS</STRONG>
+ in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>.
Set this capability to a nonzero value to enable it.
@@ -243,13 +243,13 @@
certain modes) moves the mouse, handles the characters sent back
by the terminal to tell it what was done with the mouse.
- The mouse protocol is enabled when the <EM>mask</EM> passed in the <STRONG>mouse-</STRONG>
- <STRONG>mask</STRONG> function is nonzero. By default, ncurses handles the
+ The mouse protocol is enabled when the <EM>mask</EM> passed in the
+ <STRONG>mousemask</STRONG> function is nonzero. By default, ncurses handles the
responses for the X11 xterm mouse protocol. It also knows about
the <EM>SGR</EM> <EM>1006</EM> xterm mouse protocol, but must to be told to look
for this specifically. It will not be able to guess which mode
- is used, because the responses are enough alike that only confu-
- sion would result.
+ is used, because the responses are enough alike that only
+ confusion would result.
The <STRONG>XM</STRONG> capability has a single parameter. If nonzero, the mouse
protocol should be enabled. If zero, the mouse protocol should
@@ -259,14 +259,14 @@
The xterm mouse protocol is used by other terminal emulators.
The terminal database uses building-blocks for the various xterm
- mouse protocols which can be used in customized terminal descrip-
- tions.
+ mouse protocols which can be used in customized terminal
+ descriptions.
The terminal database building blocks for this mouse feature also
have an experimental capability <EM>xm</EM>. The "xm" capability
describes the mouse response. Currently there is no interpreter
- which would use this information to make the mouse support com-
- pletely data-driven.
+ which would use this information to make the mouse support
+ completely data-driven.
<EM>xm</EM> shows the format of the mouse responses. In this experimental
capability, the parameters are
@@ -287,8 +287,8 @@
<EM>p8</EM> x-ordinate ending region
- Here are examples from the terminal database for the most com-
- monly used xterm mouse protocols:
+ Here are examples from the terminal database for the most
+ commonly used xterm mouse protocols:
xterm+x11mouse|X11 xterm mouse protocol,
kmous=\E[M, XM=\E[?1000%?%p1%{1}%=%th%el%;,
@@ -306,15 +306,15 @@
</PRE><H3><a name="h3-Extended-key-definitions">Extended key-definitions</a></H3><PRE>
- Several terminals provide the ability to send distinct strings for com-
- binations of modified special keys. There is no standard for what
+ Several terminals provide the ability to send distinct strings for
+ combinations of modified special keys. There is no standard for what
those keys can send.
Since 1999, <STRONG>xterm</STRONG> has supported <EM>shift</EM>, <EM>control</EM>, <EM>alt</EM>, and <EM>meta</EM> modifiers
which produce distinct special-key strings. In a terminal description,
ncurses has no special knowledge of the modifiers used. Applications
- can use the <EM>naming</EM> <EM>convention</EM> established for <STRONG>xterm</STRONG> to find these spe-
- cial keys in the terminal description.
+ can use the <EM>naming</EM> <EM>convention</EM> established for <STRONG>xterm</STRONG> to find these
+ special keys in the terminal description.
Starting with the curses convention that <EM>key</EM> <EM>names</EM> begin with "k" and
that shifted special keys are an uppercase name, ncurses' terminal
@@ -356,21 +356,29 @@
which ncurses will allocate at runtime to <EM>key-codes</EM>. To use these keys
in an ncurses program, an application could do this:
- <STRONG>o</STRONG> using a list of extended key <EM>names</EM>, ask <STRONG><A HREF="curs_terminfo.3x.html">tigetstr(3x)</A></STRONG> for their val-
- ues, and
+ <STRONG>o</STRONG> using a list of extended key <EM>names</EM>, ask <STRONG><A HREF="curs_terminfo.3x.html">tigetstr(3x)</A></STRONG> for their
+ values, and
<STRONG>o</STRONG> given the list of values, ask <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG> for the <EM>key-code</EM>
which would be returned for those keys by <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG>.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- The "-x" extension feature of <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> has been adopted in Net-
- BSD curses. That implementation stores user-defined capabilities, but
- makes no use of these capabilities itself.
+ The "-x" extension feature of <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> has been adopted in
+ NetBSD curses. That implementation stores user-defined capabilities,
+ but makes no use of these capabilities itself.
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>.
+ <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>.
+
+ The terminal database section <EM>NCURSES</EM> <EM>USER-DEFINABLE</EM> <EM>CAPABILITIES</EM>
+ summarizes commonly-used user-defined capabilities which are used in
+ the terminal descriptions. Some of those features are mentioned in
+ <STRONG>screen(1)</STRONG> or <STRONG>tmux(1)</STRONG>.
+
+ <EM>XTerm</EM> <EM>Control</EM> <EM>Sequences</EM> provides further information on the <STRONG>xterm</STRONG>
+ features which are used in these extended capabilities.
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
diff --git a/doc/html/man/wresize.3x.html b/doc/html/man/wresize.3x.html
index 01b9d77..d02a0a4 100644
--- a/doc/html/man/wresize.3x.html
+++ b/doc/html/man/wresize.3x.html
@@ -1,4 +1,4 @@
-<!--
+<!--
****************************************************************************
* Copyright 2018,2020 Thomas E. Dickey *
* Copyright 1998-2010,2015 Free Software Foundation, Inc. *
@@ -28,7 +28,7 @@
* authorization. *
****************************************************************************
* Author: Thomas E. Dickey 1996
- * @Id: wresize.3x,v 1.16 2020/02/02 23:34:34 tom Exp @
+ * @Id: wresize.3x,v 1.17 2020/10/17 23:56:38 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@@ -54,7 +54,7 @@
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
- <STRONG>int</STRONG> <STRONG>wresize(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>lines,</STRONG> <STRONG>int</STRONG> <STRONG>columns);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wresize(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
diff --git a/form/Makefile.in b/form/Makefile.in
index 3e5be8d..a950a3e 100644
--- a/form/Makefile.in
+++ b/form/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.65 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.72 2021/07/03 15:45:33 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -90,16 +90,18 @@ ETAGS = @ETAGS@
CC = @CC@
CPP = @CPP@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
-CPPFLAGS = -I${top_srcdir}/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
+INCDIR = $(top_srcdir)/include
+BASE_DIR = $(top_srcdir)/ncurses
+CPPFLAGS = -I$(BASE_DIR) -DHAVE_CONFIG_H -DBUILDING_FORM @CPPFLAGS@
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
CFLAGS_LIBTOOL = $(CCFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -132,6 +134,19 @@ AUTO_SRC = \
../include/form.h
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
libs \
install :: $(AUTO_SRC) $(LIBRARIES)
@@ -149,11 +164,24 @@ $(DESTDIR)$(libdir) :
cp $(srcdir)/form.h $@
HEADER_DEPS = \
- $(srcdir)/form.priv.h \
- $(srcdir)/form.h \
- ../include/mf_common.h \
../include/curses.h \
- ../include/eti.h
+ ../include/eti.h \
+ ../include/mf_common.h \
+ ../include/ncurses_cfg.h \
+ ../include/ncurses_def.h \
+ ../include/ncurses_dll.h \
+ ../include/term.h \
+ ../include/unctrl.h \
+ $(BASE_DIR)/curses.priv.h \
+ $(BASE_DIR)/new_pair.h \
+ $(INCDIR)/nc_alloc.h \
+ $(INCDIR)/nc_panel.h \
+ $(INCDIR)/nc_string.h \
+ $(INCDIR)/nc_termios.h \
+ $(INCDIR)/nc_tparm.h \
+ $(INCDIR)/term_entry.h \
+ $(srcdir)/form.h \
+ $(srcdir)/form.priv.h
tags:
$(CTAGS) *.[ch]
@@ -175,7 +203,7 @@ realclean :: distclean
../include/mf_common.h \
../include/eti.h :
- cd ../menu && $(MAKE) $@
+ ( cd ../menu && $(MAKE) $@ )
###############################################################################
# The remainder of this file is automatically generated during configuration
diff --git a/form/READ.ME b/form/READ.ME
index 0cefd57..7c6ad97 100644
--- a/form/READ.ME
+++ b/form/READ.ME
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-2003,2006 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,18 +26,18 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: READ.ME,v 0.8 2020/02/02 23:34:34 tom Exp $
+-- $Id: READ.ME,v 0.9 2021/06/17 21:20:30 tom Exp $
-------------------------------------------------------------------------------
This is a clone of the form library that is available with typical
System V curses implementations (ETI).
It is modelled after the documentation that comes for this library with
-a 386 based SVR4 implementation (ESIX).
+a 386 based SVR4 implementation (ESIX).
The development environment was and is an ELF based Linux system.
-For things that still need doing, see the TO-DO file in the top-level
+For things that still need doing, see the TO-DO file in the top-level
directory.
Juergen Pfeifer
diff --git a/form/f_trace.c b/form/f_trace.c
index d24708c..c8df81a 100644
--- a/form/f_trace.c
+++ b/form/f_trace.c
@@ -33,37 +33,37 @@
#include "form.priv.h"
-MODULE_ID("$Id: f_trace.c,v 1.5 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: f_trace.c,v 1.6 2020/05/24 01:40:20 anonymous.maarten Exp $")
-NCURSES_EXPORT(FIELD **)
+FORM_EXPORT(FIELD **)
_nc_retrace_field_ptr(FIELD **code)
{
T((T_RETURN("%p"), (void *)code));
return code;
}
-NCURSES_EXPORT(FIELD *)
+FORM_EXPORT(FIELD *)
_nc_retrace_field(FIELD *code)
{
T((T_RETURN("%p"), (void *)code));
return code;
}
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_retrace_field_type(FIELDTYPE *code)
{
T((T_RETURN("%p"), (void *)code));
return code;
}
-NCURSES_EXPORT(FORM *)
+FORM_EXPORT(FORM *)
_nc_retrace_form(FORM *code)
{
T((T_RETURN("%p"), (void *)code));
return code;
}
-NCURSES_EXPORT(Form_Hook)
+FORM_EXPORT(Form_Hook)
_nc_retrace_form_hook(Form_Hook code)
{
TR_FUNC_BFR(1);
diff --git a/form/fld_arg.c b/form/fld_arg.c
index e7555f6..2f6c477 100644
--- a/form/fld_arg.c
+++ b/form/fld_arg.c
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_arg.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_arg.c,v 1.18 2020/12/11 22:05:24 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnform
@@ -61,7 +61,7 @@ MODULE_ID("$Id: fld_arg.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid argument
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_fieldtype_arg(FIELDTYPE *typ,
void *(*const make_arg)(va_list *),
void *(*const copy_arg)(const void *),
@@ -90,11 +90,11 @@ set_fieldtype_arg(FIELDTYPE *typ,
| Facility : libnform
| Function : void *field_arg(const FIELD *field)
|
-| Description : Retrieve pointer to the fields argument structure.
+| Description : Retrieve pointer to the field's argument structure.
|
| Return Values : Pointer to structure or NULL if none is defined.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void *)
+FORM_EXPORT(void *)
field_arg(const FIELD *field)
{
T((T_CALLED("field_arg(%p)"), (const void *)field));
diff --git a/form/fld_attr.c b/form/fld_attr.c
index 50e2c73..4ce6b1c 100644
--- a/form/fld_attr.c
+++ b/form/fld_attr.c
@@ -33,14 +33,14 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_attr.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_attr.c,v 1.15 2020/12/11 22:05:24 tom Exp $")
/*----------------------------------------------------------------------------
Field-Attribute manipulation routines
--------------------------------------------------------------------------*/
-/* "Template" macro to generate a function to set a fields attribute */
+/* "Template" macro to generate a function to set a field's attribute */
#define GEN_FIELD_ATTR_SET_FCT( name ) \
-NCURSES_IMPEXP int NCURSES_API set_field_ ## name (FIELD * field, chtype attr)\
+FORM_IMPEXP int NCURSES_API set_field_ ## name (FIELD * field, chtype attr)\
{\
int res = E_BAD_ARGUMENT;\
T((T_CALLED("set_field_" #name "(%p,%s)"), (void *)field, _traceattr(attr)));\
@@ -63,9 +63,9 @@ NCURSES_IMPEXP int NCURSES_API set_field_ ## name (FIELD * field, chtype attr)\
RETURN(res);\
}
-/* "Template" macro to generate a function to get a fields attribute */
+/* "Template" macro to generate a function to get a field's attribute */
#define GEN_FIELD_ATTR_GET_FCT( name ) \
-NCURSES_IMPEXP chtype NCURSES_API field_ ## name (const FIELD * field)\
+FORM_IMPEXP chtype NCURSES_API field_ ## name (const FIELD * field)\
{\
T((T_CALLED("field_" #name "(%p)"), (const void *) field));\
returnAttr( A_ATTRIBUTES & (Normalize_Field( field ) -> name) );\
@@ -88,7 +88,7 @@ GEN_FIELD_ATTR_SET_FCT(fore)
| Facility : libnform
| Function : chtype field_fore(const FIELD *)
|
-| Description : Retrieve fields foreground attribute
+| Description : Retrieve field's foreground attribute
|
| Return Values : The foreground attribute
+--------------------------------------------------------------------------*/
@@ -99,7 +99,7 @@ GEN_FIELD_ATTR_GET_FCT(fore)
| Function : int set_field_back(FIELD *field, chtype attr)
|
| Description : Sets the background of the field used to display the
-| fields extend.
+| field's extend.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid attributes
@@ -111,7 +111,7 @@ GEN_FIELD_ATTR_SET_FCT(back)
| Facility : libnform
| Function : chtype field_back(const
|
-| Description : Retrieve fields background attribute
+| Description : Retrieve field's background attribute
|
| Return Values : The background attribute
+--------------------------------------------------------------------------*/
diff --git a/form/fld_current.c b/form/fld_current.c
index 75e68ed..264007e 100644
--- a/form/fld_current.c
+++ b/form/fld_current.c
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_current.c,v 1.15 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_current.c,v 1.16 2020/05/24 01:40:20 anonymous.maarten Exp $")
/*---------------------------------------------------------------------------
| Facility : libnform
@@ -48,7 +48,7 @@ MODULE_ID("$Id: fld_current.c,v 1.15 2020/02/02 23:34:34 tom Exp $")
| E_INVALID_FIELD - current field can't be left
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_current_field(FORM *form, FIELD *field)
{
int err = E_OK;
@@ -113,7 +113,7 @@ set_current_field(FORM *form, FIELD *field)
| E_BAD_ARGUMENT - invalid form pointer
| E_REQUEST_DENIED - there is no current field to unfocus
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
unfocus_current_field(FORM *const form)
{
T((T_CALLED("unfocus_current_field(%p)"), (const void *)form));
@@ -137,7 +137,7 @@ unfocus_current_field(FORM *const form)
|
| Return Values : Pointer to the current field.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELD *)
+FORM_EXPORT(FIELD *)
current_field(const FORM *form)
{
T((T_CALLED("current_field(%p)"), (const void *)form));
@@ -154,7 +154,7 @@ current_field(const FORM *form)
| Return Values : >= 0 : field index
| -1 : fieldpointer invalid or field not connected
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
field_index(const FIELD *field)
{
T((T_CALLED("field_index(%p)"), (const void *)field));
diff --git a/form/fld_def.c b/form/fld_def.c
index e529b3c..51bdc64 100644
--- a/form/fld_def.c
+++ b/form/fld_def.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_def.c,v 1.42 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_def.c,v 1.44 2021/03/27 23:49:53 tom Exp $")
/* this can't be readonly */
static FIELD default_field =
@@ -66,7 +66,7 @@ static FIELD default_field =
NCURSES_FIELD_EXTENSION
};
-NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field;
+FORM_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field;
/*---------------------------------------------------------------------------
| Facility : libnform
@@ -82,18 +82,17 @@ NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field;
| Return Values : Pointer to argument structure. Maybe NULL.
| In case of an error in *err an error counter is increased.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(TypeArgument *)
+FORM_EXPORT(TypeArgument *)
_nc_Make_Argument(const FIELDTYPE *typ, va_list *ap, int *err)
{
TypeArgument *res = (TypeArgument *)0;
- TypeArgument *p;
if (typ != 0 && (typ->status & _HAS_ARGS) != 0)
{
assert(err != 0 && ap != (va_list *)0);
if ((typ->status & _LINKED_TYPE) != 0)
{
- p = typeMalloc(TypeArgument, 1);
+ TypeArgument *p = typeMalloc(TypeArgument, 1);
if (p != 0)
{
@@ -130,18 +129,17 @@ _nc_Make_Argument(const FIELDTYPE *typ, va_list *ap, int *err)
| Return Values : Pointer to argument structure. Maybe NULL.
| In case of an error in *err an error counter is increased.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(TypeArgument *)
+FORM_EXPORT(TypeArgument *)
_nc_Copy_Argument(const FIELDTYPE *typ, const TypeArgument *argp, int *err)
{
TypeArgument *res = (TypeArgument *)0;
- TypeArgument *p;
if (typ != 0 && (typ->status & _HAS_ARGS) != 0)
{
assert(err != 0 && argp != 0);
if ((typ->status & _LINKED_TYPE) != 0)
{
- p = typeMalloc(TypeArgument, 1);
+ TypeArgument *p = typeMalloc(TypeArgument, 1);
if (p != 0)
{
@@ -179,7 +177,7 @@ _nc_Copy_Argument(const FIELDTYPE *typ, const TypeArgument *argp, int *err)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
+FORM_EXPORT(void)
_nc_Free_Argument(const FIELDTYPE *typ, TypeArgument *argp)
{
if (typ != 0 && (typ->status & _HAS_ARGS) != 0)
@@ -212,7 +210,7 @@ _nc_Free_Argument(const FIELDTYPE *typ, TypeArgument *argp)
| Return Values : TRUE - copy worked
| FALSE - error occurred
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
+FORM_EXPORT(bool)
_nc_Copy_Type(FIELD *dst, FIELD const *src)
{
int err = 0;
@@ -247,7 +245,7 @@ _nc_Copy_Type(FIELD *dst, FIELD const *src)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
+FORM_EXPORT(void)
_nc_Free_Type(FIELD *field)
{
assert(field != 0);
@@ -274,7 +272,7 @@ _nc_Free_Type(FIELD *field)
|
| Return Values : Pointer to the new field or NULL if failure.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELD *)
+FORM_EXPORT(FIELD *)
new_field(int rows, int cols, int frow, int fcol, int nrow, int nbuf)
{
static const FIELD_CELL blank = BLANK;
@@ -354,7 +352,7 @@ new_field(int rows, int cols, int frow, int fcol, int nrow, int nbuf)
| E_BAD_ARGUMENT - invalid field pointer
| E_CONNECTED - field is connected
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
free_field(FIELD *field)
{
T((T_CALLED("free_field(%p)"), (void *)field));
diff --git a/form/fld_dup.c b/form/fld_dup.c
index 9859a09..e195df9 100644
--- a/form/fld_dup.c
+++ b/form/fld_dup.c
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_dup.c,v 1.15 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_dup.c,v 1.18 2020/05/24 01:40:20 anonymous.maarten Exp $")
/*---------------------------------------------------------------------------
| Facility : libnform
@@ -48,7 +48,7 @@ MODULE_ID("$Id: fld_dup.c,v 1.15 2020/02/02 23:34:34 tom Exp $")
|
| Return Values : Pointer to the new field or NULL if failure
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELD *)
+FORM_EXPORT(FIELD *)
dup_field(FIELD *field, int frow, int fcol)
{
FIELD *New_Field = (FIELD *)0;
@@ -61,8 +61,8 @@ dup_field(FIELD *field, int frow, int fcol)
{
T((T_CREATE("field %p"), (void *)New_Field));
*New_Field = *_nc_Default_Field;
- New_Field->frow = (short) frow;
- New_Field->fcol = (short) fcol;
+ New_Field->frow = (short)frow;
+ New_Field->fcol = (short)fcol;
New_Field->link = New_Field;
New_Field->rows = field->rows;
New_Field->cols = field->cols;
@@ -80,13 +80,12 @@ dup_field(FIELD *field, int frow, int fcol)
if (_nc_Copy_Type(New_Field, field))
{
- size_t i, len;
+ size_t len;
len = Total_Buffer_Size(New_Field);
- if ((New_Field->buf = (FIELD_CELL *)malloc(len)))
+ if ((New_Field->buf = (FIELD_CELL *)malloc(len * 20)))
{
- for (i = 0; i < len; ++i)
- New_Field->buf[i] = field->buf[i];
+ memcpy(New_Field->buf, field->buf, len);
returnField(New_Field);
}
}
diff --git a/form/fld_ftchoice.c b/form/fld_ftchoice.c
index 5dc5f4a..dfaca14 100644
--- a/form/fld_ftchoice.c
+++ b/form/fld_ftchoice.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,10 +33,10 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_ftchoice.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_ftchoice.c,v 1.18 2021/06/17 21:26:02 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_fieldtype_choice(
| FIELDTYPE *typ,
| bool (* const next_choice)(FIELD *,const void *),
@@ -47,7 +47,7 @@ MODULE_ID("$Id: fld_ftchoice.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid arguments
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_fieldtype_choice(FIELDTYPE *typ,
bool (*const next_choice) (FIELD *, const void *),
bool (*const prev_choice) (FIELD *, const void *))
diff --git a/form/fld_ftlink.c b/form/fld_ftlink.c
index afa488b..ed16920 100644
--- a/form/fld_ftlink.c
+++ b/form/fld_ftlink.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,23 +33,23 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_ftlink.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_ftlink.c,v 1.18 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : FIELDTYPE *link_fieldtype(
| FIELDTYPE *type1,
| FIELDTYPE *type2)
-|
+|
| Description : Create a new fieldtype built from the two given types.
| They are connected by an logical 'OR'.
-| If an error occurs, errno is set to
+| If an error occurs, errno is set to
| E_BAD_ARGUMENT - invalid arguments
| E_SYSTEM_ERROR - system error (no memory)
|
| Return Values : Fieldtype pointer or NULL if error occurred.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
link_fieldtype(FIELDTYPE *type1, FIELDTYPE *type2)
{
FIELDTYPE *nftyp = (FIELDTYPE *)0;
diff --git a/form/fld_info.c b/form/fld_info.c
index 9963b5b..bc8399d 100644
--- a/form/fld_info.c
+++ b/form/fld_info.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,21 +33,21 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_info.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_info.c,v 1.16 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int field_info(const FIELD *field,
| int *rows, int *cols,
| int *frow, int *fcol,
| int *nrow, int *nbuf)
-|
-| Description : Retrieve infos about the fields creation parameters.
+|
+| Description : Retrieve information about the field's creation parameters.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid field pointer
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
field_info(const FIELD *field,
int *rows, int *cols,
int *frow, int *fcol,
@@ -78,18 +78,18 @@ field_info(const FIELD *field,
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int dynamic_field_info(const FIELD *field,
| int *drows, int *dcols,
| int *maxgrow)
-|
-| Description : Retrieve informations about a dynamic fields current
+|
+| Description : Retrieve information about a dynamic field's current
| dynamic parameters.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid argument
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
dynamic_field_info(const FIELD *field, int *drows, int *dcols, int *maxgrow)
{
T((T_CALLED("dynamic_field_info(%p,%p,%p,%p)"),
diff --git a/form/fld_just.c b/form/fld_just.c
index 8097019..62253bc 100644
--- a/form/fld_just.c
+++ b/form/fld_just.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,19 +33,19 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_just.c,v 1.14 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_just.c,v 1.17 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_field_just(FIELD *field, int just)
-|
-| Description : Set the fields type of justification.
+|
+| Description : Set the field's type of justification.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - one of the arguments was incorrect
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_field_just(FIELD *field, int just)
{
int res = E_BAD_ARGUMENT;
@@ -60,7 +60,7 @@ set_field_just(FIELD *field, int just)
Normalize_Field(field);
if (field->just != just)
{
- field->just = (short) just;
+ field->just = (short)just;
res = _nc_Synchronize_Attributes(field);
}
else
@@ -70,14 +70,14 @@ set_field_just(FIELD *field, int just)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int field_just( const FIELD *field )
-|
-| Description : Retrieve the fields type of justification
+|
+| Description : Retrieve the field's type of justification
|
| Return Values : The justification type.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
field_just(const FIELD *field)
{
T((T_CALLED("field_just(%p)"), (const void *)field));
diff --git a/form/fld_link.c b/form/fld_link.c
index cb67ac0..c060458 100644
--- a/form/fld_link.c
+++ b/form/fld_link.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,23 +33,23 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_link.c,v 1.14 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_link.c,v 1.17 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
-| Function : FIELD *link_field(FIELD *field, int frow, int fcol)
-|
+| Facility : libnform
+| Function : FIELD *link_field(FIELD *field, int frow, int fcol)
+|
| Description : Duplicates the field at the specified position. The
| new field shares its buffers with the original one,
| the attributes are independent.
| If an error occurs, errno is set to
-|
+|
| E_BAD_ARGUMENT - invalid argument
| E_SYSTEM_ERROR - system error
|
| Return Values : Pointer to the new field or NULL if failure
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELD *)
+FORM_EXPORT(FIELD *)
link_field(FIELD *field, int frow, int fcol)
{
FIELD *New_Field = (FIELD *)0;
@@ -62,8 +62,8 @@ link_field(FIELD *field, int frow, int fcol)
{
T((T_CREATE("field %p"), (void *)New_Field));
*New_Field = *_nc_Default_Field;
- New_Field->frow = (short) frow;
- New_Field->fcol = (short) fcol;
+ New_Field->frow = (short)frow;
+ New_Field->fcol = (short)fcol;
New_Field->link = field->link;
field->link = New_Field;
diff --git a/form/fld_max.c b/form/fld_max.c
index 7d0e146..325541a 100644
--- a/form/fld_max.c
+++ b/form/fld_max.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2013 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,19 +33,19 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_max.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_max.c,v 1.18 2021/06/17 21:26:02 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_max_field(FIELD *field, int maxgrow)
-|
+|
| Description : Set the maximum growth for a dynamic field. If maxgrow=0
| the field may grow to any possible size.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid argument
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_max_field(FIELD *field, int maxgrow)
{
T((T_CALLED("set_max_field(%p,%d)"), (void *)field, maxgrow));
diff --git a/form/fld_move.c b/form/fld_move.c
index 0d6692f..0d9ac4a 100644
--- a/form/fld_move.c
+++ b/form/fld_move.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,20 +33,20 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_move.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_move.c,v 1.16 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int move_field(FIELD *field,int frow, int fcol)
-|
+|
| Description : Moves the disconnected field to the new location in
-| the forms subwindow.
+| the form's subwindow.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid argument passed
| E_CONNECTED - field is connected
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
move_field(FIELD *field, int frow, int fcol)
{
T((T_CALLED("move_field(%p,%d,%d)"), (void *)field, frow, fcol));
@@ -57,8 +57,8 @@ move_field(FIELD *field, int frow, int fcol)
if (field->form)
RETURN(E_CONNECTED);
- field->frow = (short) frow;
- field->fcol = (short) fcol;
+ field->frow = (short)frow;
+ field->fcol = (short)fcol;
RETURN(E_OK);
}
diff --git a/form/fld_newftyp.c b/form/fld_newftyp.c
index 18a7c07..c5848d5 100644
--- a/form/fld_newftyp.c
+++ b/form/fld_newftyp.c
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_newftyp.c,v 1.22 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_newftyp.c,v 1.23 2020/05/24 01:40:20 anonymous.maarten Exp $")
static FIELDTYPE default_fieldtype =
{
@@ -53,7 +53,7 @@ static FIELDTYPE default_fieldtype =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE *)
+FORM_EXPORT_VAR(FIELDTYPE *)
_nc_Default_FieldType = &default_fieldtype;
/*---------------------------------------------------------------------------
@@ -71,7 +71,7 @@ NCURSES_EXPORT_VAR(FIELDTYPE *)
|
| Return Values : Fieldtype pointer or NULL if error occurred
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
new_fieldtype(bool (*const field_check) (FIELD *, const void *),
bool (*const char_check) (int, const void *))
{
@@ -121,7 +121,7 @@ new_fieldtype(bool (*const field_check) (FIELD *, const void *),
| E_CONNECTED - there are fields referencing the type
| E_BAD_ARGUMENT - invalid fieldtype pointer
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
free_fieldtype(FIELDTYPE *typ)
{
T((T_CALLED("free_fieldtype(%p)"), (void *)typ));
diff --git a/form/fld_opts.c b/form/fld_opts.c
index fee5804..ab4d559 100644
--- a/form/fld_opts.c
+++ b/form/fld_opts.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,16 +33,16 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_opts.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_opts.c,v 1.16 2021/06/17 21:20:30 tom Exp $")
/*----------------------------------------------------------------------------
Field-Options manipulation routines
--------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_field_opts(FIELD *field, Field_Options opts)
-|
+|
| Description : Turns on the named options for this field and turns
| off all the remaining options.
|
@@ -51,7 +51,7 @@ MODULE_ID("$Id: fld_opts.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
| E_BAD_ARGUMENT - invalid options
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_field_opts(FIELD *field, Field_Options opts)
{
int res = E_BAD_ARGUMENT;
@@ -65,14 +65,14 @@ set_field_opts(FIELD *field, Field_Options opts)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : Field_Options field_opts(const FIELD *field)
-|
-| Description : Retrieve the fields options.
+|
+| Description : Retrieve the field's options.
|
| Return Values : The options.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(Field_Options)
+FORM_EXPORT(Field_Options)
field_opts(const FIELD *field)
{
T((T_CALLED("field_opts(%p)"), (const void *)field));
@@ -81,10 +81,10 @@ field_opts(const FIELD *field)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int field_opts_on(FIELD *field, Field_Options opts)
-|
-| Description : Turns on the named options for this field and all the
+|
+| Description : Turns on the named options for this field and all the
| remaining options are unchanged.
|
| Return Values : E_OK - success
@@ -92,7 +92,7 @@ field_opts(const FIELD *field)
| E_BAD_ARGUMENT - invalid options
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
field_opts_on(FIELD *field, Field_Options opts)
{
int res = E_BAD_ARGUMENT;
@@ -109,10 +109,10 @@ field_opts_on(FIELD *field, Field_Options opts)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int field_opts_off(FIELD *field, Field_Options opts)
-|
-| Description : Turns off the named options for this field and all the
+|
+| Description : Turns off the named options for this field and all the
| remaining options are unchanged.
|
| Return Values : E_OK - success
@@ -120,7 +120,7 @@ field_opts_on(FIELD *field, Field_Options opts)
| E_BAD_ARGUMENT - invalid options
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
field_opts_off(FIELD *field, Field_Options opts)
{
int res = E_BAD_ARGUMENT;
diff --git a/form/fld_pad.c b/form/fld_pad.c
index b6d59e2..fdd803f 100644
--- a/form/fld_pad.c
+++ b/form/fld_pad.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,12 +33,12 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_pad.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_pad.c,v 1.14 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_field_pad(FIELD *field, int ch)
-|
+|
| Description : Set the pad character used to fill the field. This must
| be a printable character.
|
@@ -46,7 +46,7 @@ MODULE_ID("$Id: fld_pad.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
| E_BAD_ARGUMENT - invalid field pointer or pad character
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_field_pad(FIELD *field, int ch)
{
int res = E_BAD_ARGUMENT;
@@ -68,14 +68,14 @@ set_field_pad(FIELD *field, int ch)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int field_pad(const FIELD *field)
-|
-| Description : Retrieve the fields pad character.
+|
+| Description : Retrieve the field's pad character.
|
| Return Values : The pad character.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
field_pad(const FIELD *field)
{
T((T_CALLED("field_pad(%p)"), (const void *)field));
diff --git a/form/fld_page.c b/form/fld_page.c
index c6fb37c..6972d31 100644
--- a/form/fld_page.c
+++ b/form/fld_page.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,19 +33,19 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_page.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_page.c,v 1.16 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_new_page(FIELD *field, bool new_page_flag)
-|
-| Description : Marks the field as the beginning of a new page of
+|
+| Description : Marks the field as the beginning of a new page of
| the form.
|
| Return Values : E_OK - success
| E_CONNECTED - field is connected
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_new_page(FIELD *field, bool new_page_flag)
{
T((T_CALLED("set_new_page(%p,%d)"), (void *)field, new_page_flag));
@@ -63,16 +63,16 @@ set_new_page(FIELD *field, bool new_page_flag)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : bool new_page(const FIELD *field)
-|
-| Description : Retrieve the info whether or not the field starts a
-| new page on the form.
+|
+| Description : Retrieve the information whether or not the field starts
+| a new page on the form.
|
| Return Values : TRUE - field starts a new page
| FALSE - field doesn't start a new page
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
+FORM_EXPORT(bool)
new_page(const FIELD *field)
{
T((T_CALLED("new_page(%p)"), (const void *)field));
diff --git a/form/fld_stat.c b/form/fld_stat.c
index 487a21d..62d782e 100644
--- a/form/fld_stat.c
+++ b/form/fld_stat.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,18 +33,18 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_stat.c,v 1.15 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_stat.c,v 1.18 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_field_status(FIELD *field, bool status)
-|
+|
| Description : Set or clear the 'changed' indication flag for that
-| fields primary buffer.
+| field's primary buffer.
|
| Return Values : E_OK - success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_field_status(FIELD *field, bool status)
{
T((T_CALLED("set_field_status(%p,%d)"), (void *)field, status));
@@ -60,16 +60,16 @@ set_field_status(FIELD *field, bool status)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : bool field_status(const FIELD *field)
-|
+|
| Description : Retrieve the value of the 'changed' indication flag
-| for that fields primary buffer.
+| for that field's primary buffer.
|
| Return Values : TRUE - buffer has been changed
| FALSE - buffer has not been changed
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
+FORM_EXPORT(bool)
field_status(const FIELD *field)
{
T((T_CALLED("field_status(%p)"), (const void *)field));
diff --git a/form/fld_type.c b/form/fld_type.c
index a445fa4..c557e05 100644
--- a/form/fld_type.c
+++ b/form/fld_type.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,12 +33,12 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_type.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_type.c,v 1.20 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_field_type(FIELD *field, FIELDTYPE *type,...)
-|
+|
| Description : Associate the specified fieldtype with the field.
| Certain field types take additional arguments. Look
| at the spec of the field types !
@@ -46,8 +46,8 @@ MODULE_ID("$Id: fld_type.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
| Return Values : E_OK - success
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_field_type(FIELD *field, FIELDTYPE *type,...)
+FORM_EXPORT(int)
+set_field_type(FIELD *field, FIELDTYPE *type, ...)
{
va_list ap;
int res = E_SYSTEM_ERROR;
@@ -81,14 +81,14 @@ set_field_type(FIELD *field, FIELDTYPE *type,...)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : FIELDTYPE *field_type(const FIELD *field)
-|
+|
| Description : Retrieve the associated fieldtype for this field.
|
| Return Values : Pointer to fieldtype of NULL if none is defined.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
field_type(const FIELD *field)
{
T((T_CALLED("field_type(%p)"), (const void *)field));
diff --git a/form/fld_user.c b/form/fld_user.c
index 5cd165c..1b13e62 100644
--- a/form/fld_user.c
+++ b/form/fld_user.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,18 +33,18 @@
#include "form.priv.h"
-MODULE_ID("$Id: fld_user.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fld_user.c,v 1.20 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_field_userptr(FIELD *field, void *usrptr)
-|
+|
| Description : Set the pointer that is reserved in any field to store
-| application relevant informations
+| application relevant information.
|
| Return Values : E_OK - on success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_field_userptr(FIELD *field, void *usrptr)
{
T((T_CALLED("set_field_userptr(%p,%p)"), (void *)field, (void *)usrptr));
@@ -54,16 +54,16 @@ set_field_userptr(FIELD *field, void *usrptr)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : void *field_userptr(const FIELD *field)
-|
+|
| Description : Return the pointer that is reserved in any field to
-| store application relevant informations.
+| store application relevant information.
|
| Return Values : Value of pointer. If no such pointer has been set,
| NULL is returned
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void *)
+FORM_EXPORT(void *)
field_userptr(const FIELD *field)
{
T((T_CALLED("field_userptr(%p)"), (const void *)field));
diff --git a/form/form.h b/form/form.h
index dabe676..3b62e39 100644
--- a/form/form.h
+++ b/form/form.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -31,7 +31,7 @@
* Author: Juergen Pfeifer, 1995,1997 *
****************************************************************************/
-/* $Id: form.h,v 0.30 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: form.h,v 0.32 2021/06/17 21:26:02 tom Exp $ */
#ifndef FORM_H
#define FORM_H
@@ -44,6 +44,17 @@
extern "C" {
#endif
+#if defined(BUILDING_FORM)
+# define FORM_IMPEXP NCURSES_EXPORT_GENERAL_EXPORT
+#else
+# define FORM_IMPEXP NCURSES_EXPORT_GENERAL_IMPORT
+#endif
+
+#define FORM_WRAPPED_VAR(type,name) extern FORM_IMPEXP type NCURSES_PUBLIC_VAR(name)(void)
+
+#define FORM_EXPORT(type) FORM_IMPEXP type NCURSES_API
+#define FORM_EXPORT_VAR(type) FORM_IMPEXP type
+
#ifndef FORM_PRIV_H
typedef void *FIELD_CELL;
#endif
@@ -105,7 +116,7 @@ typedef struct fieldnode
/*
* The wide-character configuration requires extra information. Because
* there are existing applications that manipulate the members of FIELD
- * directly, we cannot make the struct opaque, except by changing the ABI.
+ * directly, we cannot make the struct opaque, except by changing the ABI.
* Offsets of members up to this point are the same in the narrow- and
* wide-character configuration. But note that the type of buf depends on
* the configuration, and is made opaque for that reason.
@@ -309,136 +320,136 @@ typedef void (*Form_Hook)(FORM *);
/*************************
* standard field types *
*************************/
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALPHA;
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALNUM;
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ENUM;
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_INTEGER;
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_NUMERIC;
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_REGEXP;
+extern FORM_EXPORT_VAR(FIELDTYPE *) TYPE_ALPHA;
+extern FORM_EXPORT_VAR(FIELDTYPE *) TYPE_ALNUM;
+extern FORM_EXPORT_VAR(FIELDTYPE *) TYPE_ENUM;
+extern FORM_EXPORT_VAR(FIELDTYPE *) TYPE_INTEGER;
+extern FORM_EXPORT_VAR(FIELDTYPE *) TYPE_NUMERIC;
+extern FORM_EXPORT_VAR(FIELDTYPE *) TYPE_REGEXP;
/************************************
* built-in additional field types *
* They are not defined in SVr4 *
************************************/
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_IPV4; /* Internet IP Version 4 address */
+extern FORM_EXPORT_VAR(FIELDTYPE *) TYPE_IPV4; /* Internet IP Version 4 address */
/***********************
* FIELDTYPE routines *
***********************/
-extern NCURSES_EXPORT(FIELDTYPE *) new_fieldtype (
+extern FORM_EXPORT(FIELDTYPE *) new_fieldtype (
bool (* const field_check)(FIELD *,const void *),
bool (* const char_check)(int,const void *));
-extern NCURSES_EXPORT(FIELDTYPE *) link_fieldtype(
+extern FORM_EXPORT(FIELDTYPE *) link_fieldtype(
FIELDTYPE *, FIELDTYPE *);
-extern NCURSES_EXPORT(int) free_fieldtype (FIELDTYPE *);
-extern NCURSES_EXPORT(int) set_fieldtype_arg (FIELDTYPE *,
+extern FORM_EXPORT(int) free_fieldtype (FIELDTYPE *);
+extern FORM_EXPORT(int) set_fieldtype_arg (FIELDTYPE *,
void * (* const make_arg)(va_list *),
void * (* const copy_arg)(const void *),
void (* const free_arg)(void *));
-extern NCURSES_EXPORT(int) set_fieldtype_choice (FIELDTYPE *,
+extern FORM_EXPORT(int) set_fieldtype_choice (FIELDTYPE *,
bool (* const next_choice)(FIELD *,const void *),
bool (* const prev_choice)(FIELD *,const void *));
/*******************
* FIELD routines *
*******************/
-extern NCURSES_EXPORT(FIELD *) new_field (int,int,int,int,int,int);
-extern NCURSES_EXPORT(FIELD *) dup_field (FIELD *,int,int);
-extern NCURSES_EXPORT(FIELD *) link_field (FIELD *,int,int);
-
-extern NCURSES_EXPORT(int) free_field (FIELD *);
-extern NCURSES_EXPORT(int) field_info (const FIELD *,int *,int *,int *,int *,int *,int *);
-extern NCURSES_EXPORT(int) dynamic_field_info (const FIELD *,int *,int *,int *);
-extern NCURSES_EXPORT(int) set_max_field ( FIELD *,int);
-extern NCURSES_EXPORT(int) move_field (FIELD *,int,int);
-extern NCURSES_EXPORT(int) set_field_type (FIELD *,FIELDTYPE *,...);
-extern NCURSES_EXPORT(int) set_new_page (FIELD *,bool);
-extern NCURSES_EXPORT(int) set_field_just (FIELD *,int);
-extern NCURSES_EXPORT(int) field_just (const FIELD *);
-extern NCURSES_EXPORT(int) set_field_fore (FIELD *,chtype);
-extern NCURSES_EXPORT(int) set_field_back (FIELD *,chtype);
-extern NCURSES_EXPORT(int) set_field_pad (FIELD *,int);
-extern NCURSES_EXPORT(int) field_pad (const FIELD *);
-extern NCURSES_EXPORT(int) set_field_buffer (FIELD *,int,const char *);
-extern NCURSES_EXPORT(int) set_field_status (FIELD *,bool);
-extern NCURSES_EXPORT(int) set_field_userptr (FIELD *, void *);
-extern NCURSES_EXPORT(int) set_field_opts (FIELD *,Field_Options);
-extern NCURSES_EXPORT(int) field_opts_on (FIELD *,Field_Options);
-extern NCURSES_EXPORT(int) field_opts_off (FIELD *,Field_Options);
-
-extern NCURSES_EXPORT(chtype) field_fore (const FIELD *);
-extern NCURSES_EXPORT(chtype) field_back (const FIELD *);
-
-extern NCURSES_EXPORT(bool) new_page (const FIELD *);
-extern NCURSES_EXPORT(bool) field_status (const FIELD *);
-
-extern NCURSES_EXPORT(void *) field_arg (const FIELD *);
-
-extern NCURSES_EXPORT(void *) field_userptr (const FIELD *);
-
-extern NCURSES_EXPORT(FIELDTYPE *) field_type (const FIELD *);
-
-extern NCURSES_EXPORT(char *) field_buffer (const FIELD *,int);
-
-extern NCURSES_EXPORT(Field_Options) field_opts (const FIELD *);
+extern FORM_EXPORT(FIELD *) new_field (int,int,int,int,int,int);
+extern FORM_EXPORT(FIELD *) dup_field (FIELD *,int,int);
+extern FORM_EXPORT(FIELD *) link_field (FIELD *,int,int);
+
+extern FORM_EXPORT(int) free_field (FIELD *);
+extern FORM_EXPORT(int) field_info (const FIELD *,int *,int *,int *,int *,int *,int *);
+extern FORM_EXPORT(int) dynamic_field_info (const FIELD *,int *,int *,int *);
+extern FORM_EXPORT(int) set_max_field ( FIELD *,int);
+extern FORM_EXPORT(int) move_field (FIELD *,int,int);
+extern FORM_EXPORT(int) set_field_type (FIELD *,FIELDTYPE *,...);
+extern FORM_EXPORT(int) set_new_page (FIELD *,bool);
+extern FORM_EXPORT(int) set_field_just (FIELD *,int);
+extern FORM_EXPORT(int) field_just (const FIELD *);
+extern FORM_EXPORT(int) set_field_fore (FIELD *,chtype);
+extern FORM_EXPORT(int) set_field_back (FIELD *,chtype);
+extern FORM_EXPORT(int) set_field_pad (FIELD *,int);
+extern FORM_EXPORT(int) field_pad (const FIELD *);
+extern FORM_EXPORT(int) set_field_buffer (FIELD *,int,const char *);
+extern FORM_EXPORT(int) set_field_status (FIELD *,bool);
+extern FORM_EXPORT(int) set_field_userptr (FIELD *, void *);
+extern FORM_EXPORT(int) set_field_opts (FIELD *,Field_Options);
+extern FORM_EXPORT(int) field_opts_on (FIELD *,Field_Options);
+extern FORM_EXPORT(int) field_opts_off (FIELD *,Field_Options);
+
+extern FORM_EXPORT(chtype) field_fore (const FIELD *);
+extern FORM_EXPORT(chtype) field_back (const FIELD *);
+
+extern FORM_EXPORT(bool) new_page (const FIELD *);
+extern FORM_EXPORT(bool) field_status (const FIELD *);
+
+extern FORM_EXPORT(void *) field_arg (const FIELD *);
+
+extern FORM_EXPORT(void *) field_userptr (const FIELD *);
+
+extern FORM_EXPORT(FIELDTYPE *) field_type (const FIELD *);
+
+extern FORM_EXPORT(char *) field_buffer (const FIELD *,int);
+
+extern FORM_EXPORT(Field_Options) field_opts (const FIELD *);
/******************
* FORM routines *
******************/
-extern NCURSES_EXPORT(FORM *) new_form (FIELD **);
-
-extern NCURSES_EXPORT(FIELD **) form_fields (const FORM *);
-extern NCURSES_EXPORT(FIELD *) current_field (const FORM *);
-
-extern NCURSES_EXPORT(WINDOW *) form_win (const FORM *);
-extern NCURSES_EXPORT(WINDOW *) form_sub (const FORM *);
-
-extern NCURSES_EXPORT(Form_Hook) form_init (const FORM *);
-extern NCURSES_EXPORT(Form_Hook) form_term (const FORM *);
-extern NCURSES_EXPORT(Form_Hook) field_init (const FORM *);
-extern NCURSES_EXPORT(Form_Hook) field_term (const FORM *);
-
-extern NCURSES_EXPORT(int) free_form (FORM *);
-extern NCURSES_EXPORT(int) set_form_fields (FORM *,FIELD **);
-extern NCURSES_EXPORT(int) field_count (const FORM *);
-extern NCURSES_EXPORT(int) set_form_win (FORM *,WINDOW *);
-extern NCURSES_EXPORT(int) set_form_sub (FORM *,WINDOW *);
-extern NCURSES_EXPORT(int) set_current_field (FORM *,FIELD *);
-extern NCURSES_EXPORT(int) unfocus_current_field (FORM *);
-extern NCURSES_EXPORT(int) field_index (const FIELD *);
-extern NCURSES_EXPORT(int) set_form_page (FORM *,int);
-extern NCURSES_EXPORT(int) form_page (const FORM *);
-extern NCURSES_EXPORT(int) scale_form (const FORM *,int *,int *);
-extern NCURSES_EXPORT(int) set_form_init (FORM *,Form_Hook);
-extern NCURSES_EXPORT(int) set_form_term (FORM *,Form_Hook);
-extern NCURSES_EXPORT(int) set_field_init (FORM *,Form_Hook);
-extern NCURSES_EXPORT(int) set_field_term (FORM *,Form_Hook);
-extern NCURSES_EXPORT(int) post_form (FORM *);
-extern NCURSES_EXPORT(int) unpost_form (FORM *);
-extern NCURSES_EXPORT(int) pos_form_cursor (FORM *);
-extern NCURSES_EXPORT(int) form_driver (FORM *,int);
+extern FORM_EXPORT(FORM *) new_form (FIELD **);
+
+extern FORM_EXPORT(FIELD **) form_fields (const FORM *);
+extern FORM_EXPORT(FIELD *) current_field (const FORM *);
+
+extern FORM_EXPORT(WINDOW *) form_win (const FORM *);
+extern FORM_EXPORT(WINDOW *) form_sub (const FORM *);
+
+extern FORM_EXPORT(Form_Hook) form_init (const FORM *);
+extern FORM_EXPORT(Form_Hook) form_term (const FORM *);
+extern FORM_EXPORT(Form_Hook) field_init (const FORM *);
+extern FORM_EXPORT(Form_Hook) field_term (const FORM *);
+
+extern FORM_EXPORT(int) free_form (FORM *);
+extern FORM_EXPORT(int) set_form_fields (FORM *,FIELD **);
+extern FORM_EXPORT(int) field_count (const FORM *);
+extern FORM_EXPORT(int) set_form_win (FORM *,WINDOW *);
+extern FORM_EXPORT(int) set_form_sub (FORM *,WINDOW *);
+extern FORM_EXPORT(int) set_current_field (FORM *,FIELD *);
+extern FORM_EXPORT(int) unfocus_current_field (FORM *);
+extern FORM_EXPORT(int) field_index (const FIELD *);
+extern FORM_EXPORT(int) set_form_page (FORM *,int);
+extern FORM_EXPORT(int) form_page (const FORM *);
+extern FORM_EXPORT(int) scale_form (const FORM *,int *,int *);
+extern FORM_EXPORT(int) set_form_init (FORM *,Form_Hook);
+extern FORM_EXPORT(int) set_form_term (FORM *,Form_Hook);
+extern FORM_EXPORT(int) set_field_init (FORM *,Form_Hook);
+extern FORM_EXPORT(int) set_field_term (FORM *,Form_Hook);
+extern FORM_EXPORT(int) post_form (FORM *);
+extern FORM_EXPORT(int) unpost_form (FORM *);
+extern FORM_EXPORT(int) pos_form_cursor (FORM *);
+extern FORM_EXPORT(int) form_driver (FORM *,int);
# if NCURSES_WIDECHAR
-extern NCURSES_EXPORT(int) form_driver_w (FORM *,int,wchar_t);
+extern FORM_EXPORT(int) form_driver_w (FORM *,int,wchar_t);
# endif
-extern NCURSES_EXPORT(int) set_form_userptr (FORM *,void *);
-extern NCURSES_EXPORT(int) set_form_opts (FORM *,Form_Options);
-extern NCURSES_EXPORT(int) form_opts_on (FORM *,Form_Options);
-extern NCURSES_EXPORT(int) form_opts_off (FORM *,Form_Options);
-extern NCURSES_EXPORT(int) form_request_by_name (const char *);
+extern FORM_EXPORT(int) set_form_userptr (FORM *,void *);
+extern FORM_EXPORT(int) set_form_opts (FORM *,Form_Options);
+extern FORM_EXPORT(int) form_opts_on (FORM *,Form_Options);
+extern FORM_EXPORT(int) form_opts_off (FORM *,Form_Options);
+extern FORM_EXPORT(int) form_request_by_name (const char *);
-extern NCURSES_EXPORT(const char *) form_request_name (int);
+extern FORM_EXPORT(const char *) form_request_name (int);
-extern NCURSES_EXPORT(void *) form_userptr (const FORM *);
+extern FORM_EXPORT(void *) form_userptr (const FORM *);
-extern NCURSES_EXPORT(Form_Options) form_opts (const FORM *);
+extern FORM_EXPORT(Form_Options) form_opts (const FORM *);
-extern NCURSES_EXPORT(bool) data_ahead (const FORM *);
-extern NCURSES_EXPORT(bool) data_behind (const FORM *);
+extern FORM_EXPORT(bool) data_ahead (const FORM *);
+extern FORM_EXPORT(bool) data_behind (const FORM *);
#if NCURSES_SP_FUNCS
-extern NCURSES_EXPORT(FORM *) NCURSES_SP_NAME(new_form) (SCREEN*, FIELD **);
+extern FORM_EXPORT(FORM *) NCURSES_SP_NAME(new_form) (SCREEN*, FIELD **);
#endif
#ifdef __cplusplus
diff --git a/form/form.priv.h b/form/form.priv.h
index 53c717c..4cf3071 100644
--- a/form/form.priv.h
+++ b/form/form.priv.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -31,7 +31,7 @@
* Author: Juergen Pfeifer, 1995,1997 *
****************************************************************************/
-/* $Id: form.priv.h,v 0.45 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: form.priv.h,v 0.48 2021/06/17 21:30:22 tom Exp $ */
#ifndef FORM_PRIV_H
#define FORM_PRIV_H 1
@@ -69,9 +69,9 @@
/***********************
* Default objects *
***********************/
-extern NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form;
-extern NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field;
-extern NCURSES_EXPORT_VAR(FIELDTYPE *) _nc_Default_FieldType;
+extern FORM_EXPORT_VAR(FORM *) _nc_Default_Form;
+extern FORM_EXPORT_VAR(FIELD *) _nc_Default_Field;
+extern FORM_EXPORT_VAR(FIELDTYPE *) _nc_Default_FieldType;
/* form status values */
#define _OVLMODE (0x04U) /* Form is in overlay mode */
@@ -110,7 +110,7 @@ extern NCURSES_EXPORT_VAR(FIELDTYPE *) _nc_Default_FieldType;
#define Get_Form_Screen(form) CURRENT_SCREEN
#endif
-/* Retrieve forms window */
+/* Retrieve form's window */
#define Get_Form_Window(form) \
((form)->sub \
? (form)->sub \
@@ -176,54 +176,54 @@ TypeArgument;
#define C_ZEROS '\0'
-extern NCURSES_EXPORT(TypeArgument *) _nc_Make_Argument (const FIELDTYPE*, va_list*, int*);
-extern NCURSES_EXPORT(TypeArgument *) _nc_Copy_Argument (const FIELDTYPE*, const TypeArgument*, int*);
-extern NCURSES_EXPORT(void) _nc_Free_Argument (const FIELDTYPE*, TypeArgument*);
-extern NCURSES_EXPORT(bool) _nc_Copy_Type (FIELD*, FIELD const *);
-extern NCURSES_EXPORT(void) _nc_Free_Type (FIELD *);
-
-extern NCURSES_EXPORT(int) _nc_Synchronize_Attributes (FIELD*);
-extern NCURSES_EXPORT(int) _nc_Synchronize_Options (FIELD*, Field_Options);
-extern NCURSES_EXPORT(int) _nc_Set_Form_Page (FORM*, int, FIELD*);
-extern NCURSES_EXPORT(int) _nc_Refresh_Current_Field (FORM*);
-extern NCURSES_EXPORT(FIELD *) _nc_First_Active_Field (FORM*);
-extern NCURSES_EXPORT(bool) _nc_Internal_Validation (FORM*);
-extern NCURSES_EXPORT(int) _nc_Set_Current_Field (FORM*, FIELD*);
-extern NCURSES_EXPORT(int) _nc_Position_Form_Cursor (FORM*);
-extern NCURSES_EXPORT(void) _nc_Unset_Current_Field(FORM *form);
+extern FORM_EXPORT(TypeArgument *) _nc_Make_Argument (const FIELDTYPE*, va_list*, int*);
+extern FORM_EXPORT(TypeArgument *) _nc_Copy_Argument (const FIELDTYPE*, const TypeArgument*, int*);
+extern FORM_EXPORT(void) _nc_Free_Argument (const FIELDTYPE*, TypeArgument*);
+extern FORM_EXPORT(bool) _nc_Copy_Type (FIELD*, FIELD const *);
+extern FORM_EXPORT(void) _nc_Free_Type (FIELD *);
+
+extern FORM_EXPORT(int) _nc_Synchronize_Attributes (FIELD*);
+extern FORM_EXPORT(int) _nc_Synchronize_Options (FIELD*, Field_Options);
+extern FORM_EXPORT(int) _nc_Set_Form_Page (FORM*, int, FIELD*);
+extern FORM_EXPORT(int) _nc_Refresh_Current_Field (FORM*);
+extern FORM_EXPORT(FIELD *) _nc_First_Active_Field (FORM*);
+extern FORM_EXPORT(bool) _nc_Internal_Validation (FORM*);
+extern FORM_EXPORT(int) _nc_Set_Current_Field (FORM*, FIELD*);
+extern FORM_EXPORT(int) _nc_Position_Form_Cursor (FORM*);
+extern FORM_EXPORT(void) _nc_Unset_Current_Field(FORM *form);
#if NCURSES_INTEROP_FUNCS
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_TYPE_INTEGER(void);
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_TYPE_ALNUM(void);
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_TYPE_ALPHA(void);
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_TYPE_ENUM(void);
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_TYPE_NUMERIC(void);
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_TYPE_REGEXP(void);
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_TYPE_IPV4(void);
-
-extern NCURSES_EXPORT(FIELDTYPE *)
-_nc_generic_fieldtype(bool (*const field_check) (FORM*,
- FIELD *,
+extern FORM_EXPORT(FIELDTYPE *) _nc_TYPE_INTEGER(void);
+extern FORM_EXPORT(FIELDTYPE *) _nc_TYPE_ALNUM(void);
+extern FORM_EXPORT(FIELDTYPE *) _nc_TYPE_ALPHA(void);
+extern FORM_EXPORT(FIELDTYPE *) _nc_TYPE_ENUM(void);
+extern FORM_EXPORT(FIELDTYPE *) _nc_TYPE_NUMERIC(void);
+extern FORM_EXPORT(FIELDTYPE *) _nc_TYPE_REGEXP(void);
+extern FORM_EXPORT(FIELDTYPE *) _nc_TYPE_IPV4(void);
+
+extern FORM_EXPORT(FIELDTYPE *)
+_nc_generic_fieldtype(bool (*const field_check) (FORM*,
+ FIELD *,
const void *),
- bool (*const char_check) (int,
- FORM*,
- FIELD*,
+ bool (*const char_check) (int,
+ FORM*,
+ FIELD*,
const void *),
bool (*const next)(FORM*,FIELD*,const void*),
bool (*const prev)(FORM*,FIELD*,const void*),
void (*freecallback)(void*));
-extern NCURSES_EXPORT(int) _nc_set_generic_fieldtype(FIELD*, FIELDTYPE*, int (*)(void**));
-extern NCURSES_EXPORT(WINDOW*) _nc_form_cursor(const FORM* , int* , int* );
+extern FORM_EXPORT(int) _nc_set_generic_fieldtype(FIELD*, FIELDTYPE*, int (*)(void**));
+extern FORM_EXPORT(WINDOW*) _nc_form_cursor(const FORM* , int* , int* );
#define INIT_FT_FUNC(func) {func}
#else
#define INIT_FT_FUNC(func) func
#endif
-extern NCURSES_EXPORT(void) _nc_get_fieldbuffer(FORM*, FIELD*, FIELD_CELL*);
+extern FORM_EXPORT(void) _nc_get_fieldbuffer(FORM*, FIELD*, FIELD_CELL*);
#if USE_WIDEC_SUPPORT
-extern NCURSES_EXPORT(wchar_t *) _nc_Widen_String(char *, int *);
+extern FORM_EXPORT(wchar_t *) _nc_Widen_String(char *, int *);
#endif
#ifdef TRACE
@@ -234,11 +234,11 @@ extern NCURSES_EXPORT(wchar_t *) _nc_Widen_String(char *, int *);
#define returnFieldType(code) TRACE_RETURN1(code,field_type)
#define returnFormHook(code) TRACE_RETURN1(code,form_hook)
-extern NCURSES_EXPORT(FIELD **) _nc_retrace_field_ptr (FIELD **);
-extern NCURSES_EXPORT(FIELD *) _nc_retrace_field (FIELD *);
-extern NCURSES_EXPORT(FIELDTYPE *) _nc_retrace_field_type (FIELDTYPE *);
-extern NCURSES_EXPORT(FORM *) _nc_retrace_form (FORM *);
-extern NCURSES_EXPORT(Form_Hook) _nc_retrace_form_hook (Form_Hook);
+extern FORM_EXPORT(FIELD **) _nc_retrace_field_ptr (FIELD **);
+extern FORM_EXPORT(FIELD *) _nc_retrace_field (FIELD *);
+extern FORM_EXPORT(FIELDTYPE *) _nc_retrace_field_type (FIELDTYPE *);
+extern FORM_EXPORT(FORM *) _nc_retrace_form (FORM *);
+extern FORM_EXPORT(Form_Hook) _nc_retrace_form_hook (Form_Hook);
#else /* !TRACE */
diff --git a/form/frm_cursor.c b/form/frm_cursor.c
index 8ff42bf..a54b483 100644
--- a/form/frm_cursor.c
+++ b/form/frm_cursor.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,12 +33,12 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_cursor.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_cursor.c,v 1.13 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int pos_form_cursor(FORM * form)
-|
+|
| Description : Moves the form window cursor to the location required
| by the form driver to resume form processing. This may
| be needed after the application calls a curses library
@@ -49,7 +49,7 @@ MODULE_ID("$Id: frm_cursor.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
| E_BAD_ARGUMENT - Invalid form pointer
| E_NOT_POSTED - Form is not posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
pos_form_cursor(FORM *form)
{
int res;
diff --git a/form/frm_data.c b/form/frm_data.c
index 5c3b2a0..940c32d 100644
--- a/form/frm_data.c
+++ b/form/frm_data.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2013 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,19 +33,19 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_data.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_data.c,v 1.21 2021/06/17 21:11:08 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : bool data_behind(const FORM *form)
-|
+|
| Description : Check for off-screen data behind. This is nearly trivial
| because the beginning of a field is fixed.
|
| Return Values : TRUE - there are off-screen data behind
| FALSE - there are no off-screen data behind
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
+FORM_EXPORT(bool)
data_behind(const FORM *form)
{
bool result = FALSE;
@@ -70,12 +70,12 @@ data_behind(const FORM *form)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static char * Only_Padding(
| WINDOW *w,
| int len,
| int pad)
-|
+|
| Description : Test if 'length' cells starting at the current position
| contain a padding character.
|
@@ -104,7 +104,7 @@ Only_Padding(WINDOW *w, int len, int pad)
}
}
#else
- cell = (FIELD_CELL) winch(w);
+ cell = (FIELD_CELL)winch(w);
if (ChCharOf(cell) != ChCharOf(pad))
{
result = FALSE;
@@ -123,16 +123,16 @@ Only_Padding(WINDOW *w, int len, int pad)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : bool data_ahead(const FORM *form)
-|
+|
| Description : Check for off-screen data ahead. This is more difficult
-| because a dynamic field has a variable end.
+| because a dynamic field has a variable end.
|
| Return Values : TRUE - there are off-screen data ahead
| FALSE - there are no off-screen data ahead
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
+FORM_EXPORT(bool)
data_ahead(const FORM *form)
{
bool result = FALSE;
@@ -150,12 +150,11 @@ data_ahead(const FORM *form)
if (Single_Line_Field(field))
{
- int check_len;
-
pos = form->begincol + field->cols;
while (pos < field->dcols)
{
- check_len = field->dcols - pos;
+ int check_len = field->dcols - pos;
+
if (check_len >= field->cols)
check_len = field->cols;
cursor_moved = TRUE;
diff --git a/form/frm_def.c b/form/frm_def.c
index 0722d51..a9f21f2 100644
--- a/form/frm_def.c
+++ b/form/frm_def.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_def.c,v 1.27 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_def.c,v 1.30 2021/03/27 23:49:58 tom Exp $")
/* this can't be readonly */
static FORM default_form =
@@ -62,14 +62,14 @@ static FORM default_form =
NULL /* fieldterm */
};
-NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form = &default_form;
-
+FORM_EXPORT_VAR(FORM *) _nc_Default_Form = &default_form;
+
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static FIELD *Insert_Field_By_Position(
-| FIELD *new_field,
+| FIELD *new_field,
| FIELD *head )
-|
+|
| Description : Insert new_field into sorted fieldlist with head "head"
| and return new head of sorted fieldlist. Sorting
| criteria is (row,column). This is a circular list.
@@ -113,9 +113,9 @@ Insert_Field_By_Position(FIELD *newfield, FIELD *head)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void Disconnect_Fields(FORM *form)
-|
+|
| Description : Break association between form and array of fields.
|
| Return Values : -
@@ -143,9 +143,9 @@ Disconnect_Fields(FORM *form)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static int Connect_Fields(FORM *form, FIELD **fields)
-|
+|
| Description : Set association between form and array of fields.
|
| Return Values : E_OK - no error
@@ -158,7 +158,6 @@ Connect_Fields(FORM *form, FIELD **fields)
{
int field_cnt, j;
int page_nr;
- int maximum_row_in_field, maximum_col_in_field;
_PAGE *pg;
T((T_CALLED("Connect_Fields(%p,%p)"), (void *)form, (void *)fields));
@@ -199,15 +198,18 @@ Connect_Fields(FORM *form, FIELD **fields)
size of the form */
for (j = 0; j < field_cnt; j++)
{
+ int maximum_row_in_field;
+ int maximum_col_in_field;
+
if (j == 0)
- pg->pmin = (short) j;
+ pg->pmin = (short)j;
else
{
if (fields[j]->status & _NEWPAGE)
{
- pg->pmax = (short) (j - 1);
+ pg->pmax = (short)(j - 1);
pg++;
- pg->pmin = (short) j;
+ pg->pmin = (short)j;
}
}
@@ -215,14 +217,14 @@ Connect_Fields(FORM *form, FIELD **fields)
maximum_col_in_field = fields[j]->fcol + fields[j]->cols;
if (form->rows < maximum_row_in_field)
- form->rows = (short) maximum_row_in_field;
+ form->rows = (short)maximum_row_in_field;
if (form->cols < maximum_col_in_field)
- form->cols = (short) maximum_col_in_field;
+ form->cols = (short)maximum_col_in_field;
}
- pg->pmax = (short) (field_cnt - 1);
- form->maxfield = (short) field_cnt;
- form->maxpage = (short) page_nr;
+ pg->pmax = (short)(field_cnt - 1);
+ form->maxfield = (short)field_cnt;
+ form->maxpage = (short)page_nr;
/* Sort fields on form pages */
for (page_nr = 0; page_nr < form->maxpage; page_nr++)
@@ -231,8 +233,8 @@ Connect_Fields(FORM *form, FIELD **fields)
for (j = form->page[page_nr].pmin; j <= form->page[page_nr].pmax; j++)
{
- fields[j]->index = (short) j;
- fields[j]->page = (short) page_nr;
+ fields[j]->index = (short)j;
+ fields[j]->page = (short)page_nr;
fld = Insert_Field_By_Position(fields[j], fld);
}
if (fld)
@@ -250,10 +252,10 @@ Connect_Fields(FORM *form, FIELD **fields)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static int Associate_Fields(FORM *form, FIELD **fields)
-|
-| Description : Set association between form and array of fields.
+|
+| Description : Set association between form and array of fields.
| If there are fields, position to first active field.
|
| Return Values : E_OK - success
@@ -283,9 +285,9 @@ Associate_Fields(FORM *form, FIELD **fields)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : FORM *new_form_sp(SCREEN* sp, FIELD** fields )
-|
+|
| Description : Create new form with given array of fields.
|
| Return Values : Pointer to form. NULL if error occurred.
@@ -295,7 +297,7 @@ Associate_Fields(FORM *form, FIELD **fields)
| E_CONNECTED - a field is already connected
| E_SYSTEM_ERROR - not enough memory
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FORM *)
+FORM_EXPORT(FORM *)
NCURSES_SP_NAME(new_form) (NCURSES_SP_DCLx FIELD **fields)
{
int err = E_SYSTEM_ERROR;
@@ -331,9 +333,9 @@ NCURSES_SP_NAME(new_form) (NCURSES_SP_DCLx FIELD **fields)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : FORM* new_form(FIELD** fields )
-|
+|
| Description : Create new form with given array of fields.
|
| Return Values : Pointer to form. NULL if error occurred.
@@ -344,7 +346,7 @@ NCURSES_SP_NAME(new_form) (NCURSES_SP_DCLx FIELD **fields)
| E_SYSTEM_ERROR - not enough memory
+--------------------------------------------------------------------------*/
#if NCURSES_SP_FUNCS
-NCURSES_EXPORT(FORM *)
+FORM_EXPORT(FORM *)
new_form(FIELD **fields)
{
return NCURSES_SP_NAME(new_form) (CURRENT_SCREEN, fields);
@@ -352,16 +354,16 @@ new_form(FIELD **fields)
#endif
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int free_form( FORM *form )
-|
+|
| Description : Release internal memory associated with form.
|
| Return Values : E_OK - no error
| E_BAD_ARGUMENT - invalid form pointer
| E_POSTED - form is posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
free_form(FORM *form)
{
T((T_CALLED("free_form(%p)"), (void *)form));
@@ -381,9 +383,9 @@ free_form(FORM *form)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_form_fields( FORM *form, FIELD **fields )
-|
+|
| Description : Set a new association of an array of fields to a form
|
| Return Values : E_OK - no error
@@ -392,7 +394,7 @@ free_form(FORM *form)
| E_POSTED - form is posted
| E_SYSTEM_ERROR - not enough memory
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_form_fields(FORM *form, FIELD **fields)
{
FIELD **old;
@@ -416,14 +418,14 @@ set_form_fields(FORM *form, FIELD **fields)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : FIELD **form_fields( const FORM *form )
-|
+|
| Description : Retrieve array of fields
|
| Return Values : Pointer to field array
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELD **)
+FORM_EXPORT(FIELD **)
form_fields(const FORM *form)
{
T((T_CALLED("form_field(%p)"), (const void *)form));
@@ -431,14 +433,14 @@ form_fields(const FORM *form)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int field_count( const FORM *form )
-|
+|
| Description : Retrieve number of fields
|
| Return Values : Number of fields, -1 if none are defined
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
field_count(const FORM *form)
{
T((T_CALLED("field_count(%p)"), (const void *)form));
diff --git a/form/frm_driver.c b/form/frm_driver.c
index b9f91e1..75656d6 100644
--- a/form/frm_driver.c
+++ b/form/frm_driver.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_driver.c,v 1.129 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_driver.c,v 1.135 2021/09/01 23:34:01 tom Exp $")
/*----------------------------------------------------------------------------
This is the core module of the form library. It contains the majority
@@ -131,34 +131,34 @@ static int FE_Delete_Previous(FORM *);
/* Calculate the position of a single row in a field buffer */
#define Position_Of_Row_In_Buffer(field,row) ((row)*(field)->dcols)
-/* Calculate start address for the fields buffer# N */
+/* Calculate start address for the field's buffer# N */
#define Address_Of_Nth_Buffer(field,N) \
((field)->buf + (N)*(1+Buffer_Length(field)))
-/* Calculate the start address of the row in the fields specified buffer# N */
+/* Calculate the start address of the row in the field's specified buffer# N */
#define Address_Of_Row_In_Nth_Buffer(field,N,row) \
(Address_Of_Nth_Buffer(field,N) + Position_Of_Row_In_Buffer(field,row))
-/* Calculate the start address of the row in the fields primary buffer */
+/* Calculate the start address of the row in the field's primary buffer */
#define Address_Of_Row_In_Buffer(field,row) \
Address_Of_Row_In_Nth_Buffer(field,0,row)
-/* Calculate the start address of the row in the forms current field
+/* Calculate the start address of the row in the form's current field
buffer# N */
#define Address_Of_Current_Row_In_Nth_Buffer(form,N) \
Address_Of_Row_In_Nth_Buffer((form)->current,N,(form)->currow)
-/* Calculate the start address of the row in the forms current field
+/* Calculate the start address of the row in the form's current field
primary buffer */
#define Address_Of_Current_Row_In_Buffer(form) \
Address_Of_Current_Row_In_Nth_Buffer(form,0)
-/* Calculate the address of the cursor in the forms current field
+/* Calculate the address of the cursor in the form's current field
primary buffer */
#define Address_Of_Current_Position_In_Nth_Buffer(form,N) \
(Address_Of_Current_Row_In_Nth_Buffer(form,N) + (form)->curcol)
-/* Calculate the address of the cursor in the forms current field
+/* Calculate the address of the cursor in the form's current field
buffer# N */
#define Address_Of_Current_Position_In_Buffer(form) \
Address_Of_Current_Position_In_Nth_Buffer(form,0)
@@ -187,7 +187,7 @@ static int FE_Delete_Previous(FORM *);
/* Logic to determine whether or not a dynamic field may still grow */
#define Growable(field) ((field)->status & _MAY_GROW)
-/* Macro to set the attributes for a fields window */
+/* Macro to set the attributes for a field's window */
#define Set_Field_Window_Attributes(field,win) \
( wbkgdset((win),(chtype)((chtype)((field)->pad) | (field)->back)), \
(void) wattrset((win), (int)(field)->fore) )
@@ -217,10 +217,10 @@ static FIELD_CELL myZEROS;
static void
check_pos(FORM *form, int lineno)
{
- int y, x;
-
if (form && form->w)
{
+ int y, x;
+
getyx(form->w, y, x);
if (y != form->currow || x != form->curcol)
{
@@ -265,10 +265,11 @@ static int
wide_winsnstr(WINDOW *w, const cchar_t *s, int n)
{
int code = ERR;
- int y, x;
while (n-- > 0)
{
+ int y, x;
+
getyx(w, y, x);
if ((code = wins_wch(w, s++)) != OK)
break;
@@ -511,7 +512,6 @@ Buffer_To_Window(const FIELD *field, WINDOW *win)
{
int width, height;
int y, x;
- int len;
int row;
FIELD_CELL *pBuffer;
@@ -525,6 +525,8 @@ Buffer_To_Window(const FIELD *field, WINDOW *win)
row < height;
row++, pBuffer += width)
{
+ int len;
+
if ((len = (int)(After_End_Of_Data(pBuffer, width) - pBuffer)) > 0)
{
wmove(win, row, 0);
@@ -548,7 +550,7 @@ Buffer_To_Window(const FIELD *field, WINDOW *win)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
+FORM_EXPORT(void)
_nc_get_fieldbuffer(FORM *form, FIELD *field, FIELD_CELL *buf)
{
int pad;
@@ -706,8 +708,6 @@ Field_Grown(FIELD *field, int amount)
* realloc().
*/
int i, j;
- FIELD_CELL *old_bp;
- FIELD_CELL *new_bp;
result = TRUE; /* allow sharing of recovery on failure */
@@ -715,8 +715,9 @@ Field_Grown(FIELD *field, int amount)
field->buf = newbuf;
for (i = 0; i <= field->nbuf; i++)
{
- new_bp = Address_Of_Nth_Buffer(field, i);
- old_bp = oldbuf + i * (1 + old_buflen);
+ FIELD_CELL *new_bp = Address_Of_Nth_Buffer(field, i);
+ FIELD_CELL *old_bp = oldbuf + i * (1 + old_buflen);
+
for (j = 0; j < old_buflen; ++j)
new_bp[j] = old_bp[j];
while (j < new_buflen)
@@ -826,7 +827,7 @@ Field_encloses(FIELD *field, int ry, int rx)
| E_SYSTEM_ERROR - form has no current field or
| field-window
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
_nc_Position_Form_Cursor(FORM *form)
{
FIELD *field;
@@ -860,7 +861,7 @@ _nc_Position_Form_Cursor(FORM *form)
| Facility : libnform
| Function : int _nc_Refresh_Current_Field(FORM * form)
|
-| Description : Propagate the changes in the fields window to the
+| Description : Propagate the changes in the field's window to the
| window of the form.
|
| Return Values : E_OK - on success
@@ -868,7 +869,7 @@ _nc_Position_Form_Cursor(FORM *form)
| E_SYSTEM_ERROR - general error
+--------------------------------------------------------------------------*/
static bool move_after_insert = TRUE;
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
_nc_Refresh_Current_Field(FORM *form)
{
WINDOW *formwin;
@@ -917,11 +918,12 @@ _nc_Refresh_Current_Field(FORM *form)
else
{
/* A multi-line, i.e. vertical scrolling field */
- int row_after_bottom, first_modified_row, first_unmodified_row;
+ int first_modified_row, first_unmodified_row;
if (field->drows > field->rows)
{
- row_after_bottom = form->toprow + field->rows;
+ int row_after_bottom = form->toprow + field->rows;
+
if (form->currow < form->toprow)
{
form->toprow = form->currow;
@@ -1005,7 +1007,6 @@ Perform_Justification(FIELD *field, WINDOW *win)
{
FIELD_CELL *bp;
int len;
- int col = 0;
bp = (Field_Has_Option(field, O_NO_LEFT_STRIP)
? field->buf
@@ -1014,6 +1015,8 @@ Perform_Justification(FIELD *field, WINDOW *win)
if (len > 0)
{
+ int col = 0;
+
assert(win && (field->drows == 1));
if (field->cols - len >= 0)
@@ -1240,7 +1243,6 @@ Synchronize_Linked_Fields(FIELD *field)
{
FIELD *linked_field;
int res = E_OK;
- int syncres;
if (!field)
return (E_BAD_ARGUMENT);
@@ -1252,6 +1254,8 @@ Synchronize_Linked_Fields(FIELD *field)
(linked_field != field) && (linked_field != 0);
linked_field = linked_field->link)
{
+ int syncres;
+
if (((syncres = Synchronize_Field(linked_field)) != E_OK) &&
(res == E_OK))
res = syncres;
@@ -1263,7 +1267,7 @@ Synchronize_Linked_Fields(FIELD *field)
| Facility : libnform
| Function : int _nc_Synchronize_Attributes(FIELD * field)
|
-| Description : If a fields visual attributes have changed, this
+| Description : If a field's visual attributes have changed, this
| routine is called to propagate those changes to the
| screen.
|
@@ -1271,12 +1275,11 @@ Synchronize_Linked_Fields(FIELD *field)
| E_BAD_ARGUMENT - invalid field pointer
| E_SYSTEM_ERROR - some severe basic error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
_nc_Synchronize_Attributes(FIELD *field)
{
FORM *form;
int res = E_OK;
- WINDOW *formwin;
T((T_CALLED("_nc_Synchronize_Attributes(%p)"), (void *)field));
@@ -1303,7 +1306,8 @@ _nc_Synchronize_Attributes(FIELD *field)
}
else
{
- formwin = Get_Form_Window(form);
+ WINDOW *formwin = Get_Form_Window(form);
+
copywin(form->w, formwin,
0, 0,
field->frow, field->fcol,
@@ -1329,7 +1333,7 @@ _nc_Synchronize_Attributes(FIELD *field)
| Function : int _nc_Synchronize_Options(FIELD * field,
| Field_Options newopts)
|
-| Description : If a fields options have changed, this routine is
+| Description : If a field's options have changed, this routine is
| called to propagate these changes to the screen and
| to really change the behavior of the field.
|
@@ -1338,7 +1342,7 @@ _nc_Synchronize_Attributes(FIELD *field)
| E_CURRENT - field is the current one
| E_SYSTEM_ERROR - some severe basic error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
_nc_Synchronize_Options(FIELD *field, Field_Options newopts)
{
Field_Options oldopts;
@@ -1491,7 +1495,7 @@ _nc_Unset_Current_Field(FORM *form)
| E_SYSTEM_ERROR - some severe basic error
| E_NOT_CONNECTED - no fields are connected to the form
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
_nc_Set_Current_Field(FORM *form, FIELD *newfield)
{
FIELD *field;
@@ -2422,7 +2426,6 @@ Insert_String(FORM *form, int row, FIELD_CELL *txt, int len)
int datalen = (int)(After_End_Of_Data(bp, field->dcols) - bp);
int freelen = field->dcols - datalen;
int requiredlen = len + 1;
- FIELD_CELL *split;
int result = E_REQUEST_DENIED;
if (freelen >= requiredlen)
@@ -2431,7 +2434,7 @@ Insert_String(FORM *form, int row, FIELD_CELL *txt, int len)
myINSNSTR(form->w, txt, len);
wmove(form->w, row, len);
myINSNSTR(form->w, &myBLANK, 1);
- return E_OK;
+ result = E_OK;
}
else
{
@@ -2447,6 +2450,8 @@ Insert_String(FORM *form, int row, FIELD_CELL *txt, int len)
if (row < (field->drows - 1))
{
+ FIELD_CELL *split;
+
split =
After_Last_Whitespace_Character(bp,
(int)(Get_Start_Of_Data(bp
@@ -2470,8 +2475,8 @@ Insert_String(FORM *form, int row, FIELD_CELL *txt, int len)
return E_OK;
}
}
- return (result);
}
+ return (result);
}
/*---------------------------------------------------------------------------
@@ -3225,7 +3230,7 @@ Check_Field(FORM *form, FIELDTYPE *typ, FIELD *field, TypeArgument *argp)
| Return Values : TRUE - field is valid
| FALSE - field is invalid
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
+FORM_EXPORT(bool)
_nc_Internal_Validation(FORM *form)
{
FIELD *field;
@@ -3284,7 +3289,7 @@ FV_Validation(FORM *form)
|
| Description : Get the next field after the given field on the current
| page. The order of fields is the one defined by the
-| fields array. Only visible and active fields are
+| field's array. Only visible and active fields are
| counted.
|
| Return Values : Pointer to the next field.
@@ -3319,7 +3324,7 @@ Next_Field_On_Page(FIELD *field)
|
| Return Values : Pointer to calculated field.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELD *)
+FORM_EXPORT(FIELD *)
_nc_First_Active_Field(FORM *form)
{
FIELD **last_on_page = &form->field[form->page[form->curpage].pmax];
@@ -3367,7 +3372,7 @@ _nc_First_Active_Field(FORM *form)
|
| Description : Get the previous field before the given field on the
| current page. The order of fields is the one defined by
-| the fields array. Only visible and active fields are
+| the field's array. Only visible and active fields are
| counted.
|
| Return Values : Pointer to the previous field.
@@ -3501,10 +3506,10 @@ Right_Neighbor_Field(FIELD *field)
| Function : static FIELD *Upper_Neighbor_Field(FIELD * field)
|
| Description : Because of the row-major nature of sorting the fields,
-| it is more difficult to define whats the upper neighbor
+| it is more difficult to define what the upper neighbor
| field really means. We define that it must be on a
| 'previous' line (cyclic order!) and is the rightmost
-| field laying on the left side of the given field. If
+| field lying on the left side of the given field. If
| this set is empty, we take the first field on the line.
|
| Return Values : Pointer to the upper neighbor field.
@@ -3551,7 +3556,7 @@ Upper_Neighbor_Field(FIELD *field)
| Function : static FIELD *Down_Neighbor_Field(FIELD * field)
|
| Description : Because of the row-major nature of sorting the fields,
-| its more difficult to define whats the down neighbor
+| it is more difficult to define what the down neighbor
| field really means. We define that it must be on a
| 'next' line (cyclic order!) and is the leftmost
| field laying on the right side of the given field. If
@@ -3873,7 +3878,7 @@ FN_Down_Field(FORM *form)
| E_BAD_ARGUMENT - invalid field pointer
| E_SYSTEM_ERROR - some severe basic error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
_nc_Set_Form_Page(FORM *form, int page, FIELD *field)
{
int res = E_OK;
@@ -3952,7 +3957,7 @@ Previous_Page_Number(const FORM *form)
| that the field is left and a new field is entered.
| So the field must be validated and the field init/term
| hooks must be called. Because also the page is changed,
-| the forms init/term hooks must be called also.
+| the form's init/term hooks must be called also.
|
| Return Values : E_OK - success
| E_INVALID_FIELD - field is invalid
@@ -4354,10 +4359,10 @@ static const Binding_Info bindings[MAX_FORM_COMMAND - MIN_FORM_COMMAND + 1] =
| E_NOT_CONNECTED - no fields are connected to the form
| E_UNKNOWN_COMMAND - command not known
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
form_driver(FORM *form, int c)
{
- const Binding_Info *BI = (Binding_Info *) 0;
+ const Binding_Info *BI = (Binding_Info *)0;
int res = E_UNKNOWN_COMMAND;
move_after_insert = TRUE;
@@ -4412,7 +4417,7 @@ form_driver(FORM *form, int c)
NULL /* Choice Request is generic */
};
size_t nMethods = (sizeof(Generic_Methods) / sizeof(Generic_Methods[0]));
- size_t method = (size_t) ((BI->keycode >> ID_Shft) & 0xffff); /* see ID_Mask */
+ size_t method = (size_t)((BI->keycode >> ID_Shft) & 0xffff); /* see ID_Mask */
if ((method >= nMethods) || !(BI->cmd))
res = E_SYSTEM_ERROR;
@@ -4474,14 +4479,13 @@ form_driver(FORM *form, int c)
}
else if (wenclose(sub, event.y, event.x))
{ /* Inside the area we try to find the hit item */
- int i;
-
ry = event.y;
rx = event.x;
if (wmouse_trafo(sub, &ry, &rx, FALSE))
{
int min_field = form->page[form->curpage].pmin;
int max_field = form->page[form->curpage].pmax;
+ int i;
for (i = min_field; i <= max_field; ++i)
{
@@ -4561,10 +4565,10 @@ form_driver(FORM *form, int c)
| E_NOT_CONNECTED - no fields are connected to the form
| E_UNKNOWN_COMMAND - command not known
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
form_driver_w(FORM *form, int type, wchar_t c)
{
- const Binding_Info *BI = (Binding_Info *) 0;
+ const Binding_Info *BI = (Binding_Info *)0;
int res = E_UNKNOWN_COMMAND;
T((T_CALLED("form_driver(%p,%d)"), (void *)form, (int)c));
@@ -4618,7 +4622,7 @@ form_driver_w(FORM *form, int type, wchar_t c)
NULL /* Choice Request is generic */
};
size_t nMethods = (sizeof(Generic_Methods) / sizeof(Generic_Methods[0]));
- size_t method = (size_t) (BI->keycode >> ID_Shft) & 0xffff; /* see ID_Mask */
+ size_t method = (size_t)(BI->keycode >> ID_Shft) & 0xffff; /* see ID_Mask */
if ((method >= nMethods) || !(BI->cmd))
res = E_SYSTEM_ERROR;
@@ -4676,14 +4680,13 @@ form_driver_w(FORM *form, int type, wchar_t c)
}
else if (wenclose(sub, event.y, event.x))
{ /* Inside the area we try to find the hit item */
- int i;
-
ry = event.y;
rx = event.x;
if (wmouse_trafo(sub, &ry, &rx, FALSE))
{
int min_field = form->page[form->curpage].pmin;
int max_field = form->page[form->curpage].pmax;
+ int i;
for (i = min_field; i <= max_field; ++i)
{
@@ -4736,14 +4739,14 @@ form_driver_w(FORM *form, int type, wchar_t c)
| For dynamic fields this may grow the fieldbuffers if
| the length of the value exceeds the current buffer
| length. For buffer 0 only printable values are allowed.
-| For static fields, the value needs not to be zero ter-
-| minated. It is copied up to the length of the buffer.
+| For static fields, the value must not be zero terminated.
+| It is copied up to the length of the buffer.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid argument
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_field_buffer(FIELD *field, int buffer, const char *value)
{
FIELD_CELL *p;
@@ -4860,7 +4863,7 @@ set_field_buffer(FIELD *field, int buffer, const char *value)
|
| Return Values : Pointer to buffer or NULL if arguments were invalid.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(char *)
+FORM_EXPORT(char *)
field_buffer(const FIELD *field, int buffer)
{
char *result = 0;
@@ -4928,7 +4931,7 @@ field_buffer(const FIELD *field, int buffer)
| Convert a multibyte string to a wide-character string. The result must be
| freed by the caller.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(wchar_t *)
+FORM_EXPORT(wchar_t *)
_nc_Widen_String(char *source, int *lengthp)
{
wchar_t *result = 0;
@@ -4972,7 +4975,7 @@ _nc_Widen_String(char *source, int *lengthp)
{
result[need] = wch;
}
- passed += (size_t) status;
+ passed += (size_t)status;
++need;
}
else
diff --git a/form/frm_hook.c b/form/frm_hook.c
index 3051cdd..39d4d22 100644
--- a/form/frm_hook.c
+++ b/form/frm_hook.c
@@ -33,11 +33,11 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_hook.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_hook.c,v 1.20 2020/05/24 01:40:20 anonymous.maarten Exp $")
/* "Template" macro to generate function to set application specific hook */
#define GEN_HOOK_SET_FUNCTION( typ, name ) \
-NCURSES_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (FORM *form, Form_Hook func)\
+FORM_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (FORM *form, Form_Hook func)\
{\
TR_FUNC_BFR(1); \
T((T_CALLED("set_" #typ"_"#name"(%p,%s)"), (void *) form, TR_FUNC_ARG(0, func)));\
@@ -47,7 +47,7 @@ NCURSES_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (FORM *form, Form_Hook f
/* "Template" macro to generate function to get application specific hook */
#define GEN_HOOK_GET_FUNCTION( typ, name ) \
-NCURSES_IMPEXP Form_Hook NCURSES_API typ ## _ ## name ( const FORM *form )\
+FORM_IMPEXP Form_Hook NCURSES_API typ ## _ ## name ( const FORM *form )\
{\
T((T_CALLED(#typ "_" #name "(%p)"), (const void *) form));\
returnFormHook( Normalize_Form( form ) -> typ ## name );\
diff --git a/form/frm_opts.c b/form/frm_opts.c
index 18ab293..62e2beb 100644
--- a/form/frm_opts.c
+++ b/form/frm_opts.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2013 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,24 +33,24 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_opts.c,v 1.18 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_opts.c,v 1.21 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_form_opts(FORM *form, Form_Options opts)
-|
+|
| Description : Turns on the named options and turns off all the
| remaining options for that form.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_form_opts(FORM *form, Form_Options opts)
{
T((T_CALLED("set_form_opts(%p,%d)"), (void *)form, opts));
- opts &= (Form_Options) ALL_FORM_OPTS;
+ opts &= (Form_Options)ALL_FORM_OPTS;
if ((unsigned)opts & ~ALL_FORM_OPTS)
RETURN(E_BAD_ARGUMENT);
else
@@ -61,36 +61,36 @@ set_form_opts(FORM *form, Form_Options opts)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : Form_Options form_opts(const FORM *)
-|
+|
| Description : Retrieves the current form options.
|
| Return Values : The option flags.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(Form_Options)
+FORM_EXPORT(Form_Options)
form_opts(const FORM *form)
{
T((T_CALLED("form_opts(%p)"), (const void *)form));
- returnCode((Form_Options) ((unsigned)Normalize_Form(form)->opts & ALL_FORM_OPTS));
+ returnCode((Form_Options)((unsigned)Normalize_Form(form)->opts & ALL_FORM_OPTS));
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int form_opts_on(FORM *form, Form_Options opts)
-|
-| Description : Turns on the named options; no other options are
+|
+| Description : Turns on the named options; no other options are
| changed.
|
-| Return Values : E_OK - success
+| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
form_opts_on(FORM *form, Form_Options opts)
{
T((T_CALLED("form_opts_on(%p,%d)"), (void *)form, opts));
- opts &= (Form_Options) ALL_FORM_OPTS;
+ opts &= (Form_Options)ALL_FORM_OPTS;
if ((unsigned)opts & ~ALL_FORM_OPTS)
RETURN(E_BAD_ARGUMENT);
else
@@ -101,21 +101,21 @@ form_opts_on(FORM *form, Form_Options opts)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int form_opts_off(FORM *form, Form_Options opts)
-|
-| Description : Turns off the named options; no other options are
+|
+| Description : Turns off the named options; no other options are
| changed.
|
-| Return Values : E_OK - success
+| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
form_opts_off(FORM *form, Form_Options opts)
{
T((T_CALLED("form_opts_off(%p,%d)"), (void *)form, opts));
- opts &= (Form_Options) ALL_FORM_OPTS;
+ opts &= (Form_Options)ALL_FORM_OPTS;
if ((unsigned)opts & ~ALL_FORM_OPTS)
RETURN(E_BAD_ARGUMENT);
else
diff --git a/form/frm_page.c b/form/frm_page.c
index c8569ee..ee8dd38 100644
--- a/form/frm_page.c
+++ b/form/frm_page.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,12 +33,12 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_page.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_page.c,v 1.15 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_form_page(FORM * form,int page)
-|
+|
| Description : Set the page number of the form.
|
| Return Values : E_OK - success
@@ -47,7 +47,7 @@ MODULE_ID("$Id: frm_page.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
| E_INVALID_FIELD - current field can't be left
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_form_page(FORM *form, int page)
{
int err = E_OK;
@@ -88,15 +88,15 @@ set_form_page(FORM *form, int page)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int form_page(const FORM * form)
-|
+|
| Description : Return the current page of the form.
|
| Return Values : >= 0 : current page number
| -1 : invalid form pointer
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
form_page(const FORM *form)
{
T((T_CALLED("form_page(%p)"), (const void *)form));
diff --git a/form/frm_post.c b/form/frm_post.c
index 2f1ad81..ab88089 100644
--- a/form/frm_post.c
+++ b/form/frm_post.c
@@ -33,7 +33,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_post.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_post.c,v 1.14 2020/05/24 01:40:20 anonymous.maarten Exp $")
/*---------------------------------------------------------------------------
| Facility : libnform
@@ -48,7 +48,7 @@ MODULE_ID("$Id: frm_post.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
| E_NO_ROOM - form doesn't fit into subwindow
| E_SYSTEM_ERROR - system error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
post_form(FORM *form)
{
WINDOW *formwin;
@@ -98,7 +98,7 @@ post_form(FORM *form)
| E_NOT_POSTED - form isn't posted
| E_BAD_STATE - called from a hook routine
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
unpost_form(FORM *form)
{
T((T_CALLED("unpost_form(%p)"), (void *)form));
diff --git a/form/frm_req_name.c b/form/frm_req_name.c
index 1e56c3d..8b76a8e 100644
--- a/form/frm_req_name.c
+++ b/form/frm_req_name.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_req_name.c,v 1.20 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_req_name.c,v 1.23 2021/06/17 21:11:08 tom Exp $")
#define DATA(s) { s }
@@ -112,15 +112,15 @@ static const char request_names[MAX_FORM_COMMAND - MIN_FORM_COMMAND + 1][13] =
#define A_SIZE (sizeof(request_names)/sizeof(request_names[0]))
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : const char * form_request_name (int request);
-|
+|
| Description : Get the external name of a form request.
|
| Return Values : Pointer to name - on success
| NULL - on invalid request code
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(const char *)
+FORM_EXPORT(const char *)
form_request_name(int request)
{
T((T_CALLED("form_request_name(%d)"), request));
@@ -135,27 +135,28 @@ form_request_name(int request)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int form_request_by_name (const char *str);
-|
+|
| Description : Search for a request with this name.
|
| Return Values : Request Id - on success
| E_NO_MATCH - request not found
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
form_request_by_name(const char *str)
{
/* because the table is so small, it doesn't really hurt
to run sequentially through it.
*/
size_t i = 0;
- char buf[16]; /* longest name is 10 chars */
T((T_CALLED("form_request_by_name(%s)"), _nc_visbuf(str)));
if (str != 0 && (i = strlen(str)) != 0)
{
+ char buf[16]; /* longest name is 10 chars */
+
if (i > sizeof(buf) - 2)
i = sizeof(buf) - 2;
memcpy(buf, str, i);
diff --git a/form/frm_scale.c b/form/frm_scale.c
index 34c3611..d53798e 100644
--- a/form/frm_scale.c
+++ b/form/frm_scale.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,19 +33,19 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_scale.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_scale.c,v 1.13 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int scale_form( const FORM *form, int *rows, int *cols )
-|
+|
| Description : Retrieve size of form
|
| Return Values : E_OK - no error
| E_BAD_ARGUMENT - invalid form pointer
| E_NOT_CONNECTED - no fields connected to form
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
scale_form(const FORM *form, int *rows, int *cols)
{
T((T_CALLED("scale_form(%p,%p,%p)"),
diff --git a/form/frm_sub.c b/form/frm_sub.c
index 9621e30..8f1de09 100644
--- a/form/frm_sub.c
+++ b/form/frm_sub.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,18 +33,18 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_sub.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_sub.c,v 1.15 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_form_sub(FORM *form, WINDOW *win)
-|
-| Description : Set the subwindow of the form to win.
+|
+| Description : Set the subwindow of the form to win.
|
| Return Values : E_OK - success
| E_POSTED - form is posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_form_sub(FORM *form, WINDOW *win)
{
T((T_CALLED("set_form_sub(%p,%p)"), (void *)form, (void *)win));
@@ -66,14 +66,14 @@ set_form_sub(FORM *form, WINDOW *win)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : WINDOW *form_sub(const FORM *)
-|
+|
| Description : Retrieve the window of the form.
|
| Return Values : The pointer to the Subwindow.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(WINDOW *)
+FORM_EXPORT(WINDOW *)
form_sub(const FORM *form)
{
const FORM *f;
diff --git a/form/frm_user.c b/form/frm_user.c
index e1210f2..a4a2249 100644
--- a/form/frm_user.c
+++ b/form/frm_user.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,18 +33,18 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_user.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_user.c,v 1.19 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_form_userptr(FORM *form, void *usrptr)
-|
+|
| Description : Set the pointer that is reserved in any form to store
-| application relevant informations
+| application relevant information.
|
| Return Values : E_OK - on success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_form_userptr(FORM *form, void *usrptr)
{
T((T_CALLED("set_form_userptr(%p,%p)"), (void *)form, (void *)usrptr));
@@ -54,16 +54,16 @@ set_form_userptr(FORM *form, void *usrptr)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : void *form_userptr(const FORM *form)
-|
+|
| Description : Return the pointer that is reserved in any form to
-| store application relevant informations.
+| store application relevant information.
|
| Return Values : Value of pointer. If no such pointer has been set,
| NULL is returned
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void *)
+FORM_EXPORT(void *)
form_userptr(const FORM *form)
{
T((T_CALLED("form_userptr(%p)"), (const void *)form));
diff --git a/form/frm_win.c b/form/frm_win.c
index b7d1272..eeea27d 100644
--- a/form/frm_win.c
+++ b/form/frm_win.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,18 +33,18 @@
#include "form.priv.h"
-MODULE_ID("$Id: frm_win.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: frm_win.c,v 1.19 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : int set_form_win(FORM *form,WINDOW *win)
-|
-| Description : Set the window of the form to win.
+|
+| Description : Set the window of the form to win.
|
| Return Values : E_OK - success
| E_POSTED - form is posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_form_win(FORM *form, WINDOW *win)
{
T((T_CALLED("set_form_win(%p,%p)"), (void *)form, (void *)win));
@@ -66,14 +66,14 @@ set_form_win(FORM *form, WINDOW *win)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : WINDOW *form_win(const FORM *)
-|
+|
| Description : Retrieve the window of the form.
|
| Return Values : The pointer to the Window or stdscr if there is none.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(WINDOW *)
+FORM_EXPORT(WINDOW *)
form_win(const FORM *form)
{
WINDOW *result;
diff --git a/form/fty_alnum.c b/form/fty_alnum.c
index a2ca351..854dc33 100644
--- a/form/fty_alnum.c
+++ b/form/fty_alnum.c
@@ -35,7 +35,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_alnum.c,v 1.25 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_alnum.c,v 1.29 2020/12/12 01:15:37 tom Exp $")
#define thisARG alnumARG
@@ -56,7 +56,7 @@ thisARG;
static void *
Generic_This_Type(void *arg)
{
- thisARG *argp = (thisARG *) 0;
+ thisARG *argp = (thisARG *)0;
if (arg)
{
@@ -140,7 +140,7 @@ static bool
Check_This_Character(int c, const void *argp GCC_UNUSED)
{
#if USE_WIDEC_SUPPORT
- if (iswalnum((wint_t) c))
+ if (iswalnum((wint_t)c))
return TRUE;
#endif
return (isalnum(UChar(c)) ? TRUE : FALSE);
@@ -186,14 +186,14 @@ static FIELDTYPE typeTHIS =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALNUM = &typeTHIS;
+FORM_EXPORT_VAR(FIELDTYPE *) TYPE_ALNUM = &typeTHIS;
#if NCURSES_INTEROP_FUNCS
/* The next routines are to simplify the use of ncurses from
- programming languages with restictions on interop with C level
+ programming languages with restrictions on interop with C level
constructs (e.g. variable access or va_list + ellipsis constructs)
*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_TYPE_ALNUM(void)
{
return TYPE_ALNUM;
diff --git a/form/fty_alpha.c b/form/fty_alpha.c
index 7dec23f..a37459a 100644
--- a/form/fty_alpha.c
+++ b/form/fty_alpha.c
@@ -35,7 +35,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_alpha.c,v 1.27 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_alpha.c,v 1.31 2020/12/12 01:15:37 tom Exp $")
#define thisARG alphaARG
@@ -56,7 +56,7 @@ thisARG;
static void *
Generic_This_Type(void *arg)
{
- thisARG *argp = (thisARG *) 0;
+ thisARG *argp = (thisARG *)0;
if (arg)
{
@@ -140,7 +140,7 @@ static bool
Check_This_Character(int c, const void *argp GCC_UNUSED)
{
#if USE_WIDEC_SUPPORT
- if (iswalpha((wint_t) c))
+ if (iswalpha((wint_t)c))
return TRUE;
#endif
return (isalpha(UChar(c)) ? TRUE : FALSE);
@@ -186,14 +186,14 @@ static FIELDTYPE typeTHIS =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALPHA = &typeTHIS;
+FORM_EXPORT_VAR(FIELDTYPE *) TYPE_ALPHA = &typeTHIS;
#if NCURSES_INTEROP_FUNCS
/* The next routines are to simplify the use of ncurses from
- programming languages with restictions on interop with C level
+ programming languages with restrictions on interop with C level
constructs (e.g. variable access or va_list + ellipsis constructs)
*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_TYPE_ALPHA(void)
{
return TYPE_ALPHA;
diff --git a/form/fty_enum.c b/form/fty_enum.c
index 71978e3..16ffae1 100644
--- a/form/fty_enum.c
+++ b/form/fty_enum.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,7 +35,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_enum.c,v 1.27 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_enum.c,v 1.33 2021/06/17 21:11:08 tom Exp $")
typedef struct
{
@@ -55,9 +55,9 @@ typedef struct
enumParams;
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void *Generic_Enum_Type(void * arg)
-|
+|
| Description : Allocate structure for enumeration type argument.
|
| Return Values : Pointer to argument structure or NULL on error
@@ -66,7 +66,7 @@ static void *
Generic_Enum_Type(void *arg)
{
enumARG *argp = (enumARG *)0;
- enumParams *params = (enumParams *) arg;
+ enumParams *params = (enumParams *)arg;
if (params)
{
@@ -77,7 +77,6 @@ Generic_Enum_Type(void *arg)
int cnt = 0;
char **kp = (char **)0;
char **kwds = (char **)0;
- char **kptarget;
int ccase, cunique;
T((T_CREATE("enumARG %p"), (void *)argp));
@@ -96,6 +95,8 @@ Generic_Enum_Type(void *arg)
if (cnt > 0)
{
+ char **kptarget;
+
/* We copy the keywords, because we can't rely on the fact
that the caller doesn't relocate or free the memory used
for the keywords (maybe he has GC)
@@ -118,9 +119,9 @@ Generic_Enum_Type(void *arg)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void *Make_Enum_Type( va_list * ap )
-|
+|
| Description : Allocate structure for enumeration type argument.
|
| Return Values : Pointer to argument structure or NULL on error
@@ -138,10 +139,10 @@ Make_Enum_Type(va_list *ap)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void *Copy_Enum_Type( const void * argp )
-|
-| Description : Copy structure for enumeration type argument.
+|
+| Description : Copy structure for enumeration type argument.
|
| Return Values : Pointer to argument structure or NULL on error.
+--------------------------------------------------------------------------*/
@@ -182,9 +183,9 @@ Copy_Enum_Type(const void *argp)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void Free_Enum_Type( void * argp )
-|
+|
| Description : Free structure for enumeration type argument.
|
| Return Values : -
@@ -219,11 +220,11 @@ Free_Enum_Type(void *argp)
#define EXACT 2
/*---------------------------------------------------------------------------
-| Facility : libnform
-| Function : static int Compare(const unsigned char * s,
+| Facility : libnform
+| Function : static int Compare(const unsigned char * s,
| const unsigned char * buf,
| bool ccase )
-|
+|
| Description : Check whether or not the text in 'buf' matches the
| text in 's', at least partial.
|
@@ -274,11 +275,11 @@ Compare(const unsigned char *s, const unsigned char *buf,
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static bool Check_Enum_Field(
| FIELD * field,
| const void * argp)
-|
+|
| Description : Validate buffer content to be a valid enumeration value
|
| Return Values : TRUE - field is valid
@@ -292,10 +293,11 @@ Check_Enum_Field(FIELD *field, const void *argp)
bool unique = ((const enumARG *)argp)->checkunique;
unsigned char *bp = (unsigned char *)field_buffer(field, 0);
char *s, *t, *p;
- int res;
while (kwds && (s = (*kwds++)))
{
+ int res;
+
if ((res = Compare((unsigned char *)s, bp, ccase)) != NOMATCH)
{
p = t = s; /* t is at least a partial match */
@@ -331,10 +333,10 @@ static const char *dummy[] =
{(char *)0};
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static bool Next_Enum(FIELD * field,
| const void * argp)
-|
+|
| Description : Check for the next enumeration value
|
| Return Values : TRUE - next value found and loaded
@@ -368,11 +370,11 @@ Next_Enum(FIELD *field, const void *argp)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static bool Previous_Enum(
| FIELD * field,
| const void * argp)
-|
+|
| Description : Check for the previous enumeration value
|
| Return Values : TRUE - previous value found and loaded
@@ -425,15 +427,14 @@ static FIELDTYPE typeENUM =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE *)
-TYPE_ENUM = &typeENUM;
+FORM_EXPORT_VAR(FIELDTYPE *) TYPE_ENUM = &typeENUM;
#if NCURSES_INTEROP_FUNCS
/* The next routines are to simplify the use of ncurses from
- programming languages with restictions on interop with C level
+ programming languages with restrictions on interop with C level
constructs (e.g. variable access or va_list + ellipsis constructs)
*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_TYPE_ENUM(void)
{
return TYPE_ENUM;
diff --git a/form/fty_generic.c b/form/fty_generic.c
index 159d305..301c80a 100644
--- a/form/fty_generic.c
+++ b/form/fty_generic.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2008-2012,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,27 +35,28 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_generic.c,v 1.10 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_generic.c,v 1.15 2021/03/27 23:49:53 tom Exp $")
/*
* This is not a full implementation of a field type, but adds some
* support for higher level languages with some restrictions to interop
- * with C language. Especially the collection of arguments for the
+ * with C language. In particular, the collection of arguments for the
* various fieldtypes is not based on the vararg C mechanism, but on a
- * iterator based callback mechanism that allowes the high level language
+ * iterator based callback mechanism that allows the high level language
* to provide the arguments as a structure. Most languages have mechanisms
* to layout structures so that they can be passed to C.
+ *
* The languages can register a new generic fieldtype dynamically and store
* a handle (key) to the calling object as an argument. Together with that
* it can register a freearg callback, so that the high level language
* remains in control of the memory management of the arguments they pass.
* The design idea is, that the high-level language - typically a OO
- * language like C# or Java, uses it's own dispatching mechanisms
+ * language like C# or Java, uses its own dispatching mechanisms
* (polymorphism) to call the proper check routines responsible for the
* argument type. So these language implement typically only one generic
* fieldtype they register with the forms library using this call.
*
- * For that purpose we have extended the fieldtype struc by a new element
+ * For that purpose we have extended the fieldtype structure by a new element
* that gets the arguments from a single struct passed by the caller.
*
*/
@@ -99,7 +100,7 @@ Generic_This_Type(void *arg)
|
| Return Values : Fieldtype pointer or NULL if error occurred
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_generic_fieldtype(bool (*const field_check) (FORM *, FIELD *, const void *),
bool (*const char_check) (int, FORM *, FIELD *, const
void *),
@@ -220,7 +221,7 @@ GenericArgument(const FIELDTYPE *typ,
| Return Values : E_OK if all went well
| E_SYSTEM_ERROR if an error occurred
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
_nc_set_generic_fieldtype(FIELD *field,
FIELDTYPE *ftyp,
int (*argiterator) (void **))
@@ -273,15 +274,15 @@ _nc_set_generic_fieldtype(FIELD *field,
| Description : Get the current position of the form cursor position
| We also return the field window
|
-| Return Values : The fields Window or NULL on error
+| Return Values : The field's Window or NULL on error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(WINDOW *)
+FORM_EXPORT(WINDOW *)
_nc_form_cursor(const FORM *form, int *pRow, int *pCol)
{
int code = E_SYSTEM_ERROR;
WINDOW *res = (WINDOW *)0;
- if (!(form == 0 || pRow == 0 || pCol == 0))
+ if (form != 0 && pRow != 0 && pCol != 0)
{
*pRow = form->currow;
*pCol = form->curcol;
diff --git a/form/fty_int.c b/form/fty_int.c
index 7105640..c7e3135 100644
--- a/form/fty_int.c
+++ b/form/fty_int.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,7 +35,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_int.c,v 1.27 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_int.c,v 1.33 2021/06/17 21:11:08 tom Exp $")
#if USE_WIDEC_SUPPORT
#define isDigit(c) (iswdigit((wint_t)(c)) || isdigit(UChar(c)))
@@ -62,9 +62,9 @@ typedef struct
integerPARM;
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void *Generic_This_Type( void * arg )
-|
+|
| Description : Allocate structure for integer type argument.
|
| Return Values : Pointer to argument structure or NULL on error
@@ -72,8 +72,8 @@ integerPARM;
static void *
Generic_This_Type(void *arg)
{
- thisARG *argp = (thisARG *) 0;
- thisARG *param = (thisARG *) arg;
+ thisARG *argp = (thisARG *)0;
+ thisARG *param = (thisARG *)arg;
if (param)
{
@@ -89,9 +89,9 @@ Generic_This_Type(void *arg)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void *Make_This_Type( va_list * ap )
-|
+|
| Description : Allocate structure for integer type argument.
|
| Return Values : Pointer to argument structure or NULL on error
@@ -109,10 +109,10 @@ Make_This_Type(va_list *ap)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void *Copy_This_Type(const void * argp)
-|
-| Description : Copy structure for integer type argument.
+|
+| Description : Copy structure for integer type argument.
|
| Return Values : Pointer to argument structure or NULL on error.
+--------------------------------------------------------------------------*/
@@ -120,11 +120,12 @@ static void *
Copy_This_Type(const void *argp)
{
const thisARG *ap = (const thisARG *)argp;
- thisARG *result = (thisARG *) 0;
+ thisARG *result = (thisARG *)0;
if (argp)
{
result = typeMalloc(thisARG, 1);
+
if (result)
{
T((T_CREATE("thisARG %p"), (void *)result));
@@ -135,9 +136,9 @@ Copy_This_Type(const void *argp)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static void Free_This_Type(void * argp)
-|
+|
| Description : Free structure for integer type argument.
|
| Return Values : -
@@ -150,11 +151,11 @@ Free_This_Type(void *argp)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static bool Check_This_Field(
| FIELD * field,
| const void * argp)
-|
+|
| Description : Validate buffer content to be a valid integer value
|
| Return Values : TRUE - field is valid
@@ -169,11 +170,9 @@ Check_This_Field(FIELD *field, const void *argp)
int prec = argi->precision;
unsigned char *bp = (unsigned char *)field_buffer(field, 0);
char *s = (char *)bp;
- long val;
- char buf[100];
bool result = FALSE;
- while (*bp && *bp == ' ')
+ while (*bp == ' ')
bp++;
if (*bp)
{
@@ -182,13 +181,14 @@ Check_This_Field(FIELD *field, const void *argp)
#if USE_WIDEC_SUPPORT
if (*bp)
{
- bool blank = FALSE;
int len;
- int n;
wchar_t *list = _nc_Widen_String((char *)bp, &len);
if (list != 0)
{
+ bool blank = FALSE;
+ int n;
+
result = TRUE;
for (n = 0; n < len; ++n)
{
@@ -226,7 +226,8 @@ Check_This_Field(FIELD *field, const void *argp)
#endif
if (result)
{
- val = atol(s);
+ long val = atol(s);
+
if (low < high)
{
if (val < low || val > high)
@@ -234,6 +235,8 @@ Check_This_Field(FIELD *field, const void *argp)
}
if (result)
{
+ char buf[100];
+
_nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
"%.*ld", (prec > 0 ? prec : 0), val);
set_field_buffer(field, 0, buf);
@@ -244,11 +247,11 @@ Check_This_Field(FIELD *field, const void *argp)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static bool Check_This_Character(
| int c,
| const void * argp)
-|
+|
| Description : Check a character for the integer type.
|
| Return Values : TRUE - character is valid
@@ -278,14 +281,14 @@ static FIELDTYPE typeTHIS =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_INTEGER = &typeTHIS;
+FORM_EXPORT_VAR(FIELDTYPE *) TYPE_INTEGER = &typeTHIS;
#if NCURSES_INTEROP_FUNCS
/* The next routines are to simplify the use of ncurses from
- programming languages with restictions on interop with C level
+ programming languages with restrictions on interop with C level
constructs (e.g. variable access or va_list + ellipsis constructs)
*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_TYPE_INTEGER(void)
{
return TYPE_INTEGER;
diff --git a/form/fty_ipv4.c b/form/fty_ipv4.c
index 3713377..108f7b4 100644
--- a/form/fty_ipv4.c
+++ b/form/fty_ipv4.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2006,2009 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,14 +35,14 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_ipv4.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_ipv4.c,v 1.16 2021/06/17 21:11:08 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static bool Check_IPV4_Field(
| FIELD * field,
| const void * argp)
-|
+|
| Description : Validate buffer content to be a valid IP number (Ver. 4)
|
| Return Values : TRUE - field is valid
@@ -53,7 +53,7 @@ Check_IPV4_Field(FIELD *field, const void *argp GCC_UNUSED)
{
char *bp = field_buffer(field, 0);
int num = 0, len;
- unsigned int d1, d2, d3, d4;
+ unsigned int d1 = 0, d2 = 0, d3 = 0, d4 = 0;
if (isdigit(UChar(*bp))) /* Must start with digit */
{
@@ -70,11 +70,11 @@ Check_IPV4_Field(FIELD *field, const void *argp GCC_UNUSED)
}
/*---------------------------------------------------------------------------
-| Facility : libnform
+| Facility : libnform
| Function : static bool Check_IPV4_Character(
-| int c,
+| int c,
| const void *argp )
-|
+|
| Description : Check a character for unsigned type or period.
|
| Return Values : TRUE - character is valid
@@ -104,14 +104,14 @@ static FIELDTYPE typeIPV4 =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_IPV4 = &typeIPV4;
+FORM_EXPORT_VAR(FIELDTYPE *) TYPE_IPV4 = &typeIPV4;
#if NCURSES_INTEROP_FUNCS
/* The next routines are to simplify the use of ncurses from
- programming languages with restictions on interop with C level
+ programming languages with restrictions on interop with C level
constructs (e.g. variable access or va_list + ellipsis constructs)
*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_TYPE_IPV4(void)
{
return TYPE_IPV4;
diff --git a/form/fty_num.c b/form/fty_num.c
index b4dfeb9..34cef63 100644
--- a/form/fty_num.c
+++ b/form/fty_num.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,7 +35,7 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_num.c,v 1.32 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_num.c,v 1.37 2021/03/27 23:49:58 tom Exp $")
#if HAVE_LOCALE_H
#include <locale.h>
@@ -83,8 +83,8 @@ thisPARM;
static void *
Generic_This_Type(void *arg)
{
- thisARG *argn = (thisARG *) 0;
- thisPARM *args = (thisPARM *) arg;
+ thisARG *argn = (thisARG *)0;
+ thisPARM *args = (thisPARM *)arg;
if (args)
{
@@ -139,11 +139,12 @@ static void *
Copy_This_Type(const void *argp)
{
const thisARG *ap = (const thisARG *)argp;
- thisARG *result = (thisARG *) 0;
+ thisARG *result = (thisARG *)0;
if (argp)
{
result = typeMalloc(thisARG, 1);
+
if (result)
{
T((T_CREATE("thisARG %p"), (void *)result));
@@ -187,12 +188,10 @@ Check_This_Field(FIELD *field, const void *argp)
int prec = argn->precision;
unsigned char *bp = (unsigned char *)field_buffer(field, 0);
char *s = (char *)bp;
- double val = 0.0;
struct lconv *L = argn->L;
- char buf[64];
bool result = FALSE;
- while (*bp && *bp == ' ')
+ while (*bp == ' ')
bp++;
if (*bp)
{
@@ -201,14 +200,15 @@ Check_This_Field(FIELD *field, const void *argp)
#if USE_WIDEC_SUPPORT
if (*bp)
{
- bool blank = FALSE;
- int state = 0;
int len;
- int n;
wchar_t *list = _nc_Widen_String((char *)bp, &len);
if (list != 0)
{
+ bool blank = FALSE;
+ int state = 0;
+ int n;
+
result = TRUE;
for (n = 0; n < len; ++n)
{
@@ -264,7 +264,8 @@ Check_This_Field(FIELD *field, const void *argp)
#endif
if (result)
{
- val = atof(s);
+ double val = atof(s);
+
if (low < high)
{
if (val < low || val > high)
@@ -272,6 +273,8 @@ Check_This_Field(FIELD *field, const void *argp)
}
if (result)
{
+ char buf[64];
+
_nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
"%.*f", (prec > 0 ? prec : 0), val);
set_field_buffer(field, 0, buf);
@@ -324,14 +327,14 @@ static FIELDTYPE typeTHIS =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_NUMERIC = &typeTHIS;
+FORM_EXPORT_VAR(FIELDTYPE *) TYPE_NUMERIC = &typeTHIS;
#if NCURSES_INTEROP_FUNCS
/* The next routines are to simplify the use of ncurses from
- programming languages with restictions on interop with C level
+ programming languages with restrictions on interop with C level
constructs (e.g. variable access or va_list + ellipsis constructs)
*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_TYPE_NUMERIC(void)
{
return TYPE_NUMERIC;
diff --git a/form/fty_regex.c b/form/fty_regex.c
index da0ef08..62dcab5 100644
--- a/form/fty_regex.c
+++ b/form/fty_regex.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,12 +35,43 @@
#include "form.priv.h"
-MODULE_ID("$Id: fty_regex.c,v 1.28 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: fty_regex.c,v 1.33 2021/08/14 15:01:52 tom Exp $")
#if HAVE_REGEX_H_FUNCS || HAVE_LIB_PCRE2 /* We prefer POSIX regex */
-#if HAVE_PCRE2_POSIX_H
-#include <pcre2-posix.h>
+#if HAVE_PCRE2POSIX_H
+#include <pcre2posix.h>
+
+/* pcre2 used to provide its "POSIX" entrypoints using the same names as the
+ * standard ones in the C runtime, but that never worked because the linker
+ * would use the C runtime. Debian patched the library to fix this symbol
+ * conflict, but overlooked the header file, and Debian's patch was made
+ * obsolete when pcre2 was changed early in 2019 to provide different names.
+ *
+ * Here is a workaround to make the older version of Debian's package work.
+ */
+#if !defined(PCRE2regcomp) && defined(HAVE_PCRE2REGCOMP)
+
+#undef regcomp
+#undef regexec
+#undef regfree
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+ PCRE2POSIX_EXP_DECL int PCRE2regcomp(regex_t *, const char *, int);
+ PCRE2POSIX_EXP_DECL int PCRE2regexec(const regex_t *, const char *, size_t,
+ regmatch_t *, int);
+ PCRE2POSIX_EXP_DECL void PCRE2regfree(regex_t *);
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+#define regcomp(r,s,n) PCRE2regcomp(r,s,n)
+#define regexec(r,s,n,m,x) PCRE2regexec(r,s,n,m,x)
+#define regfree(r) PCRE2regfree(r)
+#endif
+/* end workaround... */
#elif HAVE_PCREPOSIX_H
#include <pcreposix.h>
#else
@@ -340,14 +371,14 @@ static FIELDTYPE typeREGEXP =
#endif
};
-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_REGEXP = &typeREGEXP;
+FORM_EXPORT_VAR(FIELDTYPE *) TYPE_REGEXP = &typeREGEXP;
#if NCURSES_INTEROP_FUNCS
/* The next routines are to simplify the use of ncurses from
- programming languages with restictions on interop with C level
+ programming languages with restrictions on interop with C level
constructs (e.g. variable access or va_list + ellipsis constructs)
*/
-NCURSES_EXPORT(FIELDTYPE *)
+FORM_EXPORT(FIELDTYPE *)
_nc_TYPE_REGEXP(void)
{
return TYPE_REGEXP;
diff --git a/form/llib-lform b/form/llib-lform
index b7f2acb..334f8cb 100644
--- a/form/llib-lform
+++ b/form/llib-lform
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -65,11 +65,11 @@ Form_Hook _nc_retrace_form_hook(
#undef set_fieldtype_arg
int set_fieldtype_arg(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
void *(*const make_arg)(
- va_list *p1),
+ va_list *p1),
void *(*const copy_arg)(
- const void *p1),
+ const void *p1),
void (*const free_arg)(
void *p1))
{ return(*(int *)0); }
@@ -83,7 +83,7 @@ void *field_arg(
#undef set_field_fore
int set_field_fore(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -94,7 +94,7 @@ chtype field_fore(
#undef set_field_back
int set_field_back(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -107,7 +107,7 @@ chtype field_back(
#undef set_current_field
int set_current_field(
- FORM *form,
+ FORM *form,
FIELD *field)
{ return(*(int *)0); }
@@ -133,27 +133,27 @@ FIELD *_nc_Default_Field;
#undef _nc_Make_Argument
TypeArgument *_nc_Make_Argument(
- const FIELDTYPE *typ,
- va_list *ap,
+ const FIELDTYPE *typ,
+ va_list *ap,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Copy_Argument
TypeArgument *_nc_Copy_Argument(
- const FIELDTYPE *typ,
- const TypeArgument *argp,
+ const FIELDTYPE *typ,
+ const TypeArgument *argp,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Free_Argument
void _nc_Free_Argument(
- const FIELDTYPE *typ,
+ const FIELDTYPE *typ,
TypeArgument *argp)
{ /* void */ }
#undef _nc_Copy_Type
NCURSES_BOOL _nc_Copy_Type(
- FIELD *dst,
+ FIELD *dst,
FIELD const *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -164,11 +164,11 @@ void _nc_Free_Type(
#undef new_field
FIELD *new_field(
- int rows,
- int cols,
- int frow,
- int fcol,
- int nrow,
+ int rows,
+ int cols,
+ int frow,
+ int fcol,
+ int nrow,
int nbuf)
{ return(*(FIELD **)0); }
@@ -181,8 +181,8 @@ int free_field(
#undef dup_field
FIELD *dup_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -190,12 +190,12 @@ FIELD *dup_field(
#undef set_fieldtype_choice
int set_fieldtype_choice(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
NCURSES_BOOL (*const next_choice)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const prev_choice)(
- FIELD *p1,
+ FIELD *p1,
const void *p2))
{ return(*(int *)0); }
@@ -203,7 +203,7 @@ int set_fieldtype_choice(
#undef link_fieldtype
FIELDTYPE *link_fieldtype(
- FIELDTYPE *type1,
+ FIELDTYPE *type1,
FIELDTYPE *type2)
{ return(*(FIELDTYPE **)0); }
@@ -211,20 +211,20 @@ FIELDTYPE *link_fieldtype(
#undef field_info
int field_info(
- const FIELD *field,
- int *rows,
- int *cols,
- int *frow,
- int *fcol,
- int *nrow,
+ const FIELD *field,
+ int *rows,
+ int *cols,
+ int *frow,
+ int *fcol,
+ int *nrow,
int *nbuf)
{ return(*(int *)0); }
#undef dynamic_field_info
int dynamic_field_info(
- const FIELD *field,
- int *drows,
- int *dcols,
+ const FIELD *field,
+ int *drows,
+ int *dcols,
int *maxgrow)
{ return(*(int *)0); }
@@ -232,7 +232,7 @@ int dynamic_field_info(
#undef set_field_just
int set_field_just(
- FIELD *field,
+ FIELD *field,
int just)
{ return(*(int *)0); }
@@ -245,8 +245,8 @@ int field_just(
#undef link_field
FIELD *link_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -254,7 +254,7 @@ FIELD *link_field(
#undef set_max_field
int set_max_field(
- FIELD *field,
+ FIELD *field,
int maxgrow)
{ return(*(int *)0); }
@@ -262,8 +262,8 @@ int set_max_field(
#undef move_field
int move_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(int *)0); }
@@ -275,10 +275,10 @@ FIELDTYPE *_nc_Default_FieldType;
#undef new_fieldtype
FIELDTYPE *new_fieldtype(
NCURSES_BOOL (*const field_check)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const char_check)(
- int p1,
+ int p1,
const void *p2))
{ return(*(FIELDTYPE **)0); }
@@ -291,7 +291,7 @@ int free_fieldtype(
#undef set_field_opts
int set_field_opts(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -302,13 +302,13 @@ Field_Options field_opts(
#undef field_opts_on
int field_opts_on(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
#undef field_opts_off
int field_opts_off(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -316,7 +316,7 @@ int field_opts_off(
#undef set_field_pad
int set_field_pad(
- FIELD *field,
+ FIELD *field,
int ch)
{ return(*(int *)0); }
@@ -329,7 +329,7 @@ int field_pad(
#undef set_new_page
int set_new_page(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL new_page_flag)
{ return(*(int *)0); }
@@ -342,7 +342,7 @@ NCURSES_BOOL new_page(
#undef set_field_status
int set_field_status(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL status)
{ return(*(int *)0); }
@@ -355,8 +355,8 @@ NCURSES_BOOL field_status(
#undef set_field_type
int set_field_type(
- FIELD *field,
- FIELDTYPE *type,
+ FIELD *field,
+ FIELDTYPE *type,
...)
{ return(*(int *)0); }
@@ -369,7 +369,7 @@ FIELDTYPE *field_type(
#undef set_field_userptr
int set_field_userptr(
- FIELD *field,
+ FIELD *field,
void *usrptr)
{ return(*(int *)0); }
@@ -404,7 +404,7 @@ FORM *_nc_Default_Form;
#undef new_form_sp
FORM *new_form_sp(
- SCREEN *sp,
+ SCREEN *sp,
FIELD **fields)
{ return(*(FORM **)0); }
@@ -420,7 +420,7 @@ int free_form(
#undef set_form_fields
int set_form_fields(
- FORM *form,
+ FORM *form,
FIELD **fields)
{ return(*(int *)0); }
@@ -438,8 +438,8 @@ int field_count(
#undef _nc_get_fieldbuffer
void _nc_get_fieldbuffer(
- FORM *form,
- FIELD *field,
+ FORM *form,
+ FIELD *field,
char *buf)
{ /* void */ }
@@ -460,7 +460,7 @@ int _nc_Synchronize_Attributes(
#undef _nc_Synchronize_Options
int _nc_Synchronize_Options(
- FIELD *field,
+ FIELD *field,
Field_Options newopts)
{ return(*(int *)0); }
@@ -471,7 +471,7 @@ void _nc_Unset_Current_Field(
#undef _nc_Set_Current_Field
int _nc_Set_Current_Field(
- FORM *form,
+ FORM *form,
FIELD *newfield)
{ return(*(int *)0); }
@@ -487,34 +487,34 @@ FIELD *_nc_First_Active_Field(
#undef _nc_Set_Form_Page
int _nc_Set_Form_Page(
- FORM *form,
- int page,
+ FORM *form,
+ int page,
FIELD *field)
{ return(*(int *)0); }
typedef struct
{
- int keycode;
- int (*cmd) (FORM *);
+ int keycode;
+ int (*cmd) (FORM *);
}
Binding_Info;
#undef form_driver
int form_driver(
- FORM *form,
+ FORM *form,
int c)
{ return(*(int *)0); }
#undef set_field_buffer
int set_field_buffer(
- FIELD *field,
- int buffer,
+ FIELD *field,
+ int buffer,
const char *value)
{ return(*(int *)0); }
#undef field_buffer
char *field_buffer(
- const FIELD *field,
+ const FIELD *field,
int buffer)
{ return(*(char **)0); }
@@ -522,7 +522,7 @@ char *field_buffer(
#undef set_field_init
int set_field_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -533,7 +533,7 @@ Form_Hook field_init(
#undef set_field_term
int set_field_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -544,7 +544,7 @@ Form_Hook field_term(
#undef set_form_init
int set_form_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -555,7 +555,7 @@ Form_Hook form_init(
#undef set_form_term
int set_form_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -568,7 +568,7 @@ Form_Hook form_term(
#undef set_form_opts
int set_form_opts(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -579,13 +579,13 @@ Form_Options form_opts(
#undef form_opts_on
int form_opts_on(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
#undef form_opts_off
int form_opts_off(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -593,7 +593,7 @@ int form_opts_off(
#undef set_form_page
int set_form_page(
- FORM *form,
+ FORM *form,
int page)
{ return(*(int *)0); }
@@ -630,8 +630,8 @@ int form_request_by_name(
#undef scale_form
int scale_form(
- const FORM *form,
- int *rows,
+ const FORM *form,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -639,7 +639,7 @@ int scale_form(
#undef set_form_sub
int set_form_sub(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -652,7 +652,7 @@ WINDOW *form_sub(
#undef set_form_userptr
int set_form_userptr(
- FORM *form,
+ FORM *form,
void *usrptr)
{ return(*(int *)0); }
@@ -665,7 +665,7 @@ void *form_userptr(
#undef set_form_win
int set_form_win(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -735,38 +735,38 @@ FIELDTYPE *_nc_TYPE_ENUM(void)
#undef _nc_generic_fieldtype
FIELDTYPE *_nc_generic_fieldtype(
NCURSES_BOOL (*const field_check)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const char_check)(
- int p1,
- FORM *p2,
- FIELD *p3,
- const void *p4),
+ int p1,
+ FORM *p2,
+ FIELD *p3,
+ const void *p4),
NCURSES_BOOL (*const next)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const prev)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
void (*freecallback)(
void *p1))
{ return(*(FIELDTYPE **)0); }
#undef _nc_set_generic_fieldtype
int _nc_set_generic_fieldtype(
- FIELD *field,
- FIELDTYPE *ftyp,
+ FIELD *field,
+ FIELDTYPE *ftyp,
int (*argiterator)(
void **p1))
{ return(*(int *)0); }
#undef _nc_form_cursor
WINDOW *_nc_form_cursor(
- const FORM *form,
- int *pRow,
+ const FORM *form,
+ int *pRow,
int *pCol)
{ return(*(WINDOW **)0); }
diff --git a/form/llib-lformt b/form/llib-lformt
index 6460016..d91b3f0 100644
--- a/form/llib-lformt
+++ b/form/llib-lformt
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2010-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -65,11 +65,11 @@ Form_Hook _nc_retrace_form_hook(
#undef set_fieldtype_arg
int set_fieldtype_arg(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
void *(*const make_arg)(
- va_list *p1),
+ va_list *p1),
void *(*const copy_arg)(
- const void *p1),
+ const void *p1),
void (*const free_arg)(
void *p1))
{ return(*(int *)0); }
@@ -83,7 +83,7 @@ void *field_arg(
#undef set_field_fore
int set_field_fore(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -94,7 +94,7 @@ chtype field_fore(
#undef set_field_back
int set_field_back(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -107,7 +107,7 @@ chtype field_back(
#undef set_current_field
int set_current_field(
- FORM *form,
+ FORM *form,
FIELD *field)
{ return(*(int *)0); }
@@ -133,27 +133,27 @@ FIELD *_nc_Default_Field;
#undef _nc_Make_Argument
TypeArgument *_nc_Make_Argument(
- const FIELDTYPE *typ,
- va_list *ap,
+ const FIELDTYPE *typ,
+ va_list *ap,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Copy_Argument
TypeArgument *_nc_Copy_Argument(
- const FIELDTYPE *typ,
- const TypeArgument *argp,
+ const FIELDTYPE *typ,
+ const TypeArgument *argp,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Free_Argument
void _nc_Free_Argument(
- const FIELDTYPE *typ,
+ const FIELDTYPE *typ,
TypeArgument *argp)
{ /* void */ }
#undef _nc_Copy_Type
NCURSES_BOOL _nc_Copy_Type(
- FIELD *dst,
+ FIELD *dst,
FIELD const *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -164,11 +164,11 @@ void _nc_Free_Type(
#undef new_field
FIELD *new_field(
- int rows,
- int cols,
- int frow,
- int fcol,
- int nrow,
+ int rows,
+ int cols,
+ int frow,
+ int fcol,
+ int nrow,
int nbuf)
{ return(*(FIELD **)0); }
@@ -181,8 +181,8 @@ int free_field(
#undef dup_field
FIELD *dup_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -190,12 +190,12 @@ FIELD *dup_field(
#undef set_fieldtype_choice
int set_fieldtype_choice(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
NCURSES_BOOL (*const next_choice)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const prev_choice)(
- FIELD *p1,
+ FIELD *p1,
const void *p2))
{ return(*(int *)0); }
@@ -203,7 +203,7 @@ int set_fieldtype_choice(
#undef link_fieldtype
FIELDTYPE *link_fieldtype(
- FIELDTYPE *type1,
+ FIELDTYPE *type1,
FIELDTYPE *type2)
{ return(*(FIELDTYPE **)0); }
@@ -211,20 +211,20 @@ FIELDTYPE *link_fieldtype(
#undef field_info
int field_info(
- const FIELD *field,
- int *rows,
- int *cols,
- int *frow,
- int *fcol,
- int *nrow,
+ const FIELD *field,
+ int *rows,
+ int *cols,
+ int *frow,
+ int *fcol,
+ int *nrow,
int *nbuf)
{ return(*(int *)0); }
#undef dynamic_field_info
int dynamic_field_info(
- const FIELD *field,
- int *drows,
- int *dcols,
+ const FIELD *field,
+ int *drows,
+ int *dcols,
int *maxgrow)
{ return(*(int *)0); }
@@ -232,7 +232,7 @@ int dynamic_field_info(
#undef set_field_just
int set_field_just(
- FIELD *field,
+ FIELD *field,
int just)
{ return(*(int *)0); }
@@ -245,8 +245,8 @@ int field_just(
#undef link_field
FIELD *link_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -254,7 +254,7 @@ FIELD *link_field(
#undef set_max_field
int set_max_field(
- FIELD *field,
+ FIELD *field,
int maxgrow)
{ return(*(int *)0); }
@@ -262,8 +262,8 @@ int set_max_field(
#undef move_field
int move_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(int *)0); }
@@ -275,10 +275,10 @@ FIELDTYPE *_nc_Default_FieldType;
#undef new_fieldtype
FIELDTYPE *new_fieldtype(
NCURSES_BOOL (*const field_check)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const char_check)(
- int p1,
+ int p1,
const void *p2))
{ return(*(FIELDTYPE **)0); }
@@ -291,7 +291,7 @@ int free_fieldtype(
#undef set_field_opts
int set_field_opts(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -302,13 +302,13 @@ Field_Options field_opts(
#undef field_opts_on
int field_opts_on(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
#undef field_opts_off
int field_opts_off(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -316,7 +316,7 @@ int field_opts_off(
#undef set_field_pad
int set_field_pad(
- FIELD *field,
+ FIELD *field,
int ch)
{ return(*(int *)0); }
@@ -329,7 +329,7 @@ int field_pad(
#undef set_new_page
int set_new_page(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL new_page_flag)
{ return(*(int *)0); }
@@ -342,7 +342,7 @@ NCURSES_BOOL new_page(
#undef set_field_status
int set_field_status(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL status)
{ return(*(int *)0); }
@@ -355,8 +355,8 @@ NCURSES_BOOL field_status(
#undef set_field_type
int set_field_type(
- FIELD *field,
- FIELDTYPE *type,
+ FIELD *field,
+ FIELDTYPE *type,
...)
{ return(*(int *)0); }
@@ -369,7 +369,7 @@ FIELDTYPE *field_type(
#undef set_field_userptr
int set_field_userptr(
- FIELD *field,
+ FIELD *field,
void *usrptr)
{ return(*(int *)0); }
@@ -404,7 +404,7 @@ FORM *_nc_Default_Form;
#undef new_form_sp
FORM *new_form_sp(
- SCREEN *sp,
+ SCREEN *sp,
FIELD **fields)
{ return(*(FORM **)0); }
@@ -420,7 +420,7 @@ int free_form(
#undef set_form_fields
int set_form_fields(
- FORM *form,
+ FORM *form,
FIELD **fields)
{ return(*(int *)0); }
@@ -438,8 +438,8 @@ int field_count(
#undef _nc_get_fieldbuffer
void _nc_get_fieldbuffer(
- FORM *form,
- FIELD *field,
+ FORM *form,
+ FIELD *field,
char *buf)
{ /* void */ }
@@ -460,7 +460,7 @@ int _nc_Synchronize_Attributes(
#undef _nc_Synchronize_Options
int _nc_Synchronize_Options(
- FIELD *field,
+ FIELD *field,
Field_Options newopts)
{ return(*(int *)0); }
@@ -471,7 +471,7 @@ void _nc_Unset_Current_Field(
#undef _nc_Set_Current_Field
int _nc_Set_Current_Field(
- FORM *form,
+ FORM *form,
FIELD *newfield)
{ return(*(int *)0); }
@@ -487,34 +487,34 @@ FIELD *_nc_First_Active_Field(
#undef _nc_Set_Form_Page
int _nc_Set_Form_Page(
- FORM *form,
- int page,
+ FORM *form,
+ int page,
FIELD *field)
{ return(*(int *)0); }
typedef struct
{
- int keycode;
- int (*cmd) (FORM *);
+ int keycode;
+ int (*cmd) (FORM *);
}
Binding_Info;
#undef form_driver
int form_driver(
- FORM *form,
+ FORM *form,
int c)
{ return(*(int *)0); }
#undef set_field_buffer
int set_field_buffer(
- FIELD *field,
- int buffer,
+ FIELD *field,
+ int buffer,
const char *value)
{ return(*(int *)0); }
#undef field_buffer
char *field_buffer(
- const FIELD *field,
+ const FIELD *field,
int buffer)
{ return(*(char **)0); }
@@ -522,7 +522,7 @@ char *field_buffer(
#undef set_field_init
int set_field_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -533,7 +533,7 @@ Form_Hook field_init(
#undef set_field_term
int set_field_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -544,7 +544,7 @@ Form_Hook field_term(
#undef set_form_init
int set_form_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -555,7 +555,7 @@ Form_Hook form_init(
#undef set_form_term
int set_form_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -568,7 +568,7 @@ Form_Hook form_term(
#undef set_form_opts
int set_form_opts(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -579,13 +579,13 @@ Form_Options form_opts(
#undef form_opts_on
int form_opts_on(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
#undef form_opts_off
int form_opts_off(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -593,7 +593,7 @@ int form_opts_off(
#undef set_form_page
int set_form_page(
- FORM *form,
+ FORM *form,
int page)
{ return(*(int *)0); }
@@ -630,8 +630,8 @@ int form_request_by_name(
#undef scale_form
int scale_form(
- const FORM *form,
- int *rows,
+ const FORM *form,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -639,7 +639,7 @@ int scale_form(
#undef set_form_sub
int set_form_sub(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -652,7 +652,7 @@ WINDOW *form_sub(
#undef set_form_userptr
int set_form_userptr(
- FORM *form,
+ FORM *form,
void *usrptr)
{ return(*(int *)0); }
@@ -665,7 +665,7 @@ void *form_userptr(
#undef set_form_win
int set_form_win(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -735,38 +735,38 @@ FIELDTYPE *_nc_TYPE_ENUM(void)
#undef _nc_generic_fieldtype
FIELDTYPE *_nc_generic_fieldtype(
NCURSES_BOOL (*const field_check)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const char_check)(
- int p1,
- FORM *p2,
- FIELD *p3,
- const void *p4),
+ int p1,
+ FORM *p2,
+ FIELD *p3,
+ const void *p4),
NCURSES_BOOL (*const next)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const prev)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
void (*freecallback)(
void *p1))
{ return(*(FIELDTYPE **)0); }
#undef _nc_set_generic_fieldtype
int _nc_set_generic_fieldtype(
- FIELD *field,
- FIELDTYPE *ftyp,
+ FIELD *field,
+ FIELDTYPE *ftyp,
int (*argiterator)(
void **p1))
{ return(*(int *)0); }
#undef _nc_form_cursor
WINDOW *_nc_form_cursor(
- const FORM *form,
- int *pRow,
+ const FORM *form,
+ int *pRow,
int *pCol)
{ return(*(WINDOW **)0); }
diff --git a/form/llib-lformtw b/form/llib-lformtw
index a24dd1a..340bf59 100644
--- a/form/llib-lformtw
+++ b/form/llib-lformtw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2010-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -65,11 +65,11 @@ Form_Hook _nc_retrace_form_hook(
#undef set_fieldtype_arg
int set_fieldtype_arg(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
void *(*const make_arg)(
- va_list *p1),
+ va_list *p1),
void *(*const copy_arg)(
- const void *p1),
+ const void *p1),
void (*const free_arg)(
void *p1))
{ return(*(int *)0); }
@@ -83,7 +83,7 @@ void *field_arg(
#undef set_field_fore
int set_field_fore(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -94,7 +94,7 @@ chtype field_fore(
#undef set_field_back
int set_field_back(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -107,7 +107,7 @@ chtype field_back(
#undef set_current_field
int set_current_field(
- FORM *form,
+ FORM *form,
FIELD *field)
{ return(*(int *)0); }
@@ -133,27 +133,27 @@ FIELD *_nc_Default_Field;
#undef _nc_Make_Argument
TypeArgument *_nc_Make_Argument(
- const FIELDTYPE *typ,
- va_list *ap,
+ const FIELDTYPE *typ,
+ va_list *ap,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Copy_Argument
TypeArgument *_nc_Copy_Argument(
- const FIELDTYPE *typ,
- const TypeArgument *argp,
+ const FIELDTYPE *typ,
+ const TypeArgument *argp,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Free_Argument
void _nc_Free_Argument(
- const FIELDTYPE *typ,
+ const FIELDTYPE *typ,
TypeArgument *argp)
{ /* void */ }
#undef _nc_Copy_Type
NCURSES_BOOL _nc_Copy_Type(
- FIELD *dst,
+ FIELD *dst,
FIELD const *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -164,11 +164,11 @@ void _nc_Free_Type(
#undef new_field
FIELD *new_field(
- int rows,
- int cols,
- int frow,
- int fcol,
- int nrow,
+ int rows,
+ int cols,
+ int frow,
+ int fcol,
+ int nrow,
int nbuf)
{ return(*(FIELD **)0); }
@@ -181,8 +181,8 @@ int free_field(
#undef dup_field
FIELD *dup_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -190,12 +190,12 @@ FIELD *dup_field(
#undef set_fieldtype_choice
int set_fieldtype_choice(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
NCURSES_BOOL (*const next_choice)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const prev_choice)(
- FIELD *p1,
+ FIELD *p1,
const void *p2))
{ return(*(int *)0); }
@@ -203,7 +203,7 @@ int set_fieldtype_choice(
#undef link_fieldtype
FIELDTYPE *link_fieldtype(
- FIELDTYPE *type1,
+ FIELDTYPE *type1,
FIELDTYPE *type2)
{ return(*(FIELDTYPE **)0); }
@@ -211,20 +211,20 @@ FIELDTYPE *link_fieldtype(
#undef field_info
int field_info(
- const FIELD *field,
- int *rows,
- int *cols,
- int *frow,
- int *fcol,
- int *nrow,
+ const FIELD *field,
+ int *rows,
+ int *cols,
+ int *frow,
+ int *fcol,
+ int *nrow,
int *nbuf)
{ return(*(int *)0); }
#undef dynamic_field_info
int dynamic_field_info(
- const FIELD *field,
- int *drows,
- int *dcols,
+ const FIELD *field,
+ int *drows,
+ int *dcols,
int *maxgrow)
{ return(*(int *)0); }
@@ -232,7 +232,7 @@ int dynamic_field_info(
#undef set_field_just
int set_field_just(
- FIELD *field,
+ FIELD *field,
int just)
{ return(*(int *)0); }
@@ -245,8 +245,8 @@ int field_just(
#undef link_field
FIELD *link_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -254,7 +254,7 @@ FIELD *link_field(
#undef set_max_field
int set_max_field(
- FIELD *field,
+ FIELD *field,
int maxgrow)
{ return(*(int *)0); }
@@ -262,8 +262,8 @@ int set_max_field(
#undef move_field
int move_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(int *)0); }
@@ -275,10 +275,10 @@ FIELDTYPE *_nc_Default_FieldType;
#undef new_fieldtype
FIELDTYPE *new_fieldtype(
NCURSES_BOOL (*const field_check)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const char_check)(
- int p1,
+ int p1,
const void *p2))
{ return(*(FIELDTYPE **)0); }
@@ -291,7 +291,7 @@ int free_fieldtype(
#undef set_field_opts
int set_field_opts(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -302,13 +302,13 @@ Field_Options field_opts(
#undef field_opts_on
int field_opts_on(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
#undef field_opts_off
int field_opts_off(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -316,7 +316,7 @@ int field_opts_off(
#undef set_field_pad
int set_field_pad(
- FIELD *field,
+ FIELD *field,
int ch)
{ return(*(int *)0); }
@@ -329,7 +329,7 @@ int field_pad(
#undef set_new_page
int set_new_page(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL new_page_flag)
{ return(*(int *)0); }
@@ -342,7 +342,7 @@ NCURSES_BOOL new_page(
#undef set_field_status
int set_field_status(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL status)
{ return(*(int *)0); }
@@ -355,8 +355,8 @@ NCURSES_BOOL field_status(
#undef set_field_type
int set_field_type(
- FIELD *field,
- FIELDTYPE *type,
+ FIELD *field,
+ FIELDTYPE *type,
...)
{ return(*(int *)0); }
@@ -369,7 +369,7 @@ FIELDTYPE *field_type(
#undef set_field_userptr
int set_field_userptr(
- FIELD *field,
+ FIELD *field,
void *usrptr)
{ return(*(int *)0); }
@@ -404,7 +404,7 @@ FORM *_nc_Default_Form;
#undef new_form_sp
FORM *new_form_sp(
- SCREEN *sp,
+ SCREEN *sp,
FIELD **fields)
{ return(*(FORM **)0); }
@@ -420,7 +420,7 @@ int free_form(
#undef set_form_fields
int set_form_fields(
- FORM *form,
+ FORM *form,
FIELD **fields)
{ return(*(int *)0); }
@@ -438,8 +438,8 @@ int field_count(
#undef _nc_get_fieldbuffer
void _nc_get_fieldbuffer(
- FORM *form,
- FIELD *field,
+ FORM *form,
+ FIELD *field,
cchar_t *buf)
{ /* void */ }
@@ -460,7 +460,7 @@ int _nc_Synchronize_Attributes(
#undef _nc_Synchronize_Options
int _nc_Synchronize_Options(
- FIELD *field,
+ FIELD *field,
Field_Options newopts)
{ return(*(int *)0); }
@@ -471,7 +471,7 @@ void _nc_Unset_Current_Field(
#undef _nc_Set_Current_Field
int _nc_Set_Current_Field(
- FORM *form,
+ FORM *form,
FIELD *newfield)
{ return(*(int *)0); }
@@ -487,47 +487,47 @@ FIELD *_nc_First_Active_Field(
#undef _nc_Set_Form_Page
int _nc_Set_Form_Page(
- FORM *form,
- int page,
+ FORM *form,
+ int page,
FIELD *field)
{ return(*(int *)0); }
typedef struct
{
- int keycode;
- int (*cmd) (FORM *);
+ int keycode;
+ int (*cmd) (FORM *);
}
Binding_Info;
#undef form_driver
int form_driver(
- FORM *form,
+ FORM *form,
int c)
{ return(*(int *)0); }
#undef form_driver_w
int form_driver_w(
- FORM *form,
- int type,
+ FORM *form,
+ int type,
wchar_t c)
{ return(*(int *)0); }
#undef set_field_buffer
int set_field_buffer(
- FIELD *field,
- int buffer,
+ FIELD *field,
+ int buffer,
const char *value)
{ return(*(int *)0); }
#undef field_buffer
char *field_buffer(
- const FIELD *field,
+ const FIELD *field,
int buffer)
{ return(*(char **)0); }
#undef _nc_Widen_String
wchar_t *_nc_Widen_String(
- char *source,
+ char *source,
int *lengthp)
{ return(*(wchar_t **)0); }
@@ -535,7 +535,7 @@ wchar_t *_nc_Widen_String(
#undef set_field_init
int set_field_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -546,7 +546,7 @@ Form_Hook field_init(
#undef set_field_term
int set_field_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -557,7 +557,7 @@ Form_Hook field_term(
#undef set_form_init
int set_form_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -568,7 +568,7 @@ Form_Hook form_init(
#undef set_form_term
int set_form_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -581,7 +581,7 @@ Form_Hook form_term(
#undef set_form_opts
int set_form_opts(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -592,13 +592,13 @@ Form_Options form_opts(
#undef form_opts_on
int form_opts_on(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
#undef form_opts_off
int form_opts_off(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -606,7 +606,7 @@ int form_opts_off(
#undef set_form_page
int set_form_page(
- FORM *form,
+ FORM *form,
int page)
{ return(*(int *)0); }
@@ -643,8 +643,8 @@ int form_request_by_name(
#undef scale_form
int scale_form(
- const FORM *form,
- int *rows,
+ const FORM *form,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -652,7 +652,7 @@ int scale_form(
#undef set_form_sub
int set_form_sub(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -665,7 +665,7 @@ WINDOW *form_sub(
#undef set_form_userptr
int set_form_userptr(
- FORM *form,
+ FORM *form,
void *usrptr)
{ return(*(int *)0); }
@@ -678,7 +678,7 @@ void *form_userptr(
#undef set_form_win
int set_form_win(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -748,38 +748,38 @@ FIELDTYPE *_nc_TYPE_ENUM(void)
#undef _nc_generic_fieldtype
FIELDTYPE *_nc_generic_fieldtype(
NCURSES_BOOL (*const field_check)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const char_check)(
- int p1,
- FORM *p2,
- FIELD *p3,
- const void *p4),
+ int p1,
+ FORM *p2,
+ FIELD *p3,
+ const void *p4),
NCURSES_BOOL (*const next)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const prev)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
void (*freecallback)(
void *p1))
{ return(*(FIELDTYPE **)0); }
#undef _nc_set_generic_fieldtype
int _nc_set_generic_fieldtype(
- FIELD *field,
- FIELDTYPE *ftyp,
+ FIELD *field,
+ FIELDTYPE *ftyp,
int (*argiterator)(
void **p1))
{ return(*(int *)0); }
#undef _nc_form_cursor
WINDOW *_nc_form_cursor(
- const FORM *form,
- int *pRow,
+ const FORM *form,
+ int *pRow,
int *pCol)
{ return(*(WINDOW **)0); }
diff --git a/form/llib-lformw b/form/llib-lformw
index de4900d..199e26c 100644
--- a/form/llib-lformw
+++ b/form/llib-lformw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2002-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -65,11 +65,11 @@ Form_Hook _nc_retrace_form_hook(
#undef set_fieldtype_arg
int set_fieldtype_arg(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
void *(*const make_arg)(
- va_list *p1),
+ va_list *p1),
void *(*const copy_arg)(
- const void *p1),
+ const void *p1),
void (*const free_arg)(
void *p1))
{ return(*(int *)0); }
@@ -83,7 +83,7 @@ void *field_arg(
#undef set_field_fore
int set_field_fore(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -94,7 +94,7 @@ chtype field_fore(
#undef set_field_back
int set_field_back(
- FIELD *field,
+ FIELD *field,
chtype attr)
{ return(*(int *)0); }
@@ -107,7 +107,7 @@ chtype field_back(
#undef set_current_field
int set_current_field(
- FORM *form,
+ FORM *form,
FIELD *field)
{ return(*(int *)0); }
@@ -133,27 +133,27 @@ FIELD *_nc_Default_Field;
#undef _nc_Make_Argument
TypeArgument *_nc_Make_Argument(
- const FIELDTYPE *typ,
- va_list *ap,
+ const FIELDTYPE *typ,
+ va_list *ap,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Copy_Argument
TypeArgument *_nc_Copy_Argument(
- const FIELDTYPE *typ,
- const TypeArgument *argp,
+ const FIELDTYPE *typ,
+ const TypeArgument *argp,
int *err)
{ return(*(TypeArgument **)0); }
#undef _nc_Free_Argument
void _nc_Free_Argument(
- const FIELDTYPE *typ,
+ const FIELDTYPE *typ,
TypeArgument *argp)
{ /* void */ }
#undef _nc_Copy_Type
NCURSES_BOOL _nc_Copy_Type(
- FIELD *dst,
+ FIELD *dst,
FIELD const *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -164,11 +164,11 @@ void _nc_Free_Type(
#undef new_field
FIELD *new_field(
- int rows,
- int cols,
- int frow,
- int fcol,
- int nrow,
+ int rows,
+ int cols,
+ int frow,
+ int fcol,
+ int nrow,
int nbuf)
{ return(*(FIELD **)0); }
@@ -181,8 +181,8 @@ int free_field(
#undef dup_field
FIELD *dup_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -190,12 +190,12 @@ FIELD *dup_field(
#undef set_fieldtype_choice
int set_fieldtype_choice(
- FIELDTYPE *typ,
+ FIELDTYPE *typ,
NCURSES_BOOL (*const next_choice)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const prev_choice)(
- FIELD *p1,
+ FIELD *p1,
const void *p2))
{ return(*(int *)0); }
@@ -203,7 +203,7 @@ int set_fieldtype_choice(
#undef link_fieldtype
FIELDTYPE *link_fieldtype(
- FIELDTYPE *type1,
+ FIELDTYPE *type1,
FIELDTYPE *type2)
{ return(*(FIELDTYPE **)0); }
@@ -211,20 +211,20 @@ FIELDTYPE *link_fieldtype(
#undef field_info
int field_info(
- const FIELD *field,
- int *rows,
- int *cols,
- int *frow,
- int *fcol,
- int *nrow,
+ const FIELD *field,
+ int *rows,
+ int *cols,
+ int *frow,
+ int *fcol,
+ int *nrow,
int *nbuf)
{ return(*(int *)0); }
#undef dynamic_field_info
int dynamic_field_info(
- const FIELD *field,
- int *drows,
- int *dcols,
+ const FIELD *field,
+ int *drows,
+ int *dcols,
int *maxgrow)
{ return(*(int *)0); }
@@ -232,7 +232,7 @@ int dynamic_field_info(
#undef set_field_just
int set_field_just(
- FIELD *field,
+ FIELD *field,
int just)
{ return(*(int *)0); }
@@ -245,8 +245,8 @@ int field_just(
#undef link_field
FIELD *link_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(FIELD **)0); }
@@ -254,7 +254,7 @@ FIELD *link_field(
#undef set_max_field
int set_max_field(
- FIELD *field,
+ FIELD *field,
int maxgrow)
{ return(*(int *)0); }
@@ -262,8 +262,8 @@ int set_max_field(
#undef move_field
int move_field(
- FIELD *field,
- int frow,
+ FIELD *field,
+ int frow,
int fcol)
{ return(*(int *)0); }
@@ -275,10 +275,10 @@ FIELDTYPE *_nc_Default_FieldType;
#undef new_fieldtype
FIELDTYPE *new_fieldtype(
NCURSES_BOOL (*const field_check)(
- FIELD *p1,
- const void *p2),
+ FIELD *p1,
+ const void *p2),
NCURSES_BOOL (*const char_check)(
- int p1,
+ int p1,
const void *p2))
{ return(*(FIELDTYPE **)0); }
@@ -291,7 +291,7 @@ int free_fieldtype(
#undef set_field_opts
int set_field_opts(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -302,13 +302,13 @@ Field_Options field_opts(
#undef field_opts_on
int field_opts_on(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
#undef field_opts_off
int field_opts_off(
- FIELD *field,
+ FIELD *field,
Field_Options opts)
{ return(*(int *)0); }
@@ -316,7 +316,7 @@ int field_opts_off(
#undef set_field_pad
int set_field_pad(
- FIELD *field,
+ FIELD *field,
int ch)
{ return(*(int *)0); }
@@ -329,7 +329,7 @@ int field_pad(
#undef set_new_page
int set_new_page(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL new_page_flag)
{ return(*(int *)0); }
@@ -342,7 +342,7 @@ NCURSES_BOOL new_page(
#undef set_field_status
int set_field_status(
- FIELD *field,
+ FIELD *field,
NCURSES_BOOL status)
{ return(*(int *)0); }
@@ -355,8 +355,8 @@ NCURSES_BOOL field_status(
#undef set_field_type
int set_field_type(
- FIELD *field,
- FIELDTYPE *type,
+ FIELD *field,
+ FIELDTYPE *type,
...)
{ return(*(int *)0); }
@@ -369,7 +369,7 @@ FIELDTYPE *field_type(
#undef set_field_userptr
int set_field_userptr(
- FIELD *field,
+ FIELD *field,
void *usrptr)
{ return(*(int *)0); }
@@ -404,7 +404,7 @@ FORM *_nc_Default_Form;
#undef new_form_sp
FORM *new_form_sp(
- SCREEN *sp,
+ SCREEN *sp,
FIELD **fields)
{ return(*(FORM **)0); }
@@ -420,7 +420,7 @@ int free_form(
#undef set_form_fields
int set_form_fields(
- FORM *form,
+ FORM *form,
FIELD **fields)
{ return(*(int *)0); }
@@ -438,8 +438,8 @@ int field_count(
#undef _nc_get_fieldbuffer
void _nc_get_fieldbuffer(
- FORM *form,
- FIELD *field,
+ FORM *form,
+ FIELD *field,
cchar_t *buf)
{ /* void */ }
@@ -460,7 +460,7 @@ int _nc_Synchronize_Attributes(
#undef _nc_Synchronize_Options
int _nc_Synchronize_Options(
- FIELD *field,
+ FIELD *field,
Field_Options newopts)
{ return(*(int *)0); }
@@ -471,7 +471,7 @@ void _nc_Unset_Current_Field(
#undef _nc_Set_Current_Field
int _nc_Set_Current_Field(
- FORM *form,
+ FORM *form,
FIELD *newfield)
{ return(*(int *)0); }
@@ -487,47 +487,47 @@ FIELD *_nc_First_Active_Field(
#undef _nc_Set_Form_Page
int _nc_Set_Form_Page(
- FORM *form,
- int page,
+ FORM *form,
+ int page,
FIELD *field)
{ return(*(int *)0); }
typedef struct
{
- int keycode;
- int (*cmd) (FORM *);
+ int keycode;
+ int (*cmd) (FORM *);
}
Binding_Info;
#undef form_driver
int form_driver(
- FORM *form,
+ FORM *form,
int c)
{ return(*(int *)0); }
#undef form_driver_w
int form_driver_w(
- FORM *form,
- int type,
+ FORM *form,
+ int type,
wchar_t c)
{ return(*(int *)0); }
#undef set_field_buffer
int set_field_buffer(
- FIELD *field,
- int buffer,
+ FIELD *field,
+ int buffer,
const char *value)
{ return(*(int *)0); }
#undef field_buffer
char *field_buffer(
- const FIELD *field,
+ const FIELD *field,
int buffer)
{ return(*(char **)0); }
#undef _nc_Widen_String
wchar_t *_nc_Widen_String(
- char *source,
+ char *source,
int *lengthp)
{ return(*(wchar_t **)0); }
@@ -535,7 +535,7 @@ wchar_t *_nc_Widen_String(
#undef set_field_init
int set_field_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -546,7 +546,7 @@ Form_Hook field_init(
#undef set_field_term
int set_field_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -557,7 +557,7 @@ Form_Hook field_term(
#undef set_form_init
int set_form_init(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -568,7 +568,7 @@ Form_Hook form_init(
#undef set_form_term
int set_form_term(
- FORM *form,
+ FORM *form,
Form_Hook func)
{ return(*(int *)0); }
@@ -581,7 +581,7 @@ Form_Hook form_term(
#undef set_form_opts
int set_form_opts(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -592,13 +592,13 @@ Form_Options form_opts(
#undef form_opts_on
int form_opts_on(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
#undef form_opts_off
int form_opts_off(
- FORM *form,
+ FORM *form,
Form_Options opts)
{ return(*(int *)0); }
@@ -606,7 +606,7 @@ int form_opts_off(
#undef set_form_page
int set_form_page(
- FORM *form,
+ FORM *form,
int page)
{ return(*(int *)0); }
@@ -643,8 +643,8 @@ int form_request_by_name(
#undef scale_form
int scale_form(
- const FORM *form,
- int *rows,
+ const FORM *form,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -652,7 +652,7 @@ int scale_form(
#undef set_form_sub
int set_form_sub(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -665,7 +665,7 @@ WINDOW *form_sub(
#undef set_form_userptr
int set_form_userptr(
- FORM *form,
+ FORM *form,
void *usrptr)
{ return(*(int *)0); }
@@ -678,7 +678,7 @@ void *form_userptr(
#undef set_form_win
int set_form_win(
- FORM *form,
+ FORM *form,
WINDOW *win)
{ return(*(int *)0); }
@@ -748,38 +748,38 @@ FIELDTYPE *_nc_TYPE_ENUM(void)
#undef _nc_generic_fieldtype
FIELDTYPE *_nc_generic_fieldtype(
NCURSES_BOOL (*const field_check)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const char_check)(
- int p1,
- FORM *p2,
- FIELD *p3,
- const void *p4),
+ int p1,
+ FORM *p2,
+ FIELD *p3,
+ const void *p4),
NCURSES_BOOL (*const next)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
NCURSES_BOOL (*const prev)(
- FORM *p1,
- FIELD *p2,
- const void *p3),
+ FORM *p1,
+ FIELD *p2,
+ const void *p3),
void (*freecallback)(
void *p1))
{ return(*(FIELDTYPE **)0); }
#undef _nc_set_generic_fieldtype
int _nc_set_generic_fieldtype(
- FIELD *field,
- FIELDTYPE *ftyp,
+ FIELD *field,
+ FIELDTYPE *ftyp,
int (*argiterator)(
void **p1))
{ return(*(int *)0); }
#undef _nc_form_cursor
WINDOW *_nc_form_cursor(
- const FORM *form,
- int *pRow,
+ const FORM *form,
+ int *pRow,
int *pCol)
{ return(*(WINDOW **)0); }
diff --git a/include/Caps b/include/Caps
index af0ec45..7bc00ea 100644
--- a/include/Caps
+++ b/include/Caps
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -30,7 +30,7 @@
# Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995
# and: Eric S. Raymond <esr@snark.thyrsus.com>
#
-# $Id: Caps,v 1.45 2020/02/02 23:34:34 tom Exp $
+# $Id: Caps,v 1.48 2021/10/08 07:55:48 tom Exp $
#
# This is the master termcap/terminfo capability table.
#
@@ -58,7 +58,7 @@
#
# The codes following [Y-] in column 7 describe the versions of termcap which
# use the given capability. This information is not used by the curses library
-# proper; rather, it's there to help the terminfo maintainer avoid emitting
+# proper; rather, it is there to help the terminfo maintainer avoid emitting
# termcap entry translations that are more than 1023 bytes long (and tank a
# lot of old termcap-using programs). The codes read as follows:
# B = mentioned in the BSD man page for 4.4BSD curses
@@ -98,8 +98,8 @@
# 3. List it in the standard table. You almost certainly do *not* want
# to do this -- the capabilities in that one, and their order, have been
# carefully chosen to be SVr4-binary-compatible when they're written out
-# as a terminfo object, and breaking this would be bad. It's up to the ncurses
-# library what to do with the terminfo data after it's read in.
+# as a terminfo object, and breaking this would be bad. It is up to the ncurses
+# library what to do with the terminfo data after it is read in.
#
# 4. List it in the aliases table with an IGNORE target field. If you
# do this, the capability will be ignored on input (though the user will
@@ -108,7 +108,7 @@
# 5. List it in the extensions table. If you do this, the compiler will
# silently accept the capability, but the curses library proper will never
# see it (because it won't be written out as part of the terminfo object
-# format). It's up to you what you have the compiler do with it.
+# format). It is up to you what you have the compiler do with it.
#
# There are two opposite reasons to choose option 5. One is when you want
# to eat the capability silently and discard it when doing translations
@@ -189,8 +189,12 @@
#%indicates that padding may be specified
#%.TP
#%#[1-9]
-#%in the description field indicates that the string is passed through tparm with
-#%parms as given (#\fIi\fP).
+#%in the description field indicates that the string is passed
+#%through \fBtparm\fP(3X) with parameters as given (#\fIi\fP).
+#%.IP
+#%If no parameters are listed in the description,
+#%passing the string through \fBtparm\fP(3X) may give unexpected results,
+#%e.g., if it contains percent (%%) signs.
#%.TP
#%(P*)
#%indicates that padding may vary in proportion to the number of
@@ -597,7 +601,7 @@ key_f62 kf62 str Fq KEY_F(62) - ----E F62 function key
key_f63 kf63 str Fr KEY_F(63) - ----E F63 function key
clr_bol el1 str cb - - ----- Clear to beginning of line
clear_margins mgc str MC - - ----- clear right and left soft margins
-set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap).
+set_left_margin smgl str ML - - ----- set left soft margin at current column. (ML is not in BSD termcap).
set_right_margin smgr str MR - - ----- set right soft margin at current column
label_format fln str Lf - - ----- label format
set_clock sclk str SC - - ----- set clock, #1 hrs #2 mins #3 secs
@@ -879,7 +883,7 @@ has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I
return_does_clr_eol OTxr bool xr - - YB--- return clears the line
# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch
#
-# mytinfo described this as a termcap capability, but it's not listed in the
+# mytinfo described this as a termcap capability, but it is not listed in the
# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses
# package, like System V, behaves as though it is always true.
#
diff --git a/include/Caps-ncurses b/include/Caps-ncurses
index a1aef0d..d8c8bac 100644
--- a/include/Caps-ncurses
+++ b/include/Caps-ncurses
@@ -28,7 +28,7 @@
#
# Author: Thomas E. Dickey
#
-# $Id: Caps-ncurses,v 1.8 2020/02/02 23:34:34 tom Exp $
+# $Id: Caps-ncurses,v 1.10 2020/09/29 19:05:19 tom Exp $
#
#############################################################################
#
@@ -342,6 +342,7 @@ infoalias ksel kslt IBM key_select
# are not listed here.
#
used_by ncurses
+userdef CO num n number of indexed colors overlaying RGB space
userdef E3 str - clears the terminal's scrollback buffer.
userdef RGB bool - use direct colors with 1/3 of color-pair bits per color.
userdef RGB num n use direct colors with given number of bits per color.
@@ -361,6 +362,15 @@ userdef xm str nnnsnn mouse response, p6 = x-ordinate starting region
userdef xm str nnnsnnn mouse response, p7 = y-ordinate ending region
userdef xm str nnnsnnnn mouse response, p8 = x-ordinate ending region
#
+used_by mintty
+userdef Rmol str - remove overline-mode
+userdef Smol str - set overline-mode
+userdef blink2 str - turn on rapid blinking
+userdef norm str - turn off bold and half-bright mode
+userdef opaq str - turn off blank mode
+userdef setal str n set underline-color
+userdef smul2 str - begin double underline mode
+#
used_by screen
userdef AN bool - turn on autonuke.
userdef AX bool - understands ANSI set default fg/bg color (\E[39m / \E[49m).
diff --git a/include/Caps.aix4 b/include/Caps.aix4
index 100489c..ee9f2cf 100644
--- a/include/Caps.aix4
+++ b/include/Caps.aix4
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2001-2015,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -29,7 +29,7 @@
#
# Author: Thomas Dickey
#
-# $Id: Caps.aix4,v 1.17 2020/02/02 23:34:34 tom Exp $
+# $Id: Caps.aix4,v 1.20 2021/10/08 07:55:48 tom Exp $
#
# This is an adaptation of ncurses' termcap/terminfo capability table, which
# is designed to align with AIX 4.x's terminfo.
@@ -58,7 +58,7 @@
#
# The codes following [Y-] in column 7 describe the versions of termcap which
# use the given capability. This information is not used by the curses library
-# proper; rather, it's there to help the terminfo maintainer avoid emitting
+# proper; rather, it is there to help the terminfo maintainer avoid emitting
# termcap entry translations that are more than 1023 bytes long (and tank a
# lot of old termcap-using programs). The codes read as follows:
# B = mentioned in the BSD man page for 4.4BSD curses
@@ -98,8 +98,8 @@
# 3. List it in the standard table. You almost certainly do *not* want
# to do this -- the capabilities in that one, and their order, have been
# carefully chosen to be SVr4-binary-compatible when they're written out
-# as a terminfo object, and breaking this would be bad. It's up to the ncurses
-# library what to do with the terminfo data after it's read in.
+# as a terminfo object, and breaking this would be bad. It is up to the ncurses
+# library what to do with the terminfo data after it is read in.
#
# 4. List it in the aliases table with an IGNORE target field. If you
# do this, the capability will be ignored on input (though the user will
@@ -108,7 +108,7 @@
# 5. List it in the extensions table. If you do this, the compiler will
# silently accept the capability, but the curses library proper will never
# see it (because it won't be written out as part of the terminfo object
-# format). It's up to you what you have the compiler do with it.
+# format). It is up to you what you have the compiler do with it.
#
# There are two opposite reasons to choose option 5. One is when you want
# to eat the capability silently and discard it when doing translations
@@ -189,8 +189,12 @@
#%indicates that padding may be specified
#%.TP
#%#[1-9]
-#%in the description field indicates that the string is passed through tparm with
-#%parms as given (#\fIi\fP).
+#%in the description field indicates that the string is passed
+#%through \fBtparm\fP(3X) with parameters as given (#\fIi\fP).
+#%.IP
+#%If no parameters are listed in the description,
+#%passing the string through \fBtparm\fP(3X) may give unexpected results,
+#%e.g., if it contains percent (%%) signs.
#%.TP
#%(P*)
#%indicates that padding may vary in proportion to the number of
@@ -699,7 +703,7 @@ key_sundo kUND str !3 KEY_SUNDO 0626 ----- shifted undo key
req_for_input rfi str RF - - ----- send next input char (for ptys)
clr_bol el1 str cb - - ----- Clear to beginning of line
clear_margins mgc str MC - - ----- clear right and left soft margins
-set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap).
+set_left_margin smgl str ML - - ----- set left soft margin at current column. (ML is not in BSD termcap).
set_right_margin smgr str MR - - ----- set right soft margin at current column
label_format fln str Lf - - ----- label format
set_clock sclk str SC - - ----- set clock, #1 hrs #2 mins #3 secs
@@ -981,7 +985,7 @@ has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I
return_does_clr_eol OTxr bool xr - - YB--- return clears the line
# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch
#
-# mytinfo described this as a termcap capability, but it's not listed in the
+# mytinfo described this as a termcap capability, but it is not listed in the
# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses
# package, like System V, behaves as though it is always true.
#
diff --git a/include/Caps.hpux11 b/include/Caps.hpux11
index e028224..3c0444f 100644
--- a/include/Caps.hpux11
+++ b/include/Caps.hpux11
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2002-2015,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -29,7 +29,7 @@
#
# Author: Thomas Dickey
#
-# $Id: Caps.hpux11,v 1.15 2020/02/02 23:34:34 tom Exp $
+# $Id: Caps.hpux11,v 1.18 2021/10/08 07:55:48 tom Exp $
#
# This is an adaptation of ncurses' termcap/terminfo capability table, which
# is designed to align with HPUX 11.x's terminfo.
@@ -58,7 +58,7 @@
#
# The codes following [Y-] in column 7 describe the versions of termcap which
# use the given capability. This information is not used by the curses library
-# proper; rather, it's there to help the terminfo maintainer avoid emitting
+# proper; rather, it is there to help the terminfo maintainer avoid emitting
# termcap entry translations that are more than 1023 bytes long (and tank a
# lot of old termcap-using programs). The codes read as follows:
# B = mentioned in the BSD man page for 4.4BSD curses
@@ -98,8 +98,8 @@
# 3. List it in the standard table. You almost certainly do *not* want
# to do this -- the capabilities in that one, and their order, have been
# carefully chosen to be SVr4-binary-compatible when they're written out
-# as a terminfo object, and breaking this would be bad. It's up to the ncurses
-# library what to do with the terminfo data after it's read in.
+# as a terminfo object, and breaking this would be bad. It is up to the ncurses
+# library what to do with the terminfo data after it is read in.
#
# 4. List it in the aliases table with an IGNORE target field. If you
# do this, the capability will be ignored on input (though the user will
@@ -108,7 +108,7 @@
# 5. List it in the extensions table. If you do this, the compiler will
# silently accept the capability, but the curses library proper will never
# see it (because it won't be written out as part of the terminfo object
-# format). It's up to you what you have the compiler do with it.
+# format). It is up to you what you have the compiler do with it.
#
# There are two opposite reasons to choose option 5. One is when you want
# to eat the capability silently and discard it when doing translations
@@ -189,8 +189,12 @@
#%indicates that padding may be specified
#%.TP
#%#[1-9]
-#%in the description field indicates that the string is passed through tparm with
-#%parms as given (#\fIi\fP).
+#%in the description field indicates that the string is passed
+#%through \fBtparm\fP(3X) with parameters as given (#\fIi\fP).
+#%.IP
+#%If no parameters are listed in the description,
+#%passing the string through \fBtparm\fP(3X) may give unexpected results,
+#%e.g., if it contains percent (%%) signs.
#%.TP
#%(P*)
#%indicates that padding may vary in proportion to the number of
@@ -605,7 +609,7 @@ key_sundo kUND str !3 KEY_SUNDO 0626 ----- shifted undo key
req_for_input rfi str RF - - ----- send next input char (for ptys)
clr_bol el1 str cb - - ----- Clear to beginning of line
clear_margins mgc str MC - - ----- clear right and left soft margins
-set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap).
+set_left_margin smgl str ML - - ----- set left soft margin at current column. (ML is not in BSD termcap).
set_right_margin smgr str MR - - ----- set right soft margin at current column
label_format fln str Lf - - ----- label format
set_clock sclk str SC - - ----- set clock, #1 hrs #2 mins #3 secs
@@ -895,7 +899,7 @@ has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I
return_does_clr_eol OTxr bool xr - - YB--- return clears the line
# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch
#
-# mytinfo described this as a termcap capability, but it's not listed in the
+# mytinfo described this as a termcap capability, but it is not listed in the
# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses
# package, like System V, behaves as though it is always true.
#
diff --git a/include/Caps.keys b/include/Caps.keys
index 6b03964..09d7a47 100644
--- a/include/Caps.keys
+++ b/include/Caps.keys
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2001-2015,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -30,7 +30,7 @@
# Author: Thomas Dickey
# and: Ilya Zakharevich
#
-# $Id: Caps.keys,v 1.14 2020/02/02 23:34:34 tom Exp $
+# $Id: Caps.keys,v 1.17 2021/10/08 07:55:48 tom Exp $
#
# This is an adaptation of ncurses' termcap/terminfo capability table, which
# is illustrates an experimental extension to describe alt-, shift- and
@@ -60,7 +60,7 @@
#
# The codes following [Y-] in column 7 describe the versions of termcap which
# use the given capability. This information is not used by the curses library
-# proper; rather, it's there to help the terminfo maintainer avoid emitting
+# proper; rather, it is there to help the terminfo maintainer avoid emitting
# termcap entry translations that are more than 1023 bytes long (and tank a
# lot of old termcap-using programs). The codes read as follows:
# B = mentioned in the BSD man page for 4.4BSD curses
@@ -100,8 +100,8 @@
# 3. List it in the standard table. You almost certainly do *not* want
# to do this -- the capabilities in that one, and their order, have been
# carefully chosen to be SVr4-binary-compatible when they're written out
-# as a terminfo object, and breaking this would be bad. It's up to the ncurses
-# library what to do with the terminfo data after it's read in.
+# as a terminfo object, and breaking this would be bad. It is up to the ncurses
+# library what to do with the terminfo data after it is read in.
#
# 4. List it in the aliases table with an IGNORE target field. If you
# do this, the capability will be ignored on input (though the user will
@@ -110,7 +110,7 @@
# 5. List it in the extensions table. If you do this, the compiler will
# silently accept the capability, but the curses library proper will never
# see it (because it won't be written out as part of the terminfo object
-# format). It's up to you what you have the compiler do with it.
+# format). It is up to you what you have the compiler do with it.
#
# There are two opposite reasons to choose option 5. One is when you want
# to eat the capability silently and discard it when doing translations
@@ -191,8 +191,12 @@
#%indicates that padding may be specified
#%.TP
#%#[1-9]
-#%in the description field indicates that the string is passed through tparm with
-#%parms as given (#\fIi\fP).
+#%in the description field indicates that the string is passed
+#%through \fBtparm\fP(3X) with parameters as given (#\fIi\fP).
+#%.IP
+#%If no parameters are listed in the description,
+#%passing the string through \fBtparm\fP(3X) may give unexpected results,
+#%e.g., if it contains percent (%%) signs.
#%.TP
#%(P*)
#%indicates that padding may vary in proportion to the number of
@@ -599,7 +603,7 @@ key_f62 kf62 str Fq KEY_F(62) - ----E F62 function key
key_f63 kf63 str Fr KEY_F(63) - ----E F63 function key
clr_bol el1 str cb - - ----- Clear to beginning of line
clear_margins mgc str MC - - ----- clear right and left soft margins
-set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap).
+set_left_margin smgl str ML - - ----- set left soft margin at current column. (ML is not in BSD termcap).
set_right_margin smgr str MR - - ----- set right soft margin at current column
label_format fln str Lf - - ----- label format
set_clock sclk str SC - - ----- set clock, #1 hrs #2 mins #3 secs
@@ -969,7 +973,7 @@ has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I
return_does_clr_eol OTxr bool xr - - YB--- return clears the line
# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch
#
-# mytinfo described this as a termcap capability, but it's not listed in the
+# mytinfo described this as a termcap capability, but it is not listed in the
# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses
# package, like System V, behaves as though it is always true.
#
diff --git a/include/Caps.osf1r5 b/include/Caps.osf1r5
index 9499183..beb71c3 100644
--- a/include/Caps.osf1r5
+++ b/include/Caps.osf1r5
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2002-2015,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -29,7 +29,7 @@
#
# Author: Thomas Dickey
#
-# $Id: Caps.osf1r5,v 1.13 2020/02/02 23:34:34 tom Exp $
+# $Id: Caps.osf1r5,v 1.16 2021/10/08 07:55:48 tom Exp $
#
# This is an adaptation of ncurses' termcap/terminfo capability table, which
# is designed to align with OSF/1 version 5 (Tru64) terminfo.
@@ -58,7 +58,7 @@
#
# The codes following [Y-] in column 7 describe the versions of termcap which
# use the given capability. This information is not used by the curses library
-# proper; rather, it's there to help the terminfo maintainer avoid emitting
+# proper; rather, it is there to help the terminfo maintainer avoid emitting
# termcap entry translations that are more than 1023 bytes long (and tank a
# lot of old termcap-using programs). The codes read as follows:
# B = mentioned in the BSD man page for 4.4BSD curses
@@ -98,8 +98,8 @@
# 3. List it in the standard table. You almost certainly do *not* want
# to do this -- the capabilities in that one, and their order, have been
# carefully chosen to be SVr4-binary-compatible when they're written out
-# as a terminfo object, and breaking this would be bad. It's up to the ncurses
-# library what to do with the terminfo data after it's read in.
+# as a terminfo object, and breaking this would be bad. It is up to the ncurses
+# library what to do with the terminfo data after it is read in.
#
# 4. List it in the aliases table with an IGNORE target field. If you
# do this, the capability will be ignored on input (though the user will
@@ -108,7 +108,7 @@
# 5. List it in the extensions table. If you do this, the compiler will
# silently accept the capability, but the curses library proper will never
# see it (because it won't be written out as part of the terminfo object
-# format). It's up to you what you have the compiler do with it.
+# format). It is up to you what you have the compiler do with it.
#
# There are two opposite reasons to choose option 5. One is when you want
# to eat the capability silently and discard it when doing translations
@@ -189,8 +189,12 @@
#%indicates that padding may be specified
#%.TP
#%#[1-9]
-#%in the description field indicates that the string is passed through tparm with
-#%parms as given (#\fIi\fP).
+#%in the description field indicates that the string is passed
+#%through \fBtparm\fP(3X) with parameters as given (#\fIi\fP).
+#%.IP
+#%If no parameters are listed in the description,
+#%passing the string through \fBtparm\fP(3X) may give unexpected results,
+#%e.g., if it contains percent (%%) signs.
#%.TP
#%(P*)
#%indicates that padding may vary in proportion to the number of
@@ -739,7 +743,7 @@ set_clock sclk str SC - - ----- set clock, #1 hrs #2 mins #3 secs
set_color_band setcolor str Yz - - ----- Change to ribbon color #1
set_color_pair scp str sp - - ----- Set current color pair to #1
set_foreground setf str Sf - - ----- Set foreground color #1
-set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap).
+set_left_margin smgl str ML - - ----- set left soft margin at current column. (ML is not in BSD termcap).
set_left_margin_parm smglp str Zm - - ----- Set left (right) margin at column #1
set_lr_margin smglr str ML - - ----- Set both left and right margins to #1, #2. (ML is not in BSD termcap).
set_page_length slines str YZ - - ----- Set page length to #1 lines
@@ -887,7 +891,7 @@ has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I
return_does_clr_eol OTxr bool xr - - YB--- return clears the line
# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch
#
-# mytinfo described this as a termcap capability, but it's not listed in the
+# mytinfo described this as a termcap capability, but it is not listed in the
# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses
# package, like System V, behaves as though it is always true.
#
diff --git a/include/Caps.uwin b/include/Caps.uwin
index 7628bd4..af47de9 100644
--- a/include/Caps.uwin
+++ b/include/Caps.uwin
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2001-2015,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -29,7 +29,7 @@
#
# Author: Thomas Dickey
#
-# $Id: Caps.uwin,v 1.12 2020/02/02 23:34:34 tom Exp $
+# $Id: Caps.uwin,v 1.15 2021/10/08 07:55:48 tom Exp $
#
# This is an adaptation of ncurses' termcap/terminfo capability table, which
# is designed to align with U/Win's terminfo.
@@ -58,7 +58,7 @@
#
# The codes following [Y-] in column 7 describe the versions of termcap which
# use the given capability. This information is not used by the curses library
-# proper; rather, it's there to help the terminfo maintainer avoid emitting
+# proper; rather, it is there to help the terminfo maintainer avoid emitting
# termcap entry translations that are more than 1023 bytes long (and tank a
# lot of old termcap-using programs). The codes read as follows:
# B = mentioned in the BSD man page for 4.4BSD curses
@@ -98,8 +98,8 @@
# 3. List it in the standard table. You almost certainly do *not* want
# to do this -- the capabilities in that one, and their order, have been
# carefully chosen to be SVr4-binary-compatible when they're written out
-# as a terminfo object, and breaking this would be bad. It's up to the ncurses
-# library what to do with the terminfo data after it's read in.
+# as a terminfo object, and breaking this would be bad. It is up to the ncurses
+# library what to do with the terminfo data after it is read in.
#
# 4. List it in the aliases table with an IGNORE target field. If you
# do this, the capability will be ignored on input (though the user will
@@ -108,7 +108,7 @@
# 5. List it in the extensions table. If you do this, the compiler will
# silently accept the capability, but the curses library proper will never
# see it (because it won't be written out as part of the terminfo object
-# format). It's up to you what you have the compiler do with it.
+# format). It is up to you what you have the compiler do with it.
#
# There are two opposite reasons to choose option 5. One is when you want
# to eat the capability silently and discard it when doing translations
@@ -189,8 +189,12 @@
#%indicates that padding may be specified
#%.TP
#%#[1-9]
-#%in the description field indicates that the string is passed through tparm with
-#%parms as given (#\fIi\fP).
+#%in the description field indicates that the string is passed
+#%through \fBtparm\fP(3X) with parameters as given (#\fIi\fP).
+#%.IP
+#%If no parameters are listed in the description,
+#%passing the string through \fBtparm\fP(3X) may give unexpected results,
+#%e.g., if it contains percent (%%) signs.
#%.TP
#%(P*)
#%indicates that padding may vary in proportion to the number of
@@ -565,7 +569,7 @@ key_f62 kf62 str Fq KEY_F(62) - ----E F62 function key
key_f63 kf63 str Fr KEY_F(63) - ----E F63 function key
clr_bol el1 str cb - - ----- Clear to beginning of line
clear_margins mgc str MC - - ----- clear right and left soft margins
-set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap).
+set_left_margin smgl str ML - - ----- set left soft margin at current column. (ML is not in BSD termcap).
set_right_margin smgr str MR - - ----- set right soft margin at current column
device_type devt str dv - - ----- Indicate language/codeset support
code_set_init csin str ci - - ----- Init sequence for multiple codesets
@@ -703,7 +707,7 @@ has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I
return_does_clr_eol OTxr bool xr - - YB--- return clears the line
# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch
#
-# mytinfo described this as a termcap capability, but it's not listed in the
+# mytinfo described this as a termcap capability, but it is not listed in the
# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses
# package, like System V, behaves as though it is always true.
#
diff --git a/include/MKkey_defs.sh b/include/MKkey_defs.sh
index 865a7b9..86d6891 100755
--- a/include/MKkey_defs.sh
+++ b/include/MKkey_defs.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# $Id: MKkey_defs.sh,v 1.19 2020/02/02 23:34:34 tom Exp $
+# $Id: MKkey_defs.sh,v 1.21 2020/08/17 10:45:33 tom Exp $
##############################################################################
# Copyright 2019,2020 Thomas E. Dickey #
# Copyright 2001-2013,2017 Free Software Foundation, Inc. #
@@ -63,8 +63,7 @@ fi
# add keys that we generate automatically:
cat >>$data <<EOF
-key_resize kr1 str R1 KEY_RESIZE + ----- Terminal resize event
-key_event kv1 str V1 KEY_EVENT + ----- We were interrupted by an event
+key_resize kr1 str R1 KEY_RESIZE + NCURSES_EXT_FUNCS Terminal resize event
EOF
THIS=./`basename $0`
@@ -142,6 +141,12 @@ $5 != "-" && $6 != "-" {
maxkey = thiskey;
if (pass == 2 || pass == 3) {
showkey=sprintf(octal_fmt, thiskey);
+ ifdef = 0;
+ if (index($7,"NCURSES_") == 1) {
+ ifdef = 1;
+ printf "\n";
+ printf "#ifdef %s\n", $7;
+ }
if ($5 == "KEY_F(0)" ) {
printf "#define "
print_cols("KEY_F0", 16);
@@ -160,6 +165,9 @@ $5 != "-" && $6 != "-" {
printf " %s", $i
print " */"
}
+ if (ifdef != 0) {
+ printf "#endif\n";
+ }
}
}
END {
diff --git a/include/MKterm.h.awk.in b/include/MKterm.h.awk.in
index ee4e2b4..e79840d 100644
--- a/include/MKterm.h.awk.in
+++ b/include/MKterm.h.awk.in
@@ -26,7 +26,7 @@ BEGIN {
lcurl = "{";
rcurl = "}";
print "/****************************************************************************"
- print " * Copyright 2018-2019,2020 Thomas E. Dickey *"
+ print " * Copyright 2018-2020,2021 Thomas E. Dickey *"
print " * Copyright 1998-2013,2017 Free Software Foundation, Inc. *"
print " * *"
print " * Permission is hereby granted, free of charge, to any person obtaining a *"
@@ -60,7 +60,7 @@ BEGIN {
print "/* and: Thomas E. Dickey 1995-on */"
print "/****************************************************************************/"
print ""
- print "/* $Id: MKterm.h.awk.in,v 1.74 2020/02/02 23:34:34 tom Exp $ */"
+ print "/* $Id: MKterm.h.awk.in,v 1.82 2021/09/24 17:02:46 tom Exp $ */"
print ""
print "/*"
print "** term.h -- Definition of struct term"
@@ -82,6 +82,24 @@ BEGIN {
print " * definition (based on the system for which this was configured)."
print " */"
print ""
+ print "#ifndef __NCURSES_H"
+ print ""
+ print "typedef struct screen SCREEN;"
+ print ""
+ print "#if @NCURSES_SP_FUNCS@"
+ print "#undef NCURSES_SP_FUNCS"
+ print "#define NCURSES_SP_FUNCS @NCURSES_PATCH@"
+ print "#undef NCURSES_SP_NAME"
+ print "#define NCURSES_SP_NAME(name) name##_sp"
+ print ""
+ print "/* Define the sp-funcs helper function */"
+ print "#undef NCURSES_SP_OUTC"
+ print "#define NCURSES_SP_OUTC NCURSES_SP_NAME(NCURSES_OUTC)"
+ print "typedef int (*NCURSES_SP_OUTC)(SCREEN*, int);"
+ print "#endif"
+ print ""
+ print "#endif /* __NCURSES_H */"
+ print ""
print "#undef NCURSES_CONST"
print "#define NCURSES_CONST @NCURSES_CONST@"
print ""
@@ -127,9 +145,14 @@ BEGIN {
print ""
print "#else /* !HAVE_TERMIO_H */"
print ""
- print "#if _WIN32"
- print "# include <ncurses_mingw.h>"
- print "# define TTY struct termios"
+ print "#if (defined(_WIN32) || defined(_WIN64))"
+ print "#if @EXP_WIN32_DRIVER@"
+ print "#include <win32_curses.h>"
+ print "#define TTY struct winconmode"
+ print "#else"
+ print "#include <ncurses_mingw.h>"
+ print "#define TTY struct termios"
+ print "#endif"
print "#else"
print "#undef TERMIOS"
print "#include <sgtty.h>"
@@ -143,6 +166,9 @@ BEGIN {
print "#ifdef TERMIOS"
print "#define GET_TTY(fd, buf) tcgetattr(fd, buf)"
print "#define SET_TTY(fd, buf) tcsetattr(fd, TCSADRAIN, buf)"
+ print "#elif @EXP_WIN32_DRIVER@ && (defined(_WIN32) || defined(_WIN64))"
+ print "#define GET_TTY(fd, buf) _nc_console_getmode(_nc_console_fd2handle(fd),buf)"
+ print "#define SET_TTY(fd, buf) _nc_console_setmode(_nc_console_fd2handle(fd),buf)"
print "#else"
print "#define GET_TTY(fd, buf) gtty(fd, buf)"
print "#define SET_TTY(fd, buf) stty(fd, buf)"
@@ -218,28 +244,28 @@ END {
print " * The only reason these structures are visible is for read-only use."
print " * Programs which modify the data are not, never were, portable across"
print " * curses implementations."
+ print " *"
+ print " * The first field in TERMINAL is used in macros."
+ print " * The remaining fields are private."
print " */"
print "#ifdef NCURSES_INTERNALS"
print ""
+ print "#undef TERMINAL"
+ print "#define TERMINAL struct term"
+ print "TERMINAL;"
+ print ""
if (@NCURSES_EXT_COLORS@) {
declare_termtype("int","2");
} else {
- print "typedef TERMTYPE TERMTYPE2;"
+ print "#undef TERMTYPE2"
+ print "#define TERMTYPE2 TERMTYPE"
}
+ print "#else"
print ""
print "typedef struct term { /* describe an actual terminal */"
print " TERMTYPE type; /* terminal type description */"
- print " short Filedes; /* file description being written to */"
- print " TTY Ottyb; /* original state of the terminal */"
- print " TTY Nttyb; /* current state of the terminal */"
- print " int _baudrate; /* used to compute padding */"
- print " char * _termname; /* used for termname() */"
- if (@NCURSES_EXT_COLORS@) {
- print " TERMTYPE2 type2; /* extended terminal type description */"
- }
print "} TERMINAL;"
- print "#else"
- print "typedef struct term TERMINAL;"
+ print ""
print "#endif /* NCURSES_INTERNALS */"
print ""
print ""
@@ -298,6 +324,7 @@ END {
print "extern NCURSES_EXPORT(int) _nc_read_termtype (TERMTYPE2 *, char *, int);"
print "extern NCURSES_EXPORT(char *) _nc_first_name (const char *const);"
print "extern NCURSES_EXPORT(int) _nc_name_match (const char *const, const char *const, const char *const);"
+ print "extern NCURSES_EXPORT(char *) _nc_tiparm(int, const char *, ...);"
print ""
print "#endif /* NCURSES_INTERNALS */"
print ""
@@ -330,7 +357,6 @@ END {
print "extern NCURSES_EXPORT(char *) tparm (const char *, ...); /* special */"
print "#else"
print "extern NCURSES_EXPORT(char *) tparm (const char *, long,long,long,long,long,long,long,long,long); /* special */"
- print "extern NCURSES_EXPORT(char *) tparm_varargs (const char *, ...); /* special */"
print "#endif"
print ""
print "extern NCURSES_EXPORT(char *) tiparm (const char *, ...); /* special */"
@@ -361,7 +387,6 @@ END {
print "extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tparm) (SCREEN*, const char *, ...); /* special */"
print "#else"
print "extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tparm) (SCREEN*, const char *, long,long,long,long,long,long,long,long,long); /* special */"
- print "extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tparm_varargs) (SCREEN*, const char *, ...); /* special */"
print "#endif"
print ""
print "/* termcap database emulation (XPG4 uses const only for 2nd param of tgetent) */"
@@ -381,7 +406,7 @@ END {
print "/*"
print " * Debugging features."
print " */"
- print "extern NCURSES_EXPORT(void) exit_terminfo(int) GCC_NORETURN;"
+ print "extern GCC_NORETURN NCURSES_EXPORT(void) exit_terminfo(int);"
print ""
print "#ifdef __cplusplus"
printf "%s\n", rcurl;
diff --git a/include/Makefile.in b/include/Makefile.in
index d23c472..351383b 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.46 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.53 2021/07/03 18:56:51 tom Exp $
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 1998-2013,2015 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -28,7 +28,7 @@
# authorization. #
##############################################################################
#
-# Author: Thomas E. Dickey 1996-2001
+# Author: Thomas E. Dickey 1996-on
#
# Makefile for ncurses source code.
#
@@ -59,6 +59,10 @@ INSTALL_DATA = @INSTALL_DATA@
AWK = @AWK@
LN_S = @LN_S@
+CC = @CC@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
+CPPFLAGS = -DHAVE_CONFIG_H -I. @CPPFLAGS@
+
CTAGS = @CTAGS@
ETAGS = @ETAGS@
@@ -88,6 +92,21 @@ AUTO_SRC = \
term.h
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : depend
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
libs \
depend \
@@ -100,6 +119,7 @@ curses.h : $(CAPLIST) \
$(srcdir)/MKkey_defs.sh
cat curses.head >$@
AWK=$(AWK) $(SHELL) $(srcdir)/MKkey_defs.sh $(CAPLIST) >>$@
+ $(SHELL) -c 'if test "@NCURSES_WGETCH_EVENTS@" = "1" ; then cat $(srcdir)/curses.events >>$@ ; fi'
$(SHELL) -c 'if test "@NCURSES_CH_T@" = "cchar_t" ; then cat $(srcdir)/curses.wide >>$@ ; fi'
cat $(srcdir)/curses.tail >>$@
@@ -141,6 +161,17 @@ distclean :: clean
realclean :: distclean
+# Verify that each header-file can be compiled without including another.
+check:
+ @$(SHELL) -c "for header in *.h;\
+ do \
+ echo \"** testing \$${header}\" ; \
+ echo \"#include <\$${header}>\" >headers.c; \
+ echo \"int main(void) { return 0; }\" >>headers.c; \
+ $(CC) -c $(CFLAGS) $(CPPFLAGS) headers.c; \
+ done"
+ -@rm -f headers.*
+
###############################################################################
# The remainder of this file is automatically generated during configuration
###############################################################################
diff --git a/include/capdefaults.c b/include/capdefaults.c
index 951a9ca..0bdda14 100644
--- a/include/capdefaults.c
+++ b/include/capdefaults.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2000,2008 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,11 +33,11 @@
* and: Thomas E. Dickey 1996-on *
****************************************************************************/
-/* $Id: capdefaults.c,v 1.15 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: capdefaults.c,v 1.16 2021/09/04 10:52:55 tom Exp $ */
/*
* Compute obsolete capabilities. The reason this is an include file is
- * that the two places where it's needed want the macros to generate
+ * that the two places where it is needed require the macros to generate
* offsets to different structures. See the file Caps for explanations of
* these conversions.
*
diff --git a/include/curses.events b/include/curses.events
new file mode 100644
index 0000000..25a2583
--- /dev/null
+++ b/include/curses.events
@@ -0,0 +1,55 @@
+/* $Id*/
+/*
+ * vile:cmode:
+ * This file is part of ncurses, designed to be appended after curses.h.in
+ * (see that file for the relevant copyright).
+ */
+
+/*
+ * This is an extension to support events...
+ */
+#ifdef NCURSES_WGETCH_EVENTS
+#if !defined(__BEOS__) || defined(__HAIKU__)
+ /* Fix _nc_timed_wait() on BEOS... */
+# define NCURSES_EVENT_VERSION 1
+#endif /* !defined(__BEOS__) */
+
+/*
+ * Bits to set in _nc_event.data.flags
+ */
+# define _NC_EVENT_TIMEOUT_MSEC 1
+# define _NC_EVENT_FILE 2
+# define _NC_EVENT_FILE_READABLE 2
+# if 0 /* Not supported yet... */
+# define _NC_EVENT_FILE_WRITABLE 4
+# define _NC_EVENT_FILE_EXCEPTION 8
+# endif
+
+typedef struct
+{
+ int type;
+ union
+ {
+ long timeout_msec; /* _NC_EVENT_TIMEOUT_MSEC */
+ struct
+ {
+ unsigned int flags;
+ int fd;
+ unsigned int result;
+ } fev; /* _NC_EVENT_FILE */
+ } data;
+} _nc_event;
+
+typedef struct
+{
+ int count;
+ int result_flags; /* _NC_EVENT_TIMEOUT_MSEC or _NC_EVENT_FILE_READABLE */
+ _nc_event *events[1];
+} _nc_eventlist;
+
+extern NCURSES_EXPORT(int) wgetch_events (WINDOW *, _nc_eventlist *) GCC_DEPRECATED(experimental option); /* experimental */
+extern NCURSES_EXPORT(int) wgetnstr_events (WINDOW *,char *,int,_nc_eventlist *) GCC_DEPRECATED(experimental option); /* experimental */
+
+#define KEY_EVENT 0633 /* We were interrupted by an event */
+
+#endif /* NCURSES_WGETCH_EVENTS */
diff --git a/include/curses.h.in b/include/curses.h.in
index 2cb3224..6acf2d0 100644
--- a/include/curses.h.in
+++ b/include/curses.h.in
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,11 +33,39 @@
* and: Thomas E. Dickey 1996-on *
****************************************************************************/
-/* $Id: curses.h.in,v 1.266 2020/02/08 10:51:53 tom Exp $ */
+/* $Id: curses.h.in,v 1.277 2021/09/24 16:07:37 tom Exp $ */
#ifndef __NCURSES_H
#define __NCURSES_H
+/*
+ The symbols beginning NCURSES_ or USE_ are configuration choices.
+ A few of the former can be overridden by applications at compile-time.
+ Most of the others correspond to configure-script options (or checks
+ by the configure-script for features of the system on which it is built).
+
+ These symbols can be overridden by applications at compile-time:
+ NCURSES_NOMACROS suppresses macro definitions in favor of functions
+ NCURSES_WATTR_MACROS suppresses wattr_* macro definitions
+ NCURSES_WIDECHAR is an alternative for declaring wide-character functions.
+
+ These symbols are used only when building ncurses:
+ NCURSES_ATTR_T
+ NCURSES_FIELD_INTERNALS
+ NCURSES_INTERNALS
+
+ These symbols are set by the configure script:
+ NCURSES_ENABLE_STDBOOL_H
+ NCURSES_EXPANDED
+ NCURSES_EXT_COLORS
+ NCURSES_EXT_FUNCS
+ NCURSES_EXT_PUTWIN
+ NCURSES_NO_PADDING
+ NCURSES_OSPEED_COMPAT
+ NCURSES_PATHSEP
+ NCURSES_REENTRANT
+ */
+
#define CURSES 1
#define CURSES_H 1
@@ -60,10 +88,22 @@
*/
#include <ncurses_dll.h>
+/*
+ * Extra headers.
+ */
#if @HAVE_STDINT_H@
#include <stdint.h>
#endif
+#ifdef __cplusplus
+#else
+#if @HAVE_STDNORETURN_H@
+#include <stdnoreturn.h>
+#undef GCC_NORETURN
+#define GCC_NORETURN _Noreturn
+#endif
+#endif
+
/*
* User-definable tweak to disable the include of <stdbool.h>.
*/
@@ -391,7 +431,14 @@ extern NCURSES_EXPORT_VAR(chtype) acs_map[];
*/
#define _NEWINDEX -1
+#ifdef NCURSES_INTERNALS
+#undef SCREEN
+#define SCREEN struct screen
+SCREEN;
+#else
typedef struct screen SCREEN;
+#endif
+
typedef struct _win_st WINDOW;
typedef chtype attr_t; /* ...must be at least as wide as chtype */
@@ -498,55 +545,6 @@ struct _win_st
#endif /* NCURSES_OPAQUE */
/*
- * This is an extension to support events...
- */
-#if @NCURSES_EXT_FUNCS@
-#ifdef NCURSES_WGETCH_EVENTS
-#if !defined(__BEOS__) || defined(__HAIKU__)
- /* Fix _nc_timed_wait() on BEOS... */
-# define NCURSES_EVENT_VERSION 1
-#endif /* !defined(__BEOS__) */
-
-/*
- * Bits to set in _nc_event.data.flags
- */
-# define _NC_EVENT_TIMEOUT_MSEC 1
-# define _NC_EVENT_FILE 2
-# define _NC_EVENT_FILE_READABLE 2
-# if 0 /* Not supported yet... */
-# define _NC_EVENT_FILE_WRITABLE 4
-# define _NC_EVENT_FILE_EXCEPTION 8
-# endif
-
-typedef struct
-{
- int type;
- union
- {
- long timeout_msec; /* _NC_EVENT_TIMEOUT_MSEC */
- struct
- {
- unsigned int flags;
- int fd;
- unsigned int result;
- } fev; /* _NC_EVENT_FILE */
- } data;
-} _nc_event;
-
-typedef struct
-{
- int count;
- int result_flags; /* _NC_EVENT_TIMEOUT_MSEC or _NC_EVENT_FILE_READABLE */
- _nc_event *events[1];
-} _nc_eventlist;
-
-extern NCURSES_EXPORT(int) wgetch_events (WINDOW *, _nc_eventlist *); /* experimental */
-extern NCURSES_EXPORT(int) wgetnstr_events (WINDOW *,char *,int,_nc_eventlist *);/* experimental */
-
-#endif /* NCURSES_WGETCH_EVENTS */
-#endif /* NCURSES_EXT_FUNCS */
-
-/*
* GCC (and some other compilers) define '__attribute__'; we're using this
* macro to alert the compiler to flag inconsistencies in printf/scanf-like
* function calls. Just in case '__attribute__' isn't defined, make a dummy.
@@ -559,14 +557,10 @@ extern NCURSES_EXPORT(int) wgetnstr_events (WINDOW *,char *,int,_nc_eventlist *)
/*
* We cannot define these in ncurses_cfg.h, since they require parameters to be
- * passed (that is non-portable). If you happen to be using gcc with warnings
- * enabled, define
- * GCC_PRINTF
- * GCC_SCANF
- * to improve checking of calls to printw(), etc.
+ * passed (that is non-portable).
*/
#ifndef GCC_PRINTFLIKE
-#if defined(GCC_PRINTF) && !defined(printf)
+#ifndef printf
#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
#else
#define GCC_PRINTFLIKE(fmt,var) /*nothing*/
@@ -574,7 +568,7 @@ extern NCURSES_EXPORT(int) wgetnstr_events (WINDOW *,char *,int,_nc_eventlist *)
#endif
#ifndef GCC_SCANFLIKE
-#if defined(GCC_SCANF) && !defined(scanf)
+#ifndef scanf
#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
#else
#define GCC_SCANFLIKE(fmt,var) /*nothing*/
@@ -590,7 +584,7 @@ extern NCURSES_EXPORT(int) wgetnstr_events (WINDOW *,char *,int,_nc_eventlist *)
#endif
#undef GCC_DEPRECATED
-#if (__GNUC__ - 0 > 3 || (__GNUC__ - 0 == 3 && __GNUC_MINOR__ - 0 >= 2))
+#if (__GNUC__ - 0 > 3 || (__GNUC__ - 0 == 3 && __GNUC_MINOR__ - 0 >= 2)) && !defined(NCURSES_INTERNALS)
#define GCC_DEPRECATED(msg) __attribute__((deprecated))
#else
#define GCC_DEPRECATED(msg) /* nothing */
@@ -822,10 +816,14 @@ extern NCURSES_EXPORT(void) use_tioctl (bool); /* implemented */
extern NCURSES_EXPORT(int) vidattr (chtype); /* implemented */
extern NCURSES_EXPORT(int) vidputs (chtype, NCURSES_OUTC); /* implemented */
extern NCURSES_EXPORT(int) vline (chtype, int); /* generated */
-extern NCURSES_EXPORT(int) vwprintw (WINDOW *, const char *,va_list) GCC_DEPRECATED(use vw_printw); /* implemented */
-extern NCURSES_EXPORT(int) vw_printw (WINDOW *, const char *,va_list); /* implemented */
-extern NCURSES_EXPORT(int) vwscanw (WINDOW *, const char *,va_list) GCC_DEPRECATED(use vw_scanw); /* implemented */
-extern NCURSES_EXPORT(int) vw_scanw (WINDOW *, const char *,va_list); /* implemented */
+extern NCURSES_EXPORT(int) vwprintw (WINDOW *, const char *, va_list) GCC_DEPRECATED(use vw_printw) /* implemented */
+ GCC_PRINTFLIKE(2,0);
+extern NCURSES_EXPORT(int) vw_printw (WINDOW *, const char *, va_list) /* implemented */
+ GCC_PRINTFLIKE(2,0);
+extern NCURSES_EXPORT(int) vwscanw (WINDOW *, const char *, va_list) GCC_DEPRECATED(use vw_scanw) /* implemented */
+ GCC_SCANFLIKE(2,0);
+extern NCURSES_EXPORT(int) vw_scanw (WINDOW *, const char *, va_list) /* implemented */
+ GCC_SCANFLIKE(2,0);
extern NCURSES_EXPORT(int) waddch (WINDOW *, const chtype); /* implemented */
extern NCURSES_EXPORT(int) waddchnstr (WINDOW *,const chtype *,int); /* implemented */
extern NCURSES_EXPORT(int) waddchstr (WINDOW *,const chtype *); /* generated */
@@ -895,7 +893,6 @@ extern NCURSES_EXPORT(int) putp (const char *); /* implemented */
extern NCURSES_EXPORT(char *) tparm (const char *, ...); /* special */
#else
extern NCURSES_EXPORT(char *) tparm (const char *, NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG); /* special */
-extern NCURSES_EXPORT(char *) tparm_varargs (const char *, ...); /* special */
#endif
extern NCURSES_EXPORT(char *) tiparm (const char *, ...); /* special */
diff --git a/include/curses.tail b/include/curses.tail
index 05f7439..1151449 100644
--- a/include/curses.tail
+++ b/include/curses.tail
@@ -1,4 +1,4 @@
-/* $Id: curses.tail,v 1.25 2019/12/14 22:28:39 tom Exp $ */
+/* $Id: curses.tail,v 1.26 2021/03/20 15:49:25 tom Exp $ */
/*
* vile:cmode:
* This file is part of ncurses, designed to be appended after curses.h.in
@@ -174,7 +174,7 @@ extern NCURSES_EXPORT(const char *) _nc_visbuf (const char *);
#define OPTIMIZE_ALL 0xff /* enable all optimizations (dflt) */
#endif
-extern NCURSES_EXPORT(void) exit_curses (int) GCC_NORETURN;
+extern GCC_NORETURN NCURSES_EXPORT(void) exit_curses (int);
#include <unctrl.h>
diff --git a/include/curses.wide b/include/curses.wide
index 7a8ae7d..33adb07 100644
--- a/include/curses.wide
+++ b/include/curses.wide
@@ -1,4 +1,4 @@
-/* $Id: curses.wide,v 1.50 2017/03/26 16:05:21 tom Exp $ */
+/* $Id: curses.wide,v 1.51 2021/05/22 20:28:29 tom Exp $ */
/*
* vile:cmode:
* This file is part of ncurses, designed to be appended after curses.h.in
@@ -219,10 +219,12 @@ extern NCURSES_EXPORT(int) wvline_set (WINDOW *, const cchar_t *, int); /* imple
#if NCURSES_SP_FUNCS
extern NCURSES_EXPORT(attr_t) NCURSES_SP_NAME(term_attrs) (SCREEN*); /* implemented:SP_FUNC */
+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(erasewchar) (SCREEN*, wchar_t *); /* implemented:SP_FUNC */
+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(killwchar) (SCREEN*, wchar_t *); /* implemented:SP_FUNC */
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(unget_wch) (SCREEN*, const wchar_t); /* implemented:SP_FUNC */
-extern NCURSES_EXPORT(wchar_t*) NCURSES_SP_NAME(wunctrl) (SCREEN*, cchar_t *); /* implemented:SP_FUNC */
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_attr) (SCREEN*, attr_t, NCURSES_PAIRS_T, void *); /* implemented:SP_FUNC */
extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_puts) (SCREEN*, attr_t, NCURSES_PAIRS_T, void *, NCURSES_SP_OUTC); /* implemented:SP_FUNC */
+extern NCURSES_EXPORT(wchar_t*) NCURSES_SP_NAME(wunctrl) (SCREEN*, cchar_t *); /* implemented:SP_FUNC */
#endif
#ifndef NCURSES_NOMACROS
diff --git a/include/headers b/include/headers
index dbb134d..32e33fd 100644
--- a/include/headers
+++ b/include/headers
@@ -1,4 +1,4 @@
-# $Id: headers,v 1.14 2020/02/02 23:34:34 tom Exp $
+# $Id: headers,v 1.15 2020/08/29 18:51:13 tom Exp $
##############################################################################
# Copyright 2020 Thomas E. Dickey #
# Copyright 1998-2012,2013 Free Software Foundation, Inc. #
@@ -49,5 +49,7 @@ $(srcdir)/nc_tparm.h
@ port_win32con
$(srcdir)/ncurses_mingw.h
$(srcdir)/nc_mingw.h
+@ port_win32
+$(srcdir)/win32_curses.h
# vile:makemode
diff --git a/include/nc_access.h b/include/nc_access.h
new file mode 100644
index 0000000..2e893aa
--- /dev/null
+++ b/include/nc_access.h
@@ -0,0 +1,80 @@
+/****************************************************************************
+ * Copyright 2021 Thomas E. Dickey *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/* $Id: nc_access.h,v 1.2 2021/07/10 22:07:06 tom Exp $ */
+
+#ifndef NC_ACCESS_included
+#define NC_ACCESS_included 1
+/* *INDENT-OFF* */
+
+#include <ncurses_cfg.h>
+#include <curses.h>
+#include <sys/types.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Turn off this symbol to limit access to environment variables when root.
+ */
+#ifdef USE_ROOT_ENVIRON
+
+#define use_terminfo_vars() 1
+
+#else
+
+#define use_terminfo_vars() _nc_env_access()
+extern NCURSES_EXPORT(int) _nc_env_access (void);
+
+#endif
+
+/*
+ * Turn off this symbol to limit access to files when running setuid.
+ */
+#ifdef USE_ROOT_ACCESS
+
+#define safe_fopen(name,mode) fopen(name,mode)
+#define safe_open3(name,flags,mode) open(name,flags,mode)
+
+#else
+
+#define safe_fopen(name,mode) fopen(name,mode)
+#define safe_open3(name,flags,mode) open(name,flags,mode)
+extern NCURSES_EXPORT(FILE *) _nc_safe_fopen (const char *, const char *);
+extern NCURSES_EXPORT(int) _nc_safe_open3 (const char *, int, mode_t);
+
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+/* *INDENT-ON* */
+
+#endif /* NC_ACCESS_included */
diff --git a/include/nc_alloc.h b/include/nc_alloc.h
index ca63e78..3e5ca8d 100644
--- a/include/nc_alloc.h
+++ b/include/nc_alloc.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2013,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/****************************************************************************
* Author: Thomas E. Dickey 1996-on *
****************************************************************************/
-/* $Id: nc_alloc.h,v 1.26 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: nc_alloc.h,v 1.28 2021/03/20 16:07:29 tom Exp $ */
#ifndef NC_ALLOC_included
#define NC_ALLOC_included 1
@@ -73,27 +73,27 @@ extern "C" {
#if HAVE_LIBDBMALLOC || HAVE_LIBDMALLOC || NO_LEAKS
#define HAVE_NC_FREEALL 1
struct termtype;
-extern NCURSES_EXPORT(void) _nc_free_tinfo(int) GCC_NORETURN GCC_DEPRECATED("use exit_terminfo");
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_tinfo(int) GCC_DEPRECATED("use exit_terminfo");
#ifdef NCURSES_INTERNALS
-extern NCURSES_EXPORT(void) _nc_free_tic(int) GCC_NORETURN;
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_tic(int);
extern NCURSES_EXPORT(void) _nc_free_tparm(void);
-extern NCURSES_EXPORT(void) _nc_leaks_dump_entry(void);
+extern void _nc_leaks_dump_entry(void);
extern NCURSES_EXPORT(void) _nc_leaks_tic(void);
#if NCURSES_SP_FUNCS
-extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_free_and_exit)(SCREEN*, int) GCC_NORETURN;
+extern GCC_NORETURN NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_free_and_exit)(SCREEN*, int);
#endif
-extern NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_NORETURN;
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_and_exit(int);
#else /* !NCURSES_INTERNALS */
-extern NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_NORETURN GCC_DEPRECATED("use exit_curses");
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_DEPRECATED("use exit_curses");
#endif
#define ExitProgram(code) exit_curses(code)
#else
-extern NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_NORETURN GCC_DEPRECATED("use exit_curses");
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_DEPRECATED("use exit_curses");
#endif /* NO_LEAKS, etc */
#ifndef HAVE_NC_FREEALL
diff --git a/include/nc_mingw.h b/include/nc_mingw.h
index 68a4184..6729b29 100644
--- a/include/nc_mingw.h
+++ b/include/nc_mingw.h
@@ -31,12 +31,13 @@
* Author: Thomas Dickey, 2008-on *
****************************************************************************/
-/* $Id: nc_mingw.h,v 1.7 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: nc_mingw.h,v 1.9 2020/07/11 22:13:19 tom Exp $ */
#ifndef NC_MINGW_H
#define NC_MINGW_H 1
#ifdef _WIN32
+
#ifdef WINVER
# if WINVER < 0x0501
# error WINVER must at least be 0x0501
@@ -52,9 +53,21 @@
#undef gettimeofday
#define gettimeofday(tv,tz) _nc_gettimeofday(tv,tz)
+#if HAVE_SYS_TIME_H
#include <sys/time.h> /* for struct timeval */
+#endif
-extern int _nc_gettimeofday(struct timeval *, void *);
+#ifdef _MSC_VER
+#include <winsock2.h> /* for struct timeval */
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <ncurses_dll.h>
+
+NCURSES_EXPORT(int) _nc_gettimeofday(struct timeval *, void *);
#undef HAVE_GETTIMEOFDAY
#define HAVE_GETTIMEOFDAY 1
@@ -65,7 +78,11 @@ extern int _nc_gettimeofday(struct timeval *, void *);
#undef wcwidth
#define wcwidth(ucs) _nc_wcwidth((wchar_t)(ucs))
-extern int _nc_wcwidth(wchar_t);
+NCURSES_EXPORT(int) _nc_wcwidth(wchar_t);
+
+#ifdef __cplusplus
+}
+#endif
#endif /* _WIN32 */
diff --git a/include/nc_string.h b/include/nc_string.h
index 93cf201..546aa06 100644
--- a/include/nc_string.h
+++ b/include/nc_string.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2012-2013,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -41,7 +41,7 @@
#endif
/*
- * $Id: nc_string.h,v 1.8 2020/02/02 23:34:34 tom Exp $
+ * $Id: nc_string.h,v 1.9 2021/04/25 00:10:43 tom Exp $
*
* String-hacks. Use these macros to stifle warnings on (presumably) correct
* uses of strcat, strcpy and sprintf.
@@ -76,7 +76,11 @@
#endif
#if USE_STRING_HACKS && HAVE_SNPRINTF
+#ifdef __cplusplus
#define _nc_SPRINTF NCURSES_VOID snprintf
+#else
+#define _nc_SPRINTF NCURSES_VOID (snprintf)
+#endif
#define _nc_SLIMIT(n) NCURSES_CAST(size_t,n),
#else
#define _nc_SPRINTF NCURSES_VOID sprintf
diff --git a/include/nc_termios.h b/include/nc_termios.h
index 87fa46e..13cc0af 100644
--- a/include/nc_termios.h
+++ b/include/nc_termios.h
@@ -31,7 +31,7 @@
* Author: Thomas E. Dickey 2011 *
****************************************************************************/
-/* $Id: nc_termios.h,v 1.7 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: nc_termios.h,v 1.8 2020/08/29 20:53:19 tom Exp $ */
#ifndef NC_TERMIOS_included
#define NC_TERMIOS_included 1
@@ -70,9 +70,13 @@
#define tcflush(fd, arg) ioctl(fd, TCFLSH, arg)
#endif
+#if defined(EXP_WIN32_DRIVER)
+#undef TERMIOS
+#endif
+
#else /* !HAVE_TERMIO_H */
-#if _WIN32
+#if defined(_WIN32) && !defined(EXP_WIN32_DRIVER)
/* lflag bits */
#define ISIG 0x0001
diff --git a/include/nc_tparm.h b/include/nc_tparm.h
index 6157095..943d947 100644
--- a/include/nc_tparm.h
+++ b/include/nc_tparm.h
@@ -31,7 +31,7 @@
* Author: Thomas E. Dickey 2006 *
****************************************************************************/
-/* $Id: nc_tparm.h,v 1.10 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: nc_tparm.h,v 1.11 2020/05/27 23:33:31 tom Exp $ */
#ifndef NC_TPARM_included
#define NC_TPARM_included 1
@@ -77,4 +77,16 @@
#define TPARM_0(a) TPARM_1(a,0)
#endif
+#ifdef NCURSES_INTERNALS
+#define TIPARM_1(s,a) _nc_tiparm(1,s,a)
+#define TIPARM_2(s,a,b) _nc_tiparm(2,s,a,b)
+#define TIPARM_3(s,a,b,c) _nc_tiparm(3,s,a,b,c)
+#define TIPARM_4(s,a,b,c,d) _nc_tiparm(4,s,a,b,c,d)
+#define TIPARM_5(s,a,b,c,d,e) _nc_tiparm(5,s,a,b,c,d,e)
+#define TIPARM_6(s,a,b,c,d,e,f) _nc_tiparm(6,s,a,b,c,d,e,f)
+#define TIPARM_7(s,a,b,c,d,e,f,g) _nc_tiparm(7,s,a,b,c,d,e,f,g)
+#define TIPARM_8(s,a,b,c,d,e,f,g,h) _nc_tiparm(8,s,a,b,c,d,e,f,g,h)
+#define TIPARM_9(s,a,b,c,d,e,f,g,h,i) _nc_tiparm(9,s,a,b,c,d,e,f,g,h,i)
+#endif
+
#endif /* NC_TPARM_included */
diff --git a/include/nc_win32.h b/include/nc_win32.h
new file mode 100644
index 0000000..790e8df
--- /dev/null
+++ b/include/nc_win32.h
@@ -0,0 +1,183 @@
+/****************************************************************************
+ * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2008-2010,2017 Free Software Foundation, Inc. *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Author: Thomas Dickey, 2008-on *
+ ****************************************************************************/
+
+/* $Id: nc_win32.h,v 1.9 2020/09/13 00:17:30 tom Exp $ */
+
+#ifndef NC_WIN32_H
+#define NC_WIN32_H 1
+
+#if defined(_WIN32) || defined(_WIN64)
+
+#ifndef _NC_WINDOWS
+#define _NC_WINDOWS
+#endif
+
+#ifdef TERMIOS
+#error TERMIOS must not be defined on Windows
+#endif
+
+/* We no longer support WindowsXP.
+ Minimum requirement is Windows Vista or Server2008,
+ aka Windows NT 6.0
+*/
+#ifdef WINVER
+# if WINVER < 0x0600
+# error WINVER must at least be 0x0600
+# endif
+#else
+# define WINVER 0x0600
+#endif
+
+#undef _NC_CHECK_MINTTY
+#if WINVER >= 0x0600
+#define _NC_CHECK_MINTTY
+#endif
+
+#include <windows.h>
+
+#if HAVE_SYS_TIME_H
+#include <sys/time.h> /* for struct timeval */
+#endif
+
+#ifdef _NC_MSC
+#include <winsock2.h> /* for struct timeval */
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <ncurses_dll.h>
+
+#undef HAVE_GETTIMEOFDAY
+#define HAVE_GETTIMEOFDAY 1
+extern NCURSES_EXPORT(int) _nc_gettimeofday(struct timeval *, void *);
+
+#undef wcwidth
+#define wcwidth(ucs) _nc_wcwidth((wchar_t)(ucs))
+extern NCURSES_EXPORT(int) _nc_wcwidth(wchar_t);
+
+#ifdef EVENTLIST_2nd /* test.priv.h just needs the preceding */
+
+extern NCURSES_EXPORT(void) _nc_console_size(int* Lines, int* Cols);
+extern NCURSES_EXPORT(HANDLE) _nc_console_handle(int fd);
+extern NCURSES_EXPORT(int) _nc_console_isatty(int fd);
+extern NCURSES_EXPORT(int) _nc_console_test(int fd);
+extern NCURSES_EXPORT(int) _nc_console_read(SCREEN *sp,HANDLE hdl,int *buf);
+extern NCURSES_EXPORT(int) _nc_console_twait(SCREEN *, HANDLE,int,int,int * EVENTLIST_2nd(_nc_eventlist * evl));
+extern NCURSES_EXPORT(WORD) _nc_console_MapColor(bool fore, int color);
+extern NCURSES_EXPORT(void) _nc_console_selectActiveHandle(void);
+extern NCURSES_EXPORT(bool) _nc_console_get_SBI(void);
+extern NCURSES_EXPORT(void) _nc_console_set_scrollback(bool normal, CONSOLE_SCREEN_BUFFER_INFO * info);
+extern NCURSES_EXPORT(int) _nc_console_testmouse(SCREEN *,HANDLE,int EVENTLIST_2nd(_nc_eventlist*));
+extern NCURSES_EXPORT(int) _nc_console_keyok(int keycode,int flag);
+extern NCURSES_EXPORT(bool) _nc_console_keyExist(int keycode);
+extern NCURSES_EXPORT(bool) _nc_console_checkinit(bool initFlag, bool assumeTermInfo);
+extern NCURSES_EXPORT(int) _nc_console_vt_supported(void);
+
+#ifdef _NC_CHECK_MINTTY
+extern NCURSES_EXPORT(int) _nc_console_checkmintty(int fd, LPHANDLE pMinTTY);
+#endif
+
+#undef VALID_TERM_ENV
+#define MS_TERMINAL "ms-terminal"
+#define VALID_TERM_ENV(term_env, no_terminal) \
+ (term_env = (NonEmpty(term_env) \
+ ? term_env \
+ : (_nc_console_vt_supported() \
+ ? MS_TERMINAL \
+ : no_terminal)), \
+ NonEmpty(term_env))
+
+ /*
+ * Various Console mode definitions
+ */
+
+ /* Flags to enable virtual Terminal processing */
+#define VT_FLAG_OUT ENABLE_VIRTUAL_TERMINAL_PROCESSING
+#define VT_FLAG_IN ENABLE_VIRTUAL_TERMINAL_INPUT
+
+ /* Default flags for input/output modes */
+#define CONMODE_IN_DEFAULT (ENABLE_LINE_INPUT | ENABLE_PROCESSED_INPUT | ENABLE_WINDOW_INPUT | ENABLE_MOUSE_INPUT)
+#define CONMODE_OUT_DEFAULT (ENABLE_PROCESSED_OUTPUT | DISABLE_NEWLINE_AUTO_RETURN | ENABLE_LVB_GRID_WORLDWIDE)
+
+ /* Flags to reset from RAW/CBREAK */
+#define CONMODE_NORAW (ENABLE_PROCESSED_INPUT|ENABLE_LINE_INPUT)
+#define CONMODE_NOCBREAK (ENABLE_LINE_INPUT)
+
+
+#if defined(USE_TERM_DRIVER) && defined(USE_WIN32CON_DRIVER)
+extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_WIN_DRIVER;
+#endif
+
+#define CON_NUMPAIRS 64
+typedef struct {
+ BOOL initialized;
+ BOOL buffered;
+ BOOL window_only;
+ BOOL progMode;
+ BOOL isMinTTY;
+ BOOL isTermInfoConsole;
+ HANDLE out;
+ HANDLE inp;
+ HANDLE hdl;
+ HANDLE lastOut;
+ int numButtons;
+ LPDWORD ansi_map;
+ LPDWORD map;
+ LPDWORD rmap;
+ WORD pairs[CON_NUMPAIRS];
+ COORD origin;
+ CHAR_INFO *save_screen;
+ COORD save_size;
+ SMALL_RECT save_region;
+ CONSOLE_SCREEN_BUFFER_INFO SBI;
+ CONSOLE_SCREEN_BUFFER_INFO save_SBI;
+ CONSOLE_CURSOR_INFO save_CI;
+ TTY originalMode;
+} ConsoleInfo;
+
+extern NCURSES_EXPORT_VAR(ConsoleInfo) _nc_CONSOLE;
+#define WINCONSOLE _nc_CONSOLE
+
+#define TypeAlloca(type,count)(type*) _alloca(sizeof(type)*(size_t)(count))
+
+#endif /* EVENTLIST_2nd */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WIN32 || _WIN64 */
+
+#endif /* NC_WIN32_H */
diff --git a/include/ncurses_cfg.hin b/include/ncurses_cfg.hin
index bf9b2c5..8d9ed81 100644
--- a/include/ncurses_cfg.hin
+++ b/include/ncurses_cfg.hin
@@ -31,7 +31,7 @@
* Author: Thomas E. Dickey 1997-on *
****************************************************************************/
/*
- * $Id: ncurses_cfg.hin,v 1.12 2020/02/02 23:34:34 tom Exp $
+ * $Id: ncurses_cfg.hin,v 1.13 2020/03/08 12:37:59 tom Exp $
*
* Both ncurses_cfg.h and ncurses_def.h are internal header-files used when
* building ncurses.
@@ -43,7 +43,7 @@
* 971222) to autoconf 2.12 or 2.13 to do this.
*
* See:
- * http://invisible-island.net/autoconf/
+ * https://invisible-island.net/autoconf/
* ftp://ftp.invisible-island.net/autoconf/
*/
#ifndef NC_CONFIG_H
diff --git a/include/ncurses_defs b/include/ncurses_defs
index e37fc90..115f982 100644
--- a/include/ncurses_defs
+++ b/include/ncurses_defs
@@ -1,6 +1,6 @@
-# $Id: ncurses_defs,v 1.92 2020/02/02 23:34:34 tom Exp $
+# $Id: ncurses_defs,v 1.97 2021/06/26 18:56:32 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 2000-2016,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -48,7 +48,7 @@ HAVE_BIG_CORE
HAVE_BSD_CGETENT
HAVE_BSD_SIGNAL_H
HAVE_BSD_STRING_H
-HAVE_BTOWC
+HAVE_BTOWC
HAVE_BUILTIN_H
HAVE_CHGAT 1
HAVE_COLOR_CONTENT 1
@@ -63,6 +63,8 @@ HAVE_DERWIN 1
HAVE_DIRENT_H
HAVE_DUPWIN 1
HAVE_ERRNO
+HAVE_EXIT_CURSES 1
+HAVE_EXIT_TERMINFO 1
HAVE_FCNTL_H
HAVE_FILTER 1
HAVE_FORM_H
@@ -120,13 +122,13 @@ HAVE_NANOSLEEP
HAVE_NC_ALLOC_H
HAVE_NEWPAD 1
HAVE_PANEL_H
-HAVE_PCRE2_POSIX_H
+HAVE_PCRE2POSIX_H
HAVE_PCREPOSIX_H
HAVE_POLL
HAVE_POLL_H
HAVE_PURIFY
HAVE_PUTENV
-HAVE_PUTWC
+HAVE_PUTWC
HAVE_PUTWIN 1
HAVE_REGEXPR_H_FUNCS
HAVE_REGEXP_H_FUNCS
@@ -141,6 +143,7 @@ HAVE_SCR_DUMP 1
HAVE_SELECT
HAVE_SETBUF
HAVE_SETBUFFER
+HAVE_SETFSUID
HAVE_SETENV
HAVE_SETUPTERM 1
HAVE_SETVBUF
@@ -205,7 +208,7 @@ HAVE_VW_PRINTW 1
HAVE_WCHGAT 1
HAVE_WCSRTOMBS
HAVE_WCSTOMBS
-HAVE_WCTOB
+HAVE_WCTOB
HAVE_WCTOMB
HAVE_WCTYPE_H
HAVE_WINSDELLN 1
diff --git a/include/ncurses_dll.h.in b/include/ncurses_dll.h.in
index f439d48..437c54d 100644
--- a/include/ncurses_dll.h.in
+++ b/include/ncurses_dll.h.in
@@ -26,7 +26,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************/
-/* $Id: ncurses_dll.h.in,v 1.12 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: ncurses_dll.h.in,v 1.17 2020/09/05 17:58:47 juergen Exp $ */
#ifndef NCURSES_DLL_H_incl
#define NCURSES_DLL_H_incl 1
@@ -66,52 +66,34 @@
* using functions to access them.
*/
#define NCURSES_PUBLIC_VAR(name) @NCURSES_WRAP_PREFIX@##name
-#define NCURSES_WRAPPED_VAR(type,name) extern type NCURSES_PUBLIC_VAR(name)(void)
-/* no longer needed on cygwin or mingw, thanks to auto-import */
-/* but this structure may be useful at some point for an MSVC build */
-/* so, for now unconditionally define the important flags */
-/* "the right way" for proper static and dll+auto-import behavior */
-#undef NCURSES_DLL
-#define NCURSES_STATIC
-
-#if defined(__CYGWIN__) || defined(_WIN32)
-# if defined(NCURSES_DLL)
-# if defined(NCURSES_STATIC)
-# undef NCURSES_STATIC
-# endif
-# endif
-# undef NCURSES_IMPEXP
-# undef NCURSES_API
-# undef NCURSES_EXPORT
-# undef NCURSES_EXPORT_VAR
-# if defined(NCURSES_DLL)
-/* building a DLL */
-# define NCURSES_IMPEXP __declspec(dllexport)
-# elif defined(NCURSES_STATIC)
-/* building or linking to a static library */
-# define NCURSES_IMPEXP /* nothing */
-# else
-/* linking to the DLL */
-# define NCURSES_IMPEXP __declspec(dllimport)
-# endif
-# define NCURSES_API __cdecl
-# define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API
-# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type
+#if defined(BUILDING_NCURSES)
+# define NCURSES_IMPEXP NCURSES_EXPORT_GENERAL_EXPORT
+#else
+# define NCURSES_IMPEXP NCURSES_EXPORT_GENERAL_IMPORT
#endif
-/* Take care of non-cygwin platforms */
-#if !defined(NCURSES_IMPEXP)
-# define NCURSES_IMPEXP /* nothing */
-#endif
-#if !defined(NCURSES_API)
-# define NCURSES_API /* nothing */
-#endif
-#if !defined(NCURSES_EXPORT)
-# define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API
-#endif
-#if !defined(NCURSES_EXPORT_VAR)
-# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type
+#define NCURSES_WRAPPED_VAR(type,name) extern NCURSES_IMPEXP type NCURSES_PUBLIC_VAR(name)(void)
+
+#define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API
+#define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type
+
+/*
+ * These symbols hide dllimport/dllexport, for compilers which care about it.
+ */
+#if defined(__CYGWIN__) || (defined(_WIN32) || defined(_WIN64))
+# if defined(NCURSES_STATIC) /* "static" here only implies "not-a-DLL" */
+# define NCURSES_EXPORT_GENERAL_IMPORT
+# define NCURSES_EXPORT_GENERAL_EXPORT
+# else
+# define NCURSES_EXPORT_GENERAL_IMPORT __declspec(dllimport)
+# define NCURSES_EXPORT_GENERAL_EXPORT __declspec(dllexport)
+# endif
+# define NCURSES_API __cdecl
+#else
+# define NCURSES_EXPORT_GENERAL_IMPORT
+# define NCURSES_EXPORT_GENERAL_EXPORT
+# define NCURSES_API /* FIXME: __attribute__ ((cdecl)) is only available on x86 */
#endif
#endif /* NCURSES_DLL_H_incl */
diff --git a/include/ncurses_mingw.h b/include/ncurses_mingw.h
index fc77aca..8b11272 100644
--- a/include/ncurses_mingw.h
+++ b/include/ncurses_mingw.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2008-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,10 +28,10 @@
****************************************************************************/
/****************************************************************************
- * Author: Juergen Pfeifer, 2008-on *
+ * Author: Juergen Pfeifer, 2008-on *
****************************************************************************/
-/* $Id: ncurses_mingw.h,v 1.6 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: ncurses_mingw.h,v 1.7 2021/06/17 21:26:02 tom Exp $ */
/*
* This is a placeholder up to now and describes what needs to be implemented
@@ -67,14 +67,14 @@ struct termios
};
extern NCURSES_EXPORT(int) _nc_mingw_tcsetattr(
- int fd,
- int optional_actions,
+ int fd,
+ int optional_actions,
const struct termios* arg);
extern NCURSES_EXPORT(int) _nc_mingw_tcgetattr(
- int fd,
+ int fd,
struct termios* arg);
extern NCURSES_EXPORT(int) _nc_mingw_tcflush(
- int fd,
+ int fd,
int queue);
extern NCURSES_EXPORT(void) _nc_set_term_driver(void* term);
diff --git a/include/term_entry.h b/include/term_entry.h
index df13f53..e2cf838 100644
--- a/include/term_entry.h
+++ b/include/term_entry.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,7 +33,7 @@
* and: Thomas E. Dickey 1998-on *
****************************************************************************/
-/* $Id: term_entry.h,v 1.59 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: term_entry.h,v 1.61 2021/09/04 10:52:55 tom Exp $ */
/*
* term_entry.h -- interface to entry-manipulation code
@@ -142,7 +142,7 @@ extern NCURSES_EXPORT_VAR(ENTRY *) _nc_tail;
/*
* Note that WANTED and PRESENT are not simple inverses! If a capability
- * has been explicitly cancelled, it's not considered WANTED.
+ * has been explicitly cancelled, it is not considered WANTED.
*/
#define WANTED(s) ((s) == ABSENT_STRING)
#define PRESENT(s) (((s) != ABSENT_STRING) && ((s) != CANCELLED_STRING))
@@ -200,8 +200,8 @@ extern NCURSES_EXPORT(bool) _nc_entry_match (char *, char *);
extern NCURSES_EXPORT(int) _nc_resolve_uses (bool); /* obs 20040705 */
extern NCURSES_EXPORT(int) _nc_resolve_uses2 (bool, bool);
extern NCURSES_EXPORT(void) _nc_free_entries (ENTRY *);
-extern NCURSES_IMPEXP void NCURSES_API (*_nc_check_termtype)(TERMTYPE *); /* obs 20040705 */
-extern NCURSES_IMPEXP void NCURSES_API (*_nc_check_termtype2)(TERMTYPE2 *, bool);
+extern NCURSES_IMPEXP void (NCURSES_API *_nc_check_termtype)(TERMTYPE *); /* obs 20040705 */
+extern NCURSES_IMPEXP void (NCURSES_API *_nc_check_termtype2)(TERMTYPE2 *, bool);
/* trace_xnames.c */
extern NCURSES_EXPORT(void) _nc_trace_xnames (TERMTYPE *);
diff --git a/include/termcap.h.in b/include/termcap.h.in
index dc8d8fc..7b7c703 100644
--- a/include/termcap.h.in
+++ b/include/termcap.h.in
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2000,2001 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,7 +32,7 @@
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
****************************************************************************/
-/* $Id: termcap.h.in,v 1.19 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: termcap.h.in,v 1.20 2021/06/17 21:26:02 tom Exp $ */
#ifndef NCURSES_TERMCAP_H_incl
#define NCURSES_TERMCAP_H_incl 1
@@ -49,13 +49,13 @@ extern "C"
#include <sys/types.h>
-#undef NCURSES_OSPEED
-#define NCURSES_OSPEED @NCURSES_OSPEED@
+#undef NCURSES_OSPEED
+#define NCURSES_OSPEED @NCURSES_OSPEED@
extern NCURSES_EXPORT_VAR(char) PC;
extern NCURSES_EXPORT_VAR(char *) UP;
extern NCURSES_EXPORT_VAR(char *) BC;
-extern NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed;
+extern NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed;
#if !defined(NCURSES_TERM_H_incl)
extern NCURSES_EXPORT(char *) tgetstr (const char *, char **);
diff --git a/include/tic.h b/include/tic.h
index 8210936..36169f0 100644
--- a/include/tic.h
+++ b/include/tic.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -34,7 +34,7 @@
****************************************************************************/
/*
- * $Id: tic.h,v 1.81 2020/02/02 23:34:34 tom Exp $
+ * $Id: tic.h,v 1.84 2021/08/21 00:24:45 tom Exp $
* tic.h - Global variables and structures for the terminfo compiler.
*/
@@ -302,11 +302,11 @@ extern NCURSES_EXPORT_VAR(long) _nc_start_line;
/* comp_error.c: warning & abort messages */
extern NCURSES_EXPORT(const char *) _nc_get_source (void);
-extern NCURSES_EXPORT(void) _nc_err_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_err_abort (const char *const,...) GCC_PRINTFLIKE(1,2);
extern NCURSES_EXPORT(void) _nc_get_type (char *name);
extern NCURSES_EXPORT(void) _nc_set_source (const char *const);
extern NCURSES_EXPORT(void) _nc_set_type (const char *const);
-extern NCURSES_EXPORT(void) _nc_syserr_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_syserr_abort (const char *const,...) GCC_PRINTFLIKE(1,2);
extern NCURSES_EXPORT(void) _nc_warning (const char *const,...) GCC_PRINTFLIKE(1,2);
extern NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings;
@@ -337,7 +337,8 @@ extern NCURSES_EXPORT_VAR(const struct tinfo_fkeys) _nc_tinfo_fkeys[];
extern NCURSES_EXPORT_VAR(int) _nc_tparm_err;
-extern NCURSES_EXPORT(int) _nc_tparm_analyze(const char *, char **, int *);
+extern NCURSES_EXPORT(int) _nc_tparm_analyze(TERMINAL *, const char *, char **, int *);
+extern NCURSES_EXPORT(void) _nc_reset_tparm(TERMINAL *);
/* lib_trace.c */
extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing;
diff --git a/include/win32_curses.h b/include/win32_curses.h
new file mode 100644
index 0000000..0c807a0
--- /dev/null
+++ b/include/win32_curses.h
@@ -0,0 +1,75 @@
+/****************************************************************************
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
+ * Copyright 2008-2014,2017 Free Software Foundation, Inc. *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Author: Juergen Pfeifer, 2008-on *
+ ****************************************************************************/
+
+/* $Id: win32_curses.h,v 1.3 2021/06/17 21:26:02 tom Exp $ */
+
+/*
+ * This is the interface we use on Windows to mimic the control of the settings
+ * of what acts like the classic TTY - the Windows Console.
+ */
+
+#if (defined(_WIN32) || defined(_WIN64))
+#ifndef _NC_WIN32_CURSES_H
+#define _NC_WIN32_CURSES_H 1
+
+struct winconmode
+{
+ unsigned long dwFlagIn;
+ unsigned long dwFlagOut;
+};
+
+extern NCURSES_EXPORT(void*) _nc_console_fd2handle(int fd);
+extern NCURSES_EXPORT(int) _nc_console_setmode(void* handle, const struct winconmode* arg);
+extern NCURSES_EXPORT(int) _nc_console_getmode(void* handle, struct winconmode* arg);
+extern NCURSES_EXPORT(int) _nc_console_flush(void* handle);
+
+/*
+ A few definitions of Unix functions we need to emulate
+*/
+#define SIGHUP 1
+#define SIGKILL 9
+
+#undef getlogin
+#define getlogin() getenv("USERNAME")
+
+#undef ttyname
+#define ttyname(fd) NULL
+
+#undef sleep
+#define sleep(n) Sleep((n) * 1000)
+
+#undef gettimeofday
+#define gettimeofday(tv,tz) _nc_gettimeofday(tv,tz)
+
+#endif /* _NC_WIN32_CURSES_H */
+#endif /* _WIN32||_WIN64 */
diff --git a/man/MKada_config.in b/man/MKada_config.in
index 5f34cff..275b9fb 100644
--- a/man/MKada_config.in
+++ b/man/MKada_config.in
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2019,2020 Thomas E. Dickey *
+.\" Copyright 2019-2020,2021 Thomas E. Dickey *
.\" Copyright 2010-2014,2016 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: MKada_config.in,v 1.12 2020/02/02 23:34:34 tom Exp $
+.\" $Id: MKada_config.in,v 1.13 2021/06/17 21:26:02 tom Exp $
.ds C adacurses@USE_CFG_SUFFIX@\-config
.TH ADACURSES "1" "" "" "User Commands"
.SH NAME
@@ -54,7 +54,7 @@ to configure and build @ADA_LIBNAME@.
prints a list of the \fB\*C\fP script's options.
.PP
If no options are given, \fB\*C\fP prints the combination
-of
+of
\fB\-\-cflags\fR and
\fB\-\-libs\fR
that \fBgnatmake\fP expects (see example).
diff --git a/man/MKncu_config.in b/man/MKncu_config.in
index 15d5190..ca68efd 100644
--- a/man/MKncu_config.in
+++ b/man/MKncu_config.in
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2020 Thomas E. Dickey *
+.\" Copyright 2020,2021 Thomas E. Dickey *
.\" Copyright 2010 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,12 +27,12 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: MKncu_config.in,v 1.4 2020/02/02 23:34:34 tom Exp $
+.\" $Id: MKncu_config.in,v 1.5 2021/06/17 21:20:30 tom Exp $
.TH @LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config 1 ""
.SH NAME
@LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config \- helper script for ncurses libraries
.SH SYNOPSIS
-.B @LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config
+.B @LIB_NAME@@DFT_ARG_SUFFIX@@cf_cv_abi_version@-config
[\fIoptions\fR]
.SH DESCRIPTION
This is a shell script which simplifies configuring applications against
diff --git a/man/Makefile.in b/man/Makefile.in
index f379db1..2fd18f2 100644
--- a/man/Makefile.in
+++ b/man/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.50 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.52 2021/07/03 18:57:29 tom Exp $
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 1998-2013,2015 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -52,6 +52,21 @@ INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : depend
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.man
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.man
+
all \
sources : terminfo.5
depend :
diff --git a/man/curs_add_wch.3x b/man/curs_add_wch.3x
index a208c1a..4460208 100644
--- a/man/curs_add_wch.3x
+++ b/man/curs_add_wch.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_add_wch.3x,v 1.26 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_add_wch.3x,v 1.28 2020/10/17 23:10:38 tom Exp $
.TH curs_add_wch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -55,7 +55,7 @@
.B "int mvadd_wch( int \fIy\fP, int \fIx\fP, const cchar_t *\fIwch\fB );"
.br
.B "int mvwadd_wch( WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const cchar_t *\fIwch\fB );"
-.br
+.sp
.B "int echo_wchar( const cchar_t *\fIwch\fB );"
.br
.B "int wecho_wchar( WINDOW *\fIwin\fP, const cchar_t *\fIwch\fB );"
@@ -212,6 +212,25 @@ U+2550 BOX DRAWINGS DOUBLE HORIZONTAL
.PP
All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success.
.PP
+X/Open does not define any error conditions.
+This implementation returns an error
+.bP
+if the window pointer is null or
+.bP
+if it is not possible to add a complete character in the window.
+.PP
+The latter may be due to different causes:
+.bP
+If \fBscrollok\fR is not enabled,
+writing a character at the lower right margin succeeds.
+However, an error is returned because
+it is not possible to wrap to a new line
+.bP
+If an error is detected when converting a multibyte character to a sequence
+of bytes,
+or if it is not possible to add all of the resulting bytes in the window,
+an error is returned.
+.PP
Functions with a \*(``mv\*('' prefix first perform a cursor movement using
\fBwmove\fP, and return an error if the position is outside the window,
or if the window pointer is null.
diff --git a/man/curs_add_wchstr.3x b/man/curs_add_wchstr.3x
index 5ce6d04..c037be6 100644
--- a/man/curs_add_wchstr.3x
+++ b/man/curs_add_wchstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_add_wchstr.3x,v 1.13 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_add_wchstr.3x,v 1.15 2020/12/19 21:39:06 tom Exp $
.TH curs_add_wchstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -61,7 +61,7 @@
\fBint wadd_wchstr(WINDOW *\fR \fIwin\fR\fB, const cchar_t *\fR\fIwchstr\fR\fB);\fR
.br
\fBint wadd_wchnstr(WINDOW *\fR \fIwin\fR\fB, const cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR
-.br
+.sp
\fBint mvadd_wchstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const cchar_t *\fR\fIwchstr\fR\fB);\fR
.br
\fBint mvadd_wchnstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR
@@ -115,8 +115,8 @@ All functions except \fBwadd_wchnstr\fR may be macros.
.SH PORTABILITY
These entry points are described in the XSI Curses standard, Issue 4.
.SH SEE ALSO
-\fBcurs_addwstr\fR(3X),
-\fBcurses\fR(3X).
+\fBcurses\fR(3X),
+\fBcurs_addwstr\fR(3X).
.PP
Comparable functions in the narrow-character (ncurses) library are
described in
diff --git a/man/curs_addch.3x b/man/curs_addch.3x
index c92d12b..43f426a 100644
--- a/man/curs_addch.3x
+++ b/man/curs_addch.3x
@@ -1,6 +1,6 @@
'\" t
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_addch.3x,v 1.51 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_addch.3x,v 1.56 2021/06/17 21:30:22 tom Exp $
.TH curs_addch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -48,17 +48,17 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.PP
-\fBint addch(const chtype ch);\fR
+\fBint addch(const chtype \fP\fIch\fP\fB);\fR
.br
-\fBint waddch(WINDOW *win, const chtype ch);\fR
+\fBint waddch(WINDOW *\fP\fIwin\fP\fB, const chtype \fP\fIch\fP\fB);\fR
.br
-\fBint mvaddch(int y, int x, const chtype ch);\fR
+\fBint mvaddch(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const chtype \fP\fIch\fP\fB);\fR
.br
-\fBint mvwaddch(WINDOW *win, int y, int x, const chtype ch);\fR
+\fBint mvwaddch(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const chtype \fP\fIch\fP\fB);\fR
+.sp
+\fBint echochar(const chtype \fP\fIch\fP\fB);\fR
.br
-\fBint echochar(const chtype ch);\fR
-.br
-\fBint wechochar(WINDOW *win, const chtype ch);\fR
+\fBint wechochar(WINDOW *\fP\fIwin\fP\fB, const chtype \fP\fIch\fP\fB);\fR
.br
.SH DESCRIPTION
.SS Adding characters
@@ -94,11 +94,12 @@ scrolling the window if on the last line.
Tabs are considered to be at every eighth column.
The tab interval may be altered by setting the \fBTABSIZE\fR variable.
.PP
-If \fIch\fR is any other control character, it
-is drawn in \fB^\fR\fIX\fR notation.
+If \fIch\fR is any other nonprintable character,
+it is drawn in printable form,
+i.e., the \fB^\fR\fIX\fR notation used by \fBunctrl\fR(3X).
Calling \fBwinch\fR after adding a
-control character does not return the character itself, but instead returns
-the ^-representation of the control character.
+nonprintable character does not return the character itself,
+but instead returns the printable representation of the character.
.PP
Video attributes can be combined with a character argument passed to
\fBaddch\fR or related functions by logical-ORing them into the character.
@@ -175,6 +176,19 @@ unless otherwise noted in the preceding routine descriptions.
Functions with a \*(``mv\*('' prefix first perform a cursor movement using
\fBwmove\fP, and return an error if the position is outside the window,
or if the window pointer is null.
+.PP
+If it is not possible to add a complete character,
+an error is returned:
+.bP
+If \fBscrollok\fR is not enabled,
+writing a character at the lower right margin succeeds.
+However, an error is returned because
+it is not possible to wrap to a new line
+.bP
+If an error is detected when converting a multibyte character to a sequence
+of bytes,
+or if it is not possible to add all of the resulting bytes in the window,
+an error is returned.
.SH NOTES
Note that \fBaddch\fR, \fBmvaddch\fR, \fBmvwaddch\fR, and
\fBechochar\fR may be macros.
@@ -229,7 +243,7 @@ to light.
The ACS-prefixed names for them were invented for \fBncurses\fR(3X).
.LP
The \fIdisplayed\fP values for the \fIACS_\fP and \fIWACS_\fP constants
-depend on
+depend on
.bP
the library configuration, i.e., \fBncurses\fP versus \fBncursesw\fP,
where the latter is capable of displaying Unicode while the former is not, and
diff --git a/man/curs_addchstr.3x b/man/curs_addchstr.3x
index 37e6aee..09d70d6 100644
--- a/man/curs_addchstr.3x
+++ b/man/curs_addchstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_addchstr.3x,v 1.19 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_addchstr.3x,v 1.22 2020/12/19 21:39:20 tom Exp $
.TH curs_addchstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -54,21 +54,21 @@
.nf
\fB#include <curses.h>\fR
.PP
-\fBint addchstr(const chtype *chstr);\fR
+\fBint addchstr(const chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint addchnstr(const chtype *chstr, int n);\fR
+\fBint addchnstr(const chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint waddchstr(WINDOW *win, const chtype *chstr);\fR
+\fBint waddchstr(WINDOW *\fP\fIwin\fP\fB, const chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint waddchnstr(WINDOW *win, const chtype *chstr, int n);\fR
+\fBint waddchnstr(WINDOW *\fP\fIwin\fP\fB, const chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
+.sp
+\fBint mvaddchstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint mvaddchstr(int y, int x, const chtype *chstr);\fR
+\fBint mvaddchnstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvaddchnstr(int y, int x, const chtype *chstr, int n);\fR
+\fBint mvwaddchstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint mvwaddchstr(WINDOW *win, int y, int x, const chtype *chstr);\fR
-.br
-\fBint mvwaddchnstr(WINDOW *win, int y, int x, const chtype *chstr, int n);\fR
+\fBint mvwaddchnstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
.fi
.SH DESCRIPTION
These functions copy the (null-terminated)
@@ -109,8 +109,8 @@ All functions except \fBwaddchnstr\fR may be macros.
.SH PORTABILITY
These entry points are described in the XSI Curses standard, Issue 4.
.SH SEE ALSO
-\fBcurs_addstr\fR(3X),
-\fBcurses\fR(3X).
+\fBcurses\fR(3X),
+\fBcurs_addstr\fR(3X).
.PP
Comparable functions in the wide-character (ncursesw) library are
described in
diff --git a/man/curs_addstr.3x b/man/curs_addstr.3x
index 6d54ebb..6f280e6 100644
--- a/man/curs_addstr.3x
+++ b/man/curs_addstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_addstr.3x,v 1.20 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_addstr.3x,v 1.23 2020/10/17 23:11:02 tom Exp $
.TH curs_addstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -61,7 +61,7 @@
\fBint waddstr(WINDOW *\fR\fIwin\fR\fB, const char *\fR\fIstr\fR\fB);\fR
.br
\fBint waddnstr(WINDOW *\fR\fIwin\fR\fB, const char *\fR\fIstr\fR\fB, int \fR\fIn\fR\fB);\fR
-.br
+.sp
\fBint mvaddstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr\fR\fB);\fR
.br
\fBint mvaddnstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr\fR\fB, int \fR\fIn\fR\fB);\fR
@@ -73,14 +73,14 @@
.SH DESCRIPTION
These functions write the (null-terminated) character string
\fIstr\fR on the given window.
-It is similar to calling \fBwaddch\fR once for each character in the string.
+It is similar to calling \fBwaddch\fR once for each byte in the string.
.PP
The \fImv\fR functions perform cursor movement once, before writing any
characters.
Thereafter, the cursor is advanced as a side-effect of writing to the window.
.PP
The four functions with \fIn\fR as the last argument
-write at most \fIn\fR characters,
+write at most \fIn\fR bytes,
or until a terminating null is reached.
If \fIn\fR is \-1, then the entire string will be added.
.SH RETURN VALUE
@@ -98,6 +98,18 @@ if the corresponding calls to \fBwaddch\fP return an error.
Functions with a \*(``mv\*('' prefix first perform a cursor movement using
\fBwmove\fP, and return an error if the position is outside the window,
or if the window pointer is null.
+If an error is returned by the \fBwmove\fP,
+no characters are added to the window.
+.PP
+If an error is returned by \fBwaddch\fP
+(e.g.,
+because the window is not large enough,
+or an illegal byte sequence was detected)
+only part of the string may be added.
+Aside from that,
+there is a special case in \fBwaddch\fP where an error may be
+returned after successfully writing a character to the lower-right corner
+of a window when \fBscrollok\fP is disabled.
.SH NOTES
All of these functions except \fBwaddnstr\fR may be macros.
.SH PORTABILITY
diff --git a/man/curs_addwstr.3x b/man/curs_addwstr.3x
index f1d738f..6f7c3db 100644
--- a/man/curs_addwstr.3x
+++ b/man/curs_addwstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_addwstr.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_addwstr.3x,v 1.15 2020/10/17 23:12:22 tom Exp $
.TH curs_addwstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -61,7 +61,7 @@
\fBint waddwstr(WINDOW *\fR\fIwin\fR\fB, const wchar_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint waddnwstr(WINDOW *\fR\fIwin\fR\fB, const wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
-.br
+.sp
\fBint mvaddwstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const wchar_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint mvaddnwstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
diff --git a/man/curs_bkgd.3x b/man/curs_bkgd.3x
index 6b66388..356eff4 100644
--- a/man/curs_bkgd.3x
+++ b/man/curs_bkgd.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_bkgd.3x,v 1.30 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_bkgd.3x,v 1.32 2021/06/17 21:30:22 tom Exp $
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
@@ -43,11 +43,11 @@
\fBvoid bkgdset(chtype \fP\fIch\fP\fB);\fR
.br
\fBvoid wbkgdset(WINDOW *\fP\fIwin, chtype \fP\fIch\fP\fB);\fR
-.br
+.sp
\fBint bkgd(chtype \fP\fIch\fP\fB);\fR
.br
\fBint wbkgd(WINDOW *\fP\fIwin\fP\fB, chtype \fP\fIch\fP\fB);\fR
-.br
+.sp
\fBchtype getbkgd(WINDOW *\fP\fIwin\fP\fB);\fR
.br
.SH DESCRIPTION
@@ -103,7 +103,7 @@ cell with those from the new background character.
If the cell uses color,
and that matches the color in the current background,
the library removes attributes
-which may have come from the current background
+which may have come from the current background
and adds attributes from the new background.
It finishes by setting the cell
to use the color from the new background.
diff --git a/man/curs_bkgrnd.3x b/man/curs_bkgrnd.3x
index 8e3e836..84a2984 100644
--- a/man/curs_bkgrnd.3x
+++ b/man/curs_bkgrnd.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_bkgrnd.3x,v 1.11 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_bkgrnd.3x,v 1.12 2020/10/17 23:13:15 tom Exp $
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
@@ -47,11 +47,11 @@
\fBint bkgrnd(\fR\fB const cchar_t *\fR\fIwch\fR\fB);\fR
.br
\fBint wbkgrnd(\fR\fB WINDOW *\fR\fIwin\fR\fB, const cchar_t *\fR\fIwch\fR\fB);\fR
-.br
+.sp
\fBvoid bkgrndset(const cchar_t *\fR\fIwch\fR \fB);\fR
.br
\fBvoid wbkgrndset(WINDOW *\fR\fIwin\fR\fB, const cchar_t *\fR\fIwch\fR\fB);\fR
-.br
+.sp
\fBint getbkgrnd(cchar_t *\fR\fIwch\fR\fB);\fR
.br
\fBint wgetbkgrnd(WINDOW *\fR\fIwin\fR\fB, cchar_t *\fR\fIwch\fR\fB);\fR
diff --git a/man/curs_border.3x b/man/curs_border.3x
index eaf6954..7b41da5 100644
--- a/man/curs_border.3x
+++ b/man/curs_border.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_border.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_border.3x,v 1.27 2020/10/18 00:33:06 tom Exp $
.TH curs_border 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -51,31 +51,31 @@
.hy
.SH SYNOPSIS
\fB#include <curses.h>\fR
+.sp
+\fBint border(chtype \fP\fIls\fP\fB, chtype \fP\fIrs\fP\fB, chtype \fP\fIts\fP\fB, chtype \fP\fIbs\fP\fB,\fR
+ \fBchtype \fP\fItl\fP\fB, chtype \fP\fItr\fP\fB, chtype \fP\fIbl\fP\fB, chtype \fP\fIbr\fP\fB);\fR
.br
-\fBint border(chtype ls, chtype rs, chtype ts, chtype bs,\fR
- \fBchtype tl, chtype tr, chtype bl, chtype br);\fR
-.br
-\fBint wborder(WINDOW *win, chtype ls, chtype rs,\fR
- \fBchtype ts, chtype bs, chtype tl, chtype tr,\fR
- \fBchtype bl, chtype br);\fR
-.br
-\fBint box(WINDOW *win, chtype verch, chtype horch);\fR
-.br
-\fBint hline(chtype ch, int n);\fR
-.br
-\fBint whline(WINDOW *win, chtype ch, int n);\fR
+\fBint wborder(WINDOW *\fP\fIwin\fP\fB, chtype \fP\fIls\fP\fB, chtype \fP\fIrs\fP\fB,\fR
+ \fBchtype \fP\fIts\fP\fB, chtype \fP\fIbs\fP\fB, chtype \fP\fItl\fP\fB, chtype \fP\fItr\fP\fB,\fR
+ \fBchtype \fP\fIbl\fP\fB, chtype \fP\fIbr\fP\fB);\fR
+.sp
+\fBint box(WINDOW *\fP\fIwin\fP\fB, chtype \fP\fIverch\fP\fB, chtype \fP\fIhorch\fP\fB);\fR
+.sp
+\fBint hline(chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint vline(chtype ch, int n);\fR
+\fBint whline(WINDOW *\fP\fIwin\fP\fB, chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint wvline(WINDOW *win, chtype ch, int n);\fR
+\fBint vline(chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvhline(int y, int x, chtype ch, int n);\fR
+\fBint wvline(WINDOW *\fP\fIwin\fP\fB, chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
+.sp
+\fBint mvhline(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvwhline(WINDOW *, int y, int x, chtype ch, int n);\fR
+\fBint mvwhline(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvvline(int y, int x, chtype ch, int n);\fR
+\fBint mvvline(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvwvline(WINDOW *, int y, int x, chtype ch, int n);\fR
+\fBint mvwvline(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype \fP\fIch\fP\fB, int \fP\fIn\fP\fB);\fR
.br
.SH DESCRIPTION
The \fBborder\fR, \fBwborder\fR and \fBbox\fR routines
diff --git a/man/curs_clear.3x b/man/curs_clear.3x
index 2cce06e..d86acbd 100644
--- a/man/curs_clear.3x
+++ b/man/curs_clear.3x
@@ -27,10 +27,14 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_clear.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_clear.3x,v 1.20 2020/10/24 09:19:37 tom Exp $
.TH curs_clear 3X ""
.na
.hy 0
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.SH NAME
\fBerase\fR,
\fBwerase\fR,
@@ -43,23 +47,23 @@
.ad
.hy
.SH SYNOPSIS
-\fB# include <curses.h>\fR
+\fB#include <curses.h>\fR
.sp
\fBint erase(void);\fR
.br
-\fBint werase(WINDOW *win);\fR
-.br
+\fBint werase(WINDOW *\fP\fIwin\fP\fB);\fR
+.sp
\fBint clear(void);\fR
.br
-\fBint wclear(WINDOW *win);\fR
-.br
+\fBint wclear(WINDOW *\fP\fIwin\fP\fB);\fR
+.sp
\fBint clrtobot(void);\fR
.br
-\fBint wclrtobot(WINDOW *win);\fR
-.br
+\fBint wclrtobot(WINDOW *\fP\fIwin\fP\fB);\fR
+.sp
\fBint clrtoeol(void);\fR
.br
-\fBint wclrtoeol(WINDOW *win);\fR
+\fBint wclrtoeol(WINDOW *\fP\fIwin\fP\fB);\fR
.br
.SH DESCRIPTION
The \fBerase\fR and \fBwerase\fR routines copy blanks to every
@@ -82,12 +86,14 @@ Blanks created by erasure have the current background rendition (as set
by \fBwbkgdset\fR) merged into them.
.SH RETURN VALUE
All routines return the integer \fBOK\fR on success and \fBERR\fP on failure.
-The SVr4.0 manual says "or a
-non-negative integer if \fBimmedok\fR is set", but this appears to be an error.
.PP
X/Open defines no error conditions.
In this implementation,
-functions using a window pointer parameter return an error if it is null.
+.bP
+functions using a window pointer parameter return an error if it is null
+.bP
+\fBwclrtoeol\fP returns an error
+if the cursor position is about to wrap.
.SH NOTES
Note that \fBerase\fR, \fBwerase\fR, \fBclear\fR, \fBwclear\fR,
\fBclrtobot\fR, and \fBclrtoeol\fR may be macros.
@@ -97,6 +103,12 @@ The
standard specifies that they return \fBERR\fR on failure, but specifies no
error conditions.
.PP
+The SVr4.0 manual says that these functions could
+return "a non-negative integer if \fBimmedok\fR is set",
+referring to the return-value of \fBwrefresh\fP.
+In that implementation, \fBwrefresh\fP would return a count of
+the number of characters written to the terminal.
+.PP
Some historic curses implementations had, as an undocumented feature, the
ability to do the equivalent of \fBclearok(..., 1)\fR by saying
\fBtouchwin(stdscr)\fR or \fBclear(stdscr)\fR.
diff --git a/man/curs_color.3x b/man/curs_color.3x
index b3521cb..2b8b607 100644
--- a/man/curs_color.3x
+++ b/man/curs_color.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_color.3x,v 1.62 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_color.3x,v 1.66 2021/09/04 19:42:20 tom Exp $
.TH curs_color 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -66,31 +66,31 @@
.br
\fBbool can_change_color(void);\fR
.sp
-\fBint init_pair(short pair, short f, short b);\fR
+\fBint init_pair(short \fP\fIpair\fP\fB, short \fP\fIf\fP\fB, short \fP\fIb\fP\fB);\fR
.br
-\fBint init_color(short color, short r, short g, short b);\fR
+\fBint init_color(short \fP\fIcolor\fP\fB, short \fP\fIr\fP\fB, short \fP\fIg\fP\fB, short \fP\fIb\fP\fB);\fR
.br
/* extensions */
.br
-\fBint init_extended_pair(int pair, int f, int b);\fR
+\fBint init_extended_pair(int \fP\fIpair\fP\fB, int \fP\fIf\fP\fB, int \fP\fIb\fP\fB);\fR
.br
-\fBint init_extended_color(int color, int r, int g, int b);\fR
+\fBint init_extended_color(int \fP\fIcolor\fP\fB, int \fP\fIr\fP\fB, int \fP\fIg\fP\fB, int \fP\fIb\fP\fB);\fR
.sp
-\fBint color_content(short color, short *r, short *g, short *b);\fR
+\fBint color_content(short \fP\fIcolor\fP\fB, short *\fP\fIr\fP\fB, short *\fP\fIg\fP\fB, short *\fP\fIb\fP\fB);\fR
.br
-\fBint pair_content(short pair, short *f, short *b);\fR
+\fBint pair_content(short \fP\fIpair\fP\fB, short *\fP\fIf\fP\fB, short *\fP\fIb\fP\fB);\fR
.br
/* extensions */
.br
-\fBint extended_color_content(int color, int *r, int *g, int *b);\fR
+\fBint extended_color_content(int \fP\fIcolor\fP\fB, int *\fP\fIr\fP\fB, int *\fP\fIg\fP\fB, int *\fP\fIb\fP\fB);\fR
.br
-\fBint extended_pair_content(int pair, int *f, int *b);\fR
+\fBint extended_pair_content(int \fP\fIpair\fP\fB, int *\fP\fIf\fP\fB, int *\fP\fIb\fP\fB);\fR
.sp
/* extensions */
.br
\fBvoid reset_color_pairs(void);\fR
.sp
-\fBint COLOR_PAIR(int n);\fR
+\fBint COLOR_PAIR(int \fP\fIn\fP\fB);\fR
.br
\fBPAIR_NUMBER(\fR\fIattrs\fR\fB);\fP
.br
@@ -422,7 +422,7 @@ if \fBstart_color\fP was not called.
SVr4 does much the same, except that
it returns \fBERR\fP from \fBpair_content\fP if the pair was not initialized
using \fBinit_pairs\fP
-and
+and
it returns \fBERR\fP from \fBcolor_content\fP
if the terminal does not support changing colors.
.IP
@@ -467,6 +467,54 @@ Paradise and compatibles) do the wrong thing when you try to set a bright
\*(``yellow\*('' background (you get a blinking yellow foreground instead).
.bP
Color RGB values are not settable.
+.SH HISTORY
+.PP
+SVr3.2 introduced color support to curses in 1987.
+.PP
+SVr4 made internal changes,
+e.g., moving the storage for the color state
+from \fBSP\fP (the \fBSCREEN\fP structure)
+to \fBcur_term\fP (the \fBTERMINAL\fP structure),
+but provided the same set of library functions.
+.PP
+SVr4 curses limits the number of color pairs to 64,
+reserving color pair zero (0) as the terminal's initial uncolored state.
+This limit arises because the color pair information is a bitfield
+in the \fBchtype\fP data type (denoted by \fBA_COLOR\fP).
+.PP
+Other implementations of curses had different limits:
+.bP
+PCCurses (1987-1990) provided for only eight (8) colors.
+.bP
+PDCurses (1992-present) inherited the 8-color limitation from PCCurses,
+but changed this to 256 in version 2.5 (2001),
+along with changing \fBchtype\fP from 16-bits to 32-bits.
+.bP
+X/Open Curses (1992-present)
+added a new structure \fBcchar_t\fP to store the character,
+attributes and color-pair values, allowing increased range of color-pairs.
+Both color-pairs and color-values used a signed \fBshort\fP,
+limiting values to 15 bits.
+.bP
+ncurses (1992-present) uses eight bits for \fBA_COLOR\fP in \fBchtype\fP values.
+.IP
+Version 5.3 provided a wide-character interface (2002),
+but left color-pairs as part of the attributes-field.
+.IP
+Since version 6 (2015),
+ncurses uses a separate \fBint\fP for color-pairs in the \fBcchar_t\fP values.
+When those color-pair values fit in 8 bits,
+ncurses allows color-pairs to be manipulated
+via the functions using \fBchtype\fP values.
+.bP
+NetBSD curses used 6 bits from
+2000 (when colors were first supported) until 2004.
+At that point, NetBSD changed to use 10 bits.
+As of 2021, that size is unchanged.
+Like ncurses before version 6,
+the NetBSD color-pair information is stored in
+the attributes field of \fBcchar_t\fP, limiting the number of color-pairs
+by the size of the bitfield.
.SH PORTABILITY
This implementation satisfies XSI Curses's minimum maximums
for \fBCOLORS\fR and \fBCOLOR_PAIRS\fR.
diff --git a/man/curs_delch.3x b/man/curs_delch.3x
index ecfde60..86f0984 100644
--- a/man/curs_delch.3x
+++ b/man/curs_delch.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_delch.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_delch.3x,v 1.15 2020/10/24 09:36:43 tom Exp $
.TH curs_delch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -43,11 +43,11 @@
.sp
\fBint delch(void);\fR
.br
-\fBint wdelch(WINDOW *win);\fR
+\fBint wdelch(WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBint mvdelch(int y, int x);\fR
+\fBint mvdelch(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
-\fBint mvwdelch(WINDOW *win, int y, int x);\fR
+\fBint mvwdelch(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
.SH DESCRIPTION
These routines delete the character under the cursor; all characters to the
diff --git a/man/curs_deleteln.3x b/man/curs_deleteln.3x
index 2e667c8..391c800 100644
--- a/man/curs_deleteln.3x
+++ b/man/curs_deleteln.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_deleteln.3x,v 1.15 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_deleteln.3x,v 1.17 2020/10/18 00:28:51 tom Exp $
.TH curs_deleteln 3X ""
.SH NAME
\fBdeleteln\fR,
@@ -41,15 +41,15 @@
.sp
\fBint deleteln(void);\fR
.br
-\fBint wdeleteln(WINDOW *win);\fR
-.br
-\fBint insdelln(int n);\fR
-.br
-\fBint winsdelln(WINDOW *win, int n);\fR
+\fBint wdeleteln(WINDOW *\fP\fIwin\fP\fB);\fR
+.sp
+\fBint insdelln(int \fP\fIn\fP\fB);\fR
.br
+\fBint winsdelln(WINDOW *\fP\fIwin\fP\fB, int \fP\fIn\fP\fB);\fR
+.sp
\fBint insertln(void);\fR
.br
-\fBint winsertln(WINDOW *win);\fR
+\fBint winsertln(WINDOW *\fP\fIwin\fP\fB);\fR
.br
.SH DESCRIPTION
The \fBdeleteln\fR and \fBwdeleteln\fR routines delete the line under the
diff --git a/man/curs_extend.3x b/man/curs_extend.3x
index 307c8a1..a316a6b 100644
--- a/man/curs_extend.3x
+++ b/man/curs_extend.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1999-2010,2016 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,8 +29,12 @@
.\"
.\" Author: Thomas E. Dickey 1999-on
.\"
-.\" $Id: curs_extend.3x,v 1.23 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_extend.3x,v 1.26 2021/03/13 13:43:05 tom Exp $
.TH curs_extend 3X ""
+.ie \n(.g .ds `` \(lq
+.el .ds `` ``
+.ie \n(.g .ds '' \(rq
+.el .ds '' ''
.SH NAME
\fBcurses_version\fP,
\fBuse_extended_names\fP \- miscellaneous curses extensions
@@ -40,15 +44,19 @@
.sp
\fBconst char * curses_version(void);\fP
.br
-\fBint use_extended_names(bool enable);\fP
+\fBint use_extended_names(bool \fP\fIenable\fP\fB);\fP
.SH DESCRIPTION
These functions are extensions to the curses library
which do not fit easily into other categories.
.SS curses_version
.PP
Use \fBcurses_version\fP
-to get the version number, including patch level of the library, e.g.,
-.B 5.0.19991023
+to get the version number, including patch level of the library,
+prefixed by \*(``ncurses\*('', e.g.,
+.RS
+.sp
+.B ncurses 5.0.19991023
+.RE
.SS use_extended_names
.PP
The \fBuse_extended_names\fP
diff --git a/man/curs_get_wch.3x b/man/curs_get_wch.3x
index 4a30cf1..115f068 100644
--- a/man/curs_get_wch.3x
+++ b/man/curs_get_wch.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 2002-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_get_wch.3x,v 1.13 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_get_wch.3x,v 1.15 2021/05/22 22:33:19 tom Exp $
.TH curs_get_wch 3X ""
.na
.hy 0
@@ -57,9 +57,10 @@
\fBint mvget_wch(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
.br
\fBint mvwget_wch(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
-.br
+.sp
\fBint unget_wch(const wchar_t \fR\fIwch\fR\fB);\fR
.SH DESCRIPTION
+.SS wget_wch
The
\fBget_wch\fR,
\fBwget_wch\fR,
@@ -111,7 +112,7 @@ Their names begin with \fBKEY_\fR.
Other (user-defined) function keys
which may be defined using \fBdefine_key\fP(3X) have no names,
but also are expected to have values outside the range of 8-bit characters.
-.PP
+.SS unget_wch
The
\fBunget_wch\fR
function pushes the wide character
@@ -126,6 +127,14 @@ If the program calls
too many times without an intervening call to
\fBget_wch\fR,
the operation may fail.
+.PP
+Unlike \fBungetch\fP and \fBwgetch\fP,
+\fBunget_wch\fP cannot distinguish special characters
+returned by \fBwget_wch\fP from ordinary characters.
+An application can push special keys
+which it may read via \fBwget_wch\fP
+by checking for the \fBKEY_CODE_YES\fR result,
+and using \fBungetch\fP for those special keys.
.SH NOTES
The header file
\fB<curses.h>\fR
diff --git a/man/curs_get_wstr.3x b/man/curs_get_wstr.3x
index ce8572e..112208a 100644
--- a/man/curs_get_wstr.3x
+++ b/man/curs_get_wstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_get_wstr.3x,v 1.20 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_get_wstr.3x,v 1.21 2020/10/17 23:17:24 tom Exp $
.TH curs_get_wstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -61,7 +61,7 @@
\fBint wget_wstr(WINDOW *\fR\fIwin\fR\fB, wint_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint wgetn_wstr(WINDOW *\fR\fIwin\fR\fB, wint_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
-.br
+.sp
\fBint mvget_wstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint mvgetn_wstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
diff --git a/man/curs_getcchar.3x b/man/curs_getcchar.3x
index fafe782..cc127e2 100644
--- a/man/curs_getcchar.3x
+++ b/man/curs_getcchar.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2019,2020 Thomas E. Dickey *
+.\" Copyright 2019-2020,2021 Thomas E. Dickey *
.\" Copyright 2001-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_getcchar.3x,v 1.24 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_getcchar.3x,v 1.25 2021/06/17 21:26:02 tom Exp $
.TH curs_getcchar 3X ""
.de bP
.ie n .IP \(bu 4
@@ -116,7 +116,7 @@ In that case, no nonspacing characters are allowed.
.PP
X/Open Curses documents the \fIopts\fP argument as reserved for future use,
saying that it must be null.
-This implementation
+This implementation
uses that parameter in ABI 6 for the functions which have a color-pair
parameter to support extended color pairs:
.bP
diff --git a/man/curs_getch.3x b/man/curs_getch.3x
index c171f1d..a8c4bc1 100644
--- a/man/curs_getch.3x
+++ b/man/curs_getch.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_getch.3x,v 1.55 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_getch.3x,v 1.57 2020/12/19 21:38:20 tom Exp $
.TH curs_getch 3X ""
.na
.hy 0
@@ -55,12 +55,14 @@
\fBint getch(void);\fR
.br
\fBint wgetch(WINDOW *\fP\fIwin);\fR
-.br
+.sp
\fBint mvgetch(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
\fBint mvwgetch(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
-.br
+.sp
\fBint ungetch(int \fP\fIch\fP\fB);\fR
+.sp
+/* extension */
.br
\fBint has_key(int \fP\fIch\fP\fB);\fR
.br
@@ -404,9 +406,9 @@ any code using it be conditionalized on the \fBNCURSES_VERSION\fR feature macro.
.SH SEE ALSO
\fBcurses\fR(3X),
\fBcurs_inopts\fR(3X),
-\fBcurs_outopts\fR(3X),
\fBcurs_mouse\fR(3X),
\fBcurs_move\fR(3X),
+\fBcurs_outopts\fR(3X),
\fBcurs_refresh\fR(3X),
\fBcurs_variables\fR(3X),
\fBresizeterm\fR(3X).
diff --git a/man/curs_getstr.3x b/man/curs_getstr.3x
index d9bed59..4a1cc89 100644
--- a/man/curs_getstr.3x
+++ b/man/curs_getstr.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2010,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_getstr.3x,v 1.29 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_getstr.3x,v 1.33 2021/05/22 21:36:35 tom Exp $
.TH curs_getstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -53,21 +53,21 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint getstr(char *str);\fR
+\fBint getstr(char *\fP\fIstr\fP\fB);\fR
.br
-\fBint getnstr(char *str, int n);\fR
+\fBint getnstr(char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint wgetstr(WINDOW *win, char *str);\fR
+\fBint wgetstr(WINDOW *\fP\fIwin\fP\fB, char *\fP\fIstr\fP\fB);\fR
.br
-\fBint wgetnstr(WINDOW *win, char *str, int n);\fR
-.br
-\fBint mvgetstr(int y, int x, char *str);\fR
+\fBint wgetnstr(WINDOW *\fP\fIwin\fP\fB, char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
+.sp
+\fBint mvgetstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB);\fR
.br
-\fBint mvwgetstr(WINDOW *win, int y, int x, char *str);\fR
+\fBint mvwgetstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB);\fR
.br
-\fBint mvgetnstr(int y, int x, char *str, int n);\fR
+\fBint mvgetnstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvwgetnstr(WINDOW *, int y, int x, char *str, int n);\fR
+\fBint mvwgetnstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
.SH DESCRIPTION
The function \fBgetstr\fR is equivalent to a series of calls to \fBgetch\fR,
@@ -80,19 +80,29 @@ The resulting value is placed in the
area pointed to by the character pointer \fIstr\fR,
followed by a NUL.
.PP
-\fBwgetnstr\fR reads at most \fIn\fR characters, thus preventing a possible
+The \fBgetnstr\fR function reads
+from the \fIstdscr\fR default window.
+The other functions, such as \fBwgetnstr\fP,
+read from the window given as a parameter.
+.PP
+\fBgetnstr\fR reads at most \fIn\fR characters, thus preventing a possible
overflow of the input buffer.
Any attempt to enter more characters (other
than the terminating newline or carriage return) causes a beep.
Function
keys also cause a beep and are ignored.
-The \fBgetnstr\fR function reads
-from the \fIstdscr\fR default window.
.PP
-The user's erase and kill characters are interpreted.
-If keypad
-mode is on for the window, \fBKEY_LEFT\fR and \fBKEY_BACKSPACE\fR
-are both considered equivalent to the user's kill character.
+The user's \fIerase\fP and \fIkill\fP characters are interpreted:
+.bP
+The \fIerase\fP character (e.g., \fB^H\fP) erases the character
+at the end of the buffer, moving the cursor to the left.
+.IP
+If \fIkeypad\fP mode is on for the window,
+\fBKEY_LEFT\fR and \fBKEY_BACKSPACE\fR
+are both considered equivalent to the user's erase character.
+.bP
+The \fIkill\fP character (e.g., \fB^U\fP) erases the entire buffer,
+leaving the cursor at the beginning of the buffer.
.PP
Characters input are echoed only if \fBecho\fR is currently on.
In that case,
@@ -187,7 +197,50 @@ which the \fBsysconf\fP function may provide.
If neither \fBLINE_MAX\fP or \fBsysconf\fP is available,
ncurses uses the POSIX value for \fBLINE_MAX\fP (a 2048 byte limit).
In either case, it reserves a byte for the terminating NUL.
+.PP
+Although \fBgetnstr\fP is equivalent to a series of calls to \fBgetch\fP,
+it also makes changes to the curses modes to allow simple editing of
+the input buffer:
+.bP
+\fBgetnstr\fP saves the current value of the \fBnl\fP, \fBecho\fP,
+\fBraw\fP and \fBcbreak\fP modes, and sets
+\fBnl\fP,
+\fBnoecho\fP,
+\fBnoraw\fP, and
+\fBcbreak\fP.
+.IP
+\fBgetnstr\fP handles the echoing of characters,
+rather than relying on the caller to set an appropriate mode.
+.bP
+It also obtains the \fIerase\fP and \fIkill\fP characters
+from \fBerasechar\fP and \fBkillchar\fP, respectively.
+.bP
+On return, \fBgetnstr\fP restores the modes to their previous values.
+.PP
+Other implementations differ in their treatment of special characters:
+.bP
+While they may set the \fIecho\fP mode,
+other implementations do not modify the \fIraw\fP mode,
+They may take the \fIcbreak\fP
+mode set by the caller into account when deciding whether to handle
+echoing within \fBgetnstr\fP or as a side-effect of the \fBgetch\fP calls.
+.bP
+The original ncurses (as pcurses in 1986) set \fBnoraw\fP and \fBcbreak\fP
+when accepting input for \fBgetnstr\fP.
+That may have been done to make function- and cursor-keys work;
+it is not necessary with ncurses.
+.IP
+Since 1995, ncurses has provided signal handlers for INTR and QUIT
+(e.g., \fB^C\fP or \fB^\\\fP).
+With the \fBnoraw\fP and \fBcbreak\fP settings,
+those may catch a signal and stop the program,
+where other implementations allow one to enter those characters in the buffer.
+.bP
+Starting in 2021 (ncurses 6.3), \fBgetnstr\fP sets \fBraw\fP,
+rather than \fBnoraw\fP and \fBcbreak\fP for better compatibility with
+SVr4-curses, e.g., allowing one to enter a \fB^C\fP into the buffer.
.SH SEE ALSO
\fBcurses\fR(3X),
\fBcurs_getch\fR(3X),
+\fBcurs_termattrs\fR(3X),
\fBcurs_variables\fR(3X).
diff --git a/man/curs_getyx.3x b/man/curs_getyx.3x
index d12c064..e6ff670 100644
--- a/man/curs_getyx.3x
+++ b/man/curs_getyx.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_getyx.3x,v 1.19 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_getyx.3x,v 1.20 2020/10/24 09:38:43 tom Exp $
.TH curs_getyx 3X ""
.SH NAME
\fBgetyx\fR,
@@ -37,13 +37,13 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBvoid getyx(WINDOW *win, int y, int x);\fR
+\fBvoid getyx(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
-\fBvoid getparyx(WINDOW *win, int y, int x);\fR
+\fBvoid getparyx(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
-\fBvoid getbegyx(WINDOW *win, int y, int x);\fR
+\fBvoid getbegyx(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
-\fBvoid getmaxyx(WINDOW *win, int y, int x);\fR
+\fBvoid getmaxyx(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
.SH DESCRIPTION
The \fBgetyx\fR macro places the current cursor position of the given window in
diff --git a/man/curs_in_wch.3x b/man/curs_in_wch.3x
index a17135e..e267899 100644
--- a/man/curs_in_wch.3x
+++ b/man/curs_in_wch.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_in_wch.3x,v 1.9 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_in_wch.3x,v 1.10 2020/10/17 23:19:29 tom Exp $
.TH curs_in_wch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -43,11 +43,11 @@
.sp
\fBint in_wch(cchar_t *\fR\fIwcval\fR\fB);\fR
.br
+\fBint win_wch(WINDOW *\fR\fIwin\fR\fB, cchar_t *\fR\fIwcval\fR\fB);\fR
+.sp
\fBint mvin_wch(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, cchar_t *\fR\fIwcval\fR\fB);\fR
.br
\fBint mvwin_wch(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, cchar_t *\fR\fIwcval\fR\fB);\fR
-.br
-\fBint win_wch(WINDOW *\fR\fIwin\fR\fB, cchar_t *\fR\fIwcval\fR\fB);\fR
.SH DESCRIPTION
These functions extract the complex character and rendition from
the current position in the named window into the \fBcchar_t\fR object
diff --git a/man/curs_in_wchstr.3x b/man/curs_in_wchstr.3x
index 53491a8..4feae48 100644
--- a/man/curs_in_wchstr.3x
+++ b/man/curs_in_wchstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_in_wchstr.3x,v 1.13 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_in_wchstr.3x,v 1.14 2020/10/17 23:19:44 tom Exp $
.TH curs_in_wchstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -57,7 +57,7 @@
\fBint win_wchstr(WINDOW *\fR\fIwin\fR\fB, cchar_t *\fR\fIwchstr\fR\fB);\fR
.br
\fBint win_wchnstr(WINDOW *\fR\fIwin\fR\fB, cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR
-.br
+.sp
\fBint mvin_wchstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, cchar_t *\fR\fIwchstr\fR\fB);\fR
.br
\fBint mvin_wchnstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR
diff --git a/man/curs_inch.3x b/man/curs_inch.3x
index a91d963..1f271e3 100644
--- a/man/curs_inch.3x
+++ b/man/curs_inch.3x
@@ -1,6 +1,6 @@
'\" t
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2010,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_inch.3x,v 1.23 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_inch.3x,v 1.26 2021/06/17 21:30:22 tom Exp $
.TH curs_inch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -48,11 +48,11 @@
.sp
\fBchtype inch(void);\fR
.br
-\fBchtype winch(WINDOW *win);\fR
-.br
-\fBchtype mvinch(int y, int x);\fR
+\fBchtype winch(WINDOW *\fP\fIwin\fP\fB);\fR
+.sp
+\fBchtype mvinch(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
-\fBchtype mvwinch(WINDOW *win, int y, int x);\fR
+\fBchtype mvwinch(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
.SH DESCRIPTION
These routines return the character, of type \fBchtype\fR, at the current
@@ -100,7 +100,7 @@ could be combined with characters in the window.
Reflecting this improvement, the function was altered to return the
character combined with all video attributes in a \fBchtype\fP value.
.PP
-X/Open Curses does not specify
+X/Open Curses does not specify
the size and layout of attributes, color and character values in
\fBchtype\fP; it is implementation-dependent.
This implementation uses 8 bits for character values.
diff --git a/man/curs_inchstr.3x b/man/curs_inchstr.3x
index d352c38..332604e 100644
--- a/man/curs_inchstr.3x
+++ b/man/curs_inchstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_inchstr.3x,v 1.19 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_inchstr.3x,v 1.21 2020/10/18 00:24:36 tom Exp $
.TH curs_inchstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -53,21 +53,21 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint inchstr(chtype *chstr);\fR
+\fBint inchstr(chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint inchnstr(chtype *chstr, int n);\fR
+\fBint inchnstr(chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint winchstr(WINDOW *win, chtype *chstr);\fR
+\fBint winchstr(WINDOW *\fP\fIwin\fP\fB, chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint winchnstr(WINDOW *win, chtype *chstr, int n);\fR
-.br
-\fBint mvinchstr(int y, int x, chtype *chstr);\fR
+\fBint winchnstr(WINDOW *\fP\fIwin\fP\fB, chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
+.sp
+\fBint mvinchstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint mvinchnstr(int y, int x, chtype *chstr, int n);\fR
+\fBint mvinchnstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvwinchstr(WINDOW *win, int y, int x, chtype *chstr);\fR
+\fBint mvwinchstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype *\fP\fIchstr\fP\fB);\fR
.br
-\fBint mvwinchnstr(WINDOW *win, int y, int x, chtype *chstr, int n);\fR
+\fBint mvwinchnstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype *\fP\fIchstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
.SH DESCRIPTION
These routines return a NULL-terminated array of \fBchtype\fR quantities,
diff --git a/man/curs_initscr.3x b/man/curs_initscr.3x
index e0e8ba2..235a5aa 100644
--- a/man/curs_initscr.3x
+++ b/man/curs_initscr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_initscr.3x,v 1.32 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_initscr.3x,v 1.33 2020/10/17 23:20:48 tom Exp $
.TH curs_initscr 3X ""
.de bP
.ie n .IP \(bu 4
@@ -54,9 +54,9 @@
\fBWINDOW *initscr(void);\fR
.br
\fBint endwin(void);\fR
-.br
+.sp
\fBbool isendwin(void);\fR
-.br
+.sp
\fBSCREEN *newterm(const char *\fP\fItype\fP\fB, FILE *\fP\fIoutfd\fP\fB, FILE *\fP\fIinfd\fP\fB);\fR
.br
\fBSCREEN *set_term(SCREEN *\fP\fInew\fP\fB);\fR
diff --git a/man/curs_inopts.3x b/man/curs_inopts.3x
index 3422c6b..d346017 100644
--- a/man/curs_inopts.3x
+++ b/man/curs_inopts.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_inopts.3x,v 1.29 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_inopts.3x,v 1.33 2020/12/05 19:38:18 Benno.Schulenberg Exp $
.TH curs_inopts 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -44,12 +44,14 @@
\fBintrflush\fR,
\fBkeypad\fR,
\fBmeta\fR,
+\fBnl\fR,
+\fBnonl\fR,
\fBnodelay\fR,
\fBnotimeout\fR,
\fBraw\fR,
\fBnoraw\fR,
-\fBnoqiflush\fR,
\fBqiflush\fR,
+\fBnoqiflush\fR,
\fBtimeout\fR,
\fBwtimeout\fR,
\fBtypeahead\fR \- \fBcurses\fR input options
@@ -61,36 +63,40 @@
\fBint cbreak(void);\fR
.br
\fBint nocbreak(void);\fR
-.br
+.sp
\fBint echo(void);\fR
.br
\fBint noecho(void);\fR
+.sp
+\fBint intrflush(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
-\fBint halfdelay(int tenths);\fR
+\fBint keypad(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
-\fBint intrflush(WINDOW *win, bool bf);\fR
+\fBint meta(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
-\fBint keypad(WINDOW *win, bool bf);\fR
+\fBint nodelay(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
-\fBint meta(WINDOW *win, bool bf);\fR
-.br
-\fBint nodelay(WINDOW *win, bool bf);\fR
+\fBint notimeout(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
+.sp
+\fBint nl(void);\fR
.br
+\fBint nonl(void);\fR
+.sp
\fBint raw(void);\fR
.br
\fBint noraw(void);\fR
-.br
-\fBvoid noqiflush(void);\fR
-.br
+.sp
\fBvoid qiflush(void);\fR
.br
-\fBint notimeout(WINDOW *win, bool bf);\fR
-.br
-\fBvoid timeout(int delay);\fR
+\fBvoid noqiflush(void);\fR
+.sp
+\fBint halfdelay(int \fP\fItenths\fP\fB);\fR
.br
-\fBvoid wtimeout(WINDOW *win, int delay);\fR
+\fBvoid timeout(int \fP\fIdelay\fP\fB);\fR
.br
-\fBint typeahead(int fd);\fR
+\fBvoid wtimeout(WINDOW *\fP\fIwin\fP\fB, int \fP\fIdelay\fP\fB);\fR
+.sp
+\fBint typeahead(int \fP\fIfd\fP\fB);\fR
.br
.SH DESCRIPTION
The \fBncurses\fP library provides several functions which let an application
@@ -102,7 +108,7 @@ windows.
An application must apply these to each window, if the same behavior
is needed.
.\"
-.SS cbreak
+.SS cbreak/nocbreak
Normally, the tty driver buffers typed characters until a newline or carriage
return is typed.
The \fBcbreak\fR routine disables line buffering and
@@ -194,14 +200,20 @@ If the terminfo capabilities \fBsmm\fR
\fBTRUE\fR) is called and \fBrmm\fR is sent when \fBmeta\fR(\fIwin\fR,
\fBFALSE\fR) is called.
.\"
+.SS nl/nonl
+.PP
+The \fBnl\fR and \fBnonl\fR routines control whether the underlying display
+device translates the return key into newline on input.
+.\"
.SS nodelay
.PP
The \fBnodelay\fR option causes \fBgetch\fR to be a non-blocking call.
If no input is ready, \fBgetch\fR returns \fBERR\fR.
If disabled
(\fIbf\fR is \fBFALSE\fR), \fBgetch\fR waits until a key is pressed.
+.SS notimeout
.PP
-While interpreting an input escape sequence, \fBwgetch\fR(3X) sets a timer
+When interpreting an escape sequence, \fBwgetch\fR(3X) sets a timer
while waiting for the next character.
If \fBnotimeout(\fR\fIwin\fR,
\fBTRUE\fR) is called, then \fBwgetch\fR does not set a timer.
@@ -222,7 +234,7 @@ The behavior of
the BREAK key depends on other bits in the tty driver that are not set by
\fBcurses\fR.
.\"
-.SS noqiflush
+.SS qiflush/noqiflush
.PP
When the \fBnoqiflush\fR routine is used, normal flush of input and
output queues associated with the \fBINTR\fR, \fBQUIT\fR and
@@ -292,9 +304,17 @@ initializes the terminal state.
BSD curses differed from this slightly; it
left the echo bit on at initialization, but the BSD \fBraw\fR call turned it
off as a side-effect.
-For best portability, set echo or noecho explicitly
+For best portability, set \fBecho \fPor \fBnoecho\fP explicitly
just after initialization, even if your program remains in cooked mode.
.PP
+The XSI Curses standard is ambiguous on the question of whether \fBraw\fR
+should disable the CRLF translations controlled by \fBnl\fR and \fBnonl\fR.
+BSD curses did turn off these translations; AT&T curses (at least as late as
+SVr1) did not.
+We chose to do so, on the theory that a programmer requesting
+raw input wants a clean (ideally 8-bit clean) connection that the operating
+system will not alter.
+.PP
When \fBkeypad\fP is first enabled,
ncurses loads the key-definitions for the current terminal description.
If the terminal description includes extended string capabilities,
@@ -331,9 +351,20 @@ and if a capability's value is the same as a previously-loaded
key definition,
the later definition is the one used.
.SH NOTES
-Note that \fBecho\fR, \fBnoecho\fR, \fBhalfdelay\fR, \fBintrflush\fR,
-\fBmeta\fR, \fBnodelay\fR, \fBnotimeout\fR, \fBnoqiflush\fR,
-\fBqiflush\fR, \fBtimeout\fR, and \fBwtimeout\fR may be macros.
+Note that
+\fBecho\fR,
+\fBnoecho\fR,
+\fBhalfdelay\fR,
+\fBintrflush\fR,
+\fBmeta\fR,
+\fBnl\fR,
+\fBnonl\fR,
+\fBnodelay\fR,
+\fBnotimeout\fR,
+\fBnoqiflush\fR,
+\fBqiflush\fR,
+\fBtimeout\fR, and
+\fBwtimeout\fR may be macros.
.PP
The \fBnoraw\fR and \fBnocbreak\fR calls follow historical practice in that
they attempt to restore to normal (\*(``cooked\*('') mode
diff --git a/man/curs_ins_wch.3x b/man/curs_ins_wch.3x
index 69731f6..9b19a28 100644
--- a/man/curs_ins_wch.3x
+++ b/man/curs_ins_wch.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_ins_wch.3x,v 1.8 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_ins_wch.3x,v 1.10 2020/10/18 00:22:21 tom Exp $
.TH curs_ins_wch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -43,11 +43,11 @@
.sp
\fBint ins_wch(const cchar_t *\fR\fIwch\fR\fB);\fR
.br
-\fBint wins_wch(WINDOW *\fR\fIwin, const cchar_t *\fR\fIwch\fR\fB);\fR
-.br
-\fBint mvins_wch(int \fR\fIy, int \fR\fIx, const cchar_t *\fR\fIwch\fR\fB);\fR
+\fBint wins_wch(WINDOW *\fR\fIwin\fP\fB, const cchar_t *\fR\fIwch\fR\fB);\fR
+.sp
+\fBint mvins_wch(int \fR\fIy\fP\fB, int \fR\fIx\fP\fB, const cchar_t *\fR\fIwch\fR\fB);\fR
.br
-\fBint mvwins_wch(WINDOW *\fR\fIwin, int \fR\fIy, int \fR\fIx, const cchar_t *\fR\fIwch\fR\fB);\fR
+\fBint mvwins_wch(WINDOW *\fR\fIwin\fP\fB, int \fR\fIy\fP\fB, int \fR\fIx\fP\fB, const cchar_t *\fR\fIwch\fR\fB);\fR
.SH DESCRIPTION
These routines, insert the complex character \fIwch\fR with rendition
before the character under the cursor.
diff --git a/man/curs_ins_wstr.3x b/man/curs_ins_wstr.3x
index 2a89ff1..76c44fb 100644
--- a/man/curs_ins_wstr.3x
+++ b/man/curs_ins_wstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_ins_wstr.3x,v 1.10 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_ins_wstr.3x,v 1.11 2020/10/17 23:21:25 tom Exp $
.TH curs_ins_wstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -57,7 +57,7 @@
\fBint wins_wstr(WINDOW *\fR\fIwin\fR\fB, const wchar_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint wins_nwstr(WINDOW *\fR\fIwin\fR\fB, const wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
-.br
+.sp
\fBint mvins_wstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const wchar_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint mvins_nwstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
diff --git a/man/curs_insch.3x b/man/curs_insch.3x
index 4642caa..1b4e3ee 100644
--- a/man/curs_insch.3x
+++ b/man/curs_insch.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_insch.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_insch.3x,v 1.19 2020/10/18 00:21:39 tom Exp $
.TH curs_insch 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -41,13 +41,13 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint insch(chtype ch);\fR
+\fBint insch(chtype \fP\fIch\fP\fB);\fR
.br
-\fBint winsch(WINDOW *win, chtype ch);\fR
-.br
-\fBint mvinsch(int y, int x, chtype ch);\fR
+\fBint winsch(WINDOW *\fP\fIwin\fP\fB, chtype \fP\fIch\fP\fB);\fR
+.sp
+\fBint mvinsch(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype \fP\fIch\fP\fB);\fR
.br
-\fBint mvwinsch(WINDOW *win, int y, int x, chtype ch);\fR
+\fBint mvwinsch(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, chtype \fP\fIch\fP\fB);\fR
.br
.SH DESCRIPTION
These routines insert the character \fIch\fR before the character under the
diff --git a/man/curs_insstr.3x b/man/curs_insstr.3x
index b3147ed..a4c8c62 100644
--- a/man/curs_insstr.3x
+++ b/man/curs_insstr.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2019,2020 Thomas E. Dickey *
+.\" Copyright 2019-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2010,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_insstr.3x,v 1.24 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_insstr.3x,v 1.27 2021/06/17 21:26:02 tom Exp $
.TH curs_insstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -45,21 +45,21 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.br
-\fBint insstr(const char *str);\fR
+\fBint insstr(const char *\fP\fIstr\fP\fB);\fR
.br
-\fBint insnstr(const char *str, int n);\fR
+\fBint insnstr(const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint winsstr(WINDOW *win, const char *str);\fR
+\fBint winsstr(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIstr\fP\fB);\fR
.br
-\fBint winsnstr(WINDOW *win, const char *str, int n);\fR
+\fBint winsnstr(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
+.sp
+\fBint mvinsstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\fB);\fR
.br
-\fBint mvinsstr(int y, int x, const char *str);\fR
+\fBint mvinsnstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvinsnstr(int y, int x, const char *str, int n);\fR
+\fBint mvwinsstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\fB);\fR
.br
-\fBint mvwinsstr(WINDOW *win, int y, int x, const char *str);\fR
-.br
-\fBint mvwinsnstr(WINDOW *win, int y, int x, const char *str, int n);\fR
+\fBint mvwinsnstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
.SH DESCRIPTION
These routines insert a character string
@@ -94,7 +94,7 @@ Note that all but \fBwinsnstr\fR may be macros.
These functions are described in the XSI Curses standard, Issue 4, which adds
const qualifiers to the arguments.
.LP
-The Single Unix Specification, Version 2 states that
+The Single Unix Specification, Version 2 states that
\fBinsnstr\fP and \fBwinsnstr\fP perform wrapping.
This is probably an error, since it makes this group of functions inconsistent.
Also, no implementation of curses documents this inconsistency.
diff --git a/man/curs_instr.3x b/man/curs_instr.3x
index 4423106..7cc4b4b 100644
--- a/man/curs_instr.3x
+++ b/man/curs_instr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_instr.3x,v 1.20 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_instr.3x,v 1.22 2020/10/18 00:18:27 tom Exp $
.TH curs_instr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -49,21 +49,21 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint instr(char *str);\fR
+\fBint instr(char *\fP\fIstr\fP\fB);\fR
.br
-\fBint innstr(char *str, int n);\fR
+\fBint innstr(char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint winstr(WINDOW *win, char *str);\fR
+\fBint winstr(WINDOW *\fP\fIwin\fP\fB, char *\fP\fIstr\fP\fB);\fR
.br
-\fBint winnstr(WINDOW *win, char *str, int n);\fR
-.br
-\fBint mvinstr(int y, int x, char *str);\fR
+\fBint winnstr(WINDOW *\fP\fIwin\fP\fB, char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
+.sp
+\fBint mvinstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB);\fR
.br
-\fBint mvinnstr(int y, int x, char *str, int n);\fR
+\fBint mvinnstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
-\fBint mvwinstr(WINDOW *win, int y, int x, char *str);\fR
+\fBint mvwinstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB);\fR
.br
-\fBint mvwinnstr(WINDOW *win, int y, int x, char *str, int n);\fR
+\fBint mvwinnstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR
.br
.SH DESCRIPTION
These routines return a string of characters in \fIstr\fR, extracted starting
diff --git a/man/curs_inwstr.3x b/man/curs_inwstr.3x
index 1b44a64..b3899c4 100644
--- a/man/curs_inwstr.3x
+++ b/man/curs_inwstr.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_inwstr.3x,v 1.13 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_inwstr.3x,v 1.14 2020/10/17 23:22:11 tom Exp $
.TH curs_inwstr 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -53,7 +53,7 @@
\fBint winwstr(\fR\fBWINDOW *\fR\fIwin\fR\fB, wchar_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint winnwstr(\fR\fBWINDOW *\fR\fIwin\fR\fB, wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
-.br
+.sp
\fBint mvinwstr(\fR\fBint \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wchar_t *\fR\fIwstr\fR\fB);\fR
.br
\fBint mvinnwstr(\fR\fBint \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
diff --git a/man/curs_kernel.3x b/man/curs_kernel.3x
index 2d89d1a..a4e6c80 100644
--- a/man/curs_kernel.3x
+++ b/man/curs_kernel.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_kernel.3x,v 1.28 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_kernel.3x,v 1.29 2020/10/17 23:22:35 tom Exp $
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.ie \n(.g .ds '' \(rq
@@ -59,19 +59,19 @@
\fBint def_prog_mode(void);\fR
.br
\fBint def_shell_mode(void);\fR
-.br
+.sp
\fBint reset_prog_mode(void);\fR
.br
\fBint reset_shell_mode(void);\fR
-.br
+.sp
\fBint resetty(void);\fR
.br
\fBint savetty(void);\fR
-.br
+.sp
\fBvoid getsyx(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
\fBvoid setsyx(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
-.br
+.sp
\fBint ripoffline(int \fP\fIline\fP\fB, int (*\fP\fIinit\fP\fB)(WINDOW *, int));\fR
.br
\fBint curs_set(int \fP\fIvisibility\fP\fB);\fR
diff --git a/man/curs_legacy.3x b/man/curs_legacy.3x
index b73a6be..c2eb86b 100644
--- a/man/curs_legacy.3x
+++ b/man/curs_legacy.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_legacy.3x,v 1.10 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_legacy.3x,v 1.12 2020/10/18 00:16:04 tom Exp $
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
@@ -38,23 +38,23 @@ curs_legacy \- get \fBcurses\fP cursor and window coordinates, attributes
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
-\fBint getattrs(const WINDOW *win);\fP
-.br
-\fBint getbegx(const WINDOW *win);\fP
-.br
-\fBint getbegy(const WINDOW *win);\fP
-.br
-\fBint getcurx(const WINDOW *win);\fP
-.br
-\fBint getcury(const WINDOW *win);\fP
+\fBint getattrs(const WINDOW *\fP\fIwin\fP\fB);\fP
+.sp
+\fBint getbegx(const WINDOW *\fP\fIwin\fP\fB);\fP
.br
-\fBint getmaxx(const WINDOW *win);\fP
+\fBint getbegy(const WINDOW *\fP\fIwin\fP\fB);\fP
+.sp
+\fBint getcurx(const WINDOW *\fP\fIwin\fP\fB);\fP
.br
-\fBint getmaxy(const WINDOW *win);\fP
+\fBint getcury(const WINDOW *\fP\fIwin\fP\fB);\fP
+.sp
+\fBint getmaxx(const WINDOW *\fP\fIwin\fP\fB);\fP
.br
-\fBint getparx(const WINDOW *win);\fP
+\fBint getmaxy(const WINDOW *\fP\fIwin\fP\fB);\fP
+.sp
+\fBint getparx(const WINDOW *\fP\fIwin\fP\fB);\fP
.br
-\fBint getpary(const WINDOW *win);\fP
+\fBint getpary(const WINDOW *\fP\fIwin\fP\fB);\fP
.br
.SH DESCRIPTION
These legacy functions are simpler to use than the X/Open Curses functions:
diff --git a/man/curs_memleaks.3x b/man/curs_memleaks.3x
index 06a95ed..59bd3e8 100644
--- a/man/curs_memleaks.3x
+++ b/man/curs_memleaks.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2019,2020 Thomas E. Dickey *
+.\" Copyright 2019-2020,2021 Thomas E. Dickey *
.\" Copyright 2008-2010,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_memleaks.3x,v 1.8 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_memleaks.3x,v 1.11 2021/01/02 23:47:51 tom Exp $
.TH curs_memleaks 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -36,31 +36,32 @@
.na
.hy 0
.SH NAME
-\fB_nc_freeall\fP,
-\fB_nc_free_and_exit\fP,
-\fB_nc_free_tinfo\fP \- \fBcurses\fR memory-leak checking
+\fBexit_curses\fP,
+\fBexit_terminfo\fP \- \fBcurses\fR memory-leak checking
.ad
.hy
.SH SYNOPSIS
\fB#include <curses.h>\fR
+.br
+\fBvoid exit_curses(int \fP\fIcode\fP\fB);\fR
.sp
-\fBvoid exit_curses(int);\fR
+\fB#include <term.h>\fR
.br
-\fBvoid exit_terminfo(int);\fR
+\fBvoid exit_terminfo(int \fP\fIcode\fP\fB);\fR
.sp
-/* deprecated */
+/* deprecated (intentionally not declared in curses.h or term.h) */
.br
\fBvoid _nc_freeall(void);\fR
.br
-\fBvoid _nc_free_and_exit(int);\fR
+\fBvoid _nc_free_and_exit(int \fP\fIcode\fP\fB);\fR
.br
-\fBvoid _nc_free_tinfo(int);\fR
+\fBvoid _nc_free_tinfo(int \fP\fIcode\fP\fB);\fR
.SH DESCRIPTION
These functions are used to simplify analysis of memory leaks in the ncurses
library.
.PP
Any implementation of curses must not free the memory associated with
-a screen, since (even after calling \fBendwin\fP), it must be available
+a screen, since (even after calling \fBendwin\fP(3X)), it must be available
for use in the next call to \fBrefresh\fP(3X).
There are also chunks of memory held for performance reasons.
That makes it hard to analyze curses applications for memory leaks.
diff --git a/man/curs_mouse.3x b/man/curs_mouse.3x
index 775bc33..c18be3f 100644
--- a/man/curs_mouse.3x
+++ b/man/curs_mouse.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_mouse.3x,v 1.52 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_mouse.3x,v 1.53 2020/10/17 23:25:08 tom Exp $
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.ie \n(.g .ds '' \(rq
@@ -76,21 +76,20 @@
.fi
.PP
\fBbool has_mouse(void);\fR
-.br
+.sp
\fBint getmouse(MEVENT *\fP\fIevent\fP\fB);\fR
.br
\fBint ungetmouse(MEVENT *\fP\fIevent\fP\fB);\fR
-.br
+.sp
\fBmmask_t mousemask(mmask_t \fP\fInewmask\fP\fB, mmask_t *\fP\fIoldmask\fP\fB);\fR
-.br
+.sp
\fBbool wenclose(const WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
-.br
+.sp
\fBbool mouse_trafo(int* \fP\fIpY\fP\fB, int* \fP\fIpX\fP\fB, bool \fP\fIto_screen\fP\fB);\fR
.br
-\fBbool wmouse_trafo(const WINDOW* \fP\fIwin\fP\fB, int* \fP\fIpY\fP\fB, int* \fP\fIpX\fP\fB,\fR
-.br
- \fBbool \fP\fIto_screen\fP\fB);\fR
-.br
+\fBbool wmouse_trafo(const WINDOW* \fP\fIwin\fP\fB,\fR
+ \fBint* \fP\fIpY\fP\fB, int* \fP\fIpX\fP\fB, bool \fP\fIto_screen\fP\fB);\fR
+.sp
\fBint mouseinterval(int \fP\fIerval\fP\fB);\fR
.br
.SH DESCRIPTION
diff --git a/man/curs_move.3x b/man/curs_move.3x
index e710452..e0c1bf5 100644
--- a/man/curs_move.3x
+++ b/man/curs_move.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_move.3x,v 1.18 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_move.3x,v 1.19 2020/10/24 09:39:41 tom Exp $
.TH curs_move 3X ""
.na
.hy 0
@@ -39,9 +39,9 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint move(int y, int x);\fR
+\fBint move(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
-\fBint wmove(WINDOW *win, int y, int x);\fR
+\fBint wmove(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB);\fR
.br
.SH DESCRIPTION
These routines move the cursor associated with the window to line \fIy\fR and
diff --git a/man/curs_opaque.3x b/man/curs_opaque.3x
index 855d31e..1d0cb55 100644
--- a/man/curs_opaque.3x
+++ b/man/curs_opaque.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_opaque.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_opaque.3x,v 1.15 2020/10/24 09:41:22 tom Exp $
.TH curs_opaque 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -56,35 +56,35 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBbool is_cleared(const WINDOW *win);\fR
+\fBbool is_cleared(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_idcok(const WINDOW *win);\fR
+\fBbool is_idcok(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_idlok(const WINDOW *win);\fR
+\fBbool is_idlok(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_immedok(const WINDOW *win);\fR
+\fBbool is_immedok(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_keypad(const WINDOW *win);\fR
+\fBbool is_keypad(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_leaveok(const WINDOW *win);\fR
+\fBbool is_leaveok(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_nodelay(const WINDOW *win);\fR
+\fBbool is_nodelay(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_notimeout(const WINDOW *win);\fR
+\fBbool is_notimeout(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_pad(const WINDOW *win);\fR
+\fBbool is_pad(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_scrollok(const WINDOW *win);\fR
+\fBbool is_scrollok(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_subwin(const WINDOW *win);\fR
+\fBbool is_subwin(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBbool is_syncok(const WINDOW *win);\fR
+\fBbool is_syncok(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBWINDOW * wgetparent(const WINDOW *win);\fR
+\fBWINDOW * wgetparent(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBint wgetdelay(const WINDOW *win);\fR
+\fBint wgetdelay(const WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBint wgetscrreg(const WINDOW *win, int *top, int *bottom);\fR
+\fBint wgetscrreg(const WINDOW *\fP\fIwin\fP\fB, int *\fP\fItop\fP\fB, int *\fP\fIbottom\fP\fB);\fR
.br
.SH DESCRIPTION
This implementation provides functions which return properties
diff --git a/man/curs_outopts.3x b/man/curs_outopts.3x
index b3e4608..e4e7421 100644
--- a/man/curs_outopts.3x
+++ b/man/curs_outopts.3x
@@ -27,10 +27,14 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_outopts.3x,v 1.30 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_outopts.3x,v 1.33 2020/10/03 22:04:09 tom Exp $
.TH curs_outopts 3X ""
.na
.hy 0
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.SH NAME
\fBclearok\fR,
\fBidlok\fR,
@@ -39,9 +43,7 @@
\fBleaveok\fR,
\fBsetscrreg\fR,
\fBwsetscrreg\fR,
-\fBscrollok\fR,
-\fBnl\fR,
-\fBnonl\fR \- \fBcurses\fR output options
+\fBscrollok\fR \- \fBcurses\fR output options
.ad
.hy
.SH SYNOPSIS
@@ -57,17 +59,14 @@
.br
\fBint leaveok(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
+\fBint scrollok(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
+.sp
\fBint setscrreg(int \fP\fItop\fP\fB, int \fP\fIbot\fP\fB);\fR
.br
\fBint wsetscrreg(WINDOW *\fP\fIwin\fP\fB, int \fP\fItop\fP\fB, int \fP\fIbot\fP\fB);\fR
.br
-\fBint scrollok(WINDOW *\fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
-.br
-\fBint nl(void);\fR
-.br
-\fBint nonl(void);\fR
-.br
.SH DESCRIPTION
+.PP
These routines set options that change the style of output within
\fBcurses\fR.
All options are initially \fBFALSE\fR, unless otherwise stated.
@@ -121,7 +120,18 @@ The \fBleaveok\fR option allows the cursor to be left
wherever the update happens to leave it.
It is useful for applications where
the cursor is not used, since it reduces the need for cursor motions.
-.SS setscrreg
+.SS scrollok
+.PP
+The \fBscrollok\fR option controls what happens when the cursor of a window is
+moved off the edge of the window or scrolling region, either as a result of a
+newline action on the bottom line, or typing the last character of the last
+line.
+If disabled, (\fIbf\fR is \fBFALSE\fR), the cursor is left on the bottom
+line.
+If enabled, (\fIbf\fR is \fBTRUE\fR), the window is scrolled up one line
+(Note that to get the physical scrolling effect on the terminal, it is
+also necessary to call \fBidlok\fR).
+.SS setscrreg/wsetscrreg
.PP
The \fBsetscrreg\fR and \fBwsetscrreg\fR routines allow the application
programmer to set a software scrolling region in a window.
@@ -140,30 +150,6 @@ terminal, like that in the VT100.
If \fBidlok\fR is enabled and the terminal
has either a scrolling region or insert/delete line capability, they will
probably be used by the output routines.)
-.SS scrollok
-.PP
-The \fBscrollok\fR option controls what happens when the cursor of a window is
-moved off the edge of the window or scrolling region, either as a result of a
-newline action on the bottom line, or typing the last character of the last
-line.
-If disabled, (\fIbf\fR is \fBFALSE\fR), the cursor is left on the bottom
-line.
-If enabled, (\fIbf\fR is \fBTRUE\fR), the window is scrolled up one line
-(Note that to get the physical scrolling effect on the terminal, it is
-also necessary to call \fBidlok\fR).
-.SS nl, nonl
-.PP
-The \fBnl\fR and \fBnonl\fR routines control whether the underlying display
-device translates the return key into newline on input, and whether it
-translates newline into return and line-feed on output (in either case, the
-call \fBaddch('\\n')\fR does the equivalent of return and line feed on the
-\fIvirtual screen\fP).
-Initially, these translations do occur.
-If you disable them
-using \fBnonl\fR, \fBcurses\fR will be able to make better use of the line-feed
-capability, resulting in faster cursor motion.
-Also, \fBcurses\fR will then be
-able to detect the return key.
.SH RETURN VALUE
The functions \fBsetscrreg\fR and \fBwsetscrreg\fR return \fBOK\fR upon success
and \fBERR\fR upon failure.
@@ -172,15 +158,12 @@ return \fBOK\fR.
.PP
X/Open Curses does not define any error conditions.
.PP
-In this implementation, those functions that have a window pointer
-will return an error if the window pointer is null.
-.RS
-.TP 5
-.B wclrtoeol
-returns an error
-if the cursor position is about to wrap.
-.TP 5
-.B wsetscrreg
+In this implementation,
+.bP
+those functions that have a window pointer
+will return an error if the window pointer is null
+.bP
+\fBwsetscrreg\fP
returns an error if the scrolling region limits extend outside the window.
.RE
.PP
@@ -190,19 +173,23 @@ if the window pointer is null.
.SH PORTABILITY
These functions are described in the XSI Curses standard, Issue 4.
.PP
-The XSI Curses standard is ambiguous on the question of whether \fBraw\fR
-should disable the CRLF translations controlled by \fBnl\fR and \fBnonl\fR.
-BSD curses did turn off these translations; AT&T curses (at least as late as
-SVr1) did not.
-We choose to do so, on the theory that a programmer requesting
-raw input wants a clean (ideally 8-bit clean) connection that the operating
-system will not alter.
+From the outset, ncurses used \fBnl\fP/\fBnonl\fP to control the conversion
+of newlines to carriage return/line-feed on output as well as input.
+XSI Curses documents only the use of these functions for input.
+This difference arose from converting the \fIpcurses\fP source
+(which used \fBioctl\fP calls with the \fBsgttyb\fP structure)
+to termios (i.e., the POSIX terminal interface).
+In the former, both input and output were controlled via a single
+option \fBCRMOD\fP,
+while the latter separates these features.
+Because that conversion interferes with output optimization,
+\fBnl\fP/\fBnonl\fP were amended after ncurses 6.2
+to eliminate their effect on output.
.PP
Some historic curses implementations had, as an undocumented feature, the
ability to do the equivalent of \fBclearok(..., 1)\fR by saying
\fBtouchwin(stdscr)\fR or \fBclear(stdscr)\fR.
-This will not work under
-ncurses.
+This will not work under ncurses.
.PP
Earlier System V curses implementations specified that with \fBscrollok\fR
enabled, any window modification triggering a scroll also forced a physical
@@ -216,8 +203,12 @@ made invisible as a side-effect of \fBleaveok\fR.
SVr4 curses documentation does this, but the code does not.
Use \fBcurs_set\fR to make the cursor invisible.
.SH NOTES
-Note that \fBclearok\fR, \fBleaveok\fR, \fBscrollok\fR, \fBidcok\fR, \fBnl\fR,
-\fBnonl\fR and \fBsetscrreg\fR may be macros.
+Note that
+\fBclearok\fR,
+\fBleaveok\fR,
+\fBscrollok\fR,
+\fBidcok\fR, and
+\fBsetscrreg\fR may be macros.
.PP
The \fBimmedok\fR routine is useful for windows that are used as terminal
emulators.
diff --git a/man/curs_print.3x b/man/curs_print.3x
index edb5008..8bde817 100644
--- a/man/curs_print.3x
+++ b/man/curs_print.3x
@@ -27,14 +27,14 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_print.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_print.3x,v 1.16 2020/10/24 09:25:14 tom Exp $
.TH curs_print 3X ""
.SH NAME
\fBmcprint\fR \- ship binary data to printer
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint mcprint(char *data, int len);\fR
+\fBint mcprint(char *\fP\fIdata\fP\fB, int \fP\fIlen\fP\fB);\fR
.SH DESCRIPTION
This function uses the \fBmc5p\fR or \fBmc4\fR and \fBmc5\fR capabilities,
if they are present, to ship given data to a printer attached to the terminal.
@@ -51,7 +51,7 @@ rule of thumb is to sleep for a second after shipping each 80-character line.
.SH RETURN VALUE
The \fBmcprint\fR function returns \fBERR\fR if the write operation aborted
for some reason.
-In this case, errno will contain either an error associated
+In this case, \fBerrno\fP will contain either an error associated
with \fBwrite\fP(2) or one of the following:
.TP 5
ENODEV
diff --git a/man/curs_printw.3x b/man/curs_printw.3x
index 4d060d7..4980517 100644
--- a/man/curs_printw.3x
+++ b/man/curs_printw.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_printw.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_printw.3x,v 1.28 2020/10/24 09:22:45 tom Exp $
.TH curs_printw 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -50,19 +50,19 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint printw(const char *fmt, ...);\fR
+\fBint printw(const char *\fP\fIfmt\fP\fB, ...);\fR
.br
-\fBint wprintw(WINDOW *win, const char *fmt, ...);\fR
+\fBint wprintw(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIfmt\fP\fB, ...);\fR
.br
-\fBint mvprintw(int y, int x, const char *fmt, ...);\fR
+\fBint mvprintw(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIfmt\fP\fB, ...);\fR
.br
-\fBint mvwprintw(WINDOW *win, int y, int x, const char *fmt, ...);\fR
+\fBint mvwprintw(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIfmt\fP\fB, ...);\fR
.br
-\fBint vw_printw(WINDOW *win, const char *fmt, va_list varglist);\fR
+\fBint vw_printw(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIfmt\fP\fB, va_list \fP\fIvarglist\fP\fB);\fR
.sp
/* obsolete */
.br
-\fBint vwprintw(WINDOW *win, const char *fmt, va_list varglist);\fR
+\fBint vwprintw(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIfmt\fP\fB, va_list \fP\fIvarglist\fP\fB);\fR
.SH DESCRIPTION
The \fBprintw\fR, \fBwprintw\fR, \fBmvprintw\fR and \fBmvwprintw\fR
routines are analogous to \fBprintf\fR [see \fBprintf\fR(3)].
@@ -70,7 +70,7 @@ In
effect, the string that would be output by \fBprintf\fR is output
instead as though \fBwaddstr\fR were used on the given window.
.PP
-The \fBvwprintw\fR and \fBwv_printw\fR routines are analogous
+The \fBvwprintw\fR and \fBvw_printw\fR routines are analogous
to \fBvprintf\fR [see \fBprintf\fR(3)]
and perform a \fBwprintw\fR using a variable argument list.
The third argument is a \fBva_list\fR, a pointer to a
@@ -89,6 +89,42 @@ It will return an error if the window pointer is null.
Functions with a \*(``mv\*('' prefix first perform a cursor movement using
\fBwmove\fP, and return an error if the position is outside the window,
or if the window pointer is null.
+.SH HISTORY
+While \fBprintw\fP was implemented in 4BSD,
+it was unused until 4.2BSD (which used it in games).
+That early version of curses was before the ANSI C standard.
+It did not use <varargs.h>, though that was available.
+In 1991 (a couple of years after SVr4 was generally available,
+and after the C standard was published),
+other developers updated the library,
+using <stdarg.h> internally in 4.4BSD curses.
+Even with this improvement,
+BSD curses did not use function prototypes (or even declare
+functions) in the <curses.h> header until 1992.
+.PP
+SVr2 documented
+\fBprintw\fP,
+\fBwprintw\fP
+tersely as \*(``printf on \fIstdscr\fP\*('' and
+tersely as \*(``printf on \fIwin\fP\*('', respectively.
+.PP
+SVr3 added
+\fBmvprintw\fP, and
+\fBmvwprintw\fP, with a three-line summary saying that they were analogous
+to \fBprintf\fP(3),
+explaining that the string which would be output from \fBprintf\fP(3) would
+instead be output using \fBwaddstr\fP on the given window.
+SVr3 also added \fBvwprintw\fP, saying that the third parameter
+is a \fBva_list\fP, defined in <varargs.h>,
+and referring the reader to the manual pages for \fIvarargs\fP and
+\fIvprintf\fP for detailed descriptions.
+.PP
+SVr4 added no new variations of \fBprintw\fP,
+but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
+type.
+.PP
+X/Open Curses added \fBvw_printw\fP to replace \fBvwprintw\fP,
+stating that its \fBva_list\fP definition requires <stdarg.h>.
.SH PORTABILITY
In this implementation, \fBvw_printw\fP and \fBvwprintw\fP are equivalent,
to support legacy applications.
diff --git a/man/curs_refresh.3x b/man/curs_refresh.3x
index 765020d..4c4b8e7 100644
--- a/man/curs_refresh.3x
+++ b/man/curs_refresh.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_refresh.3x,v 1.21 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_refresh.3x,v 1.22 2020/10/24 09:43:49 tom Exp $
.TH curs_refresh 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -53,15 +53,15 @@
.sp
\fBint refresh(void);\fR
.br
-\fBint wrefresh(WINDOW *win);\fR
+\fBint wrefresh(WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBint wnoutrefresh(WINDOW *win);\fR
+\fBint wnoutrefresh(WINDOW *\fP\fIwin\fP\fB);\fR
.br
\fBint doupdate(void);\fR
+.sp
+\fBint redrawwin(WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBint redrawwin(WINDOW *win);\fR
-.br
-\fBint wredrawln(WINDOW *win, int beg_line, int num_lines);\fR
+\fBint wredrawln(WINDOW *\fP\fIwin\fP\fB, int \fP\fIbeg_line\fP\fB, int \fP\fInum_lines\fP\fB);\fR
.br
.SH DESCRIPTION
.SS refresh/wrefresh
diff --git a/man/curs_scanw.3x b/man/curs_scanw.3x
index 9407ae6..1de9ad8 100644
--- a/man/curs_scanw.3x
+++ b/man/curs_scanw.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_scanw.3x,v 1.26 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_scanw.3x,v 1.28 2020/10/24 09:29:26 tom Exp $
.TH curs_scanw 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -46,19 +46,19 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint scanw(const char *fmt, ...);\fR
+\fBint scanw(const char *\fP\fIfmt\fP\fB, ...);\fR
.br
-\fBint wscanw(WINDOW *win, const char *fmt, ...);\fR
+\fBint wscanw(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIfmt\fP\fB, ...);\fR
.br
-\fBint mvscanw(int y, int x, const char *fmt, ...);\fR
+\fBint mvscanw(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIfmt\fP\fB, ...);\fR
.br
-\fBint mvwscanw(WINDOW *win, int y, int x, const char *fmt, ...);\fR
-.br
-\fBint vw_scanw(WINDOW *win, const char *fmt, va_list varglist);\fR
+\fBint mvwscanw(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIfmt\fP\fB, ...);\fR
+.sp
+\fBint vw_scanw(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIfmt\fP\fB, va_list \fP\fIvarglist\fP\fB);\fR
.sp
/* obsolete */
.br
-\fBint vwscanw(WINDOW *win, const char *fmt, va_list varglist);\fR
+\fBint vwscanw(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIfmt\fP\fB, va_list \fP\fIvarglist\fP\fB);\fR
.SH DESCRIPTION
The \fBscanw\fR, \fBwscanw\fR and \fBmvscanw\fR routines are analogous to
\fBscanf\fR [see \fBscanf\fR(3)].
@@ -83,6 +83,44 @@ which were mapped in the call.
Functions with a \*(``mv\*('' prefix first perform a cursor movement using
\fBwmove\fP, and return an error if the position is outside the window,
or if the window pointer is null.
+.SH HISTORY
+While \fBscanw\fP was implemented in 4BSD,
+none of the BSD releases used it until 4.4BSD (in a game).
+That early version of curses was before the ANSI C standard.
+It did not use <varargs.h>, though that was available.
+In 1991 (a couple of years after SVr4 was generally available,
+and after the C standard was published),
+other developers updated the library,
+using <stdarg.h> internally in 4.4BSD curses.
+Even with this improvement,
+BSD curses did not use function prototypes (or even declare
+functions) in the <curses.h> header until 1992.
+.PP
+SVr2 documented
+\fBscanw\fP,
+\fBwscanw\fP
+tersely as \*(``scanf through \fIstdscr\fP\*('' and
+tersely as \*(``scanf through \fIwin\fP\*('', respectively.
+.PP
+SVr3 added
+\fBmvscanw\fP, and
+\fBmvwscanw\fP, with a three-line summary saying that they were analogous
+to \fBscanf\fP(3),
+explaining that the string which would be output from \fBscanf\fP(3) would
+instead be output using \fBwaddstr\fP on the given window.
+SVr3 also added \fBvwscanw\fP, saying that the third parameter
+is a \fBva_list\fP, defined in <varargs.h>,
+and referring the reader to the manual pages for \fIvarargs\fP and
+\fIvprintf\fP for detailed descriptions.
+(Because the SVr3 documentation does not mention \fIvscanf\fP,
+that reference to \fIvprintf\fP may not be an error).
+.PP
+SVr4 added no new variations of \fBscanw\fP,
+but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
+type.
+.PP
+X/Open Curses added \fBvw_scanw\fP to replace \fBvwscanw\fP,
+stating that its \fBva_list\fP definition requires <stdarg.h>.
.SH PORTABILITY
In this implementation, \fBvw_scanw\fP and \fBvwscanw\fP are equivalent,
to support legacy applications.
diff --git a/man/curs_scr_dump.3x b/man/curs_scr_dump.3x
index 01c61b2..faa6144 100644
--- a/man/curs_scr_dump.3x
+++ b/man/curs_scr_dump.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2010,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_scr_dump.3x,v 1.15 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_scr_dump.3x,v 1.17 2021/10/20 22:37:48 tom Exp $
.TH curs_scr_dump 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -49,23 +49,27 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint scr_dump(const char *filename);\fR
+\fBint scr_dump(const char *\fP\fIfilename\fP\fB);\fR
.br
-\fBint scr_restore(const char *filename);\fR
+\fBint scr_restore(const char *\fP\fIfilename\fP\fB);\fR
.br
-\fBint scr_init(const char *filename);\fR
+\fBint scr_init(const char *\fP\fIfilename\fP\fB);\fR
.br
-\fBint scr_set(const char *filename);\fR
+\fBint scr_set(const char *\fP\fIfilename\fP\fB);\fR
.br
.SH DESCRIPTION
+.SS scr_dump
+.PP
The \fBscr_dump\fR routine dumps the current contents
of the \fIvirtual screen\fP
to the file \fIfilename\fR.
+.SS scr_restore
.PP
The \fBscr_restore\fR routine sets the \fIvirtual screen\fP to the contents
of \fIfilename\fR, which must have been written using \fBscr_dump\fR.
The next call to \fBdoupdate\fR restores
the \fIphysical screen\fP to the way it looked in the dump file.
+.SS scr_init
.PP
The \fBscr_init\fR routine reads in the contents of \fIfilename\fR and uses
them to initialize the \fBcurses\fR data structures about what the terminal
@@ -82,6 +86,7 @@ The data is declared invalid
if the terminfo capabilities \fBrmcup\fR and \fBnrrmc\fR exist, also
.bP
if the terminal has been written to since the preceding \fBscr_dump\fR call.
+.SS scr_set
.PP
The \fBscr_set\fR routine is a combination of \fBscr_restore\fR and
\fBscr_init\fR. It tells the program that the information in \fIfilename\fR is
diff --git a/man/curs_scroll.3x b/man/curs_scroll.3x
index 50d2a99..d9e45f2 100644
--- a/man/curs_scroll.3x
+++ b/man/curs_scroll.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_scroll.3x,v 1.18 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_scroll.3x,v 1.19 2020/10/24 09:45:48 tom Exp $
.TH curs_scroll 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -44,11 +44,11 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint scroll(WINDOW *win);\fR
-.br
-\fBint scrl(int n);\fR
+\fBint scroll(WINDOW *\fP\fIwin\fP\fB);\fR
+.sp
+\fBint scrl(int \fP\fIn\fP\fB);\fR
.br
-\fBint wscrl(WINDOW *win, int n);\fR
+\fBint wscrl(WINDOW *\fP\fIwin\fP\fB, int \fP\fIn\fP\fB);\fR
.br
.SH DESCRIPTION
The \fBscroll\fR routine scrolls the window up one line.
diff --git a/man/curs_slk.3x b/man/curs_slk.3x
index 9eb2dfb..d09d6c7 100644
--- a/man/curs_slk.3x
+++ b/man/curs_slk.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_slk.3x,v 1.36 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_slk.3x,v 1.38 2021/06/17 21:26:02 tom Exp $
.TH curs_slk 3X ""
.de bP
.ie n .IP \(bu 4
@@ -63,6 +63,8 @@
.sp
\fBint slk_set(int \fP\fIlabnum\fP\fB, const char *\fP\fIlabel\fP\fB, int \fP\fIfmt\fP\fB);\fR
.br
+/* extension */
+.br
\fBint slk_wset(int \fP\fIlabnum\fP\fB, const wchar_t *\fP\fIlabel\fP\fB, int \fP\fIfmt\fP\fB);\fR
.sp
\fBchar *slk_label(int \fP\fIlabnum\fP\fB);\fR
@@ -192,7 +194,7 @@ It has an effect only
if soft labels are simulated on the bottom line of the screen.
.PP
Because \fBslk_color\fR accepts only \fBshort\fP (signed 16-bit integer) values,
-this implementation provides
+this implementation provides
\fBextended_slk_color\fR which accepts an integer value, e.g., 32-bits.
.
.SH RETURN VALUE
@@ -270,7 +272,7 @@ X/Open Curses added these:
.PP
X/Open Curses documents the \fIopts\fP argument as reserved for future use,
saying that it must be null.
-This implementation
+This implementation
uses that parameter in ABI 6 for the functions which have a color-pair
parameter to support extended color pairs.
.PP
diff --git a/man/curs_sp_funcs.3x b/man/curs_sp_funcs.3x
index d524c0e..c192e02 100644
--- a/man/curs_sp_funcs.3x
+++ b/man/curs_sp_funcs.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 2010-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_sp_funcs.3x,v 1.18 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_sp_funcs.3x,v 1.25 2021/05/22 22:12:46 tom Exp $
.TH curs_sp_funcs 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -41,268 +41,281 @@ curs_sp_funcs \- \fBcurses\fR screen-pointer extension
.hy
.SH SYNOPSIS
\fB#include <curses.h>\fR
-\fB#include <term.h>\fR
.nf
.sp
-\fBint alloc_pair_sp(SCREEN*, int, int);\fR
-.br
-\fBint assume_default_colors_sp(SCREEN*, int, int);\fR
-.br
-\fBint baudrate_sp(SCREEN*);\fR
-.br
-\fBint beep_sp(SCREEN*);\fR
+\fBint alloc_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
.br
-\fBbool can_change_color_sp(SCREEN*);\fR
+\fBint assume_default_colors_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
.br
-\fBint cbreak_sp(SCREEN*);\fR
+\fBint baudrate_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint color_content_sp(SCREEN*, short, short*, short*, short*);\fR
+\fBint beep_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint curs_set_sp(SCREEN*, int);\fR
+\fBbool can_change_color_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint define_key_sp(SCREEN*, const char *, int);\fR
+\fBint cbreak_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint def_prog_mode_sp(SCREEN*);\fR
+\fBint color_content_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIcolor\fP\fB, short* \fP\fIr\fP\fB, short* \fP\fIg\fP\fB, short* \fP\fIb\fP\fB);\fR
.br
-\fBint def_shell_mode_sp(SCREEN*);\fR
+\fBint curs_set_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIvisibility\fP);\fR
.br
-\fBint delay_output_sp(SCREEN*, int);\fR
+\fBint def_prog_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint doupdate_sp(SCREEN*);\fR
+\fBint def_shell_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBint define_key_sp(SCREEN* \fP\fIsp\fP\fB, const char * \fP\fIdefinition\fP\fB, int \fP\fIkeycode\fP\fB);\fR
.br
-\fBint echo_sp(SCREEN*);\fR
+\fBint delay_output_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIms\fP\fB);\fR
.br
-\fBint endwin_sp(SCREEN*);\fR
+\fBint doupdate_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBchar erasechar_sp(SCREEN*);\fR
+\fBint echo_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint extended_color_content_sp(SCREEN *, int, int *, int *, int *);\fR
+\fBint endwin_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint extended_pair_content_sp(SCREEN*, int, int *, int *);\fR
+\fBchar erasechar_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint extended_slk_color_sp(SCREEN*, int);\fR
+\fBint erasewchar_sp(SCREEN* \fP\fIsp\fP\fB, wchar_t *\fP\fIch\fP\fB);\fR
.br
-\fBvoid filter_sp(SCREEN*);\fR
+\fBint extended_color_content_sp(SCREEN * \fP\fIsp\fP\fB, int \fP\fIcolor\fP\fB, int * \fP\fIr\fP\fB, int * \fP\fIg\fP\fB, int * \fP\fIb\fP\fB);\fR
.br
-\fBint find_pair_sp(SCREEN*, int, int);\fR
+\fBint extended_pair_content_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB, int * \fP\fIfg\fP\fB, int * \fP\fIbg\fP\fB);\fR
.br
-\fBint free_pair_sp(SCREEN*, int);\fR
+\fBint extended_slk_color_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB);\fR
+.sp
+\fBvoid filter_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint flash_sp(SCREEN*);\fR
+\fBint find_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
.br
-\fBint flushinp_sp(SCREEN*);\fR
+\fBint flash_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint get_escdelay_sp(SCREEN*);\fR
+\fBint flushinp_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint getmouse_sp(SCREEN*, MEVENT*);\fR
+\fBint free_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB);\fR
.br
-\fBWINDOW* getwin_sp(SCREEN*, FILE*);\fR
+\fBint get_escdelay_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint halfdelay_sp(SCREEN*, int);\fR
+\fBint getmouse_sp(SCREEN* \fP\fIsp\fP\fB, MEVENT* \fP\fBevent\fP\fB);\fR
.br
-\fBbool has_colors_sp(SCREEN*);\fR
+\fBWINDOW* getwin_sp(SCREEN* \fP\fIsp\fP\fB, FILE* \fP\fIfilep\fP\fB);\fR
.br
-\fBbool has_ic_sp(SCREEN*);\fR
+\fBint halfdelay_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fItenths\fP\fB);\fR
.br
-\fBbool has_il_sp(SCREEN*);\fR
+\fBbool has_colors_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBbool has_ic_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint has_key_sp(SCREEN*, int);\fR
+\fBbool has_il_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBbool has_mouse_sp(SCREEN*);\fR
+\fBint has_key_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIch\fP\fB);\fR
.br
-\fBint init_color_sp(SCREEN*, short, short, short, short);\fR
+\fBbool has_mouse_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint init_extended_color_sp(SCREEN*, int, int, int, int);\fR
+\fBint init_color_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIcolor\fP\fB, short \fP\fIr\fP\fB, short \fP\fIg\fP\fB, short \fP\fIb\fP\fB);\fR
.br
-\fBint init_extended_pair_sp(SCREEN*, int, int, int);\fR
+\fBint init_extended_color_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIcolor\fP\fB, int \fP\fIr\fP\fB, int \fP\fIg\fP\fB, int \fP\fIb\fP\fB);\fR
.br
-\fBint init_pair_sp(SCREEN*, short, short, short);\fR
+\fBint init_extended_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
.br
-\fBint intrflush_sp(SCREEN*, WINDOW*, bool);\fR
+\fBint init_pair_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIpair\fP\fB, short \fP\fIfg\fP\fB, short \fP\fIbg\fP\fB);\fR
.br
-\fBbool isendwin_sp(SCREEN*);\fR
+\fBint intrflush_sp(SCREEN* \fP\fIsp\fP\fB, WINDOW* \fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
-\fBbool is_term_resized_sp(SCREEN*, int, int);\fR
+\fBbool is_term_resized_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
+.sp
+\fBbool isendwin_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBchar* keybound_sp(SCREEN*, int, int);\fR
+\fBint key_defined_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIdefinition\fP\fB);\fR
.br
-\fBint key_defined_sp(SCREEN*, const char *);\fR
+\fBchar* keybound_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIkeycode\fP\fB, int \fP\fIcount\fP\fB);\fR
.br
-\fBNCURSES_CONST char * keyname_sp(SCREEN*, int);\fR
+\fBNCURSES_CONST char * keyname_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIc\fP\fB);\fR
.br
-\fBint keyok_sp(SCREEN*, int, bool);\fR
+\fBint keyok_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIkeycode\fP\fB, bool \fP\fIenable\fP\fB);\fR
.br
-\fBchar killchar_sp(SCREEN*);\fR
+\fBchar killchar_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBchar* longname_sp(SCREEN*);\fR
+\fBint killwchar_sp(SCREEN* \fP\fIsp\fP\fB, wchar_t *\fP\fIch\fP\fB);\fR
.br
-\fBint mcprint_sp(SCREEN*, char *, int);\fR
+\fBchar* longname_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint mouseinterval_sp(SCREEN*, int);\fR
+\fBint mcprint_sp(SCREEN* \fP\fIsp\fP\fB, char *\fP\fIdata\fP\fB, int \fP\fIlen\fP\fB);\fR
.br
-\fBmmask_t mousemask_sp(SCREEN*, mmask_t, mmask_t *);\fR
+\fBint mouseinterval_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIerval\fP\fB);\fR
+.sp
+\fBmmask_t mousemask_sp(SCREEN* \fP\fIsp\fP\fB, mmask_t \fP\fInewmask\fP\fB, mmask_t *\fP\fIoldmask\fP\fB);\fR
.br
-\fBint mvcur_sp(SCREEN*, int, int, int, int);\fR
+\fBint mvcur_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIoldrow\fP\fB, int \fP\fIoldcol\fP\fB, int \fP\fInewrow\fP\fB, int \fP\fInewcol\fP\fB);\fR
.br
-\fBint napms_sp(SCREEN*, int);\fR
+\fBint napms_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIms\fP\fB);\fR
.br
-\fBWINDOW* newpad_sp(SCREEN*, int, int);\fR
+\fBWINDOW* newpad_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fInrows\fP\fB, int \fP\fIncols\fP\fB);\fR
.br
\fBSCREEN* new_prescr(void);\fR
.br
-\fBSCREEN* newterm_sp(SCREEN*, const char *, FILE *, FILE *);\fR
-.br
-\fBWINDOW* newwin_sp(SCREEN*, int, int, int, int);\fR
-.br
-\fBint nl_sp(SCREEN*);\fR
-.br
-\fBint nocbreak_sp(SCREEN*);\fR
-.br
-\fBint noecho_sp(SCREEN*);\fR
-.br
-\fBvoid nofilter_sp(SCREEN*);\fR
+\fBSCREEN* newterm_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fItype\fP\fB, FILE *\fP\fIoutfd\fP\fB, FILE *\fP\fIinfd\fP\fB);\fR
.br
-\fBint nonl_sp(SCREEN*);\fR
+\fBWINDOW* newwin_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fInlines\fP\fB, int \fP\fIncols\fP\fB, int \fP\fIbegin_y\fP\fB, int \fP\fIbegin_x\fP\fB);\fR
.br
-\fBvoid noqiflush_sp(SCREEN*);\fR
+\fBint nl_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint noraw_sp(SCREEN*);\fR
+\fBint nocbreak_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint pair_content_sp(SCREEN*, short, short*, short*);\fR
-.br
-\fBvoid qiflush_sp(SCREEN*);\fR
-.br
-\fBint raw_sp(SCREEN*);\fR
+\fBint noecho_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBvoid nofilter_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint reset_prog_mode_sp(SCREEN*);\fR
+\fBint nonl_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint reset_shell_mode_sp(SCREEN*);\fR
+\fBvoid noqiflush_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint resetty_sp(SCREEN*);\fR
+\fBint noraw_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint resize_term_sp(SCREEN*, int, int);\fR
+\fBint pair_content_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIpair\fP\fB, short* \fP\fIfg\fP\fB, short* \fP\fIbg\fP\fB);\fR
.br
-\fBint resizeterm_sp(SCREEN*, int, int);\fR
+\fBvoid qiflush_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint restartterm_sp(SCREEN*, NCURSES_CONST char*, int, int *);\fR
+\fBint raw_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint ripoffline_sp(SCREEN*, int, int (*)(WINDOW*, int));\fR
+\fBint reset_prog_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint savetty_sp(SCREEN*);\fR
+\fBvoid reset_color_pairs_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint scr_init_sp(SCREEN*, const char *);\fR
+\fBint reset_shell_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBint resetty_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint scr_restore_sp(SCREEN*, const char *);\fR
+\fBint resize_term_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
.br
-\fBint scr_set_sp(SCREEN*, const char *);\fR
+\fBint resizeterm_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
.br
-\fBTERMINAL* set_curterm_sp(SCREEN*, TERMINAL*);\fR
+\fBint ripoffline_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIline\fP\fB, int (*\fP\fIinit\fP\fB)(WINDOW* \fP\fIwin\fP\fB, int \fP\fIfmt\fP\fB));\fR
.br
-\fBint set_escdelay_sp(SCREEN*, int);\fR
+\fBint savetty_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint set_tabsize_sp(SCREEN*, int);\fR
+\fBint scr_init_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIfilename\fP\fB);\fR
.br
-\fBint slk_attroff_sp(SCREEN*, const chtype);\fR
+\fBint scr_restore_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIfilename\fP\fB);\fR
.br
-\fBint slk_attron_sp(SCREEN*, const chtype);\fR
+\fBint scr_set_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIfilename\fP\fB);\fR
.br
-\fBint slk_attr_set_sp(SCREEN*, const attr_t, short, void*);\fR
+\fBint set_escdelay_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIms\fP\fB);\fR
.br
-\fBint slk_attrset_sp(SCREEN*, const chtype);\fR
+\fBint set_tabsize_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIcols\fP\fB);\fR
+.sp
+\fBint slk_attr_set_sp(SCREEN* \fP\fIsp\fP\fB, const attr_t \fP\fIattrs\fP\fB, short \fP\fIpair\fP\fB, void*\fP\fIopts\fP\fB);\fR
.br
-\fBattr_t slk_attr_sp(SCREEN*);\fR
+\fBint slk_attrset_sp(SCREEN* \fP\fIsp\fP\fB, const chtype \fP\fIa\fP\fB);\fR
.br
-\fBint slk_clear_sp(SCREEN*);\fR
+\fBint slk_attroff_sp(SCREEN* \fP\fIsp\fP\fB, const chtype \fP\fIa\fP\fB);\fR
.br
-\fBint slk_color_sp(SCREEN*, short);\fR
+\fBint slk_attron_sp(SCREEN* \fP\fIsp\fP\fB, const chtype \fP\fIa\fP\fB);\fR
.br
-\fBint slk_init_sp(SCREEN*, int);\fR
+\fBattr_t slk_attr_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBchar* slk_label_sp(SCREEN*, int);\fR
+\fBint slk_clear_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint slk_noutrefresh_sp(SCREEN*);\fR
+\fBint slk_color_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIpair\fP\fB);\fR
.br
-\fBint slk_refresh_sp(SCREEN*);\fR
+\fBint slk_init_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfmt\fP\fB);\fR
.br
-\fBint slk_restore_sp(SCREEN*);\fR
+\fBchar* slk_label_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlabnum\fP\fB);\fR
.br
-\fBint slk_set_sp(SCREEN*, int, const char *, int);\fR
+\fBint slk_noutrefresh_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBint slk_refresh_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint slk_touch_sp(SCREEN*);\fR
+\fBint slk_restore_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint start_color_sp(SCREEN*);\fR
+\fBint slk_set_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlabnum\fP\fB, const char * \fP\fIlabel\fP\fB, int \fP\fIfmt\fP\fB);\fR
.br
-\fBattr_t term_attrs_sp(SCREEN*);\fR
+\fBint slk_touch_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBchtype termattrs_sp(SCREEN*);\fR
+\fBint start_color_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBchar* termname_sp(SCREEN*);\fR
+\fBattr_t term_attrs_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint typeahead_sp(SCREEN*, int);\fR
+\fBchtype termattrs_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBNCURSES_CONST char* unctrl_sp(SCREEN*, chtype);\fR
+\fBchar* termname_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBint ungetch_sp(SCREEN*, int);\fR
+\fBint typeahead_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfd\fP\fB);\fR
.br
-\fBint ungetmouse_sp(SCREEN*,MEVENT *);\fR
+\fBint unget_wch_sp(SCREEN* \fP\fIsp\fP\fB, const wchar_t \fP\fIwch\fP\fB);\fR
+.sp
+\fBint ungetch_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIch\fP\fB);\fR
.br
-\fBint unget_wch_sp(SCREEN*, const wchar_t);\fR
+\fBint ungetmouse_sp(SCREEN* \fP\fIsp\fP\fB,MEVENT * \fP\fBevent\fP\fB);\fR
.br
-\fBint use_default_colors_sp(SCREEN*);\fR
+\fBint use_default_colors_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBvoid use_env_sp(SCREEN*, bool);\fR
+\fBvoid use_env_sp(SCREEN* \fP\fIsp\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
-\fBvoid use_tioctl_sp(SCREEN *, bool);\fR
+\fBint use_legacy_coding_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlevel\fP\fB);\fR
.br
-\fBint use_legacy_coding_sp(SCREEN*, int);\fR
+\fBvoid use_tioctl_sp(SCREEN *\fP\fIsp\fP\fB, bool \fP\fIbf\fP\fB);\fR
.br
-\fBint vid_attr_sp(SCREEN*, attr_t, short, void *);\fR
+\fBint vid_attr_sp(SCREEN* \fP\fIsp\fP\fB, attr_t \fP\fIattrs\fP\fB, short \fP\fIpair\fP\fB, void * \fP\fIopts\fP\fB);\fR
.br
-\fBint vidattr_sp(SCREEN*, chtype);\fR
+\fBint vid_puts_sp(SCREEN* \fP\fIsp\fP\fB, attr_t \fP\fIattrs\fP\fB, short \fP\fIpair\fP\fB, void * \fP\fIopts\fP\fB, NCURSES_SP_OUTC \fP\fIputc\fP\fB);\fR
.br
-\fBint vid_puts_sp(SCREEN*, attr_t, short, void *, NCURSES_SP_OUTC);\fR
+\fBint vidattr_sp(SCREEN* \fP\fIsp\fP\fB, chtype \fP\fIattrs\fP\fB);\fR
.br
-\fBint vidputs_sp(SCREEN*, chtype, NCURSES_SP_OUTC);\fR
+\fBint vidputs_sp(SCREEN* \fP\fIsp\fP\fB, chtype \fP\fIattrs\fP\fB, NCURSES_SP_OUTC \fP\fIputc\fP\fB);\fR
.br
-\fBwchar_t* wunctrl_sp(SCREEN*, cchar_t *);\fR
+\fBwchar_t* wunctrl_sp(SCREEN* \fP\fIsp\fP\fB, cchar_t *\fP\fIch\fP\fB);\fR
.sp
\fB#include <form.h>\fR
.sp
-\fBFORM* new_form_sp(SCREEN*, FIELD **);\fR
+\fBFORM* new_form_sp(SCREEN* \fP\fIsp\fP\fB, FIELD **\fP\fIfields\fP\fB);\fR
.sp
\fB#include <menu.h>\fR
.sp
-\fBMENU* new_menu_sp(SCREEN*, ITEM **);\fR
+\fBMENU* new_menu_sp(SCREEN* \fP\fIsp\fP\fB, ITEM **\fP\fIitems\fP\fB);\fR
.sp
\fB#include <panel.h>\fR
.sp
-\fBPANEL* ceiling_panel(SCREEN*);\fR
+\fBPANEL* ceiling_panel(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBPANEL* ground_panel(SCREEN*);\fR
+\fBPANEL* ground_panel(SCREEN* \fP\fIsp\fP\fB);\fR
.br
-\fBvoid update_panels_sp(SCREEN*);\fR
+\fBvoid update_panels_sp(SCREEN* \fP\fIsp\fP\fB);\fR
.sp
\fB#include <term.h>\fR
.sp
-\fBint del_curterm_sp(SCREEN*, TERMINAL *);\fR
+\fBint del_curterm_sp(SCREEN* \fP\fIsp\fP\fB, TERMINAL *\fP\fIoterm\fP\fB);\fR
.br
-\fBint putp_sp(SCREEN*, const char *);\fR
+\fBint putp_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIstr\fP\fB);\fR
.br
-\fBint tgetflag_sp(SCREEN*, const char *);\fR
+\fBint restartterm_sp(SCREEN* \fP\fIsp\fP\fB, NCURSES_CONST char*\fP\fIterm\fP\fB, int \fP\fIfiledes\fP\fB, int *\fP\fIerrret\fP\fB);\fR
.br
-\fBint tgetent_sp(SCREEN*, char *, const char *);\fR
+\fBTERMINAL* set_curterm_sp(SCREEN* \fP\fIsp\fP\fB, TERMINAL*\fP\fInterm\fP\fB);\fR
.br
-\fBint tgetnum_sp(SCREEN*, const char *);\fR
+\fBint tgetent_sp(SCREEN* \fP\fIsp\fP\fB, char *\fP\fIbp\fP\fB, const char *\fP\fIname\fP\fB);\fR
.br
-\fBchar* tgetstr_sp(SCREEN*, const char *, char **);\fR
+\fBint tgetflag_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
.br
-\fBint tigetflag_sp(SCREEN*, const char *);\fR
+\fBint tgetnum_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
.br
-\fBint tigetnum_sp(SCREEN*, const char *);\fR
+\fBchar* tgetstr_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB, char **\fP\fIarea\fP\fB);\fR
.br
-\fBchar* tigetstr_sp(SCREEN*, const char *);\fR
+\fBchar* tgoto_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB, int \fP\fIcol\fP\fB, int \fP\fIrow\fP\fB);\fR
.br
-\fBint tputs_sp(SCREEN*, const char *, int, NCURSES_SP_OUTC);\fR
+\fBint tigetflag_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
+.br
+\fBint tigetnum_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
+.br
+\fBchar* tigetstr_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
+.br
+/* may instead use 9 long parameters */
+.br
+\fBchar* tparm_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIstr\fP\fB, ...);\fR
+.br
+\fBint tputs_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIaffcnt\fP\fB, NCURSES_SP_OUTC \fP\fIputc\fP\fB);\fR
+.sp
+\fB#include <unctrl.h>\fR
+.sp
+\fBNCURSES_CONST char* unctrl_sp(SCREEN* \fP\fIsp\fP\fB, chtype \fP\fIc\fP\fB);\fR
.ad
.br
.SH DESCRIPTION
diff --git a/man/curs_termcap.3x b/man/curs_termcap.3x
index e7422b4..94bed5b 100644
--- a/man/curs_termcap.3x
+++ b/man/curs_termcap.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2017,2018 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_termcap.3x,v 1.43 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_termcap.3x,v 1.49 2021/04/03 21:17:09 tom Exp $
.TH curs_termcap 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -50,7 +50,7 @@
\fBtgetnum\fR,
\fBtgetstr\fR,
\fBtgoto\fR,
-\fBtputs\fR \- direct \fBcurses\fR interface to the terminfo capability database
+\fBtputs\fR \- \fBcurses\fR emulation of termcap
.ad
.hy
.SH SYNOPSIS
@@ -66,22 +66,22 @@
.br
\fBextern @NCURSES_OSPEED@ ospeed;\fR
.sp
-\fBint tgetent(char *bp, const char *name);\fR
+\fBint tgetent(char *\fP\fIbp\fP\fB, const char *\fP\fIname\fP\fB);\fR
.br
-\fBint tgetflag(const char *id);\fR
+\fBint tgetflag(const char *\fP\fIid\fP\fB);\fR
.br
-\fBint tgetnum(const char *id);\fR
+\fBint tgetnum(const char *\fP\fIid\fP\fB);\fR
.br
-\fBchar *tgetstr(const char *id, char **area);\fR
+\fBchar *tgetstr(const char *\fP\fIid\fP\fB, char **\fP\fIarea\fP\fB);\fR
.br
-\fBchar *tgoto(const char *cap, int col, int row);\fR
+\fBchar *tgoto(const char *\fP\fIcap\fP\fB, int \fP\fIcol\fP\fB, int \fP\fIrow\fP\fB);\fR
.br
-\fBint tputs(const char *str, int affcnt, int (*putc)(int));\fR
+\fBint tputs(const char *\fP\fIstr\fP\fB, int \fP\fIaffcnt\fP\fB, int (*\fP\fIputc\fP\fB)(int));\fR
.br
.SH DESCRIPTION
These routines are included as a conversion aid for programs that use
the \fItermcap\fR library.
-Their parameters are the same and the
+Their parameters are the same, but the
routines are emulated using the \fIterminfo\fR database.
Thus, they
can only be used to query the capabilities of entries for which a
@@ -218,16 +218,28 @@ if the string is indeed terminfo-style by looking for "%p" parameters or
appear to be terminfo).
.PP
Because terminfo conventions for representing padding in string capabilities
-differ from termcap's, \fBtputs("50");\fR will put out a literal \*(``50\*('' rather
-than busy-waiting for 50 milliseconds.
-Cope with it.
+differ from termcap's,
+users can be surprised:
+.bP
+\fBtputs("50")\fR in a terminfo system will put out a literal \*(``50\*(''
+rather than busy-waiting for 50 milliseconds.
+.bP
+However, if ncurses is configured to support termcap,
+it may also have been configured to support the BSD-style padding.
+.IP
+In that case, \fBtputs\fP inspects strings passed to it,
+looking for digits at the beginning of the string.
+.IP
+\fBtputs("50")\fR in a termcap system may wait for 50 milliseconds
+rather than put out a literal \*(``50\*(''
.PP
Note that termcap has nothing analogous to terminfo's \fBsgr\fR string.
-One consequence of this is that termcap applications assume \fRme\fR
+One consequence of this is that termcap applications assume \fBme\fR
(terminfo \fBsgr0\fR) does not reset the alternate character set.
This implementation checks for, and modifies the data shown to the
termcap interface to accommodate termcap's limitation in this respect.
.SH PORTABILITY
+.SS Standards
These functions are provided for supporting legacy applications,
and should not be used in new programs:
.bP
@@ -246,6 +258,7 @@ misinterpreted to mean that \fBtgetent\fR returns \fBOK\fR or \fBERR\fR.
Because the purpose of these functions is to provide compatibility with
the \fItermcap\fR library, that is a defect in XCurses, Issue 4, Version 2
rather than in ncurses.
+.SS Compatibility with BSD Termcap
.PP
External variables are provided for support of certain termcap applications.
However, termcap applications' use of those variables is poorly documented,
@@ -270,10 +283,67 @@ This implementation disallows matches against single-character capability names.
.bP
This implementation disallows matches by the termcap interface against
extended capability names which are longer than two characters.
+.PP
+The BSD termcap function \fBtgetent\fP returns the text of a termcap
+entry in the buffer passed as an argument.
+This library (like other terminfo implementations) does not store
+terminal descriptions as text.
+It sets the buffer contents to a null-terminated string.
+.SS Other Compatibility
+This library includes a termcap.h header,
+for compatibility with other implementations.
+But the header is rarely used because the other implementations
+are not strictly compatible.
+.PP
+The original BSD termcap (through 4.3BSD) had no header file which
+gave function prototypes, because that was a feature of ANSI C.
+BSD termcap was written several years before C was standardized.
+However, there were two different termcap.h header files in the BSD
+sources:
+.bP
+One was used internally by the \fIjove\fP editor in 2BSD through 4.4BSD.
+It defined global symbols for the termcap variables which it used.
+.bP
+The other appeared in 4.4BSD Lite Release 2 (mid-1993)
+as part of \fIlibedit\fP (also known as the \fIeditline\fP library).
+The CSRG source history shows that this was added in mid-1992.
+The \fIlibedit\fP header file was used internally,
+as a convenience for compiling the \fIeditline\fP library.
+It declared function prototypes, but no global variables.
+.PP
+The header file from \fIlibedit\fP was added to NetBSD's termcap
+library in mid-1994.
+.PP
+Meanwhile, GNU termcap was under development, starting in 1990.
+The first release (termcap 1.0) in 1991 included a termcap.h header.
+The second release (termcap 1.1) in September 1992 modified the
+header to use \fBconst\fP for the function prototypes in the header
+where one would expect the parameters to be read-only.
+This was a difference versus the original BSD termcap.
+The prototype for \fBtputs\fP also differed,
+but in that instance, it was \fIlibedit\fP which differed from BSD termcap.
+.PP
+A copy of GNU termcap 1.3 was bundled with \fIbash\fP in mid-1993,
+to support the \fIreadline\fP library.
+.PP
+A termcap.h file was provided in ncurses 1.8.1 (November 1993).
+That reflected influence by \fIemacs\fP (rather than \fIjove\fP)
+and GNU termcap:
+.bP
+it provided declarations for a few global symbols used by \fIemacs\fP
+.bP
+it provided function prototypes (using \fBconst\fP).
+.bP
+a prototype for \fBtparam\fP (a GNU termcap feature) was provided.
+.PP
+Later (in mid-1996) the \fBtparam\fP function was removed from ncurses.
+As a result, there are differences between any of the four implementations,
+which must be taken into account by programs which can work with all
+termcap library interfaces.
.SH SEE ALSO
\fBcurses\fR(3X),
-\fBterminfo\fR(\*n),
+\fBputc\fR(3),
\fBterm_variables\fR(3X),
-\fBputc\fR(3).
+\fBterminfo\fR(\*n).
.sp
https://invisible-island.net/ncurses/tctest.html
diff --git a/man/curs_terminfo.3x b/man/curs_terminfo.3x
index 041c58f..6bb5dc2 100644
--- a/man/curs_terminfo.3x
+++ b/man/curs_terminfo.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_terminfo.3x,v 1.64 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_terminfo.3x,v 1.76 2021/09/04 19:58:03 tom Exp $
.TH curs_terminfo 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -46,7 +46,6 @@
\fBputp\fR,
\fBrestartterm\fR,
\fBset_curterm\fR,
-\fBsetterm\fR,
\fBsetupterm\fR,
\fBtigetflag\fR,
\fBtigetnum\fR,
@@ -63,7 +62,6 @@
.SH SYNOPSIS
.nf
\fB#include <curses.h>\fR
-.br
\fB#include <term.h>\fR
.sp
\fBTERMINAL *cur_term;\fR
@@ -80,8 +78,6 @@
.sp
\fBint setupterm(const char *\fR\fIterm\fR\fB, int \fR\fIfiledes\fR\fB, int *\fR\fIerrret\fR\fB);\fR
.br
-\fBint setterm(const char *\fR\fIterm\fR\fB);\fR
-.br
\fBTERMINAL *set_curterm(TERMINAL *\fR\fInterm\fR\fB);\fR
.br
\fBint del_curterm(TERMINAL *\fR\fIoterm\fR\fB);\fR
@@ -120,6 +116,14 @@ capabilities, such as programming function keys.
For all other
functionality, \fBcurses\fR routines are more suitable and their use is
recommended.
+.PP
+None of these functions use (or are aware of) multibyte character strings
+such as UTF-8:
+.bP
+capability names use the POSIX portable character set
+.bP
+capability string values have no associated encoding;
+they are strings of 8-bit characters.
.SS Initialization
.PP
Initially, \fBsetupterm\fR should be called.
@@ -227,14 +231,6 @@ Thus, the simplest call is:
.sp
which uses all the defaults and sends the output to \fBstdout\fR.
.RE
-.PP
-The \fBsetterm\fR routine was replaced by \fBsetupterm\fR. The call:
-.sp
- \fBsetupterm(\fR\fIterm\fR\fB, 1, (int *)0)\fR
-.sp
-provides the same functionality as \fBsetterm(\fR\fIterm\fR\fB)\fR.
-The \fBsetterm\fR routine is provided for BSD compatibility, and
-is not recommended for new programs.
.\" ***************************************************************************
.SS The Terminal State
.PP
@@ -284,6 +280,12 @@ the prototype expects \fBlong\fP (integer) values.
.bP
Aside from the \fBset_attributes\fP (\fBsgr\fP) capability,
most terminal capabilities require no more than one or two parameters.
+.bP
+Padding information is ignored by \fBtparm\fP;
+it is interpreted by \fBtputs\fP.
+.bP
+The capability string is null-terminated.
+Use \*(``\\200\*('' where an ASCII NUL is needed in the output.
.PP
\fBtiparm\fP is a newer form of \fBtparm\fP which uses \fI<stdarg.h>\fP
rather than a fixed-parameter list.
@@ -291,7 +293,10 @@ Its numeric parameters are integers (int) rather than longs.
.\" ***************************************************************************
.SS Output Functions
.PP
-The \fBtputs\fR routine applies padding information to the string
+The \fBtputs\fR routine applies padding information
+(i.e., by interpreting marker embedded in the terminfo capability
+such as \*(``$<5>\*('' as 5 milliseconds)
+to the string
\fIstr\fR and outputs it:
.bP
The \fIstr\fR parameter must be a terminfo string
@@ -340,8 +345,12 @@ this implementation allows \fIopts\fP to be used as a pointer to \fBint\fP,
which overrides the \fIpair\fP (\fBshort\fP) argument.
.PP
The \fBmvcur\fR routine provides low-level cursor motion.
-It takes
-effect immediately (rather than at the next refresh).
+It takes effect immediately (rather than at the next refresh).
+.PP
+While \fBputp\fR and \fBmvcur\fP are low-level functions which
+do not use the high-level curses state,
+they are declared in \fB<curses.h>\fP because SystemV did this
+(see \fBHISTORY\fP).
.\" ***************************************************************************
.SS Terminal Capability Functions
.PP
@@ -385,7 +394,7 @@ These null-terminated arrays contain
.bP
the short terminfo names (\*(``codes\*(''),
.bP
-the \fBtermcap\fR names (\*(``names\*('', and
+the \fBtermcap\fR names (\*(``names\*(''), and
.bP
the long terminfo names (\*(``fnames\*('')
.PP
@@ -433,6 +442,32 @@ It does not detect I/O errors:
X/Open states that \fBtputs\fP ignores the return value
of the output function \fIputc\fP.
.RE
+.\" ***************************************************************************
+.SS Compatibility macros
+This implementation provides a few macros for compatibility with systems
+before SVr4 (see \fBHISTORY\fP).
+Those include
+\fBcrmode\fP,
+\fBfixterm\fP,
+\fBgettmode\fP,
+\fBnocrmode\fP,
+\fBresetterm\fP,
+\fBsaveterm\fP, and
+\fBsetterm\fP.
+.PP
+In SVr4, those are found in \fB<curses.h>\fP,
+but except for \fBsetterm\fR, are likewise macros.
+The one function, \fBsetterm\fR, is mentioned in the manual page.
+The manual page notes that the \fBsetterm\fR routine
+was replaced by \fBsetupterm\fR, stating that the call:
+.sp
+ \fBsetupterm(\fR\fIterm\fR\fB, 1, (int *)0)\fR
+.sp
+provides the same functionality as \fBsetterm(\fR\fIterm\fR\fB)\fR,
+and is not recommended for new programs.
+This implementation provides each of those symbols
+as macros for BSD compatibility,
+.\" ***************************************************************************
.SH HISTORY
.PP
SVr2 introduced the terminfo feature.
@@ -504,13 +539,13 @@ l l
_ _
l l.
\fBFunction\fR \fBReplaced by\fP
-crmode cbreak
-fixterm reset_prog_mode
-gettmode N/A
-nocrmode nocbreak
-resetterm reset_shell_mode
-saveterm def_prog_mode
-setterm setupterm
+crmode cbreak
+fixterm reset_prog_mode
+gettmode N/A
+nocrmode nocbreak
+resetterm reset_shell_mode
+saveterm def_prog_mode
+setterm setupterm
.TE
.PP
SVr3 kept the \fBmvcur\fP, \fBvidattr\fP and \fBvidputs\fP functions,
@@ -521,8 +556,14 @@ and handling functions such as \fBvidattr\fP
.PP
SVr3 introduced the functions for switching between terminal
descriptions, e.g., \fBset_curterm\fP.
+Some of that was incremental improvements to the SVr2 library:
+.bP
+The \fBTERMINAL\fP type definition was introduced in SVr3.01,
+for the \fBterm\fP structure provided in SVr2.
+.bP
The various global variables such as \fBboolnames\fP were mentioned
-in the programming manual at this point.
+in the programming manual at this point,
+though the variables were provided in SVr2.
.PP
SVr4 added the \fBvid_attr\fP and \fBvid_puts\fP functions.
.PP
diff --git a/man/curs_threads.3x b/man/curs_threads.3x
index 95afb87..cb2da61 100644
--- a/man/curs_threads.3x
+++ b/man/curs_threads.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_threads.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_threads.3x,v 1.27 2020/12/30 18:28:51 tom Exp $
.TH curs_threads 3X ""
.de bP
.ie n .IP \(bu 4
@@ -45,16 +45,16 @@
\fBtypedef int (*NCURSES_WINDOW_CB)(WINDOW *, void *);\fR
.br
\fBtypedef int (*NCURSES_SCREEN_CB)(SCREEN *, void *);\fR
-.br
+.sp
\fBint get_escdelay(void);\fR
.br
-\fBint set_escdelay(int size);\fR
+\fBint set_escdelay(int \fP\fIms\fP\fB);\fR
.br
-\fBint set_tabsize(int size);\fR
-.br
-\fBint use_screen(SCREEN *scr, NCURSES_SCREEN_CB func, void *data);\fR
+\fBint set_tabsize(int \fP\fIcols\fP\fB);\fR
+.sp
+\fBint use_screen(SCREEN *\fP\fIscr\fP\fB, NCURSES_SCREEN_CB \fP\fIfunc\fP\fB, void *\fP\fIdata\fP\fB);\fR
.br
-\fBint use_window(WINDOW *win, NCURSES_WINDOW_CB func, void *data);\fR
+\fBint use_window(WINDOW *\fP\fIwin\fP\fB, NCURSES_WINDOW_CB \fP\fIfunc\fP\fB, void *\fP\fIdata\fP\fB);\fR
.br
.SH DESCRIPTION
This implementation can be configured to provide rudimentary support
diff --git a/man/curs_touch.3x b/man/curs_touch.3x
index e532078..8b0ca87 100644
--- a/man/curs_touch.3x
+++ b/man/curs_touch.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_touch.3x,v 1.22 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_touch.3x,v 1.24 2021/06/17 21:26:02 tom Exp $
.TH curs_touch 3X ""
.na
.hy 0
@@ -42,18 +42,18 @@
.hy
.SH SYNOPSIS
\fB#include <curses.h>\fR
+.sp
+\fBint touchline(WINDOW *\fP\fIwin\fP\fB, int \fP\fIstart\fP\fB, int \fP\fIcount\fP\fB);\fR
+.sp
+\fBint touchwin(WINDOW *\fP\fIwin\fP\fB);\fR
.br
-\fBint touchwin(WINDOW *win);\fR
+\fBint wtouchln(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIn\fP\fB, int \fP\fIchanged\fP\fB);\fR
+.sp
+\fBint untouchwin(WINDOW *\fP\fIwin\fP\fB);\fR
+.sp
+\fBbool is_linetouched(WINDOW *\fP\fIwin\fP\fB, int \fP\fIline\fP\fB);\fR
.br
-\fBint touchline(WINDOW *win, int start, int count);\fR
-.br
-\fBint untouchwin(WINDOW *win);\fR
-.br
-\fBint wtouchln(WINDOW *win, int y, int n, int changed);\fR
-.br
-\fBbool is_linetouched(WINDOW *win, int line);\fR
-.br
-\fBbool is_wintouched(WINDOW *win);\fR
+\fBbool is_wintouched(WINDOW *\fP\fIwin\fP\fB);\fR
.br
.SH DESCRIPTION
The \fBtouchwin\fR and \fBtouchline\fR routines throw away all
@@ -90,7 +90,7 @@ In this implementation
.RS 3
.TP 5
\fBis_linetouched\fP
-returns an error
+returns an error
if the window pointer is null, or
if the line number is outside the window.
.IP
@@ -105,7 +105,7 @@ the \fBERR\fP is provided by a macro named \fBis_linetouched\fP.
The actual function returns \fBFALSE\fP when it detects an error.
.TP 5
\fBwtouchln\fP
-returns an error
+returns an error
if the window pointer is null, or
if the line number is outside the window.
.RE
diff --git a/man/curs_util.3x b/man/curs_util.3x
index 7cee63f..f833803 100644
--- a/man/curs_util.3x
+++ b/man/curs_util.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_util.3x,v 1.57 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_util.3x,v 1.60 2020/12/19 22:44:46 tom Exp $
.TH curs_util 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -58,27 +58,27 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBconst char *unctrl(chtype c);\fR
+\fBconst char *unctrl(chtype \fP\fIc\fP\fB);\fR
.br
-\fBwchar_t *wunctrl(cchar_t *c);\fR
-.br
-\fBconst char *keyname(int c);\fR
-.br
-\fBconst char *key_name(wchar_t w);\fR
+\fBwchar_t *wunctrl(cchar_t *\fP\fIc\fP\fB);\fR
+.sp
+\fBconst char *keyname(int \fP\fIc\fP\fB);\fR
.br
+\fBconst char *key_name(wchar_t \fP\fIw\fP\fB);\fR
+.sp
\fBvoid filter(void);\fR
.br
\fBvoid nofilter(void);\fR
+.sp
+\fBvoid use_env(bool \fP\fIf\fP\fB);\fR
.br
-\fBvoid use_env(bool f);\fR
-.br
-\fBvoid use_tioctl(bool f);\fR
-.br
-\fBint putwin(WINDOW *win, FILE *filep);\fR
-.br
-\fBWINDOW *getwin(FILE *filep);\fR
+\fBvoid use_tioctl(bool \fP\fIf\fP\fB);\fR
+.sp
+\fBint putwin(WINDOW *\fP\fIwin\fP\fB, FILE *\fP\fIfilep\fP\fB);\fR
.br
-\fBint delay_output(int ms);\fR
+\fBWINDOW *getwin(FILE *\fP\fIfilep\fP\fB);\fR
+.sp
+\fBint delay_output(int \fP\fIms\fP\fB);\fR
.br
\fBint flushinp(void);\fR
.br
@@ -344,7 +344,7 @@ the parameter is a 7-bit US\-ASCII code.
This is the case that X/Open Curses documented.
.bP
the parameter is in the range 128\-159, i.e., a C1 control code.
-If \fBuse_legacy_coding\fP has been called with a \fB2\fP parameter,
+If \fBuse_legacy_coding\fP(3X) has been called with a \fB2\fP parameter,
\fBunctrl\fP returns the parameter, i.e., a one-character string with
the parameter as the first character.
Otherwise, it returns \*(``~@\*('', \*(``~A\*('', etc.,
@@ -369,14 +369,14 @@ Or they may ignore C1 controls and treat all of the upper-128 codes as
printable.
This implementation uses 8 bits but does not modify the string to reflect
locale.
-The \fBuse_legacy_coding\fP function allows the caller to
+The \fBuse_legacy_coding\fP(3X) function allows the caller to
change the output of \fBunctrl\fP.
.PP
Likewise, the \fBmeta\fP(3X) function allows the caller to change the
output of \fBkeyname\fP, i.e.,
it determines whether to use the \*(``M\-\*('' prefix
for \*(``meta\*('' keys (codes in the range 128 to 255).
-Both \fBuse_legacy_coding\fP and \fBmeta\fP succeed only after
+Both \fBuse_legacy_coding\fP(3X) and \fBmeta\fP(3X) succeed only after
curses is initialized.
X/Open Curses does not document the treatment of codes 128 to 159.
When treating them as \*(``meta\*('' keys
@@ -397,7 +397,6 @@ creating each \fIscreen\fP rather than once only
This feature of \fBuse_env\fP
is not provided by other implementation of curses.
.SH SEE ALSO
-\fBlegacy_coding\fR(3X),
\fBcurses\fR(3X),
\fBcurs_initscr\fR(3X),
\fBcurs_inopts\fR(3X),
diff --git a/man/curs_variables.3x b/man/curs_variables.3x
index cd0c866..25294df 100644
--- a/man/curs_variables.3x
+++ b/man/curs_variables.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_variables.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_variables.3x,v 1.15 2020/04/18 14:29:07 tom Exp $
.TH curs_variables 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -112,7 +112,7 @@ i.e., the number of lines.
.SS TABSIZE
This variable holds the number of columns used by the \fIcurses\fP library
when converting a tab character to spaces as it adds the tab to a window
-(see curs_addch(3X).
+(see \fBcurs_addch\fP(3X).
.SS The Current Screen
This implementation of curses uses a special window \fBcurscr\fP to
record its updates to the terminal screen.
diff --git a/man/curs_window.3x b/man/curs_window.3x
index 77cbffa..e5ea2aa 100644
--- a/man/curs_window.3x
+++ b/man/curs_window.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2020 Thomas E. Dickey *
+.\" Copyright 2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2015,2016 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,8 +27,12 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_window.3x,v 1.21 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_window.3x,v 1.23 2021/06/17 21:11:08 tom Exp $
.TH curs_window 3X ""
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.na
.hy 0
.SH NAME
@@ -97,6 +101,29 @@ If either
.RE
.PP
A new full-screen window is created by calling \fBnewwin(0,0,0,0)\fR.
+.PP
+Regardless of the function used for creating a new window
+(e.g., \fBnewwin\fP, \fBsubwin\fP, \fBderwin\fP, \fBnewpad\fP),
+rather than a duplicate (with \fBdupwin\fP),
+all of the window modes are initialized to the default values.
+These functions set window modes after a window is created:
+.RS
+.na
+.PP
+idcok,
+idlok,
+immedok,
+keypad,
+leaveok,
+nodelay,
+scrollok,
+setscrreg,
+syncok,
+wbkgdset,
+wbkgrndset, and
+wtimeout
+.RE
+.ad
.SS delwin
.PP
Calling \fBdelwin\fR deletes the named window, freeing all memory
diff --git a/man/default_colors.3x b/man/default_colors.3x
index 2ad7dcd..c1d1bf7 100644
--- a/man/default_colors.3x
+++ b/man/default_colors.3x
@@ -29,7 +29,7 @@
.\"
.\" Author: Thomas E. Dickey 1997,1999,2000,2005
.\"
-.\" $Id: default_colors.3x,v 1.29 2020/02/02 23:34:34 tom Exp $
+.\" $Id: default_colors.3x,v 1.31 2020/12/19 21:38:37 tom Exp $
.TH default_colors 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -43,7 +43,7 @@
.sp
\fBint use_default_colors(void);\fP
.br
-\fBint assume_default_colors(int fg, int bg);\fP
+\fBint assume_default_colors(int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fP
.SH DESCRIPTION
The \fBuse_default_colors\fP and \fBassume_default_colors\fP
functions are extensions to the curses library.
@@ -137,8 +137,8 @@ Version 7, BSD or System V implementations.
It is recommended that
any code depending on them be conditioned using NCURSES_VERSION.
.SH SEE ALSO
-\fBcurs_color\fR(3X),
-\fBded\fP(1).
+\fBded\fP(1),
+\fBcurs_color\fR(3X).
.SH AUTHOR
Thomas Dickey (from an analysis of the requirements for color xterm
for XFree86 3.1.2C, February 1996).
diff --git a/man/define_key.3x b/man/define_key.3x
index a8d7b47..d0dbe7f 100644
--- a/man/define_key.3x
+++ b/man/define_key.3x
@@ -29,14 +29,14 @@
.\"
.\" Author: Thomas E. Dickey 1997
.\"
-.\" $Id: define_key.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: define_key.3x,v 1.18 2020/10/24 09:52:54 tom Exp $
.TH define_key 3X ""
.SH NAME
\fBdefine_key\fP \- define a keycode
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
-\fBint define_key(const char *definition, int keycode);\fP
+\fBint define_key(const char *\fP\fIdefinition\fP\fB, int \fP\fIkeycode\fP\fB);\fP
.SH DESCRIPTION
This is an extension to the curses library.
It permits an application to define keycodes with their corresponding control
diff --git a/man/form.3x b/man/form.3x
index 2115ddc..685ad71 100644
--- a/man/form.3x
+++ b/man/form.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form.3x,v 1.34 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form.3x,v 1.36 2020/12/12 16:34:33 tom Exp $
.TH form 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -79,6 +79,8 @@ rendering of fields already created.
.
The following table lists each \fBform\fR routine and the name of
the manual page on which it is described.
+Routines flagged with \*(``*\*(''
+are ncurses-specific, not present in SVr4.
.
.TS
l l
@@ -115,8 +117,8 @@ form_opts \fBform_opts\fR(3X)
form_opts_off \fBform_opts\fR(3X)
form_opts_on \fBform_opts\fR(3X)
form_page \fBform_page\fR(3X)
-form_request_by_name \fBform_requestname\fR(3X)
-form_request_name \fBform_requestname\fR(3X)
+form_request_by_name \fBform_requestname\fR(3X)*
+form_request_name \fBform_requestname\fR(3X)*
form_sub \fBform_win\fR(3X)
form_term \fBform_hook\fR(3X)
form_userptr \fBform_userptr\fR(3X)
@@ -158,12 +160,12 @@ set_form_userptr \fBform_userptr\fR(3X)
set_form_win \fBform_win\fR(3X)
set_max_field \fBform_field_buffer\fR(3X)
set_new_page \fBform_new_page\fR(3X)
-unfocus_current_field \fBform_page\fR(3X)
+unfocus_current_field \fBform_page\fR(3X)*
unpost_form \fBform_post\fR(3X)
.TE
.SH RETURN VALUE
Routines that return pointers return \fBNULL\fR on error,
-and set errno to the corresponding error-code returned by functions
+and set \fBerrno\fP to the corresponding error-code returned by functions
returning an integer.
Routines that return
an integer return one of the following error codes:
diff --git a/man/form_cursor.3x b/man/form_cursor.3x
index 7fde03c..cb9d1cd 100644
--- a/man/form_cursor.3x
+++ b/man/form_cursor.3x
@@ -28,14 +28,14 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_cursor.3x,v 1.12 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_cursor.3x,v 1.14 2020/10/18 00:15:29 tom Exp $
.TH form_cursor 3X ""
.SH NAME
\fBpos_form_cursor\fR \- position a form window cursor
.SH SYNOPSIS
\fB#include <form.h>\fR
-.br
-int pos_form_cursor(FORM *form);
+.sp
+\fBint pos_form_cursor(FORM *\fP\fIform\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBpos_form_cursor\fR restores the cursor to the position required
diff --git a/man/form_data.3x b/man/form_data.3x
index 1d14343..8a56692 100644
--- a/man/form_data.3x
+++ b/man/form_data.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_data.3x,v 1.13 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_data.3x,v 1.15 2020/10/18 00:15:00 tom Exp $
.TH form_data 3X ""
.SH NAME
\fBdata_ahead\fP,
\fBdata_behind\fR \- test for off-screen data in given forms
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBbool data_ahead(const FORM *\fP\fIform\fP\fB);\fP
.br
-bool data_ahead(const FORM *form);
-.br
-bool data_behind(const FORM *form);
+\fBbool data_behind(const FORM *\fP\fIform\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBdata_ahead\fR tests whether there is off-screen data
diff --git a/man/form_driver.3x b/man/form_driver.3x
index 64a1e48..9c096f9 100644
--- a/man/form_driver.3x
+++ b/man/form_driver.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_driver.3x,v 1.33 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_driver.3x,v 1.35 2020/12/19 21:34:15 tom Exp $
.TH form_driver 3X ""
.de bP
.ie n .IP \(bu 4
@@ -38,7 +38,7 @@
\fBform_driver_w\fR \- command-processing loop of the form system
.SH SYNOPSIS
\fB#include <form.h>\fR
-.br
+.sp
\fBint form_driver(FORM *\fP\fIform\fP\fB, int \fP\fIc\fP\fB);\fP
.br
\fBint form_driver_w(FORM *\fP\fIform\fP\fB, int \fP\fIc\fP\fB, wchar_t \fP\fIwch\fP\fB);\fP
@@ -254,9 +254,9 @@ The form driver code saw an unknown request code.
.SH SEE ALSO
\fBcurses\fR(3X),
\fBform\fR(3X),
+\fBform_fieldtype\fR(3X),
\fBform_field_buffer\fR(3X),
\fBform_field_validation\fR(3X),
-\fBform_fieldtype\fR(3X),
\fBform_variables\fR(3X),
\fBgetch\fR(3X).
.SH NOTES
diff --git a/man/form_field.3x b/man/form_field.3x
index 113604d..01ff576 100644
--- a/man/form_field.3x
+++ b/man/form_field.3x
@@ -28,20 +28,20 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field.3x,v 1.17 2020/10/24 09:10:45 tom Exp $
.TH form_field 3X ""
.SH NAME
\fBform_field\fR \- make and break connections between fields and forms
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_form_fields(FORM *\fP\fIform\fP\fB, FIELD **\fP\fIfields\fP\fB);\fP
.br
-int set_form_fields(FORM *form, FIELD **fields);
+\fBFIELD **form_fields(const FORM *\fP\fIform\fP\fB);\fP
.br
-FIELD **form_fields(const FORM *form);
+\fBint field_count(const FORM *\fP\fIform\fP\fB);\fP
.br
-int field_count(const FORM *form);
-.br
-int move_field(FIELD *field, int frow, int fcol);
+\fBint move_field(FIELD *\fP\fIfield\fP\fB, int \fP\fIfrow\fP\fB, int \fP\fIfcol\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_form_fields\fR changes the field pointer array of
@@ -55,7 +55,7 @@ The function \fBmove_field\fR moves the given field (which must be disconnected)
to a specified location on the screen.
.SH RETURN VALUE
The function \fBform_fields\fR returns a pointer (which may be \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
The function \fBfield_count\fR returns \fBERR\fR if the \fIform\fP parameter
is \fBNULL\fP.
diff --git a/man/form_field_attributes.3x b/man/form_field_attributes.3x
index caeffa3..88778b1 100644
--- a/man/form_field_attributes.3x
+++ b/man/form_field_attributes.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_attributes.3x,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_attributes.3x,v 1.18 2020/10/18 00:14:20 tom Exp $
.TH form_field_attributes 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -38,18 +38,18 @@
\fBform_field_attributes\fR \- color and attribute control for form fields
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_field_fore(FIELD *\fP\fIfield\fP\fB, chtype \fP\fIattr\fP\fB);\fP
.br
-int set_field_fore(FIELD *field, chtype attr);
+\fBchtype field_fore(const FIELD *\fP\fIfield\fP\fB);\fP
+.sp
+\fBint set_field_back(FIELD *\fP\fIfield\fP\fB, chtype \fP\fIattr\fP\fB);\fP
.br
-chtype field_fore(const FIELD *field);
+\fBchtype field_back(const FIELD *\fP\fIfield\fP\fB);\fP
+.sp
+\fBint set_field_pad(FIELD *\fP\fIfield\fP\fB, int \fP\fIpad\fP\fB);\fP
.br
-int set_field_back(FIELD *field, chtype attr);
-.br
-chtype field_back(const FIELD *field);
-.br
-int set_field_pad(FIELD *field, int pad);
-.br
-int field_pad(const FIELD *field);
+\fBint field_pad(const FIELD *\fP\fIfield\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_field_fore\fR sets the foreground attribute of
diff --git a/man/form_field_buffer.3x b/man/form_field_buffer.3x
index 95e963e..98b2e42 100644
--- a/man/form_field_buffer.3x
+++ b/man/form_field_buffer.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_buffer.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_buffer.3x,v 1.27 2020/10/24 09:27:17 tom Exp $
.TH form_field_buffer 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -43,15 +43,15 @@
.SH SYNOPSIS
\fB#include <form.h>\fR
.sp
-int set_field_buffer(FIELD *field, int buf, const char *value);
+\fBint set_field_buffer(FIELD *\fP\fIfield\fP\fB, int \fP\fIbuf\fP\fB, const char *\fP\fIvalue\fP\fB);\fP
.br
-char *field_buffer(const FIELD *field, int buffer);
-.br
-int set_field_status(FIELD *field, bool status);
-.br
-bool field_status(const FIELD *field);
+\fBchar *field_buffer(const FIELD *\fP\fIfield\fP\fB, int \fP\fIbuffer\fP\fB);\fP
+.sp
+\fBint set_field_status(FIELD *\fP\fIfield\fP\fB, bool \fP\fIstatus\fP\fB);\fP
.br
-int set_max_field(FIELD *field, int max);
+\fBbool field_status(const FIELD *\fP\fIfield\fP\fB);\fP
+.sp
+\fBint set_max_field(FIELD *\fP\fIfield\fP\fB, int \fP\fImax\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_field_buffer\fR sets the numbered buffer of the given field
@@ -99,7 +99,7 @@ The function \fBset_max_field\fR sets the maximum size for a dynamic field.
An argument of 0 turns off any maximum size threshold for that field.
.SH RETURN VALUE
The \fBfield_buffer\fR function returns NULL on error.
-It sets errno according to their success:
+It sets \fBerrno\fP according to their success:
.TP 5
.B E_OK
The routine succeeded.
diff --git a/man/form_field_info.3x b/man/form_field_info.3x
index ba4c82a..556c45b 100644
--- a/man/form_field_info.3x
+++ b/man/form_field_info.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_info.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_info.3x,v 1.18 2020/10/17 23:35:05 tom Exp $
.TH form_field_info 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -38,13 +38,17 @@
\fBdynamic_field_info\fP,
\fBfield_info\fR \- retrieve field characteristics
.SH SYNOPSIS
+.nf
\fB#include <form.h>\fR
-.br
-int field_info(const FIELD *field, int *rows, int *cols,
- int *frow, int *fcol, int *nrow, int *nbuf);
-.br
-int dynamic_field_info(const FIELD *field, int *rows, int *cols, int *max);
-.br
+.sp
+\fBint field_info(const FIELD *\fP\fIfield\fP\fB,\fP
+ \fBint *\fP\fIrows\fP\fB, int *\fP\fIcols\fP\fB,\fP
+ \fBint *\fP\fIfrow\fP\fB, int *\fP\fIfcol\fP\fB,\fP
+ \fBint *\fP\fInrow\fP\fB, int *\fP\fInbuf\fB);\fP
+.sp
+\fBint dynamic_field_info(const FIELD *\fP\fIfield\fP\fB,\fP
+ \fBint *\fP\fIrows\fP\fB, int *\fP\fIcols\fP\fB, int *\fImax\fB);\fP
+.fi
.SH DESCRIPTION
The function \fBfield_info\fR returns the sizes and other attributes passed in
to the field at its creation time.
diff --git a/man/form_field_just.3x b/man/form_field_just.3x
index bd3753d..d8fef76 100644
--- a/man/form_field_just.3x
+++ b/man/form_field_just.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_just.3x,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_just.3x,v 1.18 2020/10/18 00:12:55 tom Exp $
.TH form_field_just 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -39,10 +39,10 @@
\fBfield_just\fP \- retrieve field characteristics
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_field_just(FIELD *\fP\fIfield\fP\fB, int \fP\fIjustification\fP\fB);\fP
.br
-int set_field_just(FIELD *field, int justification);
-.br
-int field_just(const FIELD *field);
+\fBint field_just(const FIELD *\fP\fIfield\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_field_just\fR sets the justification attribute of
diff --git a/man/form_field_new.3x b/man/form_field_new.3x
index 18ad3b9..1a240d0 100644
--- a/man/form_field_new.3x
+++ b/man/form_field_new.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_new.3x,v 1.21 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_new.3x,v 1.24 2020/10/24 09:09:18 tom Exp $
.TH form_field_new 3X ""
.SH NAME
\fBnew_field\fR,
@@ -37,16 +37,16 @@
\fBfree_field\fR \- create and destroy form fields
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBFIELD *new_field(int \fP\fIheight\fP\fB, int \fP\fIwidth\fP\fB,\fP
+ \fBint \fP\fItoprow\fP\fB, int \fP\fIleftcol\fP\fB,\fP
+ \fBint \fP\fIoffscreen\fP\fB, int \fP\fInbuffers\fP\fB);\fP
.br
-FIELD *new_field(int height, int width,
- int toprow, int leftcol,
- int offscreen, int nbuffers);
+\fBFIELD *dup_field(FIELD *\fP\fIfield\fP\fB, int \fP\fItoprow\fP\fB, int \fP\fIleftcol\fP\fB);\fP
.br
-FIELD *dup_field(FIELD *field, int toprow, int leftcol);
+\fBFIELD *link_field(FIELD *\fP\fIfield\fP\fB, int \fP\fItoprow\fP\fB, int \fP\fIleftcol\fP\fB);\fP
.br
-FIELD *link_field(FIELD *field, int toprow, int leftcol);
-.br
-int free_field(FIELD *field);
+\fBint free_field(FIELD *\fP\fIfield\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBnew_field\fR allocates a new field and initializes it from the
@@ -67,9 +67,9 @@ Attribute data is separate.
.PP
The function \fBfree_field\fR de-allocates storage associated with a field.
.SH RETURN VALUE
-The function, \fBnew_field\fR, \fBdup_field\fR, \fBlink_field\fR return
+The functions \fBnew_field\fR, \fBdup_field\fR, \fBlink_field\fR return
\fBNULL\fR on error.
-They set errno according to their success:
+They set \fBerrno\fP according to their success:
.TP 5
.B E_OK
The routine succeeded.
diff --git a/man/form_field_opts.3x b/man/form_field_opts.3x
index 14f9a20..96338e2 100644
--- a/man/form_field_opts.3x
+++ b/man/form_field_opts.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_opts.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_opts.3x,v 1.27 2020/10/18 00:11:45 tom Exp $
.TH form_field_opts 3X ""
.SH NAME
\fBset_field_opts\fP,
@@ -37,14 +37,14 @@
\fBfield_opts\fP \- set and get field options
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_field_opts(FIELD *\fP\fIfield\fP\fB, Field_Options \fP\fIopts\fP\fB);\fP
.br
-int set_field_opts(FIELD *field, Field_Options opts);
+\fBField_Options field_opts(const FIELD *\fP\fIfield\fP\fB);\fP
+.sp
+\fBint field_opts_on(FIELD *\fP\fIfield\fP\fB, Field_Options \fP\fIopts\fP\fB);\fP
.br
-int field_opts_on(FIELD *field, Field_Options opts);
-.br
-int field_opts_off(FIELD *field, Field_Options opts);
-.br
-Field_Options field_opts(const FIELD *field);
+\fBint field_opts_off(FIELD *\fP\fIfield\fP\fB, Field_Options \fP\fIopts\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_field_opts\fR sets all the given field's option bits (field
diff --git a/man/form_field_userptr.3x b/man/form_field_userptr.3x
index 4d6aa57..5d3ab14 100644
--- a/man/form_field_userptr.3x
+++ b/man/form_field_userptr.3x
@@ -28,18 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_userptr.3x,v 1.13 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_userptr.3x,v 1.16 2020/10/24 09:06:33 tom Exp $
.TH form_field_userptr 3X ""
.SH NAME
\fBset_field_userptr\fR,
\fBfield_userptr\fR \- associate application data with a form field
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_field_userptr(FIELD *\fP\fIfield\fP\fB, void *\fP\fIuserptr\fP\fB);\fP
.br
-int set_field_userptr(FIELD *field, void*userptr);
-.br
-void *field_userptr(const FIELD *field);
-.br
+\fBvoid *field_userptr(const FIELD *\fP\fIfield\fP\fB);\fP
.SH DESCRIPTION
Every form field has a field that can be used to hold application-specific data
(that is, the form-driver code leaves it alone).
@@ -47,7 +46,7 @@ These functions get and set
that field.
.SH RETURN VALUE
The function \fBfield_userptr\fR returns a pointer (which may be \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
The function \fBset_field_userptr\fR returns \fBE_OK\fP (success).
.SH SEE ALSO
diff --git a/man/form_field_validation.3x b/man/form_field_validation.3x
index 5835923..8ce9132 100644
--- a/man/form_field_validation.3x
+++ b/man/form_field_validation.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_field_validation.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_field_validation.3x,v 1.33 2020/12/12 19:57:55 tom Exp $
.TH form_field_validation 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -41,80 +41,117 @@
\fBform_field_validation\fR \- data type validation for fields
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBvoid *field_arg(const FIELD *\fP\fIfield\fP\fB);\fP
.br
-int set_field_type(FIELD *field, FIELDTYPE *type, ...);
-.br
-FIELDTYPE *field_type(const FIELD *field);
+\fBFIELDTYPE *field_type(const FIELD *\fP\fIfield\fP\fB);\fP
.br
-void *field_arg(const FIELD *field);
+\fBint set_field_type(FIELD *\fP\fIfield\fP\fB, FIELDTYPE *\fP\fItype\fP\fB, ...);\fP
.sp
-FIELDTYPE *TYPE_ALNUM;
+/* predefined field types */
.br
-FIELDTYPE *TYPE_ALPHA;
+\fBFIELDTYPE *TYPE_ALNUM;\fP
.br
-FIELDTYPE *TYPE_ENUM;
+\fBFIELDTYPE *TYPE_ALPHA;\fP
.br
-FIELDTYPE *TYPE_INTEGER;
+\fBFIELDTYPE *TYPE_ENUM;\fP
.br
-FIELDTYPE *TYPE_NUMERIC;
+\fBFIELDTYPE *TYPE_INTEGER;\fP
.br
-FIELDTYPE *TYPE_REGEXP;
+\fBFIELDTYPE *TYPE_NUMERIC;\fP
.br
-FIELDTYPE *TYPE_IPV4;
+\fBFIELDTYPE *TYPE_REGEXP;\fP
+.br
+\fBFIELDTYPE *TYPE_IPV4;\fP
.br
.SH DESCRIPTION
-The function \fBset_field_type\fR declares a data type for a given form field.
+By default, no validation is done on form fields.
+You can associate a form with with a \fIfield type\fP,
+making the form library validate input.
+.SS field_arg
+Returns a pointer to the field's argument block.
+The \fIargument block\fP is an opaque structure containing
+a copy of the arguments provided in a \fBset_field_type\fP call.
+.SS field_type
+Returns a pointer to the \fIfield type\fP associated with the form field,
+i.e., by calling \fBset_field_type\fP.
+.SS set_field_type
+The function \fBset_field_type\fR associates
+a field type with a given form field.
This is the type checked by validation functions.
+Most field types are configurable,
+via arguments which the caller provides when calling \fBset_field_type\fP.
+.PP
+Several field types are predefined by the form library.
+.SS Predefined types
+.PP
+It is possible to set up new programmer-defined field types.
+Field types are implemented via the \fBFIELDTYPE\fP data
+structure, which contains several pointers to functions.
+.PP
+See the \fBform_fieldtype\fR(3X) manual page,
+which describes functions which can be used to construct
+a field-type dynamically.
+.PP
The predefined types are as follows:
.TP 5
TYPE_ALNUM
Alphanumeric data.
-Requires a third \fBint\fR argument, a minimum field width.
+Required parameter:
+.RS
+.bP
+a third \fBint\fR argument, a minimum field width.
+.RE
.TP 5
TYPE_ALPHA
Character data.
-Requires a third \fBint\fR argument, a minimum field width.
+Required parameter:
+.RS
+.bP
+a third \fBint\fR argument, a minimum field width.
+.RE
.TP 5
TYPE_ENUM
Accept one of a specified set of strings.
-Requires additional parameters:
+Required parameters:
.RS
.bP
a third \fB(char **)\fR argument pointing to a string list;
.bP
a fourth \fBint\fR flag argument to enable case-sensitivity;
.bP
-and a fifth \fBint\fR flag argument specifying whether a partial
+a fifth \fBint\fR flag argument specifying whether a partial
match must be a unique one.
If this flag is off, a prefix matches the first
of any set of more than one list elements with that prefix.
+.RE
.IP
The library copies the string list,
so you may use a list that lives in automatic variables on the stack.
-.RE
.TP 5
TYPE_INTEGER
Integer data, parsable to an integer by \fBatoi\fP(3).
-Requires additional parameters:
+Required parameters:
.RS
.bP
a third \fBint\fR argument controlling the precision,
.bP
a fourth \fBlong\fR argument constraining minimum value,
.bP
-and a fifth \fBlong\fR constraining maximum value.
+a fifth \fBlong\fR constraining maximum value.
If the maximum value is less than or equal to the minimum value, the range is
simply ignored.
+.RE
+.IP
On return, the field buffer is formatted according to the
\fBprintf\fR format specification \*(``.*ld\*('',
where the \*(``*\*('' is replaced by the precision argument.
.IP
For details of the precision handling see \fBprintf\fR(3).
-.RE
.TP 5
TYPE_NUMERIC
Numeric data (may have a decimal-point part).
-This requires additional parameters:
+Required parameters:
.RS
.bP
a third \fBint\fR argument controlling the precision,
@@ -126,18 +163,22 @@ If your system supports locales,
the decimal point character must be the one specified by your locale.
If the maximum value is less than or equal to the minimum value,
the range is simply ignored.
+.RE
.IP
On return, the field buffer is formatted according to the
\fBprintf\fR format specification \*(``.*f\*('',
where the \*(``*\*('' is replaced by the precision argument.
.IP
For details of the precision handling see \fBprintf\fR(3).
-.RE
.TP 5
TYPE_REGEXP
Regular expression data.
-Requires a regular expression \fB(char *)\fR third argument.
+Required parameter:
+.RS
+.bP
+a third argument, a regular expression \fB(char *)\fR string.
The data is valid if the regular expression matches it.
+.RE
.IP
Regular expressions
are in the format of \fBregcomp\fR and \fBregexec\fR.
@@ -154,17 +195,19 @@ leading and trailing spaces around the digits.
.TP 5
TYPE_IPV4
An Internet Protocol Version 4 address.
-This requires no additional argument.
-The library checks whether or not the buffer has the form a.b.c.d,
-where a,b,c and d are numbers between 0 and 255.
+Required parameter:
+.RS
+.bP
+none
+.RE
+.IP
+The form library checks whether or not the buffer has the form \fIa.b.c.d\fP,
+where \fIa\fP, \fIb\fP, \fIc\fP, and \fId\fP are numbers in the range 0 to 255.
Trailing blanks in the buffer are ignored.
The address itself is not validated.
.IP
This is an ncurses extension;
this field type may not be available in other curses implementations.
-.PP
-It is possible to set up new programmer-defined field types.
-See the \fBform_fieldtype\fR(3X) manual page.
.SH RETURN VALUE
The functions \fBfield_type\fR and \fBfield_arg\fR return \fBNULL\fR on error.
The function \fBset_field_type\fR returns one of the following:
@@ -177,6 +220,7 @@ System error occurred (see \fBerrno\fR(3)).
.SH SEE ALSO
\fBcurses\fR(3X),
\fBform\fR(3X),
+\fBform_fieldtype\fR(3X),
\fBform_variables\fR(3X).
.SH NOTES
The header file \fB<form.h>\fR automatically includes the header file
diff --git a/man/form_fieldtype.3x b/man/form_fieldtype.3x
index dd350c2..767c3fc 100644
--- a/man/form_fieldtype.3x
+++ b/man/form_fieldtype.3x
@@ -28,78 +28,105 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_fieldtype.3x,v 1.20 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_fieldtype.3x,v 1.28 2020/12/12 17:11:21 tom Exp $
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.TH form_fieldtype 3X ""
.SH NAME
\fBform_fieldtype\fR \- define validation-field types
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBFIELDTYPE *new_fieldtype(\fP
+ \fBbool (* const \fP\fIfield_check\fP\fB)(FIELD *, const void *),\fP
+ \fBbool (* const \fP\fIchar_check\fP\fB)(int, const void *));\fP
.br
-FIELDTYPE *new_fieldtype(
- bool (* const field_check)(FIELD *, const void *),
- bool (* const char_check)(int, const void *));
-.br
-int free_fieldtype(FIELDTYPE *fieldtype);
-.br
-int set_fieldtype_arg(
- FIELDTYPE *fieldtype,
- void *(* const make_arg)(va_list *),
- void *(* const copy_arg)(const void *),
- void (* const free_arg)(void *));
-.br
-int set_fieldtype_choice(
- FIELDTYPE *fieldtype,
- bool (* const next_choice)(FIELD *, const void *),
- bool (* const prev_choice)(FIELD *, const void *));
-.br
-FIELDTYPE *link_fieldtype(FIELDTYPE *type1,
- FIELDTYPE *type2);
+\fBint free_fieldtype(FIELDTYPE *\fP\fIfieldtype\fP\fB);\fP
+.sp
+\fBint set_fieldtype_arg(\fP
+ \fBFIELDTYPE *\fP\fIfieldtype\fP\fB,\fP
+ \fBvoid *(* const \fP\fImake_arg\fP\fB)(va_list *),\fP
+ \fBvoid *(* const \fP\fIcopy_arg\fP\fB)(const void *),\fP
+ \fBvoid (* const \fP\fIfree_arg\fP\fB)(void *));\fP
.br
+\fBint set_fieldtype_choice(\fP
+ \fBFIELDTYPE *\fP\fIfieldtype\fP\fB,\fP
+ \fBbool (* const \fP\fInext_choice\fP\fB)(FIELD *, const void *),\fP
+ \fBbool (* const \fP\fIprev_choice\fP\fB)(FIELD *, const void *));\fP
+.sp
+\fBFIELDTYPE *link_fieldtype(FIELDTYPE *\fP\fItype1\fP\fB,\fP
+ \fBFIELDTYPE *\fP\fItype2\fP\fB);\fP
.SH DESCRIPTION
+.SS new_fieldtype
The function \fBnew_fieldtype\fR creates a new field type usable for data
validation.
-You supply it with \fIfield_check\fR, a predicate to check the
+Its parameters are function pointers:
+.TP 5
+\fIfield_check\fR
+This function checks the
validity of an entered data string whenever the user attempts to leave a field.
+It has two arguments:
+.RS
+.bP
The (FIELD *) argument is passed in so the validation predicate can see the
-field's buffer, sizes and other attributes; the second argument is an
+field's buffer, sizes and other attributes.
+.bP
+The second argument is an
argument-block structure, about which more below.
+.RE
+.TP 5
+\fIchar_check\fR
+This function validates input characters as they are entered.
+The form library passes it the character to be checked
+and a pointer to an argument-block structure.
+.SS free_fieldtype
.PP
-You also supply \fBnew_fieldtype\fR with \fIchar_check\fR,
-a function to validate input characters as they are entered; it will be passed
-the character to be checked and a pointer to an argument-block structure.
-.PP
-The function \fBfree_fieldtype\fR frees the space allocated for a given
-validation type.
+The \fBfree_fieldtype\fR function
+frees the space allocated for a given validation type by \fBnew_fieldtype\fP.
+.SS set_fieldtype_arg
.PP
The function \fBset_fieldtype_arg\fR associates
-three storage-management functions with a field type.
-The \fImake_arg\fR function is automatically applied to the
+three storage-management functions with a field type:
+.TP 5
+\fImake_arg\fR
+This function is automatically applied to the
list of arguments you give \fBset_field_type\fR when attaching validation
-to a field; its job is to bundle these into an allocated argument-block
-object which can later be passed to validation predicated.
-The other two hook arguments should copy and free argument-block structures.
-They will be used by the forms-driver code.
-You must supply the \fImake_arg\fR function,
-the other two are optional, you may supply NULL for them.
-In this case it is assumed
+to a field.
+It stores the arguments in an allocated argument-block
+object which is used when validating input.
+.TP 5
+\fIcopy_arg\fR
+This function may be used by applications to copy argument-blocks.
+.TP 5
+\fIfree_arg\fR
+Frees an argument-block structure.
+.PP
+You must supply the \fImake_arg\fR function.
+The other two are optional: you may supply NULL for them.
+In this case, the form library assumes
that \fImake_arg\fR does not allocate memory but simply loads the
argument into a single scalar value.
-.PP
-The function \fBlink_fieldtype\fR creates
-a new field type from the two given types.
-They are connected by an logical 'OR'.
+.SS set_fieldtype_choice
.PP
The form driver requests \fBREQ_NEXT_CHOICE\fR and \fBREQ_PREV_CHOICE\fR assume
that the possible values of a field form an ordered set, and provide the forms
user with a way to move through the set.
+.PP
The \fBset_fieldtype_choice\fR
function allows forms programmers to define successor and predecessor functions
for the field type.
These functions take the field pointer and an
argument-block structure as arguments.
+.SS link_fieldtype
+.PP
+The function \fBlink_fieldtype\fR creates
+a new field type from the two given types.
+They are connected by an logical 'OR'.
.SH RETURN VALUE
The pointer-valued routines return NULL on error.
-They set errno according to their success:
+They set \fBerrno\fP according to their success:
.TP 5
.B E_OK
The routine succeeded.
@@ -128,14 +155,12 @@ The field is the current field.
.B E_SYSTEM_ERROR
System error occurred (see \fBerrno\fR(3)).
.SH SEE ALSO
-\fBcurses\fR(3X), \fBform\fR(3X).
+\fBcurses\fR(3X),
+\fBform\fR(3X),
+\fBform_field_validation\fR(3X).
.SH NOTES
The header file \fB<form.h>\fR automatically includes the header file
\fB<curses.h>\fR.
-.PP
-All of the \fB(char *)\fR arguments of these functions should actually be
-\fB(void *)\fR. The type has been left uncorrected for strict compatibility
-with System V.
.SH PORTABILITY
These routines emulate the System V forms library.
They were not supported on
diff --git a/man/form_hook.3x b/man/form_hook.3x
index 5ddeb9f..e84aa97 100644
--- a/man/form_hook.3x
+++ b/man/form_hook.3x
@@ -28,28 +28,28 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_hook.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_hook.3x,v 1.16 2020/10/18 00:06:29 tom Exp $
.TH form_hook 3X ""
.SH NAME
\fBform_hook\fR \- set hooks for automatic invocation by applications
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_field_init(FORM *\fP\fIform\fP\fB, Form_Hook \fP\fIfunc\fP\fB);\fP
.br
-int set_field_init(FORM *form, Form_Hook func);
+\fBForm_Hook field_init(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint set_field_term(FORM *\fP\fIform\fP\fB, Form_Hook \fP\fIfunc\fP\fB);\fP
.br
-Form_Hook field_init(const FORM *form);
+\fBForm_Hook field_term(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint set_form_init(FORM *\fP\fIform\fP\fB, Form_Hook \fP\fIfunc\fP\fB);\fP
.br
-int set_field_term(FORM *form, Form_Hook func);
+\fBForm_Hook form_init(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint set_form_term(FORM *\fP\fIform\fP\fB, Form_Hook \fP\fIfunc\fP\fB);\fP
.br
-Form_Hook field_term(const FORM *form);
-.br
-int set_form_init(FORM *form, Form_Hook func);
-.br
-Form_Hook form_init(const FORM *form);
-.br
-int set_form_term(FORM *form, Form_Hook func);
-.br
-Form_Hook form_term(const FORM *form);
+\fBForm_Hook form_term(const FORM *\fP\fIform\fP\fB);\fP
.br
.SH DESCRIPTION
These functions make it possible to set hook functions to be called at various
diff --git a/man/form_new.3x b/man/form_new.3x
index 25513bd..4739817 100644
--- a/man/form_new.3x
+++ b/man/form_new.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_new.3x,v 1.12 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_new.3x,v 1.15 2020/10/24 09:02:26 tom Exp $
.TH form_new 3X ""
.SH NAME
\fBnew_form\fR,
\fBfree_form\fP \- create and destroy forms
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBFORM *new_form(FIELD **\fP\fIfields\fP\fB);\fP
.br
-FORM *new_form(FIELD **fields);
-.br
-int free_form(FORM *form);
+\fBint free_form(FORM *\fP\fIform\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBnew_form\fR creates a new form connected to a specified field
@@ -48,7 +48,7 @@ The function \fBfree_form\fR disconnects \fIform\fR from its field array
and frees the storage allocated for the form.
.SH RETURN VALUE
The function \fBnew_form\fR returns \fBNULL\fR on error.
-It sets errno according to the function's success:
+It sets \fBerrno\fP according to the function's success:
.TP 5
.B E_OK
The routine succeeded.
diff --git a/man/form_new_page.3x b/man/form_new_page.3x
index 68dce02..478688f 100644
--- a/man/form_new_page.3x
+++ b/man/form_new_page.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_new_page.3x,v 1.15 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_new_page.3x,v 1.17 2020/10/18 00:04:36 tom Exp $
.TH form_new_page 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -39,10 +39,10 @@
\fBnew_page\fR \- form pagination functions
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_new_page(FIELD *\fP\fIfield\fP\fB, bool \fP\fInew_page_flag\fP\fB);\fP
.br
-int set_new_page(FIELD *field, bool new_page_flag);
-.br
-bool new_page(const FIELD *field);
+\fBbool new_page(const FIELD *\fP\fIfield\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_new_page\fR sets or resets a flag marking the given field
diff --git a/man/form_opts.3x b/man/form_opts.3x
index 18474fa..db6c491 100644
--- a/man/form_opts.3x
+++ b/man/form_opts.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_opts.3x,v 1.15 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_opts.3x,v 1.17 2020/10/18 00:03:49 tom Exp $
.TH form_opts 3X ""
.SH NAME
\fBset_form_opts\fP,
@@ -37,14 +37,14 @@
\fBform_opts\fR \- set and get form options
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_form_opts(FORM *\fP\fIform\fP\fB, Field_Options \fP\fIopts\fP\fB);\fP
.br
-int set_form_opts(FORM *form, Field_Options opts);
+\fBField_Options form_opts(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint form_opts_on(FORM *\fP\fIform\fP\fB, Field_Options \fP\fIopts\fP\fB);\fP
.br
-int form_opts_on(FORM *form, Field_Options opts);
-.br
-int form_opts_off(FORM *form, Field_Options opts);
-.br
-Field_Options form_opts(const FORM *form);
+\fBint form_opts_off(FORM *\fP\fIform\fP\fB, Field_Options \fP\fIopts\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_form_opts\fR sets all the given form's option bits (form
diff --git a/man/form_page.3x b/man/form_page.3x
index 4b0e819..da1c725 100644
--- a/man/form_page.3x
+++ b/man/form_page.3x
@@ -28,24 +28,24 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_page.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_page.3x,v 1.19 2020/10/18 00:02:44 tom Exp $
.TH form_page 3X ""
.SH NAME
\fBform_page\fR \- set and get form page number
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_current_field(FORM *\fP\fIform\fP\fB, FIELD *\fP\fIfield\fP\fB);\fP
.br
-int set_current_field(FORM *form, FIELD *field);
+\fBFIELD *current_field(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint unfocus_current_field(FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint set_form_page(FORM *\fP\fIform\fP\fB, int \fP\fIn\fP\fB);\fP
.br
-FIELD *current_field(const FORM *);
-.br
-int unfocus_current_field(FORM *form);
-.br
-int set_form_page(FORM *form, int n);
-.br
-int form_page(const FORM *form);
-.br
-int field_index(const FIELD *field);
+\fBint form_page(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint field_index(const FIELD *\fP\fIfield\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_current_field\fR sets the current field of the given
diff --git a/man/form_post.3x b/man/form_post.3x
index 5aa08c7..c0e5baa 100644
--- a/man/form_post.3x
+++ b/man/form_post.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_post.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_post.3x,v 1.16 2020/10/18 00:01:05 tom Exp $
.TH form_post 3X ""
.SH NAME
\fBpost_form\fR,
\fBunpost_form\fR \- write or erase forms from associated subwindows
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint post_form(FORM *\fP\fIform\fP\fB);\fP
.br
-int post_form(FORM *form);
-.br
-int unpost_form(FORM *form);
+\fBint unpost_form(FORM *\fP\fIform\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBpost_form\fR displays a form to its associated subwindow.
diff --git a/man/form_requestname.3x b/man/form_requestname.3x
index a816370..11e5c0f 100644
--- a/man/form_requestname.3x
+++ b/man/form_requestname.3x
@@ -28,31 +28,32 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_requestname.3x,v 1.12 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_requestname.3x,v 1.16 2020/12/12 16:37:14 tom Exp $
.TH form_requestname 3X ""
.SH NAME
\fBform_request_by_name\fP,
\fBform_request_name\fR \- handle printable form request names
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBconst char *form_request_name(int \fP\fIrequest\fP\fB);\fP
.br
-const char *form_request_name(int request);
-.br
-int form_request_by_name(const char *name);
+\fBint form_request_by_name(const char *\fP\fIname\fP\fB);\fP
.br
.SH DESCRIPTION
+.SS form_request_name
The function \fBform_request_name\fR returns the printable name of a form
request code.
-.br
+.SS form_request_name_by_name
The function \fBform_request_by_name\fR searches in the name-table for a request
with the given name and returns its request code.
Otherwise E_NO_MATCH is returned.
.SH RETURN VALUE
-\fBform_request_name\fR returns \fBNULL\fR on error and sets errno
+\fBform_request_name\fR returns \fBNULL\fR on error and sets \fBerrno\fP
to \fBE_BAD_ARGUMENT\fR.
-.br
+.PP
\fBform_request_by_name\fR returns \fBE_NO_MATCH\fR on error.
-It does not set errno.
+It does not set \fBerrno\fP.
.SH SEE ALSO
\fBcurses\fR(3X), \fBform\fR(3X).
.SH NOTES
diff --git a/man/form_userptr.3x b/man/form_userptr.3x
index 4af4e18..5651a95 100644
--- a/man/form_userptr.3x
+++ b/man/form_userptr.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_userptr.3x,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_userptr.3x,v 1.19 2020/10/24 09:00:52 tom Exp $
.TH form_userptr 3X ""
.SH NAME
\fBset_form_userptr\fP,
\fBform_userptr\fR \- associate application data with a form item
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_form_userptr(FORM *\fP\fIform\fP\fB, void *\fP\fIuserptr\fP\fB);\fP
.br
-int set_form_userptr(FORM *form, void *userptr);
-.br
-void* form_userptr(const FORM *form);
+\fBvoid* form_userptr(const FORM *\fP\fIform\fP\fB);\fP
.br
.SH DESCRIPTION
Every form and every form item has a field that can be used to hold
@@ -46,7 +46,7 @@ application-specific data (that is, the form-driver code leaves it alone).
These functions get and set the form user pointer field.
.SH RETURN VALUE
The function \fBform_userptr\fR returns a pointer (which may be \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
The function \fBset_form_userptr\fR returns \fBE_OK\fP (success).
.SH SEE ALSO
diff --git a/man/form_variables.3x b/man/form_variables.3x
index 5b4387e..0419cb7 100644
--- a/man/form_variables.3x
+++ b/man/form_variables.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_variables.3x,v 1.6 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_variables.3x,v 1.7 2020/12/12 14:45:16 tom Exp $
.TH form_variables 3X ""
.na
.hy 0
@@ -56,7 +56,8 @@
.fi
.SH DESCRIPTION
These are building blocks for the form library,
-defining fields that can be created using \fBset_fieldtype\fP(3X).
+defining fields that can be created using
+the \fBform_fieldtype\fP(3X) functions.
Each provides functions for field- and character-validation,
according to the given datatype.
.SS TYPE_ALNUM
diff --git a/man/form_win.3x b/man/form_win.3x
index b1dc9df..8d4a46d 100644
--- a/man/form_win.3x
+++ b/man/form_win.3x
@@ -28,22 +28,22 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: form_win.3x,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: form_win.3x,v 1.18 2020/10/18 00:00:32 tom Exp $
.TH form_win 3X ""
.SH NAME
\fBform_win\fR \- make and break form window and subwindow associations
.SH SYNOPSIS
\fB#include <form.h>\fR
+.sp
+\fBint set_form_win(FORM *\fP\fIform\fP\fB, WINDOW *\fP\fIwin\fP\fB);\fP
.br
-int set_form_win(FORM *form, WINDOW *win);
+\fBWINDOW *form_win(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint set_form_sub(FORM *\fP\fIform\fP\fB, WINDOW *\fP\fIsub\fP\fB);\fP
.br
-WINDOW *form_win(const FORM *form);
-.br
-int set_form_sub(FORM *form, WINDOW *sub);
-.br
-WINDOW *form_sub(const FORM *form);
-.br
-int scale_form(const FORM *form, int *rows, int *columns);
+\fBWINDOW *form_sub(const FORM *\fP\fIform\fP\fB);\fP
+.sp
+\fBint scale_form(const FORM *\fP\fIform\fP\fB, int *\fP\fIrows\fP\fB, int *\fP\fIcolumns\fP\fB);\fP
.br
.SH DESCRIPTION
Every form has an associated pair of \fBcurses\fR windows.
diff --git a/man/infocmp.1m b/man/infocmp.1m
index 8793ed9..087796f 100644
--- a/man/infocmp.1m
+++ b/man/infocmp.1m
@@ -1,6 +1,6 @@
'\" t
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2017,2018 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: infocmp.1m,v 1.76 2020/02/02 23:34:34 tom Exp $
+.\" $Id: infocmp.1m,v 1.79 2021/08/15 20:01:31 tom Exp $
.TH @INFOCMP@ 1M ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -245,10 +245,10 @@ is a full description, using \fB@INFOCMP@\fR
will show what can be done to change
one description to be relative to the other.
.PP
-A capability will get printed with an at-sign (@) if it no longer exists in the
+A capability will be printed with an at-sign (@) if it no longer exists in the
first \fItermname\fR, but one of the other \fItermname\fR entries contains a
value for it.
-A capability's value gets printed if the value in the first
+A capability's value will be printed if the value in the first
\fItermname\fR is not found in any of the other \fItermname\fR entries, or if
the first of the other \fItermname\fR entries that has this capability gives a
different value for the capability than that in the first \fItermname\fR.
@@ -476,7 +476,7 @@ Omit the \*(``Reconstructed from\*('' comment for source listings.
\fB\-R\fR\fIsubset\fR
Restrict output to a given subset.
This option is for use with archaic
-versions of terminfo like those on SVr1, Ultrix, or HP/UX that do not support
+versions of terminfo like those on SVr1, Ultrix, or HP-UX that do not support
the full set of SVR4/XSI Curses terminfo; and variants such as AIX
that have their own extensions incompatible with SVr4/XSI.
.RS
@@ -574,7 +574,7 @@ In addition, he added a few new features such as:
the \fB\-e\fP option, to support \fIfallback\fP
(compiled-in) terminal descriptions
.bP
-the \fB\-i\fP option, to help with analysis
+the \fB\-i\fP option, to help with analysis
.PP
Later, Thomas Dickey added the \fB\-x\fP (user-defined capabilities)
option, and the \fB\-E\fP option to support fallback entries with
diff --git a/man/infotocap.1m b/man/infotocap.1m
index 10c95ea..2740b55 100644
--- a/man/infotocap.1m
+++ b/man/infotocap.1m
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: infotocap.1m,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: infotocap.1m,v 1.17 2020/12/19 21:49:52 tom Exp $
.TH @INFOTOCAP@ 1M ""
.ds n 5
.ds d @TERMINFO@
@@ -67,9 +67,9 @@ You can use other \fB@TIC@\fR options such as \fB\-f\fR and \fB\-x\fR.
.SH PORTABILITY
None of X/Open Curses, Issue 7 (2009), SVr4 or NetBSD document this application.
.SH SEE ALSO
-\fBcurses\fR(3X),
-\fB@TIC@\fR(1M),
\fB@INFOCMP@\fR(1M),
+\fB@TIC@\fR(1M),
+\fBcurses\fR(3X),
\fBterminfo\fR(\*n)
.PP
This describes \fBncurses\fR
diff --git a/man/key_defined.3x b/man/key_defined.3x
index 9ff86a7..c66c54c 100644
--- a/man/key_defined.3x
+++ b/man/key_defined.3x
@@ -29,14 +29,14 @@
.\"
.\" Author: Thomas E. Dickey 2003
.\"
-.\" $Id: key_defined.3x,v 1.9 2020/02/02 23:34:34 tom Exp $
+.\" $Id: key_defined.3x,v 1.10 2020/10/17 23:39:03 tom Exp $
.TH key_defined 3X ""
.SH NAME
\fBkey_defined\fP \- check if a keycode is defined
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
-\fBint key_defined(const char *definition);\fP
+\fBint key_defined(const char *\fP\fIdefinition\fP\fB);\fP
.SH DESCRIPTION
This is an extension to the curses library.
It permits an application to determine if a string is currently bound
diff --git a/man/keybound.3x b/man/keybound.3x
index 6a4642b..d9a069e 100644
--- a/man/keybound.3x
+++ b/man/keybound.3x
@@ -29,14 +29,14 @@
.\"
.\" Author: Thomas E. Dickey 1999
.\"
-.\" $Id: keybound.3x,v 1.10 2020/02/02 23:34:34 tom Exp $
+.\" $Id: keybound.3x,v 1.11 2020/10/17 23:39:30 tom Exp $
.TH keybound 3X ""
.SH NAME
\fBkeybound\fP \- return definition of keycode
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
-\fBchar * keybound(int keycode, int count);\fP
+\fBchar * keybound(int \fP\fIkeycode\fP\fB, int \fP\fIcount);\fP
.SH DESCRIPTION
This is an extension to the curses library.
It permits an application to determine the string which is defined
diff --git a/man/keyok.3x b/man/keyok.3x
index d3c1c84..937450e 100644
--- a/man/keyok.3x
+++ b/man/keyok.3x
@@ -29,14 +29,14 @@
.\"
.\" Author: Thomas E. Dickey 1997
.\"
-.\" $Id: keyok.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: keyok.3x,v 1.15 2020/10/17 23:39:59 tom Exp $
.TH keyok 3X ""
.SH NAME
\fBkeyok\fP \- enable or disable a keycode
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
-\fBint keyok(int keycode, bool enable);\fP
+\fBint keyok(int \fP\fIkeycode\fP\fB, bool \fP\fIenable\fP\fB);\fP
.SH DESCRIPTION
This is an extension to the curses library.
It permits an application to disable specific keycodes, rather than
diff --git a/man/legacy_coding.3x b/man/legacy_coding.3x
index ff951d6..42c3dd6 100644
--- a/man/legacy_coding.3x
+++ b/man/legacy_coding.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2020 Thomas E. Dickey *
+.\" Copyright 2020,2021 Thomas E. Dickey *
.\" Copyright 2005-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,14 +29,14 @@
.\"
.\" Author: Thomas E. Dickey
.\"
-.\" $Id: legacy_coding.3x,v 1.7 2020/02/02 23:34:34 tom Exp $
+.\" $Id: legacy_coding.3x,v 1.9 2021/08/15 19:32:05 tom Exp $
.TH legacy_coding 3X ""
.SH NAME
\fBuse_legacy_coding\fR \- override locale-encoding checks
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
-\fBint use_legacy_coding(int level);\fP
+\fBint use_legacy_coding(int \fP\fIlevel\fP\fB);\fP
.SH DESCRIPTION
The \fBuse_legacy_coding\fP function is an extension to the curses library.
It allows the caller to change the result of \fBunctrl\fP,
@@ -70,6 +70,6 @@ It was not supported on Version 7, BSD or System V implementations.
It is recommended that any code depending on ncurses extensions
be conditioned using NCURSES_VERSION.
.SH SEE ALSO
-\fBunctrl\fR.
+\fBunctrl\fR(3X).
.SH AUTHOR
Thomas Dickey (to support lynx's font-switching feature).
diff --git a/man/make_sed.sh b/man/make_sed.sh
index 92e35eb..30e3a77 100755
--- a/man/make_sed.sh
+++ b/man/make_sed.sh
@@ -1,7 +1,7 @@
#!/bin/sh
-# $Id: make_sed.sh,v 1.11 2020/02/02 23:34:34 tom Exp $
+# $Id: make_sed.sh,v 1.12 2021/06/17 21:20:30 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2005,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -58,7 +58,7 @@ done
for F in 2 4
do
tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ <$COL.$F >$UPPER
- mv $UPPER $COL.$F
+ mv $UPPER $COL.$F
done
paste $COL.* | \
sed -e 's/^/s\/\\</' \
diff --git a/man/manhtml.aliases b/man/manhtml.aliases
index c887322..a9f18ca 100644
--- a/man/manhtml.aliases
+++ b/man/manhtml.aliases
@@ -1,4 +1,4 @@
-# $Id: manhtml.aliases,v 1.14 2020/02/02 23:34:34 tom Exp $
+# $Id: manhtml.aliases,v 1.19 2020/12/12 14:45:55 tom Exp $
#***************************************************************************
# Copyright 2019,2020 Thomas E. Dickey *
# Copyright 2013,2017 Free Software Foundation, Inc. *
@@ -28,14 +28,15 @@
# authorization. *
#***************************************************************************
# Items in this list will be linked to the corresponding manpages by man2html
-assume_default_colors(3X) default_colors(3X)
addch(3X) curs_addch(3X)
+assume_default_colors(3X) default_colors(3X)
curs_set(3X) curs_kernel(3X)
delscreen(3X) curs_initscr(3X)
doupdate(3X) curs_refresh(3X)
endwin(3X) curs_initscr(3X)
filter(3X) curs_util(3X)
get_wch(3X) curs_get_wch(3X)
+getcchar(3X) curs_getcchar(3X)
getch(3X) curs_getch(3X)
inch(3X) curs_inch(3X)
infocmp(1) infocmp(1M)
@@ -45,19 +46,24 @@ keypad(3X) curs_inopts(3X)
longname(3X) curs_termattrs(3X)
meta(3X) curs_inopts(3X)
mvcur(3X) curs_terminfo(3X)
+mvwin(3X) curs_window(3X)
newterm(3X) curs_initscr(3X)
refresh(3X) curs_refresh(3X)
reset_shell_mode(3X) curs_kernel(3X)
-set_fieldtype(3X) form_fieldtype(3X)
set_term(3X) curs_initscr(3X)
+setcchar(3X) curs_getcchar(3X)
setupterm(3X) curs_terminfo(3X)
slk_init(3X) curs_slk(3X)
+slk_touch(3X) curs_slk(3X)
tic(1) tic(1M)
tigetstr(3X) curs_terminfo(3X)
tparm(3X) curs_terminfo(3X)
tputs(3X) curs_terminfo(3X)
-use_env(3X) curs_util(3X)
use_default_colors(3X) default_colors(3X)
+use_env(3X) curs_util(3X)
use_extended_names(3X) curs_extend(3X)
+use_legacy_coding(3X) legacy_coding(3X)
vidputs(3X) curs_terminfo(3X)
wgetch(3X) curs_getch(3X)
+wnoutrefresh(3X) curs_refresh(3X)
+wrefresh(3X) curs_refresh(3X)
diff --git a/man/manhtml.externs b/man/manhtml.externs
index c6fcace..8787b2c 100644
--- a/man/manhtml.externs
+++ b/man/manhtml.externs
@@ -1,4 +1,4 @@
-# $Id: manhtml.externs,v 1.13 2020/02/02 23:34:34 tom Exp $
+# $Id: manhtml.externs,v 1.14 2020/04/18 09:48:50 tom Exp $
# Items in this list will not be linked by man2html
#***************************************************************************
# Copyright 2019,2020 Thomas E. Dickey *
@@ -51,12 +51,14 @@ putchar(3)
putwc(3)
read(2)
scanf(3)
+screen(1)
sh(1)
sscanf(3)
stdio(3)
stty(1)
system(3)
termios(3)
+tmux(1)
tty(4)
ttys(5)
vprintf(3)
diff --git a/man/manlinks.sed b/man/manlinks.sed
index 9b57bca..09b055f 100644
--- a/man/manlinks.sed
+++ b/man/manlinks.sed
@@ -1,6 +1,6 @@
-# $Id: manlinks.sed,v 1.14 2020/02/02 23:34:34 tom Exp $
+# $Id: manlinks.sed,v 1.15 2021/01/05 20:30:00 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2000-2003,2008 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -41,10 +41,14 @@ s/^\.IX//
s/\\f.//g
s/[:,]/ /g
#
+# ignore C-style comments
+s%/\*.*\*/%%
+#
# eliminate unnecessary whitespace, convert multiple blanks to single space
s/^[ ][ ]*//
s/[ ][ ]*$//
s/[ ][ ]*/ /g
+/^$/d
#
# convert ".SH" into a more manageable form
s/\.SH[ ][ ]*/.SH_(/
diff --git a/man/menu_attributes.3x b/man/menu_attributes.3x
index 0dcea24..903e303 100644
--- a/man/menu_attributes.3x
+++ b/man/menu_attributes.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_attributes.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_attributes.3x,v 1.19 2020/10/17 23:58:58 tom Exp $
.TH menu_attributes 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -45,22 +45,22 @@
\fBset_menu_pad\fR \- color and attribute control for menus
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_fore(MENU *\fP\fImenu\fP\fB, chtype \fP\fIattr\fP\fB);\fP
.br
-int set_menu_fore(MENU *menu, chtype attr);
+\fBchtype menu_fore(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint set_menu_back(MENU *\fP\fImenu\fP\fB, chtype \fP\fIattr\fP\fB);\fP
.br
-chtype menu_fore(const MENU *menu);
+\fBchtype menu_back(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint set_menu_grey(MENU *\fP\fImenu\fP\fB, chtype \fP\fIattr\fP\fB);\fP
.br
-int set_menu_back(MENU *menu, chtype attr);
+\fBchtype menu_grey(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint set_menu_pad(MENU *\fP\fImenu\fP\fB, int \fP\fIpad\fP\fB);\fP
.br
-chtype menu_back(const MENU *menu);
-.br
-int set_menu_grey(MENU *menu, chtype attr);
-.br
-chtype menu_grey(const MENU *menu);
-.br
-int set_menu_pad(MENU *menu, int pad);
-.br
-int menu_pad(const MENU *menu);
+\fBint menu_pad(const MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_menu_fore\fR sets the foreground attribute of
diff --git a/man/menu_cursor.3x b/man/menu_cursor.3x
index 2ea893d..7a364eb 100644
--- a/man/menu_cursor.3x
+++ b/man/menu_cursor.3x
@@ -28,14 +28,14 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_cursor.3x,v 1.12 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_cursor.3x,v 1.13 2020/10/17 23:41:31 tom Exp $
.TH menu_cursor 3X ""
.SH NAME
\fBpos_menu_cursor\fR \- position a menu's cursor
.SH SYNOPSIS
\fB#include <menu.h>\fR
-.br
-int pos_menu_cursor(const MENU *menu);
+.sp
+\fBint pos_menu_cursor(const MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBpos_menu_cursor\fR restores the cursor to the current position
diff --git a/man/menu_driver.3x b/man/menu_driver.3x
index 27dccbb..e395358 100644
--- a/man/menu_driver.3x
+++ b/man/menu_driver.3x
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_driver.3x,v 1.26 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_driver.3x,v 1.28 2020/12/19 21:33:37 tom Exp $
.TH menu_driver 3X ""
.de bP
.ie n .IP \(bu 4
@@ -37,8 +37,8 @@
\fBmenu_driver\fR \- command-processing loop of the menu system
.SH SYNOPSIS
\fB#include <menu.h>\fR
-.br
-int menu_driver(MENU *menu, int c);
+.sp
+\fBint menu_driver(MENU *\fP\fImenu\fP\fB, int \fP\fIc\fP\fB);\fP
.br
.SH DESCRIPTION
Once a menu has been posted (displayed), you should funnel input events to it
@@ -193,8 +193,8 @@ Character failed to match.
The menu driver could not process the request.
.SH SEE ALSO
\fBcurses\fR(3X),
-\fBmenu\fR(3X),
-\fBgetch\fR(3X).
+\fBgetch\fR(3X),
+\fBmenu\fR(3X).
.SH NOTES
The header file \fB<menu.h>\fR automatically includes the header files
\fB<curses.h>\fR.
diff --git a/man/menu_format.3x b/man/menu_format.3x
index ca2e8ef..d01f27e 100644
--- a/man/menu_format.3x
+++ b/man/menu_format.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_format.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_format.3x,v 1.18 2020/10/17 23:43:11 tom Exp $
.TH menu_format 3X ""
.SH NAME
\fBset_menu_format\fP,
\fBmenu_format\fP \- set and get menu sizes
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_format(MENU *\fP\fImenu\fP\fB, int \fP\fIrows\fP\fB, int \fP\fIcols\fP\fB);\fP
.br
-int set_menu_format(MENU *menu, int rows, int cols);
-.br
-void menu_format(const MENU *menu, int *rows, int *cols);
+\fBvoid menu_format(const MENU *\fP\fImenu\fP\fB, int *\fP\fIrows\fP\fB, int *\fP\fIcols\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_menu_format\fR sets the maximum display size of the given
diff --git a/man/menu_hook.3x b/man/menu_hook.3x
index adf0cb4..17a1036 100644
--- a/man/menu_hook.3x
+++ b/man/menu_hook.3x
@@ -28,28 +28,28 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_hook.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_hook.3x,v 1.15 2020/10/17 23:44:57 tom Exp $
.TH menu_hook 3X ""
.SH NAME
\fBmenu_hook\fR \- set hooks for automatic invocation by applications
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_item_init(MENU *\fP\fImenu\fP\fB, Menu_Hook \fP\fIfunc);\fP
.br
-int set_item_init(MENU *menu, Menu_Hook func);
+\fBMenu_Hook item_init(const MENU *\fP\fImenu);\fP
+.sp
+\fBint set_item_term(MENU *\fP\fImenu\fP\fB, Menu_Hook \fP\fIfunc);\fP
.br
-Menu_Hook item_init(const MENU *menu);
+\fBMenu_Hook item_term(const MENU *\fP\fImenu);\fP
+.sp
+\fBint set_menu_init(MENU *\fP\fImenu\fP\fB, Menu_Hook \fP\fIfunc);\fP
.br
-int set_item_term(MENU *menu, Menu_Hook func);
+\fBMenu_Hook menu_init(const MENU *\fP\fImenu);\fP
+.sp
+\fBint set_menu_term(MENU *\fP\fImenu\fP\fB, Menu_Hook \fP\fIfunc);\fP
.br
-Menu_Hook item_term(const MENU *menu);
-.br
-int set_menu_init(MENU *menu, Menu_Hook func);
-.br
-Menu_Hook menu_init(const MENU *menu);
-.br
-int set_menu_term(MENU *menu, Menu_Hook func);
-.br
-Menu_Hook menu_term(const MENU *menu);
+\fBMenu_Hook menu_term(const MENU *\fP\fImenu);\fP
.br
.SH DESCRIPTION
These functions make it possible to set hook functions to be called at various
diff --git a/man/menu_items.3x b/man/menu_items.3x
index 4d01802..7c04243 100644
--- a/man/menu_items.3x
+++ b/man/menu_items.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_items.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_items.3x,v 1.17 2020/10/24 09:00:06 tom Exp $
.TH menu_items 3X ""
.SH NAME
\fBset_menu_items\fR,
@@ -36,12 +36,12 @@
\fBitem_count\fP \- make and break connections between items and menus
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_items(MENU *\fP\fImenu\fP\fB, ITEM **\fP\fIitems\fP\fB);\fP
.br
-int set_menu_items(MENU *menu, ITEM **items);
+\fBITEM **menu_items(const MENU *\fP\fImenu\fP\fB);\fP
.br
-ITEM **menu_items(const MENU *menu);
-.br
-int item_count(const MENU *menu);
+\fBint item_count(const MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_menu_items\fR changes the item pointer array of the given
@@ -52,7 +52,7 @@ The function \fBmenu_items\fR returns the item array of the given menu.
The function \fBitem_count\fR returns the count of items in \fImenu\fR.
.SH RETURN VALUE
The function \fBmenu_items\fR returns a pointer (which may be \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
The function \fBitem_count\fR returns \fBERR\fR (the general \fBcurses\fR error
return value) if its \fImenu\fP parameter is \fBNULL\fP.
diff --git a/man/menu_mark.3x b/man/menu_mark.3x
index 9ad0989..9601135 100644
--- a/man/menu_mark.3x
+++ b/man/menu_mark.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_mark.3x,v 1.15 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_mark.3x,v 1.18 2020/10/24 08:59:04 tom Exp $
.TH menu_mark 3X ""
.SH NAME
\fBset_menu_mark\fP,
\fBmenu_mark\fR \- get and set the menu mark string
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_mark(MENU *\fP\fImenu\fP\fB, const char *\fP\fImark\fP\fB);\fP
.br
-int set_menu_mark(MENU *menu, const char *mark);
-.br
-const char *menu_mark(const MENU *menu);
+\fBconst char *menu_mark(const MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
In order to make menu selections visible on older terminals without
@@ -58,7 +58,7 @@ The function \fBmenu_mark\fR returns the menu's mark string (or \fBNULL\fR if
there is none).
.SH RETURN VALUE
The function \fBmenu_mark\fR returns a pointer (which may be \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
The function \fBset_menu_mark\fR may return the following error codes:
.TP 5
diff --git a/man/menu_new.3x b/man/menu_new.3x
index 46e415e..3b04f93 100644
--- a/man/menu_new.3x
+++ b/man/menu_new.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_new.3x,v 1.15 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_new.3x,v 1.18 2020/10/24 08:57:51 tom Exp $
.TH menu_new 3X ""
.SH NAME
\fBnew_menu\fP,
\fBfree_menu\fR \- create and destroy menus
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBMENU *new_menu(ITEM **\fP\fIitems\fP\fB);\fP
.br
-MENU *new_menu(ITEM **items);
-.br
-int free_menu(MENU *menu);
+\fBint free_menu(MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBnew_menu\fR creates a new menu connected to a specified item
@@ -48,7 +48,7 @@ The function \fBfree_menu\fR disconnects \fImenu\fR from its item array
and frees the storage allocated for the menu.
.SH RETURN VALUE
The function \fBnew_menu\fR returns \fBNULL\fR on error.
-It sets errno according to the function's failure:
+It sets \fBerrno\fP according to the function's failure:
.TP 5
.B E_NOT_CONNECTED
No items are connected to the menu.
diff --git a/man/menu_opts.3x b/man/menu_opts.3x
index 4a0d435..99e950e 100644
--- a/man/menu_opts.3x
+++ b/man/menu_opts.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_opts.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_opts.3x,v 1.18 2020/10/17 23:46:35 tom Exp $
.TH menu_opts 3X ""
.SH NAME
\fBset_menu_opts\fP,
@@ -37,14 +37,14 @@
\fBmenu_opts\fR \- set and get menu options
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_opts(MENU *\fP\fImenu\fP\fB, Menu_Options \fP\fIopts\fP\fB);\fP
.br
-int set_menu_opts(MENU *menu, Menu_Options opts);
+\fBMenu_Options menu_opts(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint menu_opts_on(MENU *\fP\fImenu\fP\fB, Menu_Options \fP\fIopts\fP\fB);\fP
.br
-int menu_opts_on(MENU *menu, Menu_Options opts);
-.br
-int menu_opts_off(MENU *menu, Menu_Options opts);
-.br
-Menu_Options menu_opts(const MENU *menu);
+\fBint menu_opts_off(MENU *\fP\fImenu\fP\fB, Menu_Options \fP\fIopts\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_menu_opts\fR sets all the given menu's option bits (menu
diff --git a/man/menu_pattern.3x b/man/menu_pattern.3x
index ce439b4..a24ffa0 100644
--- a/man/menu_pattern.3x
+++ b/man/menu_pattern.3x
@@ -27,17 +27,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_pattern.3x,v 1.18 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_pattern.3x,v 1.21 2020/10/18 00:41:14 tom Exp $
.TH menu_pattern 3X ""
.SH NAME
\fBset_menu_pattern\fP,
\fBmenu_pattern\fR \- set and get a menu's pattern buffer
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_pattern(MENU *\fP\fImenu\fP\fB, const char *\fP\fIpattern\fP\fB);\fP
.br
-int set_menu_pattern(MENU *menu, const char *pattern);
-.br
-char *menu_pattern(const MENU *menu);
+\fBchar *menu_pattern(const MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
Every menu has an associated pattern match buffer.
@@ -57,7 +57,7 @@ The function \fBmenu_pattern\fR returns a pointer,
which is \fBNULL\fR if the \fImenu\fP parameter is \fBNULL\fP.
Otherwise, it is a pointer to a string which is empty
if no pattern has been set.
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
The function \fBset_menu_pattern\fR may return the following error codes:
.TP 5
diff --git a/man/menu_post.3x b/man/menu_post.3x
index 71f31a7..6f14a45 100644
--- a/man/menu_post.3x
+++ b/man/menu_post.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_post.3x,v 1.18 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_post.3x,v 1.19 2020/10/17 23:47:21 tom Exp $
.TH menu_post 3X ""
.SH NAME
\fBpost_menu\fR,
\fBunpost_menu\fR \- write or erase menus from associated subwindows
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint post_menu(MENU *\fP\fImenu\fP\fB);\fP
.br
-int post_menu(MENU *menu);
-.br
-int unpost_menu(MENU *menu);
+\fBint unpost_menu(MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBpost_menu\fR displays a menu to its associated subwindow.
diff --git a/man/menu_requestname.3x b/man/menu_requestname.3x
index c62ec50..d10874c 100644
--- a/man/menu_requestname.3x
+++ b/man/menu_requestname.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_requestname.3x,v 1.12 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_requestname.3x,v 1.15 2020/10/18 00:40:34 tom Exp $
.TH menu_requestname 3X ""
.SH NAME
\fBmenu_request_by_name\fP,
\fBmenu_request_name\fR \- handle printable menu request names
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBconst char *menu_request_name(int \fP\fIrequest\fP\fB);\fP
.br
-const char *menu_request_name(int request);
-.br
-int menu_request_by_name(const char *name);
+\fBint menu_request_by_name(const char *\fP\fIname\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBmenu_request_name\fR returns the printable name of a menu
@@ -49,10 +49,10 @@ with the given name and returns its request code.
Otherwise E_NO_MATCH is returned.
.SH RETURN VALUE
\fBmenu_request_name\fR returns \fBNULL\fR on error
-and sets errno to \fBE_BAD_ARGUMENT\fR.
+and sets \fBerrno\fP to \fBE_BAD_ARGUMENT\fR.
.br
\fBmenu_request_by_name\fR returns \fBE_NO_MATCH\fR on error.
-It does not set errno.
+It does not set \fBerrno\fP.
.SH SEE ALSO
\fBcurses\fR(3X), \fBmenu\fR(3X).
.SH NOTES
diff --git a/man/menu_spacing.3x b/man/menu_spacing.3x
index 04ccb57..7d67f0b 100644
--- a/man/menu_spacing.3x
+++ b/man/menu_spacing.3x
@@ -28,23 +28,23 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_spacing.3x,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_spacing.3x,v 1.17 2020/10/17 23:48:53 tom Exp $
.TH menu_spacing 3X ""
.SH NAME
\fBset_menu_spacing\fP,
\fBmenu_spacing\fR \- set and get spacing between menu items.
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_spacing(MENU *\fP\fImenu\fP\fB,\fP
+ \fBint \fP\fIspc_description\fP\fB,\fP
+ \fBint \fP\fIspc_rows\fP\fB,\fP
+ \fBint \fP\fIspc_columns\fP\fB);\fP
.br
-int set_menu_spacing(MENU *menu,
- int spc_description,
- int spc_rows,
- int spc_columns);
-.br
-int menu_spacing(const MENU *menu,
- int* spc_description,
- int* spc_rows,
- int* spc_columns);
+\fBint menu_spacing(const MENU *\fP\fImenu\fP\fB,\fP
+ \fBint* \fP\fIspc_description\fP\fB,\fP
+ \fBint* \fP\fIspc_rows\fP\fB,\fP
+ \fBint* \fP\fIspc_columns\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_menu_spacing\fR sets the spacing information for the menu.
diff --git a/man/menu_userptr.3x b/man/menu_userptr.3x
index 15cc14b..afc393e 100644
--- a/man/menu_userptr.3x
+++ b/man/menu_userptr.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_userptr.3x,v 1.13 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_userptr.3x,v 1.16 2020/10/18 00:39:49 tom Exp $
.TH menu_userptr 3X ""
.SH NAME
\fBset_menu_userptr\fP,
\fBmenu_userptr\fR \- associate application data with a menu item
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_userptr(MENU *\fP\fImenu\fP\fB, void *\fP\fIuserptr\fP\fB);\fP
.br
-int set_menu_userptr(MENU *menu, void *userptr);
-.br
-void *menu_userptr(const MENU *menu);
+\fBvoid *menu_userptr(const MENU *\fP\fImenu\fP\fB);\fP
.br
.SH DESCRIPTION
Every menu and every menu item has a field that can be used to hold
@@ -46,7 +46,7 @@ application-specific data (that is, the menu-driver code leaves it alone).
These functions get and set the menu user pointer field.
.SH RETURN VALUE
\fBmenu_userptr\fR returns a pointer (which may be \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
\fBset_menu_userptr\fP returns \fBE_OK\fP (success).
.SH SEE ALSO
diff --git a/man/menu_win.3x b/man/menu_win.3x
index 99ba546..ae764ec 100644
--- a/man/menu_win.3x
+++ b/man/menu_win.3x
@@ -28,22 +28,22 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: menu_win.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: menu_win.3x,v 1.15 2020/10/17 23:50:51 tom Exp $
.TH menu_win 3X ""
.SH NAME
\fBmenu_win\fR \- make and break menu window and subwindow associations
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_menu_win(MENU *\fP\fImenu\fP\fB, WINDOW *\fP\fIwin\fP\fB);\fP
.br
-int set_menu_win(MENU *menu, WINDOW *win);
+\fBWINDOW *menu_win(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint set_menu_sub(MENU *\fP\fImenu\fP\fB, WINDOW *\fP\fIsub\fP\fB);\fP
.br
-WINDOW *menu_win(const MENU *menu);
-.br
-int set_menu_sub(MENU *menu, WINDOW *sub);
-.br
-WINDOW *menu_sub(const MENU *menu);
-.br
-int scale_menu(const MENU *menu, int *rows, int *columns);
+\fBWINDOW *menu_sub(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint scale_menu(const MENU *\fP\fImenu, int *\fP\fIrows\fP\fB, int *\fP\fIcolumns);\fP
.br
.SH DESCRIPTION
Every menu has an associated pair of \fBcurses\fR windows.
diff --git a/man/mitem_current.3x b/man/mitem_current.3x
index b1736c7..4cd37b6 100644
--- a/man/mitem_current.3x
+++ b/man/mitem_current.3x
@@ -28,22 +28,22 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: mitem_current.3x,v 1.17 2020/02/02 23:34:34 tom Exp $
+.\" $Id: mitem_current.3x,v 1.20 2020/10/18 00:39:06 tom Exp $
.TH mitem_current 3X ""
.SH NAME
\fBmitem_current\fR \- set and get current_menu_item
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_current_item(MENU *\fP\fImenu\fP\fB, ITEM *\fP\fIitem\fP\fB);\fP
.br
-int set_current_item(MENU *menu, ITEM *item);
+\fBITEM *current_item(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint set_top_row(MENU *\fP\fImenu\fP\fB, int \fP\fIrow\fP\fB);\fP
.br
-ITEM *current_item(const MENU *menu);
-.br
-int set_top_row(MENU *menu, int row);
-.br
-int top_row(const MENU *menu);
-.br
-int item_index(const ITEM *item);
+\fBint top_row(const MENU *\fP\fImenu\fP\fB);\fP
+.sp
+\fBint item_index(const ITEM *\fP\fIitem\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_current_item\fR sets the current item (the item on which
@@ -63,7 +63,7 @@ The function \fBitem_index\fR returns the (zero-origin) index of \fIitem\fR in
the menu's item pointer list.
.SH RETURN VALUE
\fBcurrent_item\fR returns a pointer (which may be \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
\fBtop_row\fR and \fBitem_index\fR return \fBERR\fR (the general \fBcurses\fR
error value) if their \fImenu\fP parameter is \fBNULL\fP.
diff --git a/man/mitem_name.3x b/man/mitem_name.3x
index 0207a9a..bf50cfd 100644
--- a/man/mitem_name.3x
+++ b/man/mitem_name.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: mitem_name.3x,v 1.11 2020/02/02 23:34:34 tom Exp $
+.\" $Id: mitem_name.3x,v 1.14 2020/10/18 00:37:48 tom Exp $
.TH mitem_name 3X ""
.SH NAME
\fBitem_name\fR,
\fBitem_description\fR \- get menu item name and description fields
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBconst char *item_name(const ITEM *\fP\fIitem\fP\fB);\fP
.br
-const char *item_name(const ITEM *item);
-.br
-const char *item_description(const ITEM *item);
+\fBconst char *item_description(const ITEM *\fP\fIitem\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBitem_name\fR returns the name part of the given item.
@@ -47,7 +47,7 @@ The function \fBitem_description\fR returns the description part of the given
item.
.SH RETURN VALUE
These routines return a pointer (which may be \fBNULL\fR).
-They do not set errno.
+They do not set \fBerrno\fP.
.SH SEE ALSO
\fBcurses\fR(3X), \fBmenu\fR(3X).
.SH NOTES
diff --git a/man/mitem_new.3x b/man/mitem_new.3x
index 9f591f6..ce52044 100644
--- a/man/mitem_new.3x
+++ b/man/mitem_new.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: mitem_new.3x,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: mitem_new.3x,v 1.19 2020/10/18 00:37:03 tom Exp $
.TH mitem_new 3X ""
.SH NAME
\fBnew_item\fP,
\fBfree_item\fR \- create and destroy menu items
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBITEM *new_item(const char *\fP\fIname\fP\fB, const char *\fP\fIdescription\fP\fB);\fP
.br
-ITEM *new_item(const char *name, const char *description);
-.br
-int free_item(ITEM *item);
+\fBint free_item(ITEM *\fP\fIitem\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBnew_item\fR allocates a new item and initializes it from the
@@ -56,7 +56,7 @@ is the responsibility of the application to release the memory for the
name or the description of the item.
.SH RETURN VALUE
The function \fBnew_item\fR returns \fBNULL\fR on error.
-It sets errno according to the function's failure:
+It sets \fBerrno\fP according to the function's failure:
.TP 5
.B E_BAD_ARGUMENT
Routine detected an incorrect or out-of-range argument.
diff --git a/man/mitem_opts.3x b/man/mitem_opts.3x
index 2745943..105f9de 100644
--- a/man/mitem_opts.3x
+++ b/man/mitem_opts.3x
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: mitem_opts.3x,v 1.15 2020/02/02 23:34:34 tom Exp $
+.\" $Id: mitem_opts.3x,v 1.16 2020/10/17 23:52:26 tom Exp $
.TH mitem_opts 3X ""
.SH NAME
\fBset_item_opts\fP,
@@ -37,14 +37,14 @@
\fBitem_opts\fR \- set and get menu item options
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_item_opts(ITEM *\fP\fIitem\fP\fB, Item_Options \fP\fIopts\fP\fB);\fP
.br
-int set_item_opts(ITEM *item, Item_Options opts);
+\fBItem_Options item_opts(const ITEM *\fP\fIitem\fP\fB);\fP
+.sp
+\fBint item_opts_on(ITEM *\fP\fIitem\fP\fB, Item_Options \fP\fIopts\fP\fB);\fP
.br
-int item_opts_on(ITEM *item, Item_Options opts);
-.br
-int item_opts_off(ITEM *item, Item_Options opts);
-.br
-Item_Options item_opts(const ITEM *item);
+\fBint item_opts_off(ITEM *\fP\fIitem\fP\fB, Item_Options \fP\fIopts\fP\fB);\fP
.br
.SH DESCRIPTION
The function \fBset_item_opts\fR sets all the given item's option bits (menu
diff --git a/man/mitem_userptr.3x b/man/mitem_userptr.3x
index f2639fd..3c3feb2 100644
--- a/man/mitem_userptr.3x
+++ b/man/mitem_userptr.3x
@@ -28,17 +28,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: mitem_userptr.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: mitem_userptr.3x,v 1.17 2020/10/18 00:36:16 tom Exp $
.TH mitem_userptr 3X ""
.SH NAME
\fBset_item_userptr\fP,
\fBitem_userptr\fR \- associate application data with a menu item
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_item_userptr(ITEM *\fP\fIitem\fP\fB, void *\fP\fIuserptr\fP\fB);\fP
.br
-int set_item_userptr(ITEM *item, void *userptr);
-.br
-void *item_userptr(const ITEM *item);
+\fBvoid *item_userptr(const ITEM *\fP\fIitem\fP\fB);\fP
.br
.SH DESCRIPTION
Every menu item has a field that can be used to hold application-specific data
@@ -47,7 +47,7 @@ These functions get and set
that field.
.SH RETURN VALUE
The function \fBitem_userptr\fR returns a pointer (possibly \fBNULL\fR).
-It does not set errno.
+It does not set \fBerrno\fP.
.PP
The \fBset_item_userptr\fP always returns \fBE_OK\fP (success).
.
diff --git a/man/mitem_value.3x b/man/mitem_value.3x
index ddbc0f5..3dc20f1 100644
--- a/man/mitem_value.3x
+++ b/man/mitem_value.3x
@@ -27,17 +27,17 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: mitem_value.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: mitem_value.3x,v 1.15 2020/10/17 23:53:24 tom Exp $
.TH mitem_value 3X ""
.SH NAME
\fBset_item_value\fP,
\fBitem_value\fP \- set and get menu item values
.SH SYNOPSIS
\fB#include <menu.h>\fR
+.sp
+\fBint set_item_value(ITEM *\fP\fIitem\fP\fB, bool \fP\fIvalue\fP\fB);\fP
.br
-int set_item_value(ITEM *item, bool value);
-.br
-bool item_value(const ITEM *item);
+\fBbool item_value(const ITEM *\fP\fIitem\fP\fB);\fP
.br
.SH DESCRIPTION
If you turn off the menu option \fBO_ONEVALUE\fR (e.g., with
diff --git a/man/mitem_visible.3x b/man/mitem_visible.3x
index 37f569c..5e6d168 100644
--- a/man/mitem_visible.3x
+++ b/man/mitem_visible.3x
@@ -28,14 +28,14 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: mitem_visible.3x,v 1.9 2020/02/02 23:34:34 tom Exp $
+.\" $Id: mitem_visible.3x,v 1.10 2020/10/17 23:53:55 tom Exp $
.TH mitem_visible 3X ""
.SH NAME
\fBmitem_visible\fR \- check visibility of a menu item
.SH SYNOPSIS
\fB#include <menu.h>\fR
-.br
-bool item_visible(const ITEM *item);
+.sp
+\fBbool item_visible(const ITEM *\fP\fIitem\fP\fB);\fP
.br
.SH DESCRIPTION
A menu item is visible when it is in the portion of a posted menu that
diff --git a/man/ncurses.3x b/man/ncurses.3x
index fdd2a71..fb12794 100644
--- a/man/ncurses.3x
+++ b/man/ncurses.3x
@@ -1,6 +1,6 @@
'\" t
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: ncurses.3x,v 1.144 2020/02/02 23:34:34 tom Exp $
+.\" $Id: ncurses.3x,v 1.153 2021/08/22 17:17:16 tom Exp $
.hy 0
.TH ncurses 3X ""
.ie \n(.g .ds `` \(lq
@@ -89,7 +89,7 @@ A program using these routines must be linked with the \fB\-lncurses\fR option,
or (if it has been generated) with the debugging library \fB\-lncurses_g\fR.
(Your system integrator may also have installed these libraries under
the names \fB\-lcurses\fR and \fB\-lcurses_g\fR.)
-The ncurses_g library generates trace logs (in a file called 'trace' in the
+The ncurses_g library generates trace logs (in a file called \*(``trace\*('' in the
current directory) that describe curses actions.
See also the section on \fBALTERNATE CONFIGURATIONS\fP.
.PP
@@ -127,7 +127,6 @@ sequence should be used:
.PP
Most programs would additionally use the sequence:
.NS
-\fBnonl();\fR
\fBintrflush(stdscr, FALSE);\fR
\fBkeypad(stdscr, TRUE);\fR
.NE
@@ -319,8 +318,9 @@ For example, \fBwaddch\fP becomes \fBwadd_wch\fP.
.PP
.\"
.SS Routine Name Index
-The following table lists each \fBcurses\fR routine and the name of
-the manual page on which it is described.
+The following table lists the \fBcurses\fR routines provided in
+the \*(``normal\*('' and \*(``wide\*('' libraries and the names of
+the manual pages on which they are described.
Routines flagged with \*(``*\*(''
are ncurses-specific, not described by XPG4 or present in SVr4.
.PP
@@ -332,17 +332,6 @@ l l .
=
COLOR_PAIR/\fBcurs_color\fR(3X)
PAIR_NUMBER/\fBcurs_attr\fR(3X)
-_nc_free_and_exit/\fBcurs_memleaks\fR(3X)*
-_nc_freeall/\fBcurs_memleaks\fR(3X)*
-_nc_tracebits/\fBcurs_trace\fR(3X)*
-_traceattr/\fBcurs_trace\fR(3X)*
-_traceattr2/\fBcurs_trace\fR(3X)*
-_tracechar/\fBcurs_trace\fR(3X)*
-_tracechtype/\fBcurs_trace\fR(3X)*
-_tracechtype2/\fBcurs_trace\fR(3X)*
-_tracedump/\fBcurs_trace\fR(3X)*
-_tracef/\fBcurs_trace\fR(3X)*
-_tracemouse/\fBcurs_trace\fR(3X)*
add_wch/\fBcurs_add_wch\fR(3X)
add_wchnstr/\fBcurs_add_wchstr\fR(3X)
add_wchstr/\fBcurs_add_wchstr\fR(3X)
@@ -383,6 +372,7 @@ color_content/\fBcurs_color\fR(3X)
color_set/\fBcurs_attr\fR(3X)
copywin/\fBcurs_overlay\fR(3X)
curs_set/\fBcurs_kernel\fR(3X)
+curses_trace/\fBcurs_trace\fR(3X)*
curses_version/\fBcurs_extend\fR(3X)*
def_prog_mode/\fBcurs_kernel\fR(3X)
def_shell_mode/\fBcurs_kernel\fR(3X)
@@ -403,6 +393,8 @@ endwin/\fBcurs_initscr\fR(3X)
erase/\fBcurs_clear\fR(3X)
erasechar/\fBcurs_termattrs\fR(3X)
erasewchar/\fBcurs_termattrs\fR(3X)
+exit_curses/\fBcurs_memleaks\fR(3X)*
+exit_terminfo/\fBcurs_memleaks\fR(3X)*
extended_color_content/\fBcurs_color\fR(3X)*
extended_pair_content/\fBcurs_color\fR(3X)*
extended_slk_color/\fBcurs_slk\fR(3X)*
@@ -441,6 +433,7 @@ has_colors/\fBcurs_color\fR(3X)
has_ic/\fBcurs_termattrs\fR(3X)
has_il/\fBcurs_termattrs\fR(3X)
has_key/\fBcurs_getch\fR(3X)*
+has_mouse/\fBcurs_mouse\fR(3X)*
hline/\fBcurs_border\fR(3X)
hline_set/\fBcurs_border_set\fR(3X)
idcok/\fBcurs_outopts\fR(3X)
@@ -589,18 +582,19 @@ napms/\fBcurs_kernel\fR(3X)
newpad/\fBcurs_pad\fR(3X)
newterm/\fBcurs_initscr\fR(3X)
newwin/\fBcurs_window\fR(3X)
-nl/\fBcurs_outopts\fR(3X)
+nl/\fBcurs_inopts\fR(3X)
nocbreak/\fBcurs_inopts\fR(3X)
nodelay/\fBcurs_inopts\fR(3X)
noecho/\fBcurs_inopts\fR(3X)
nofilter/\fBcurs_util\fR(3X)*
-nonl/\fBcurs_outopts\fR(3X)
+nonl/\fBcurs_inopts\fR(3X)
noqiflush/\fBcurs_inopts\fR(3X)
noraw/\fBcurs_inopts\fR(3X)
notimeout/\fBcurs_inopts\fR(3X)
overlay/\fBcurs_overlay\fR(3X)
overwrite/\fBcurs_overlay\fR(3X)
pair_content/\fBcurs_color\fR(3X)
+pecho_wchar/\fBcurs_pad\fR(3X)*
pechochar/\fBcurs_pad\fR(3X)
pnoutrefresh/\fBcurs_pad\fR(3X)
prefresh/\fBcurs_pad\fR(3X)
@@ -611,6 +605,7 @@ qiflush/\fBcurs_inopts\fR(3X)
raw/\fBcurs_inopts\fR(3X)
redrawwin/\fBcurs_refresh\fR(3X)
refresh/\fBcurs_refresh\fR(3X)
+reset_color_pairs/\fBcurs_color\fR(3X)*
reset_prog_mode/\fBcurs_kernel\fR(3X)
reset_shell_mode/\fBcurs_kernel\fR(3X)
resetty/\fBcurs_kernel\fR(3X)
@@ -632,7 +627,6 @@ set_term/\fBcurs_initscr\fR(3X)
setcchar/\fBcurs_getcchar\fR(3X)
setscrreg/\fBcurs_outopts\fR(3X)
setsyx/\fBcurs_kernel\fR(3X)
-setterm/\fBcurs_terminfo\fR(3X)
setupterm/\fBcurs_terminfo\fR(3X)
slk_attr/\fBcurs_slk\fR(3X)*
slk_attr_off/\fBcurs_slk\fR(3X)
@@ -650,6 +644,7 @@ slk_refresh/\fBcurs_slk\fR(3X)
slk_restore/\fBcurs_slk\fR(3X)
slk_set/\fBcurs_slk\fR(3X)
slk_touch/\fBcurs_slk\fR(3X)
+slk_wset/\fBcurs_slk\fR(3X)*
standend/\fBcurs_attr\fR(3X)
standout/\fBcurs_attr\fR(3X)
start_color/\fBcurs_color\fR(3X)
@@ -781,6 +776,19 @@ wunctrl/\fBcurs_util\fR(3X)
wvline/\fBcurs_border\fR(3X)
wvline_set/\fBcurs_border_set\fR(3X)
.TE
+.PP
+Depending on the configuration,
+additional sets of functions may be available:
+.RS 3
+.TP 5
+\fBcurs_memleaks\fP(3X) - curses memory-leak checking
+.TP 5
+\fBcurs_sp_funcs\fP(3X) - curses screen-pointer extension
+.TP 5
+\fBcurs_threads\fP(3X) - curses thread support
+.TP 5
+\fBcurs_trace\fP(3X) - curses debugging routines
+.RE
.SH RETURN VALUE
Routines that return an integer return \fBERR\fR upon failure and an
integer value other than \fBERR\fR upon successful completion, unless
@@ -799,6 +807,13 @@ The return values of
\fBgetmaxyx\fR are undefined (i.e., these should not be used as the
right-hand side of assignment statements).
.PP
+Functions with a \*(``mv\*('' prefix first perform a cursor movement using
+\fBwmove\fP, and return an error if the position is outside the window,
+or if the window pointer is null.
+Most \*(``mv\*(''-prefixed functions
+(except variadic functions such as \fBmvprintw\fP)
+are provided both as macros and functions.
+.PP
Routines that return pointers return \fBNULL\fR on error.
.SH ENVIRONMENT
.PP
@@ -1290,6 +1305,32 @@ The debug and profiling libraries add a \*(``_g\*(''
and a \*(``_p\*('' to the root names respectively,
e.g., \fBlibncurses_g.a\fP and \fBlibncurses_p.a\fP.
.TP 5
+\-\-with\-termlib
+Low-level functions which do not depend upon whether the library
+supports wide-characters, are provided in the tinfo library.
+.IP
+By doing this, it is possible to share the tinfo library between
+wide/normal configurations as well as reduce the size of the library
+when only low-level functions are needed.
+.IP
+Those functions are described in these pages:
+.RS
+.bP
+\fBcurs_extend\fP(3X) \- miscellaneous curses extensions
+.bP
+\fBcurs_inopts\fR(3X) \- \fBcurses\fR input options
+.bP
+\fBcurs_kernel\fR(3X) \- low-level \fBcurses\fR routines
+.bP
+\fBcurs_termattrs\fR(3X) \- \fBcurses\fR environment query routines
+.bP
+\fBcurs_termcap\fR(3X) \- \fBcurses\fR emulation of termcap
+.bP
+\fBcurs_terminfo\fR(3X) \- \fBcurses\fR interfaces to terminfo database
+.bP
+\fBcurs_util\fR(3X) \- miscellaneous \fBcurses\fR utility routines
+.RE
+.TP 5
\-\-with\-trace
The \fBtrace\fP function normally resides in the debug library,
but it is sometimes useful to configure this in the shared library.
@@ -1354,6 +1395,10 @@ The EXTENDED XSI Curses functionality
A small number of local differences (that is, individual differences between
the XSI Curses and \fBncurses\fR calls) are described in \fBPORTABILITY\fR
sections of the library man pages.
+.SS Error checking
+.PP
+In many cases, X/Open Curses is vague about error conditions,
+omitting some of the SVr4 documentation.
.PP
Unlike other implementations, this one checks parameters such as pointers
to WINDOW structures to ensure they are not null.
@@ -1363,8 +1408,12 @@ The standard interface does not provide a way for the library
to tell an application which of several possible errors were detected.
Relying on this (or some other) extension will adversely affect the
portability of curses applications.
+.SS Extensions versus portability
.PP
-This implementation also contains several extensions:
+Most of the extensions provided by ncurses have not been standardized.
+Some have been incorporated into other implementations, such as
+PDCurses or NetBSD curses.
+Here are a few to consider:
.bP
The routine \fBhas_key\fR is not part of XPG4, nor is it present in SVr4.
See the \fBcurs_getch\fR(3X) manual page for details.
@@ -1394,6 +1443,7 @@ See \fBcurs_threads\fR(3X) for details.
This implementation can also be configured to provide a set of functions which
improve the ability to manage multiple screens.
See \fBcurs_sp_funcs\fR(3X) for details.
+.SS Padding differences
.PP
In historic curses versions, delays embedded in the capabilities \fBcr\fR,
\fBind\fR, \fBcub1\fR, \fBff\fR and \fBtab\fR activated corresponding delay
@@ -1402,10 +1452,103 @@ In this implementation, all padding is done by sending NUL bytes.
This method is slightly more expensive, but narrows the interface
to the UNIX kernel significantly and increases the package's portability
correspondingly.
-.SH NOTES
+.SS Header files
The header file \fB<curses.h>\fR automatically includes the header files
\fB<stdio.h>\fR and \fB<unctrl.h>\fR.
.PP
+X/Open Curses has more to say,
+but does not finish the story:
+.RS 4
+.PP
+The inclusion of <curses.h> may make visible all symbols
+from the headers <stdio.h>, <term.h>, <termios.h>, and <wchar.h>.
+.RE
+.PP
+Here is a more complete story:
+.bP
+Starting with BSD curses, all implementations have included <stdio.h>.
+.IP
+BSD curses included <curses.h> and <unctrl.h> from an internal header
+"curses.ext" ("ext" was a short name for \fIexterns\fP).
+.IP
+BSD curses used <stdio.h> internally (for \fBprintw\fP and \fBscanw\fP),
+but nothing in <curses.h> itself relied upon <stdio.h>.
+.bP
+SVr2 curses added \fBnewterm\fP(3X), which relies upon <stdio.h>.
+That is, the function prototype uses \fBFILE\fP.
+.IP
+SVr4 curses added \fBputwin\fP and \fBgetwin\fP, which also use <stdio.h>.
+.IP
+X/Open Curses documents all three of these functions.
+.IP
+SVr4 curses and X/Open Curses do not require the developer to
+include <stdio.h> before including <curses.h>.
+Both document curses showing <curses.h> as the only required header.
+.IP
+As a result, standard <curses.h> will always include <stdio.h>.
+.bP
+X/Open Curses is inconsistent with respect to SVr4 regarding <unctrl.h>.
+.IP
+As noted in \fBcurs_util\fP(3X), ncurses includes <unctrl.h> from
+<curses.h> (like SVr4).
+.bP
+X/Open's comments about <term.h> and <termios.h> may refer to HP-UX and AIX:
+.IP
+HP-UX curses includes <term.h> from <curses.h>
+to declare \fBsetupterm\fP in curses.h,
+but ncurses (and Solaris curses) do not.
+.IP
+AIX curses includes <term.h> and <termios.h>.
+Again, ncurses (and Solaris curses) do not.
+.bP
+X/Open says that <curses.h> \fImay\fP include <term.h>,
+but there is no requirement that it do that.
+.IP
+Some programs use functions declared in both <curses.h> and <term.h>,
+and must include both headers in the same module.
+Very old versions of AIX curses required including <curses.h>
+before including <term.h>.
+.IP
+Because ncurses header files include the headers needed to
+define datatypes used in the headers,
+ncurses header files can be included in any order.
+But for portability, you should include <curses.h> before <term.h>.
+.bP
+X/Open Curses says \fI"may make visible"\fP
+because including a header file does not necessarily make all symbols
+in it visible (there are ifdef's to consider).
+.IP
+For instance, in ncurses <wchar.h> \fImay\fP be included if
+the proper symbol is defined, and if ncurses is configured for
+wide-character support.
+If the header is included, its symbols may be made visible.
+That depends on the value used for \fB_XOPEN_SOURCE\fP
+feature test macro.
+.bP
+X/Open Curses documents one required header,
+in a special case: <stdarg.h> before <curses.h> to prototype
+the \fBvw_printw\fP and \fBvw_scanw\fP functions
+(as well as the obsolete
+the \fBvwprintw\fP and \fBvwscanw\fP functions).
+Each of those uses a \fBva_list\fP parameter.
+.IP
+The two obsolete functions were introduced in SVr3.
+The other functions were introduced in X/Open Curses.
+In between, SVr4 curses provided for the possibility that
+an application might include either <varargs.h> or <stdarg.h>.
+Initially, that was done by using \fBvoid*\fP for the \fBva_list\fP
+parameter.
+Later, a special type (defined in <stdio.h>) was introduced,
+to allow for compiler type-checking.
+That special type is always available,
+because <stdio.h> is always included by <curses.h>.
+.IP
+None of the X/Open Curses implementations require an application
+to include <stdarg.h> before <curses.h> because they either
+have allowed for a special type, or (like ncurses) include <stdarg.h>
+directly to provide a portable interface.
+.SH NOTES
+.PP
If standard output from a \fBncurses\fR program is re-directed to something
which is not a tty, screen updates will be directed to standard error.
This was an undocumented feature of AT&T System V Release 3 curses.
diff --git a/man/new_pair.3x b/man/new_pair.3x
index 3f1e3ac..98166a9 100644
--- a/man/new_pair.3x
+++ b/man/new_pair.3x
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,7 +29,7 @@
.\"
.\" Author: Thomas E. Dickey
.\"
-.\" $Id: new_pair.3x,v 1.14 2020/02/02 23:34:34 tom Exp $
+.\" $Id: new_pair.3x,v 1.16 2021/06/17 21:26:02 tom Exp $
.TH new_pair 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -60,11 +60,11 @@
.SH SYNOPSIS
\fB#include <curses.h>\fP
.sp
-\fBint alloc_pair(int fg, int bg);\fP
+\fBint alloc_pair(int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fP
.br
-\fBint find_pair(int fg, int bg);\fP
+\fBint find_pair(int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fP
.br
-\fBint free_pair(int pair);\fP
+\fBint free_pair(int \fP\fIpair\fP\fB);\fP
.SH DESCRIPTION
These functions are an extension to the curses library.
They permit an application to dynamically allocate a color pair using
@@ -82,7 +82,7 @@ That is, the foreground and background colors are applied as a pair.
.bP
Color pairs are the curses library's way of managing a color palette
on a terminal.
-If the library does not keep track of the \fIcombinations\fP of
+If the library does not keep track of the \fIcombinations\fP of
colors which are displayed, it will be inefficient.
.bP
For simple terminal emulators
@@ -94,7 +94,7 @@ as the limit on color pairs:
.NE
.bP
Terminals which support \fIdefault colors\fP distinct
-from \*(``ANSI colors\*(''
+from \*(``ANSI colors\*(''
add to the possible combinations, producing this total:
.NS
\fI( \fP\fBCOLORS\fP\fI + 1 ) * ( \fP\fBCOLORS\fP\fI + 1 )\fP
@@ -104,7 +104,7 @@ An application might use up to a few dozen color pairs to
implement a predefined color scheme.
.IP
Beyond that lies in the realm of programs using the foreground
-and background colors for \*(``ASCII art\*(''
+and background colors for \*(``ASCII art\*(''
(or some other non-textual application).
.IP
Also beyond those few dozen pairs, the required size for a table
diff --git a/man/panel.3x b/man/panel.3x
index 32dd487..932ef48 100644
--- a/man/panel.3x
+++ b/man/panel.3x
@@ -27,12 +27,16 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: panel.3x,v 1.28 2020/02/02 23:34:34 tom Exp $
+.\" $Id: panel.3x,v 1.39 2020/02/15 21:06:40 tom Exp $
.TH panel 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.ie \n(.g .ds '' \(rq
.el .ds '' ''
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
.SH NAME
panel \- panel stack extension for curses
.SH SYNOPSIS
@@ -40,35 +44,41 @@ panel \- panel stack extension for curses
.P
\fBcc [flags] sourcefiles \-lpanel \-lncurses\fR
.P
-\fBPANEL *new_panel(WINDOW *win);\fR
+\fBPANEL *new_panel(WINDOW *\fIwin\fB);\fR
+.sp
+\fBint bottom_panel(PANEL *\fIpan\fB);\fR
.br
-\fBint bottom_panel(PANEL *pan);\fR
+\fBint top_panel(PANEL *\fIpan\fB);\fR
.br
-\fBint top_panel(PANEL *pan);\fR
-.br
-\fBint show_panel(PANEL *pan);\fR
+\fBint show_panel(PANEL *\fIpan\fB);\fR
.br
\fBvoid update_panels(void);\fR
.br
-\fBint hide_panel(PANEL *pan);\fR
-.br
-\fBWINDOW *panel_window(const PANEL *pan);\fR
+\fBint hide_panel(PANEL *\fIpan\fB);\fR
+.sp
+\fBWINDOW *panel_window(const PANEL *\fIpan\fB);\fR
.br
-\fBint replace_panel(PANEL *pan, WINDOW *window);\fR
+\fBint replace_panel(PANEL *\fIpan\fB, WINDOW *\fIwindow\fB);\fR
.br
-\fBint move_panel(PANEL *pan, int starty, int startx);\fR
+\fBint move_panel(PANEL *\fIpan\fB, int \fIstarty\fB, int \fIstartx\fB);\fR
.br
-\fBint panel_hidden(const PANEL *pan);\fR
+\fBint panel_hidden(const PANEL *\fIpan\fB);\fR
+.sp
+\fBPANEL *panel_above(const PANEL *\fIpan\fB);\fR
.br
-\fBPANEL *panel_above(const PANEL *pan);\fR
+\fBPANEL *panel_below(const PANEL *\fIpan\fB);\fR
+.sp
+\fBint set_panel_userptr(PANEL *\fIpan\fB, const void *\fIptr\fB);\fR
.br
-\fBPANEL *panel_below(const PANEL *pan);\fR
+\fBconst void *panel_userptr(const PANEL *\fIpan\fB);\fR
+.sp
+\fBint del_panel(PANEL *\fIpan\fB);\fR
+.sp
+/* ncurses-extensions */
.br
-\fBint set_panel_userptr(PANEL *pan, const void *ptr);\fR
+\fBPANEL *ground_panel(SCREEN *\fIsp\fB);\fR
.br
-\fBconst void *panel_userptr(const PANEL *pan);\fR
-.br
-\fBint del_panel(PANEL *pan);\fR
+\fBPANEL *ceiling_panel(SCREEN *\fIsp\fB);\fR
.br
.SH DESCRIPTION
Panels are \fBcurses\fR(3X) windows with the added feature of
@@ -89,87 +99,113 @@ panel at any desired location in the stack.
Panel routines are a functional layer added to \fBcurses\fR(3X), make only
high-level curses calls, and work anywhere terminfo curses does.
.SH FUNCTIONS
-.TP
-.B new_panel(win)
-allocates a \fBPANEL\fR structure, associates it with
-\fBwin\fR, places the panel on the top of the stack (causes it
-to be displayed above any other panel) and returns a
-pointer to the new panel.
-.TP
-.B update_panels
-refreshes the \fIvirtual screen\fP to reflect the relations between the
-panels in the stack, but does not call \fBdoupdate\fP to refresh the
-\fIphysical screen\fP.
-Use this function and not \fBwrefresh\fP or \fBwnoutrefresh\fP.
-.B update_panels
-may be called more than once before a call to
-\fBdoupdate\fP, but \fBdoupdate\fP is the function responsible for updating
-the \fIphysical screen\fP.
-.TP
-.B del_panel(pan)
-removes the given panel from the stack and deallocates the
+.\" ---------
+.SS bottom_panel
+\fBbottom_panel(\fIpan\fB)\fR
+puts panel \fIpan\fP at the bottom of all panels.
+.\" ---------
+.SS ceiling_panel
+\fBceiling_panel(\fIsp\fB)\fR
+acts like \fBpanel_below(NULL)\fP, for the given \fBSCREEN\fP \fIsp\fP.
+.\" ---------
+.SS del_panel
+\fBdel_panel(\fIpan\fB)\fR
+removes the given panel \fIpan\fP from the stack and deallocates the
\fBPANEL\fR structure (but not its associated window).
-.TP
-.B hide_panel(pan)
-removes the given panel from the panel stack and thus hides it from
-view.
+.\" ---------
+.SS ground_panel
+\fBground_panel(\fIsp\fB)\fR
+acts like \fBpanel_above(NULL)\fP, for the given \fBSCREEN\fP \fIsp\fP.
+.\" ---------
+.SS hide_panel
+\fBhide_panel(\fIpan\fB)\fR
+removes the given panel \fIpan\fP from the panel stack
+and thus hides it from view.
The \fBPANEL\fR structure is not lost, merely removed from the stack.
-.TP
-.B panel_hidden(pan)
-returns \fBTRUE\fP if the panel is in the panel stack,
-\fBFALSE\fP if it is not.
-If the panel is a null pointer, return \fBERR\fP.
-.TP
-.B show_panel(pan)
-makes a hidden panel visible by placing it on top of the panels in the
-panel stack.
-See COMPATIBILITY below.
-.TP
-.B top_panel(pan)
-puts the given visible panel on top of all panels in the stack.
-See
-COMPATIBILITY below.
-.TP
-.B bottom_panel(pan)
-puts panel at the bottom of all panels.
-.TP
-.B move_panel(pan,starty,startx)
-moves the given panel window so that its upper-left corner is at
-\fBstarty\fR, \fBstartx\fR.
-It does not change the position of the
-panel in the stack.
-Be sure to use this function, not \fBmvwin\fR,
-to move a panel window.
-.TP
-.B replace_panel(pan,window)
-replaces the current window of panel with \fBwindow\fR (useful, for
-example if you want to resize a panel; if you're using \fBncurses\fR,
-you can call \fBreplace_panel\fR on the output of \fBwresize\fR(3X)).
+.\" ---------
+.SS move_panel
+\fBmove_panel(\fIpan\fB,\fIstarty\fB,\fIstartx\fB)\fR
+moves the given panel \fIpan\fP's window so that its upper-left corner is at
+\fIstarty\fR, \fIstartx\fR.
It does not change the position of the panel in the stack.
-.TP
-.B panel_above(pan)
-returns a pointer to the panel above pan.
+Be sure to use this function, not \fBmvwin\fR(3X), to move a panel window.
+.\" ---------
+.SS new_panel
+\fBnew_panel(\fIwin\fB)\fR allocates a \fBPANEL\fR structure,
+associates it with \fIwin\fR, places the panel on the top of the stack
+(causes it to be displayed above any other panel) and returns a
+pointer to the new panel.
+.\" ---------
+.SS panel_above
+\fBpanel_above(\fIpan\fB)\fR
+returns a pointer to the panel above \fIpan\fP.
If the panel argument is
\fB(PANEL *)0\fR, it returns a pointer to the bottom panel in the stack.
-.TP
-.B panel_below(pan)
-returns a pointer to the panel just below pan.
+.\" ---------
+.SS panel_below
+\fBpanel_below(\fIpan\fB)\fR
+returns a pointer to the panel just below \fIpan\fP.
If the panel argument
is \fB(PANEL *)0\fR, it returns a pointer to the top panel in the stack.
-.TP
-.B set_panel_userptr(pan,ptr)
+.\" ---------
+.SS panel_hidden
+\fBpanel_hidden(\fIpan\fB)\fR
+returns \fBTRUE\fP if the panel \fIpan\fP is in the panel stack,
+\fBFALSE\fP if it is not.
+If the panel is a null pointer, return \fBERR\fP.
+.\" ---------
+.SS panel_userptr
+\fBpanel_userptr(\fIpan\fB)\fR
+returns the user pointer for a given panel \fIpan\fP.
+.\" ---------
+.SS panel_window
+\fBpanel_window(\fIpan\fB)\fR
+returns a pointer to the window of the given panel \fIpan\fP.
+.\" ---------
+.SS replace_panel
+\fBreplace_panel(\fIpan\fB,\fIwindow\fB)\fR
+replaces the current window of panel \fIpan\fP with \fIwindow\fR
+This is useful, for example if you want to resize a panel.
+In \fBncurses\fR, you can call \fBreplace_panel\fR
+to resize a panel using a window resized with \fBwresize\fR(3X).
+It does not change the position of the panel in the stack.
+.\" ---------
+.SS set_panel_userptr
+\fBset_panel_userptr(\fIpan\fB,\fIptr\fB)\fR
sets the panel's user pointer.
-.TP
-.B panel_userptr(pan)
-returns the user pointer for a given panel.
-.TP
-.B panel_window(pan)
-returns a pointer to the window of the given panel.
+.\" ---------
+.SS show_panel
+\fBshow_panel(\fIpan\fB)\fR
+makes a hidden panel visible by placing it on top of the panels in the
+panel stack.
+See \fBCOMPATIBILITY\fP below.
+.\" ---------
+.SS top_panel
+\fBtop_panel(\fIpan\fB)\fR
+puts the given visible panel \fIpan\fP on top of all panels in the stack.
+See \fBCOMPATIBILITY\fP below.
+.\" ---------
+.SS update_panels
+\fBupdate_panels()\fR
+refreshes the \fIvirtual screen\fP to reflect the relations between the
+panels in the stack, but does not call \fBdoupdate\fP(3X) to refresh the
+\fIphysical screen\fP.
+Use this function and not \fBwrefresh\fP(3X) or \fBwnoutrefresh\fP(3X).
+.PP
+\fBupdate_panels\fP may be called more than once before a call to
+\fBdoupdate\fP, but \fBdoupdate\fP is the function responsible for updating
+the \fIphysical screen\fP.
.SH DIAGNOSTICS
Each routine that returns a pointer returns \fBNULL\fR if an error
occurs.
Each routine that returns an int value returns \fBOK\fR if it
executes successfully and \fBERR\fR if not.
+.PP
+Except as noted, the \fIpan\fP and \fIwindow\fP parameters must be non-null.
+If those are null, an error is returned.
+.PP
+The \fBmove_panel\fP function uses \fBmvwin\fP(3X),
+and will return an error if \fBmvwin\fP returns an error.
.SH COMPATIBILITY
Reasonable care has been taken to ensure compatibility
with the native panel facility introduced in System V (inspection of
@@ -198,8 +234,27 @@ The panel facility was documented in SVr4.2 in
.PP
It is not part of X/Open Curses.
.PP
-Aside from ncurses, only systems based on SVr4 source code,
-e.g., Solaris provide this library.
+A few implementations exist:
+.bP
+Systems based on SVr4 source code,
+e.g., Solaris, provide this library.
+.bP
+\fBncurses\fP (since version 0.6 in 1993)
+and \fBPDCurses\fP (since version 2.2 in 1995)
+provide a panel library whose common ancestor
+was a public domain implementation by Warren Tucker
+published in \fIu386mon\fP 2.20 (1990).
+.IP
+According to Tucker, the SystemV panel library
+was first released in SVr3.2 (1988),
+and his implementation helped with a port to SVr3.1 (1987).
+.IP
+Several developers have improved each of these;
+they are no longer the same as Tucker's implementation.
+.bP
+NetBSD 8 (2018)
+has a panel library begun by Valery Ushakov in 2015.
+This is based on the AT&T documentation.
.SH FILES
.P
panel.h
@@ -214,7 +269,11 @@ the panels library itself
This describes \fBncurses\fR
version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
.SH AUTHOR
+.PP
Originally written by Warren Tucker <wht@n4hgf.mt-park.ga.us>,
-primarily to assist in porting u386mon to systems without a native
+primarily to assist in porting \fIu386mon\fP to systems without a native
panels library.
+.PP
Repackaged for ncurses by Zeyd ben-Halim.
+.PP
+Juergen Pfeifer and Thomas E. Dickey revised/improved the library.
diff --git a/man/resizeterm.3x b/man/resizeterm.3x
index 5f2bc93..ae5106e 100644
--- a/man/resizeterm.3x
+++ b/man/resizeterm.3x
@@ -29,7 +29,7 @@
.\"
.\" Author: Thomas E. Dickey 1996-on
.\"
-.\" $Id: resizeterm.3x,v 1.27 2020/02/02 23:34:34 tom Exp $
+.\" $Id: resizeterm.3x,v 1.28 2020/10/17 23:55:41 tom Exp $
.TH resizeterm 3X ""
.de bP
.ie n .IP \(bu 4
@@ -42,11 +42,11 @@
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBbool is_term_resized(int lines, int columns);\fR
+\fBbool is_term_resized(int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
.br
-\fBint resize_term(int lines, int columns);\fR
+\fBint resize_term(int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
.br
-\fBint resizeterm(int lines, int columns);\fR
+\fBint resizeterm(int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
.SH DESCRIPTION
.PP
This is an extension to the curses library.
diff --git a/man/scr_dump.5 b/man/scr_dump.5
index 7ef68cd..43ee58c 100644
--- a/man/scr_dump.5
+++ b/man/scr_dump.5
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: scr_dump.5,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: scr_dump.5,v 1.17 2021/06/17 21:26:02 tom Exp $
.TH scr_dump 5
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -353,31 +353,31 @@ VMIN=1
VTIME=0
FLAGS=0x1000
FG=0,0
-BG=0,0,
+BG=0,0,
0,0,0,1,
-0,19,0,0,
+0,19,0,0,
1,0,0,1,
-1,19,0,0,
+1,19,0,0,
2,0,0,1,
-2,19,0,0,
+2,19,0,0,
3,0,0,1,
-3,19,0,0,
+3,19,0,0,
4,0,0,1,
4,5,0x20,0,Hello
4,10,0,1,
-4,19,0,0,
+4,19,0,0,
5,0,0,1,
5,5,0x4,2,World!
5,11,0,1,
-5,19,0,0,
+5,19,0,0,
6,0,0,1,
-6,19,0,0,
+6,19,0,0,
7,0,0,1,
-7,19,0,0,
+7,19,0,0,
8,0,0,1,
-8,19,0,0,
+8,19,0,0,
9,0,0,1,
-9,19,0,0,
+9,19,0,0,
CUR=11,5
.NE
.PP
diff --git a/man/tabs.1 b/man/tabs.1
index 9c891f1..c6a2127 100644
--- a/man/tabs.1
+++ b/man/tabs.1
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 2008-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tabs.1,v 1.27 2020/02/02 23:34:34 tom Exp $
+.\" $Id: tabs.1,v 1.32 2021/10/16 13:37:43 tom Exp $
.TH @TABS@ 1 ""
.ds n 5
.ie \n(.g .ds `` \(lq
@@ -140,34 +140,78 @@ tabs 1,+5,+5,+5,+5
.PP
which is equivalent to the 1,6,11,16,21 example.
.SS Predefined Tab-Stops
-X/Open defines several predefined lists of tab stops.
+POSIX defines several predefined lists of tab stops.
.TP 5
.B \-a
Assembler, IBM S/370, first format
+.br
+1,10,16,36,72
.TP 5
.B \-a2
Assembler, IBM S/370, second format
+.br
+1,10,16,40,72
.TP 5
.B \-c
COBOL, normal format
+.br
+1,8,12,16,20,55
.TP 5
.B \-c2
COBOL compact format
+.br
+1,6,10,14,49
.TP 5
.B \-c3
COBOL compact format extended
+.br
+1,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,67
.TP 5
.B \-f
FORTRAN
+.br
+1,7,11,15,19,23
.TP 5
.B \-p
PL/I
+.br
+1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61
.TP 5
.B \-s
SNOBOL
+.br
+1,10,55
.TP 5
.B \-u
UNIVAC 1100 Assembler
+.br
+1,12,20,44
+.SS Margins
+A few terminals provide the capability for changing their left/right margins.
+The @TABS@ program has an option to use this feature:
+.TP 5
+.BI \+m \ margin
+The effect depends on whether the terminal has the margin capabilities:
+.RS
+.bP
+If the terminal provides the capability for setting the left margin,
+@TABS@ uses this, and adjusts the available width for tab-stops.
+.bP
+If the terminal does not provide the margin capabilities,
+@TABS@ imitates the effect, putting the tab stops at the appropriate
+place on each line.
+The terminal's left-margin is not modified.
+.RE
+.IP
+If the \fImargin\fP parameter is omitted, the default is 10.
+Use \fB\+m0\fP to reset the left margin,
+i.e., to the left edge of the terminal's display.
+Before setting a left-margin,
+@TABS@ resets the margin to reduce problems which might arise
+on moving the cursor before the current left-margin.
+.PP
+When setting or resetting the left-margin,
+@TABS@ may reset the right-margin.
.SH PORTABILITY
.PP
\fIIEEE Std 1003.1/The Open Group Base Specifications Issue 7\fP (POSIX.1-2008)
@@ -181,7 +225,7 @@ Very few of the entries in the terminal database provide the
capability needed to support the feature.
.bP
There is no counterpart in X/Open Curses Issue 7 for this utility,
-unlike \fB@TPUT@(1)\fP.
+unlike \fB@TPUT@\fP(1).
.PP
The \fB\-d\fP (debug) and \fB\-n\fP (no-op) options are extensions not provided
by other implementations.
@@ -195,17 +239,28 @@ That option is not documented by POSIX.
.PP
The PWB/Unix \fBtabs\fP utility, which was included in System III (1980),
used built-in tables rather than the terminal database,
-to support a half-dozen terminal types.
+to support a half-dozen hardcopy terminal (printer) types.
It also had built-in logic to support the left-margin,
as well as a feature for copying the tab settings from a file.
.PP
Later versions of Unix, e.g., SVr4,
added support for the terminal database,
-but kept the tables, as a fallback.
+but kept the tables to support the printers.
In an earlier development effort,
the tab-stop initialization provided by \fBtset\fP (1982)
and incorporated into \fBtput\fP uses the terminal database,
.PP
+The \fB\+m\fP option was documented
+in the Base Specifications Issue 5 (Unix98, 1997),
+and omitted in Issue 6 (Unix03, 2004) without documenting the rationale,
+though an introductory comment
+\fI\*(``and optionally adjusts the margin\*(''\fP remains,
+overlooked in the removal.
+The documented \fBtabs\fP utility in Issues 6 and later has no mechanism
+for setting margins.
+The \fB\+m\fP option in this implementation differs from the feature
+in SVr4 by using terminal capabilities rather than built-in tables.
+.PP
POSIX documents no limits on the number of tab stops.
Documentation for other implementations states that there is a limit on the
number of tab stops
@@ -229,8 +284,8 @@ However, the \fIExplicit Lists\fP described in this manual page
were implemented in PWB/Unix.
Those provide the capability of setting abitrary tab stops.
.SH SEE ALSO
-\fB@TSET@\fR(1),
\fB@INFOCMP@\fR(1M),
+\fB@TSET@\fR(1),
\fBcurses\fR(3X),
\fBterminfo\fR(\*n).
.PP
diff --git a/man/term.5 b/man/term.5
index 14e912a..3a4a1d0 100644
--- a/man/term.5
+++ b/man/term.5
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: term.5,v 1.33 2020/02/02 23:34:34 tom Exp $
+.\" $Id: term.5,v 1.40 2021/08/15 19:38:47 tom Exp $
.TH term 5
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -99,83 +99,116 @@ or sign extension are made.
The compiled file is created with the \fB@TIC@\fP program,
and read by the routine \fBsetupterm\fP(3X).
The file is divided into six parts:
-the header,
-terminal names,
-boolean flags,
-numbers,
-strings,
-and
-string table.
+.RS 5
+.TP 3
+a) \fIheader\fP,
+.TP 3
+b) \fIterminal names\fP,
+.TP 3
+c) \fIboolean flags\fP,
+.TP 3
+d) \fInumbers\fP,
+.TP 3
+e) \fIstrings\fP, and
+.TP 3
+f) \fIstring table\fP.
+.RE
.PP
-The header section begins the file.
+The \fIheader\fP section begins the file.
This section contains six short integers in the format
described below.
These integers are
.RS 5
.TP 5
-(1) the magic number (octal 0432);
+(1) the \fImagic number\fP (octal 0432);
.TP 5
-(2) the size, in bytes, of the names section;
+(2) the size, in bytes, of the \fIterminal names\fP section;
.TP 5
-(3) the number of bytes in the boolean section;
+(3) the number of bytes in the \fIboolean flags\fP section;
.TP 5
-(4) the number of short integers in the numbers section;
+(4) the number of short integers in the \fInumbers\fP section;
.TP 5
-(5) the number of offsets (short integers) in the strings section;
+(5) the number of offsets (short integers) in the \fIstrings\fP section;
.TP 5
-(6) the size, in bytes, of the string table.
+(6) the size, in bytes, of the \fIstring table\fP.
.RE
.PP
-Short integers are stored in two 8-bit bytes.
+The capabilities in the
+\fIboolean flags\fP,
+\fInumbers\fP, and
+\fIstrings\fP
+sections are in the same order as the file <term.h>.
+.PP
+Short integers are signed, in the range \-32768 to 32767.
+They are stored as two 8-bit bytes.
The first byte contains the least significant 8 bits of the value,
and the second byte contains the most significant 8 bits.
(Thus, the value represented is 256*second+first.)
-The value \-1 is represented by the two bytes 0377, 0377; other negative
-values are illegal.
-This value generally
-means that the corresponding capability is missing from this terminal.
-Note that this format corresponds to the hardware of the \s-1VAX\s+1
+This format corresponds to the hardware of the \s-1VAX\s+1
and \s-1PDP\s+1-11 (that is, little-endian machines).
Machines where this does not correspond to the hardware must read the
integers as two bytes and compute the little-endian value.
.PP
-The terminal names section comes next.
+Numbers in a terminal description,
+whether they are entries in the \fInumbers\fP or \fIstrings\fP table,
+are positive integers.
+Boolean flags are treated as positive one-byte integers.
+In each case, those positive integers represent a terminal capability.
+The terminal compiler @TIC@ uses negative integers to handle the cases where
+a capability is not available:
+.bP
+If a capability is absent from this terminal,
+@TIC@ stores a \-1 in the corresponding table.
+.IP
+The integer value \-1 is represented by two bytes 0377, 0377.
+.br
+Absent boolean values are represented by the byte 0 (false).
+.bP
+If a capability has been canceled from this terminal,
+@TIC@ stores a \-2 in the corresponding table.
+.IP
+The integer value \-2 is represented by two bytes 0377, 0376.
+.br
+The boolean value \-2 is represented by the byte 0376.
+.br
+.bP
+Other negative values are illegal.
+.PP
+The \fIterminal names\fP section comes after the \fIheader\fP.
It contains the first line of the terminfo description,
listing the various names for the terminal,
separated by the \*(``|\*('' character.
-The section is terminated with an \s-1ASCII NUL\s+1 character.
+The \fIterminal names\fP section is terminated
+with an \s-1ASCII NUL\s+1 character.
.PP
-The boolean flags have one byte for each flag.
-This byte is either 0 or 1 as the flag is present or absent.
-The capabilities are in the same order as the file <term.h>.
+The \fIboolean flags\fP section has one byte for each flag.
+Boolean capabilities are either 1 or 0 (true or false)
+according to whether the terminal supports the given capability or not.
.PP
-Between the boolean section and the number section,
+Between the \fIboolean flags\fP section and the \fInumber\fP section,
a null byte will be inserted, if necessary,
-to ensure that the number section begins on an even byte (this is a
-relic of the PDP\-11's word-addressed architecture, originally
-designed in to avoid IOT traps induced by addressing a word on an
-odd byte boundary).
+to ensure that the \fInumber\fP section begins on an even byte
+This is a relic of the PDP\-11's word-addressed architecture,
+originally designed to avoid traps induced
+by addressing a word on an odd byte boundary.
All short integers are aligned on a short word boundary.
.PP
-The numbers section is similar to the flags section.
+The \fInumbers\fP section is similar to the \fIboolean flags\fP section.
Each capability takes up two bytes,
and is stored as a little-endian short integer.
-If the value represented is \-1, the capability is taken to be missing.
.PP
-The strings section is also similar.
-Each capability is stored as a short integer, in the format above.
-A value of \-1 means the capability is missing.
-Otherwise, the value is taken as an offset from the beginning
-of the string table.
+The \fIstrings\fP section is also similar.
+Each capability is stored as a short integer.
+The capability value is an index into the \fIstring table\fP.
+.PP
+The \fIstring table\fP is the last section.
+It contains all of the values of string capabilities referenced in
+the \fIstrings\fP section.
+Each string is null-terminated.
Special characters in ^X or \ec notation are stored in their
interpreted form, not the printing representation.
Padding information $<nn> and parameter information %x are
stored intact in uninterpreted form.
-.PP
-The final section is the string table.
-It contains all the values of string capabilities referenced in
-the string section.
-Each string is null terminated.
.SS EXTENDED STORAGE FORMAT
The previous section describes the conventional terminfo binary format.
With some minor variations of the offsets (see PORTABILITY),
@@ -253,7 +286,7 @@ to expect a different set of capabilities
than are actually present in the file.
Either the database may have been updated since
.B setupterm
-has been recompiled
+was recompiled
(resulting in extra unrecognized entries in the file)
or the program may have been recompiled more recently
than the database was updated
@@ -361,8 +394,13 @@ total compiled entries cannot exceed 4096 bytes in the legacy format.
total compiled entries cannot exceed 32768 bytes in the extended format.
.bP
the name field cannot exceed 128 bytes.
+.PP
+Compiled entries are limited to 32768 bytes because offsets into the
+\fIstrings table\fP use two-byte integers.
+The legacy format could have supported 32768-byte entries,
+but was limited a virtual memory page's 4096 bytes.
.SH FILES
-\*d/*/* compiled terminal capability data base
+\*d/*/* compiled terminal capability database
.SH SEE ALSO
\fBcurses\fR(3X), \fBterminfo\fR(\*n).
.SH AUTHORS
diff --git a/man/term.7 b/man/term.7
index fc46b8a..4e66ee7 100644
--- a/man/term.7
+++ b/man/term.7
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2011,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: term.7,v 1.28 2020/02/02 23:34:34 tom Exp $
+.\" $Id: term.7,v 1.30 2021/08/15 19:39:57 tom Exp $
.TH term 7
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -61,7 +61,7 @@ There can be problems if the remote terminfo or termcap entry
for your type is not compatible with yours, but this situation is rare and
can almost always be avoided by explicitly exporting \*(``vt100\*(''
(assuming you are in fact using a VT100-superset console,
-terminal, or terminal emulator.)
+terminal, or terminal emulator).
.PP
In any case, you are free to override the system \fBTERM\fR setting to your
taste in your shell profile.
@@ -213,7 +213,7 @@ should be unique within the first 14 characters.
.SH FILES
.TP 5
\*d/?/*
-compiled terminal capability data base
+compiled terminal capability database
.TP 5
/etc/inittab
tty line initialization (AT&T-like UNIXes)
diff --git a/man/terminfo.head b/man/terminfo.head
index f6a31c8..15be24e 100644
--- a/man/terminfo.head
+++ b/man/terminfo.head
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: terminfo.head,v 1.39 2020/02/02 23:34:34 tom Exp $
+.\" $Id: terminfo.head,v 1.41 2021/08/15 19:32:53 tom Exp $
.TH terminfo 5 "" "" "File Formats"
.ds n 5
.ds d @TERMINFO@
@@ -54,12 +54,12 @@
.el .in -2
..
.SH NAME
-terminfo \- terminal capability data base
+terminfo \- terminal capability database
.SH SYNOPSIS
\*d/*/*
.SH DESCRIPTION
.I Terminfo
-is a data base describing terminals,
+is a database describing terminals,
used by screen-oriented programs such as
\fBnvi\fR(1),
\fBlynx\fR(1),
@@ -83,7 +83,7 @@ Entries in
.I terminfo
consist of a sequence of fields:
.bP
-Each field ends with a comma \*(``,\*(''
+Each field ends with a comma \*(``,\*(''
(embedded commas may be
escaped with a backslash or written as \*(``\\054\*('').
.bP
diff --git a/man/terminfo.tail b/man/terminfo.tail
index f6ccf6b..d3cbbf3 100644
--- a/man/terminfo.tail
+++ b/man/terminfo.tail
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: terminfo.tail,v 1.99 2020/02/02 23:34:34 tom Exp $
+.\" $Id: terminfo.tail,v 1.108 2021/10/09 23:13:23 tom Exp $
.ps +1
.SS User-Defined Capabilities
.
@@ -197,7 +197,7 @@ The reason for this quirk is to maintain binary compatibility of the
compiled terminfo files with other implementations,
e.g., the SVr4 systems, which document this.
Compiled terminfo files use null-terminated strings, with no lengths.
-Modifying this would require a new binary format,
+Modifying this would require a new binary format,
which would not work with other implementations.
.PP
Finally, characters may be given as three octal digits after a \fB\e\fR.
@@ -442,8 +442,8 @@ The parameter mechanism uses a stack and special \fB%\fP codes
to manipulate it.
Typically a sequence will push one of the
parameters onto the stack and then print it in some format.
-Print (e.g., "%d") is a special case.
-Other operations, including "%t" pop their operand from the stack.
+Print (e.g., \*(``%d\*('') is a special case.
+Other operations, including \*(``%t\*('' pop their operand from the stack.
It is noted that more complex operations are often necessary,
e.g., in the \fBsgr\fP string.
.PP
@@ -483,9 +483,39 @@ The terms \*(``static\*('' and \*(``dynamic\*('' are misleading.
Historically, these are simply two different sets of variables,
whose values are not reset between calls to \fBtparm\fP(3X).
However, that fact is not documented in other implementations.
-Relying on it will adversely impact portability to other implementations.
+Relying on it will adversely impact portability to other implementations:
+.RS
+.bP
+SVr2 curses supported \fIdynamic\fP variables.
+Those are set only by a \fB%P\fP operator.
+A \fB%g\fP for a given variable without first setting it with \fB%P\fP
+will give unpredictable results, because dynamic variables are
+an uninitialized local array on the stack in the \fBtparm\fP function.
+.bP
+SVr3.2 curses supported \fIstatic\fP variables.
+Those are an array in the \fBTERMINAL\fP
+structure (declared in \fBterm.h\fP),
+and are zeroed automatically when the \fBsetupterm\fP function
+allocates the data.
+.bP
+SVr4 curses made no further improvements
+to the \fIdynamic/static\fP variable feature.
+.bP
+Solaris XPG4 curses does not distinguish between \fIdynamic\fP and
+\fIstatic\fP variables.
+They are the same.
+Like SVr4 curses, XPG4 curses does not initialize these explicitly.
+.bP
+Before version 6.3, ncurses stores both \fIdynamic\fP and \fIstatic\fP
+variables in persistent storage, initialized to zeros.
+.bP
+Beginning with version 6.3, ncurses stores \fIstatic\fP and \fIdynamic\fP
+variables in the same manner as SVr4.
+Unlike other implementations, ncurses zeros dynamic variables
+before the first \fB%g\fP or \fB%P\fP operator.
+.RE
.TP
-\fB%'\fP\fIc\fP\fB'\fP
+\fB%\(aq\fP\fIc\fP\fB\(aq\fP
char constant \fIc\fP
.TP
\fB%{\fP\fInn\fP\fB}\fP
@@ -533,7 +563,7 @@ on one line.
The \fB\-f\fP option splits the string into lines with the parts indented.
.PP
Binary operations are in postfix form with the operands in the usual order.
-That is, to get x\-5 one would use "%gx%{5}%-".
+That is, to get x\-5 one would use \*(``%gx%{5}%\-\*(''.
\fB%P\fP and \fB%g\fP variables are
persistent across escape-string evaluations.
.PP
@@ -557,7 +587,7 @@ tabs are never expanded, so \et is safe to send.
This turns out to be essential for the Ann Arbor 4080.)
.PP
A final example is the \s-1LSI ADM\s0-3a, which uses row and column
-offset by a blank character, thus \*(``cup=\eE=%p1%' '%+%c%p2%' '%+%c\*(''.
+offset by a blank character, thus \*(``cup=\eE=%p1%\(aq \(aq%+%c%p2%\(aq \(aq%+%c\*(''.
After sending \*(``\eE=\*('', this pushes the first parameter, pushes the
ASCII value for a space (32), adds them (pushing the sum on the stack
in place of the two previous values) and outputs that value as a character.
@@ -617,6 +647,131 @@ If the \fBsmcup\fP sequence will not restore the screen after an
\fBrmcup\fP sequence is output (to the state prior to outputting
\fBrmcup\fP), specify \fBnrrmc\fP.
.PP
+.SS Margins
+SVr4 (and X/Open Curses)
+list several string capabilities for setting margins.
+Two were intended for use with terminals,
+and another six were intended for use with printers.
+.bP
+The two terminal capabilities assume that the terminal may have
+the capability of setting the left and/or right margin at the current
+cursor column position.
+.bP
+The printer capabilities assume that the printer may have
+two types of capability:
+.RS
+.bP
+the ability to set a top and/or bottom margin using the current
+line position, and
+.bP
+parameterized capabilities for setting the top, bottom, left, right margins
+given the number of rows or columns.
+.RE
+.RE
+.PP
+In practice, the categorization into \*(``terminal\*('' and \*(``printer\*(''
+is not suitable:
+.bP
+The AT&T SVr4 terminal database uses \fBsmgl\fP four times,
+for AT&T hardware.
+.IP
+Three of the four are printers.
+They lack the ability to set left/right margins by specifying the column.
+.bP
+Other (non-AT&T) terminals may support margins
+but using different assumptions from AT&T.
+.IP
+For instance, the DEC VT420 supports left/right margins,
+but only using a column parameter.
+As an added complication, the VT420 uses two settings to fully enable
+left/right margins (left/right margin mode, and origin mode).
+The former enables the margins, which causes printed text
+to wrap within margins, but the latter is needed to prevent
+cursor-addressing outside those margins.
+.bP
+Both DEC VT420 left/right margins are set with a single control sequence.
+If either is omitted, the corresponding margin is set to the left or
+right edge of the display (rather than leaving the margin unmodified).
+.PP
+These are the margin-related capabilities:
+.TS
+center;
+l l
+_ _
+lw8 lw18.
+\fBName Description\fP
+smgl Set left margin at current column
+smgr Set right margin at current column
+smgb Set bottom margin at current line
+smgt Set top margin at current line
+smgbp Set bottom margin at line \fIN\fP
+smglp Set left margin at column \fIN\fP
+smgrp Set right margin at column \fIN\fP
+smgtp Set top margin at line \fIN\fP
+smglr Set both left and right margins to \fIL\fP and \fIR\fP
+smgtb Set both top and bottom margins to \fIT\fP and \fIB\fP
+.TE
+.PP
+When writing an application that
+uses these string capabilities,
+the pairs should be first checked to see
+if each capability in the pair is set or only one is set:
+.bP
+If both \fBsmglp\fP and \fBsmgrp\fP are set,
+each is used with a single argument, \fIN\fP,
+that gives the column number of the left and right margin, respectively.
+.bP
+If both \fBsmgtp\fP and \fBsmgbp\fP are set,
+each is used to set the top and bottom margin,
+respectively:
+.RS 4
+.bP
+\fBsmgtp\fP is used with a single argument, \fIN\fP,
+the line number of the top margin.
+.bP
+\fBsmgbp\fP is used with two arguments, \fIN\fP and \fIM\fP,
+that give the line number of the bottom margin,
+the first counting from the top of the
+page and the second counting from the bottom.
+This accommodates the two styles of specifying
+the bottom margin in different manufacturers' printers.
+.RE
+.IP
+When designing a terminfo entry for a
+printer that has a settable bottom margin,
+only the first or second argument should be used, depending on the printer.
+When developing an application that uses \fBsmgbp\fP to set the bottom margin,
+both arguments must be given.
+.PP
+Conversely, when only one capability in the pair is set:
+.bP
+If only one of \fBsmglp\fP and \fBsmgrp\fP is set,
+then it is used with two arguments,
+the column number of the left and right margins, in that order.
+.bP
+Likewise, if only one of \fBsmgtp\fP and \fBsmgbp\fP is set, then it
+is used with two arguments that give the top and bottom margins,
+in that order, counting from the top of the page.
+.IP
+When designing a terminfo entry for a printer that requires setting both
+left and right or top and bottom margins simultaneously,
+only one capability in the pairs
+\fBsmglp\fP and \fBsmgrp\fP or
+\fBsmgtp\fP and \fBsmgbp\fP should be defined,
+leaving the other unset.
+.PP
+Except for very old terminal descriptions, e.g., those developed for SVr4,
+the scheme just described should be considered obsolete.
+An improved set of capabilities was added late in the SVr4 releases
+(\fBsmglr\fP and \fBsmgtb\fP),
+which explicitly use two parameters for setting the left/right or top/bottom
+margins.
+.PP
+When setting margins, the line- and column-values are zero-based.
+.PP
+The \fBmgc\fP string capability should be defined.
+Applications such as \fBtabs\fP(1) rely upon this to reset all margins.
+.\"
.SS Area Clears
.PP
If the terminal can clear from the current position to the end of the
@@ -632,6 +787,7 @@ if a true
.B ed
is not available.)
.PP
+.\"
.SS Insert/delete line and vertical motions
.PP
If the terminal can open a new blank line before the line where the cursor
@@ -1238,7 +1394,7 @@ The \fB@RESET@\fP program writes strings including
.BR iprog ,
etc., in the same order as the
.I init
-program, using
+program, using
.BR rs1 ,
etc., instead of
.BR is1 ,
@@ -1625,7 +1781,7 @@ this can be indicated with the parameterized string
.BR rep .
The first parameter is the character to be repeated and the second
is the number of times to repeat it.
-Thus, tparm(repeat_char, 'x', 10) is the same as \*(``xxxxxxxxxx\*(''.
+Thus, tparm(repeat_char, \(aqx\(aq, 10) is the same as \*(``xxxxxxxxxx\*(''.
.PP
If the terminal has a settable command character, such as the \s-1TEKTRONIX\s+1 4025,
this can be indicated with
@@ -1831,7 +1987,7 @@ binary format) collide with System V and XSI Curses extensions.
.SH EXTENSIONS
.PP
Searching for terminal descriptions in
-\fB$HOME/.terminfo\fR and TERMINFO_DIRS
+\fB$HOME/.terminfo\fR and TERMINFO_DIRS
is not supported by older implementations.
.PP
Some SVr4 \fBcurses\fR implementations, and all previous to SVr4, do not
@@ -1905,15 +2061,15 @@ Supports both the SVr4 set and the AIX extensions.
\*d/?/*
files containing terminal descriptions
.SH SEE ALSO
+\fB@INFOCMP@\fR(1M),
\fB@TABS@\fR(1),
\fB@TIC@\fR(1M),
-\fB@INFOCMP@\fR(1M),
\fBcurses\fR(3X),
\fBcurs_color\fR(3X),
\fBcurs_variables\fR(3X),
\fBprintf\fR(3),
-\fBterm\fR(\*n).
\fBterm_variables\fR(3X).
+\fBterm\fR(\*n).
\fBuser_caps\fR(5).
.SH AUTHORS
Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
diff --git a/man/tic.1m b/man/tic.1m
index f7fe26b..17aa03f 100644
--- a/man/tic.1m
+++ b/man/tic.1m
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tic.1m,v 1.77 2020/02/02 23:34:34 tom Exp $
+.\" $Id: tic.1m,v 1.80 2021/08/15 20:01:19 tom Exp $
.TH @TIC@ 1M ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -279,7 +279,7 @@ Suppress comments and blank lines when showing translated source.
\fB\-R\fR\fIsubset\fR
Restrict output to a given subset.
This option is for use with archaic
-versions of terminfo like those on SVr1, Ultrix, or HP/UX that do not support
+versions of terminfo like those on SVr1, Ultrix, or HP-UX that do not support
the full set of SVR4/XSI Curses terminfo; and outright broken ports like AIX 3.x
that have their own extensions incompatible with SVr4/XSI.
Available subsets
@@ -443,7 +443,7 @@ The exceptions were
.PP
Eric Raymond incorporated parts of \fImytinfo\fP into ncurses
to implement the termcap-to-terminfo source conversion,
-and extended that to begin development of
+and extended that to begin development of
the corresponding terminfo-to-termcap source conversion,
Thomas Dickey completed that development over the course of several years.
.PP
@@ -528,7 +528,7 @@ error messages, and can be parsed by GNU Emacs's compile facility.
.PP
Aside from \fB\-c\fP and \fB\-v\fP, options are not portable:
.bP
-Most of @TIC@'s options
+Most of @TIC@'s options
are not supported by SVr4 \fBtic\fP:
.sp
.RS
@@ -573,8 +573,8 @@ System V does not compile entries to or read entries from your
\fB\*d/?/*\fR
Compiled terminal description database.
.SH SEE ALSO
-\fB@INFOCMP@\fR(1M),
\fB@CAPTOINFO@\fR(1M),
+\fB@INFOCMP@\fR(1M),
\fB@INFOTOCAP@\fR(1M),
\fB@TOE@\fR(1M),
\fBcurses\fR(3X),
diff --git a/man/toe.1m b/man/toe.1m
index e5fa1c6..44d5cdd 100644
--- a/man/toe.1m
+++ b/man/toe.1m
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2019,2020 Thomas E. Dickey *
+.\" Copyright 2019-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: toe.1m,v 1.32 2020/02/02 23:34:34 tom Exp $
+.\" $Id: toe.1m,v 1.34 2021/06/17 21:26:02 tom Exp $
.TH @TOE@ 1M ""
.de bP
.ie n .IP \(bu 4
@@ -78,7 +78,7 @@ rather than only the first one that it finds.
.IP
If the \fB\-s\fR is also given, \fB@TOE@\fR
adds a column to the report,
-showing (like \fBconflict\fP(1)) which entries which
+showing (like \fBconflict\fP(1)) which entries which
belong to a given terminal database.
An "*" marks entries which differ, and "+" marks equivalent entries.
.IP
@@ -168,7 +168,7 @@ Compiled terminal description database.
.SH HISTORY
This utility is not provided by other implementations.
There is no relevant X/Open or POSIX standard for \fB@TOE@\fP.
-.PP
+.PP
The program name refers to a developer's pun:
.bP
\fBtic\fP,
@@ -180,13 +180,13 @@ The program name refers to a developer's pun:
It replaced a \fB\-T\fP option which was briefly supported by
the ncurses \fBinfocmp\fP utility in 1995.
.PP
-The \fB\-a\fP and \fB\-s\fP options were added to
+The \fB\-a\fP and \fB\-s\fP options were added to
\fB@TOE@\fR several years later (2006 and 2011, respectively).
.SH SEE ALSO
-\fB@TIC@\fR(1M),
-\fB@INFOCMP@\fR(1M),
\fB@CAPTOINFO@\fR(1M),
+\fB@INFOCMP@\fR(1M),
\fB@INFOTOCAP@\fR(1M),
+\fB@TIC@\fR(1M),
\fBcurses\fR(3X),
\fBterminfo\fR(\*n).
.PP
diff --git a/man/tput.1 b/man/tput.1
index bc2acaa..0834e44 100644
--- a/man/tput.1
+++ b/man/tput.1
@@ -1,6 +1,6 @@
'\" t
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tput.1,v 1.63 2020/02/02 23:34:34 tom Exp $
+.\" $Id: tput.1,v 1.72 2021/10/02 21:41:00 tom Exp $
.TH @TPUT@ 1 ""
.ds d @TERMINFO@
.ds n 1
@@ -276,7 +276,7 @@ named \fBinit\fP has a more well-established use.
.PP
Besides the special commands (e.g., \fBclear\fP),
@TPUT@ treats certain terminfo capabilities specially:
-\fBlines\fP and \fBcolumns\fP.
+\fBlines\fP and \fBcols\fP.
@TPUT@ calls \fBsetupterm\fP(3X) to obtain the terminal size:
.bP
first, it gets the size from the terminal database
@@ -423,7 +423,7 @@ exit code error message
\fB0\fR T{
(\fIcapname\fR is a numeric variable that is not specified in the
\fBterminfo\fR(5) database for this terminal type, e.g.
-\fB@TPUT@ \-T450 lines\fR and \fB@TPUT@ \-T2621 xmc\fR)
+\fB@TPUT@ \-T450 lines\fR and \fB@TPUT@ \-Thp2621 xmc\fR)
T}
\fB1\fR no error message is printed, see the \fBEXIT CODES\fR section.
\fB2\fR usage error
@@ -436,10 +436,21 @@ T}
The \fBtput\fP command was begun by Bill Joy in 1980.
The initial version only cleared the screen.
.PP
-AT&T System V provided a different \fBtput\fP command,
-whose \fBinit\fP and \fBreset\fP subcommands
+AT&T System V provided a different \fBtput\fP command:
+.bP
+SVr2 provided a rudimentary \fBtput\fP
+which checked the parameter against each
+predefined capability and returned the corresponding value.
+This version of \fBtput\fP did not use \fBtparm\fP(3X) for
+the capabilities which are parameterized.
+.bP
+SVr3 replaced that, a year later, by a more extensive program
+whose \fBinit\fP and \fBreset\fP subcommands
(more than half the program) were incorporated from
the \fBreset\fP feature of BSD \fBtset\fP written by Eric Allman.
+.bP
+SVr4 added color initialization using the \fIorig_colors\fP and
+\fIorig_pairs\fP capabilities in the \fBinit\fP subcommand.
.PP
Keith Bostic replaced the BSD \fBtput\fP command in 1989
with a new implementation
@@ -505,6 +516,15 @@ requiring \fB@TPUT@\fP to know which type to use.
This implementation uses a table to determine the parameter types for
the standard \fIcapname\fR operands, and an internal library
function to analyze nonstandard \fIcapname\fR operands.
+.IP
+Besides providing more reliable operation than AT&T's utility,
+a portability problem is introduced by this analysis:
+An OpenBSD developer adapted the internal library function from ncurses
+to port NetBSD's termcap-based \fBtput\fP to terminfo.
+That had been modified to interpret multiple commands on a line.
+Portable applications should not rely upon this feature;
+ncurses provides it to support applications written
+specifically for OpenBSD.
.PP
This implementation (unlike others) can accept both \fItermcap\fP
and \fIterminfo\fP names for the \fIcapname\fP feature,
@@ -530,7 +550,7 @@ features used in the \fBcup\fR example,
were not supported in BSD curses before 4.3reno (1989) or in
AT&T/USL curses before SVr4 (1988).
.PP
-IEEE Std 1003.1/The Open Group Base Specifications Issue 7 (POSIX.1-2008)
+IEEE Std 1003.1/The Open Group Base Specifications Issue 7 (POSIX.1-2008)
documents only the operands for \fBclear\fP, \fBinit\fP and \fBreset\fP.
There are a few interesting observations to make regarding that:
.bP
@@ -547,6 +567,9 @@ A few platforms such as FreeBSD recognize termcap names rather
than terminfo capability names in their respective \fBtput\fP commands.
Since 2010, NetBSD's \fBtput\fP uses terminfo names.
Before that, it (like FreeBSD) recognized termcap names.
+.IP
+Beginning in 2021, FreeBSD uses the ncurses \fBtput\fP,
+configured for both terminfo (tested first) and termcap (as a fallback).
.PP
Because (apparently) \fIall\fP of the certified Unix systems
support the full set of capability names, the reasoning for documenting
@@ -590,8 +613,8 @@ to either ncurses or X/Open.
\fBstty\fR(1),
\fB@TABS@\fR(\*n),
\fB@TSET@\fR(\*n),
-\fBterminfo\fR(5),
-\fBcurs_termcap\fR(3X).
+\fBcurs_termcap\fR(3X),
+\fBterminfo\fR(5).
.PP
This describes \fBncurses\fR
version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
diff --git a/man/tset.1 b/man/tset.1
index 65b1ef2..063f506 100644
--- a/man/tset.1
+++ b/man/tset.1
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tset.1,v 1.55 2020/02/02 23:34:34 tom Exp $
+.\" $Id: tset.1,v 1.58 2021/09/18 21:21:55 tom Exp $
.TH @TSET@ 1 ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -143,26 +143,26 @@ you may have to type
to work, as carriage-return may no longer work in the abnormal state.
.bP
Also, the terminal will often not echo the command.
-.SH OPTIONS
+.SH OPTIONS
.PP
The options are as follows:
.TP 5
.B \-c
Set control characters and modes.
.TP 5
-.B \-e
+.BI \-e\ ch
Set the erase character to \fIch\fR.
.TP
.B \-I
Do not send the terminal or tab initialization strings to the terminal.
.TP
-.B \-i
+.BI \-i\ ch
Set the interrupt character to \fIch\fR.
.TP
-.B \-k
+.BI \-k\ ch
Set the line kill character to \fIch\fR.
.TP
-.B \-m
+.BI \-m\ mapping
Specify a mapping from a port type to a terminal.
See the section
.B TERMINAL TYPE MAPPING
@@ -284,33 +284,24 @@ and that \fBcsh\fR users insert a backslash character (\*(``\e\*('') before
any exclamation marks (\*(``!\*('').
.SH HISTORY
.PP
-A \fBreset\fP command appeared in 2BSD (April 1979), written by Kurt Shoens.
+A \fBreset\fP command appeared in 1BSD (March 1978), written by Kurt Shoens.
This program set the \fIerase\fP and \fIkill\fP characters
to \fB^H\fP (backspace) and \fB@\fP respectively.
Mark Horton improved that in 3BSD (October 1979), adding
\fIintr\fP, \fIquit\fP, \fIstart\fP/\fIstop\fP and \fIeof\fP characters
as well as changing the program to avoid modifying any user settings.
+That version of \fBreset\fP did not use the termcap database.
.PP
-Later in 4.1BSD (December 1980),
-Mark Horton added a call to the \fBtset\fP program
-using the \fB\-I\fP and \fB\-Q\fP options, i.e.,
-using that to improve the terminal modes.
-With those options,
-that version of \fBreset\fP did not use the termcap database.
-.PP
-A separate \fBtset\fP command was provided in 2BSD by Eric Allman.
-While the oldest published source (from 1979)
-provides both \fBtset\fP and \fBreset\fP,
-Allman's comments in the 2BSD source code indicate
+A separate \fBtset\fP command was provided in 1BSD by Eric Allman,
+using the termcap database.
+Allman's comments in the source code indicate
that he began work in October 1977,
continuing development over the next few years.
.PP
-In September 1980, Eric Allman modified \fBtset\fP,
-adding the code from the existing \*(``reset\*(''
-feature when \fBtset\fP was invoked as \fBreset\fP.
-Rather than simply copying the existing program,
-in this merged version, \fBtset\fP used the termcap database
-to do additional (re)initialization of the terminal.
+According to comments in the source code,
+the \fBtset\fP program was modified in September 1980,
+to use logic copied from the 3BSD \*(``reset\*(''
+when it was invoked as \fBreset\fP.
This version appeared in 4.1cBSD, late in 1982.
.PP
Other developers (e.g., Keith Bostic and Jim Bloom)
diff --git a/man/user_caps.5 b/man/user_caps.5
index 31f4f72..4cc1e16 100644
--- a/man/user_caps.5
+++ b/man/user_caps.5
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
.\" Copyright 2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: user_caps.5,v 1.12 2020/02/02 23:34:34 tom Exp $
+.\" $Id: user_caps.5,v 1.17 2021/06/17 21:30:22 tom Exp $
.TH user_caps 5
.ie \n(.g .ds `` \(lq
.el .ds `` ``
@@ -126,7 +126,7 @@ box characters primary set
The memory lock/unlock capabilities were included because they were used
in the X11R6 terminal description for \fBxterm\fP.
The \fIbox1\fP capability is used in @TIC@ to help with terminal descriptions
-written for AIX.
+written for AIX.
.PP
During the 1990s, some users were reluctant to use terminfo
in spite of its performance advantages over termcap:
@@ -409,16 +409,29 @@ given the list of values,
ask \fBkey_defined\fP(3X) for the \fIkey-code\fP which
would be returned for those keys by \fBwgetch\fP(3X).
.PP
+.\"
.SH PORTABILITY
.PP
The \*(``\-x\*('' extension feature of \fB@TIC@\fP and \fB@INFOCMP@\fP
has been adopted in NetBSD curses.
That implementation stores user-defined capabilities,
but makes no use of these capabilities itself.
+.\"
.SH SEE ALSO
.PP
-\fB@TIC@\fR(1M),
-\fB@INFOCMP@\fR(1M).
+\fB@INFOCMP@\fR(1M),
+\fB@TIC@\fR(1M).
+.PP
+The terminal database section
+.I "NCURSES USER-DEFINABLE CAPABILITIES"
+summarizes commonly-used user-defined capabilities
+which are used in the terminal descriptions.
+Some of those features are mentioned in \fBscreen\fR(1) or \fBtmux\fR(1).
+.PP
+.I "XTerm Control Sequences"
+provides further information on the \fBxterm\fP features
+which are used in these extended capabilities.
+.\"
.SH AUTHORS
.PP
Thomas E. Dickey
diff --git a/man/wresize.3x b/man/wresize.3x
index 8afadda..54c1fc6 100644
--- a/man/wresize.3x
+++ b/man/wresize.3x
@@ -29,14 +29,14 @@
.\"
.\" Author: Thomas E. Dickey 1996
.\"
-.\" $Id: wresize.3x,v 1.16 2020/02/02 23:34:34 tom Exp $
+.\" $Id: wresize.3x,v 1.17 2020/10/17 23:56:38 tom Exp $
.TH wresize 3X ""
.SH NAME
\fBwresize\fR \- resize a curses window
.SH SYNOPSIS
\fB#include <curses.h>\fR
.sp
-\fBint wresize(WINDOW *win, int lines, int columns);\fR
+\fBint wresize(WINDOW *\fP\fIwin\fP\fB, int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
.SH DESCRIPTION
This is an extension to the curses library.
It reallocates storage for an \fBncurses\fR
diff --git a/menu/Makefile.in b/menu/Makefile.in
index 495651c..b623bf0 100644
--- a/menu/Makefile.in
+++ b/menu/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.66 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.71 2021/07/03 15:45:33 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -90,16 +90,18 @@ ETAGS = @ETAGS@
CC = @CC@
CPP = @CPP@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
-CPPFLAGS = -I${top_srcdir}/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
+INCDIR = $(top_srcdir)/include
+BASE_DIR = $(top_srcdir)/ncurses
+CPPFLAGS = -I$(BASE_DIR) -DHAVE_CONFIG_H -DBUILDING_MENU @CPPFLAGS@
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
CFLAGS_LIBTOOL = $(CCFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -134,6 +136,19 @@ AUTO_SRC = \
../include/mf_common.h
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
libs \
install :: $(AUTO_SRC) $(LIBRARIES)
@@ -157,9 +172,22 @@ $(DESTDIR)$(libdir) :
cp $(srcdir)/mf_common.h $@
HEADER_DEPS = \
+ ../include/curses.h \
+ ../include/ncurses_cfg.h \
+ ../include/ncurses_def.h \
+ ../include/ncurses_dll.h \
+ ../include/term.h \
+ ../include/unctrl.h \
+ $(BASE_DIR)/curses.priv.h \
+ $(BASE_DIR)/new_pair.h \
+ $(INCDIR)/nc_alloc.h \
+ $(INCDIR)/nc_panel.h \
+ $(INCDIR)/nc_string.h \
+ $(INCDIR)/nc_termios.h \
+ $(INCDIR)/nc_tparm.h \
+ $(INCDIR)/term_entry.h \
$(srcdir)/menu.priv.h \
- $(AUTO_SRC) \
- ../include/curses.h
+ $(AUTO_SRC)
tags:
$(CTAGS) *.[ch]
diff --git a/menu/READ.ME b/menu/READ.ME
index e790f43..8c78037 100644
--- a/menu/READ.ME
+++ b/menu/READ.ME
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 1998-2003,2006 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: READ.ME,v 1.10 2020/02/02 23:34:34 tom Exp $
+-- $Id: READ.ME,v 1.11 2021/06/17 21:20:30 tom Exp $
-------------------------------------------------------------------------------
This is a clone of the menu library that is available with typical
@@ -37,7 +37,7 @@ a 386 based SVR4 implementation (ESIX).
The development environment was and is an ELF based Linux system.
-For things that still need doing, see the TO-DO file in the top-level
+For things that still need doing, see the TO-DO file in the top-level
directory.
Juergen Pfeifer
diff --git a/menu/llib-lmenu b/menu/llib-lmenu
index 7a5a41b..67f6822 100644
--- a/menu/llib-lmenu
+++ b/menu/llib-lmenu
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#undef set_menu_fore
int set_menu_fore(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -49,7 +49,7 @@ chtype menu_fore(
#undef set_menu_back
int set_menu_back(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -60,7 +60,7 @@ chtype menu_back(
#undef set_menu_grey
int set_menu_grey(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -73,9 +73,9 @@ chtype menu_grey(
#undef _nc_menu_cursor_pos
int _nc_menu_cursor_pos(
- const MENU *menu,
- const ITEM *item,
- int *pY,
+ const MENU *menu,
+ const ITEM *item,
+ int *pY,
int *pX)
{ return(*(int *)0); }
@@ -88,14 +88,14 @@ int pos_menu_cursor(
#undef _nc_Match_Next_Character_In_Item_Name
int _nc_Match_Next_Character_In_Item_Name(
- MENU *menu,
- int ch,
+ MENU *menu,
+ int ch,
ITEM **item)
{ return(*(int *)0); }
#undef menu_driver
int menu_driver(
- MENU *menu,
+ MENU *menu,
int c)
{ return(*(int *)0); }
@@ -103,15 +103,15 @@ int menu_driver(
#undef set_menu_format
int set_menu_format(
- MENU *menu,
- int rows,
+ MENU *menu,
+ int rows,
int cols)
{ return(*(int *)0); }
#undef menu_format
void menu_format(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ /* void */ }
@@ -124,7 +124,7 @@ ITEM _nc_Default_Item;
#undef _nc_Connect_Items
NCURSES_BOOL _nc_Connect_Items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(NCURSES_BOOL *)0); }
@@ -155,8 +155,8 @@ void _nc_Show_Menu(
#undef _nc_New_TopRow_and_CurrentItem
void _nc_New_TopRow_and_CurrentItem(
- MENU *menu,
- int new_toprow,
+ MENU *menu,
+ int new_toprow,
ITEM *new_current_item)
{ /* void */ }
@@ -164,7 +164,7 @@ void _nc_New_TopRow_and_CurrentItem(
#undef set_menu_init
int set_menu_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -175,7 +175,7 @@ Menu_Hook menu_init(
#undef set_menu_term
int set_menu_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -186,7 +186,7 @@ Menu_Hook menu_term(
#undef set_item_init
int set_item_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -197,7 +197,7 @@ Menu_Hook item_init(
#undef set_item_term
int set_item_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -210,7 +210,7 @@ Menu_Hook item_term(
#undef set_current_item
int set_current_item(
- MENU *menu,
+ MENU *menu,
ITEM *item)
{ return(*(int *)0); }
@@ -240,7 +240,7 @@ const char *item_description(
#undef new_item
ITEM *new_item(
- const char *name,
+ const char *name,
const char *description)
{ return(*(ITEM **)0); }
@@ -251,7 +251,7 @@ int free_item(
#undef set_menu_mark
int set_menu_mark(
- MENU *menu,
+ MENU *menu,
const char *mark)
{ return(*(int *)0); }
@@ -264,19 +264,19 @@ const char *menu_mark(
#undef set_item_opts
int set_item_opts(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_off
int item_opts_off(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_on
int item_opts_on(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
@@ -289,7 +289,7 @@ Item_Options item_opts(
#undef set_top_row
int set_top_row(
- MENU *menu,
+ MENU *menu,
int row)
{ return(*(int *)0); }
@@ -302,7 +302,7 @@ int top_row(
#undef set_item_userptr
int set_item_userptr(
- ITEM *item,
+ ITEM *item,
void *userptr)
{ return(*(int *)0); }
@@ -315,7 +315,7 @@ void *item_userptr(
#undef set_item_value
int set_item_value(
- ITEM *item,
+ ITEM *item,
NCURSES_BOOL value)
{ return(*(int *)0); }
@@ -335,7 +335,7 @@ NCURSES_BOOL item_visible(
#undef set_menu_items
int set_menu_items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(int *)0); }
@@ -353,7 +353,7 @@ int item_count(
#undef new_menu_sp
MENU *new_menu_sp(
- SCREEN *sp,
+ SCREEN *sp,
ITEM **items)
{ return(*(MENU **)0); }
@@ -371,19 +371,19 @@ int free_menu(
#undef set_menu_opts
int set_menu_opts(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_off
int menu_opts_off(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_on
int menu_opts_on(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
@@ -396,7 +396,7 @@ Menu_Options menu_opts(
#undef set_menu_pad
int set_menu_pad(
- MENU *menu,
+ MENU *menu,
int pad)
{ return(*(int *)0); }
@@ -414,7 +414,7 @@ char *menu_pattern(
#undef set_menu_pattern
int set_menu_pattern(
- MENU *menu,
+ MENU *menu,
const char *p)
{ return(*(int *)0); }
@@ -422,7 +422,7 @@ int set_menu_pattern(
#undef _nc_Post_Item
void _nc_Post_Item(
- const MENU *menu,
+ const MENU *menu,
const ITEM *item)
{ /* void */ }
@@ -457,8 +457,8 @@ int menu_request_by_name(
#undef scale_menu
int scale_menu(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -466,17 +466,17 @@ int scale_menu(
#undef set_menu_spacing
int set_menu_spacing(
- MENU *menu,
- int s_desc,
- int s_row,
+ MENU *menu,
+ int s_desc,
+ int s_row,
int s_col)
{ return(*(int *)0); }
#undef menu_spacing
int menu_spacing(
- const MENU *menu,
- int *s_desc,
- int *s_row,
+ const MENU *menu,
+ int *s_desc,
+ int *s_row,
int *s_col)
{ return(*(int *)0); }
@@ -484,7 +484,7 @@ int menu_spacing(
#undef set_menu_sub
int set_menu_sub(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
@@ -529,7 +529,7 @@ Menu_Options _nc_retrace_menu_opts(
#undef set_menu_userptr
int set_menu_userptr(
- MENU *menu,
+ MENU *menu,
void *userptr)
{ return(*(int *)0); }
@@ -542,7 +542,7 @@ void *menu_userptr(
#undef set_menu_win
int set_menu_win(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
diff --git a/menu/llib-lmenut b/menu/llib-lmenut
index 1d348c0..0a0d059 100644
--- a/menu/llib-lmenut
+++ b/menu/llib-lmenut
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#undef set_menu_fore
int set_menu_fore(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -49,7 +49,7 @@ chtype menu_fore(
#undef set_menu_back
int set_menu_back(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -60,7 +60,7 @@ chtype menu_back(
#undef set_menu_grey
int set_menu_grey(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -73,9 +73,9 @@ chtype menu_grey(
#undef _nc_menu_cursor_pos
int _nc_menu_cursor_pos(
- const MENU *menu,
- const ITEM *item,
- int *pY,
+ const MENU *menu,
+ const ITEM *item,
+ int *pY,
int *pX)
{ return(*(int *)0); }
@@ -88,14 +88,14 @@ int pos_menu_cursor(
#undef _nc_Match_Next_Character_In_Item_Name
int _nc_Match_Next_Character_In_Item_Name(
- MENU *menu,
- int ch,
+ MENU *menu,
+ int ch,
ITEM **item)
{ return(*(int *)0); }
#undef menu_driver
int menu_driver(
- MENU *menu,
+ MENU *menu,
int c)
{ return(*(int *)0); }
@@ -103,15 +103,15 @@ int menu_driver(
#undef set_menu_format
int set_menu_format(
- MENU *menu,
- int rows,
+ MENU *menu,
+ int rows,
int cols)
{ return(*(int *)0); }
#undef menu_format
void menu_format(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ /* void */ }
@@ -124,7 +124,7 @@ ITEM _nc_Default_Item;
#undef _nc_Connect_Items
NCURSES_BOOL _nc_Connect_Items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(NCURSES_BOOL *)0); }
@@ -155,8 +155,8 @@ void _nc_Show_Menu(
#undef _nc_New_TopRow_and_CurrentItem
void _nc_New_TopRow_and_CurrentItem(
- MENU *menu,
- int new_toprow,
+ MENU *menu,
+ int new_toprow,
ITEM *new_current_item)
{ /* void */ }
@@ -164,7 +164,7 @@ void _nc_New_TopRow_and_CurrentItem(
#undef set_menu_init
int set_menu_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -175,7 +175,7 @@ Menu_Hook menu_init(
#undef set_menu_term
int set_menu_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -186,7 +186,7 @@ Menu_Hook menu_term(
#undef set_item_init
int set_item_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -197,7 +197,7 @@ Menu_Hook item_init(
#undef set_item_term
int set_item_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -210,7 +210,7 @@ Menu_Hook item_term(
#undef set_current_item
int set_current_item(
- MENU *menu,
+ MENU *menu,
ITEM *item)
{ return(*(int *)0); }
@@ -240,7 +240,7 @@ const char *item_description(
#undef new_item
ITEM *new_item(
- const char *name,
+ const char *name,
const char *description)
{ return(*(ITEM **)0); }
@@ -251,7 +251,7 @@ int free_item(
#undef set_menu_mark
int set_menu_mark(
- MENU *menu,
+ MENU *menu,
const char *mark)
{ return(*(int *)0); }
@@ -264,19 +264,19 @@ const char *menu_mark(
#undef set_item_opts
int set_item_opts(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_off
int item_opts_off(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_on
int item_opts_on(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
@@ -289,7 +289,7 @@ Item_Options item_opts(
#undef set_top_row
int set_top_row(
- MENU *menu,
+ MENU *menu,
int row)
{ return(*(int *)0); }
@@ -302,7 +302,7 @@ int top_row(
#undef set_item_userptr
int set_item_userptr(
- ITEM *item,
+ ITEM *item,
void *userptr)
{ return(*(int *)0); }
@@ -315,7 +315,7 @@ void *item_userptr(
#undef set_item_value
int set_item_value(
- ITEM *item,
+ ITEM *item,
NCURSES_BOOL value)
{ return(*(int *)0); }
@@ -335,7 +335,7 @@ NCURSES_BOOL item_visible(
#undef set_menu_items
int set_menu_items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(int *)0); }
@@ -353,7 +353,7 @@ int item_count(
#undef new_menu_sp
MENU *new_menu_sp(
- SCREEN *sp,
+ SCREEN *sp,
ITEM **items)
{ return(*(MENU **)0); }
@@ -371,19 +371,19 @@ int free_menu(
#undef set_menu_opts
int set_menu_opts(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_off
int menu_opts_off(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_on
int menu_opts_on(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
@@ -396,7 +396,7 @@ Menu_Options menu_opts(
#undef set_menu_pad
int set_menu_pad(
- MENU *menu,
+ MENU *menu,
int pad)
{ return(*(int *)0); }
@@ -414,7 +414,7 @@ char *menu_pattern(
#undef set_menu_pattern
int set_menu_pattern(
- MENU *menu,
+ MENU *menu,
const char *p)
{ return(*(int *)0); }
@@ -422,7 +422,7 @@ int set_menu_pattern(
#undef _nc_Post_Item
void _nc_Post_Item(
- const MENU *menu,
+ const MENU *menu,
const ITEM *item)
{ /* void */ }
@@ -457,8 +457,8 @@ int menu_request_by_name(
#undef scale_menu
int scale_menu(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -466,17 +466,17 @@ int scale_menu(
#undef set_menu_spacing
int set_menu_spacing(
- MENU *menu,
- int s_desc,
- int s_row,
+ MENU *menu,
+ int s_desc,
+ int s_row,
int s_col)
{ return(*(int *)0); }
#undef menu_spacing
int menu_spacing(
- const MENU *menu,
- int *s_desc,
- int *s_row,
+ const MENU *menu,
+ int *s_desc,
+ int *s_row,
int *s_col)
{ return(*(int *)0); }
@@ -484,7 +484,7 @@ int menu_spacing(
#undef set_menu_sub
int set_menu_sub(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
@@ -529,7 +529,7 @@ Menu_Options _nc_retrace_menu_opts(
#undef set_menu_userptr
int set_menu_userptr(
- MENU *menu,
+ MENU *menu,
void *userptr)
{ return(*(int *)0); }
@@ -542,7 +542,7 @@ void *menu_userptr(
#undef set_menu_win
int set_menu_win(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
diff --git a/menu/llib-lmenutw b/menu/llib-lmenutw
index 1d348c0..0a0d059 100644
--- a/menu/llib-lmenutw
+++ b/menu/llib-lmenutw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#undef set_menu_fore
int set_menu_fore(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -49,7 +49,7 @@ chtype menu_fore(
#undef set_menu_back
int set_menu_back(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -60,7 +60,7 @@ chtype menu_back(
#undef set_menu_grey
int set_menu_grey(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -73,9 +73,9 @@ chtype menu_grey(
#undef _nc_menu_cursor_pos
int _nc_menu_cursor_pos(
- const MENU *menu,
- const ITEM *item,
- int *pY,
+ const MENU *menu,
+ const ITEM *item,
+ int *pY,
int *pX)
{ return(*(int *)0); }
@@ -88,14 +88,14 @@ int pos_menu_cursor(
#undef _nc_Match_Next_Character_In_Item_Name
int _nc_Match_Next_Character_In_Item_Name(
- MENU *menu,
- int ch,
+ MENU *menu,
+ int ch,
ITEM **item)
{ return(*(int *)0); }
#undef menu_driver
int menu_driver(
- MENU *menu,
+ MENU *menu,
int c)
{ return(*(int *)0); }
@@ -103,15 +103,15 @@ int menu_driver(
#undef set_menu_format
int set_menu_format(
- MENU *menu,
- int rows,
+ MENU *menu,
+ int rows,
int cols)
{ return(*(int *)0); }
#undef menu_format
void menu_format(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ /* void */ }
@@ -124,7 +124,7 @@ ITEM _nc_Default_Item;
#undef _nc_Connect_Items
NCURSES_BOOL _nc_Connect_Items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(NCURSES_BOOL *)0); }
@@ -155,8 +155,8 @@ void _nc_Show_Menu(
#undef _nc_New_TopRow_and_CurrentItem
void _nc_New_TopRow_and_CurrentItem(
- MENU *menu,
- int new_toprow,
+ MENU *menu,
+ int new_toprow,
ITEM *new_current_item)
{ /* void */ }
@@ -164,7 +164,7 @@ void _nc_New_TopRow_and_CurrentItem(
#undef set_menu_init
int set_menu_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -175,7 +175,7 @@ Menu_Hook menu_init(
#undef set_menu_term
int set_menu_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -186,7 +186,7 @@ Menu_Hook menu_term(
#undef set_item_init
int set_item_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -197,7 +197,7 @@ Menu_Hook item_init(
#undef set_item_term
int set_item_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -210,7 +210,7 @@ Menu_Hook item_term(
#undef set_current_item
int set_current_item(
- MENU *menu,
+ MENU *menu,
ITEM *item)
{ return(*(int *)0); }
@@ -240,7 +240,7 @@ const char *item_description(
#undef new_item
ITEM *new_item(
- const char *name,
+ const char *name,
const char *description)
{ return(*(ITEM **)0); }
@@ -251,7 +251,7 @@ int free_item(
#undef set_menu_mark
int set_menu_mark(
- MENU *menu,
+ MENU *menu,
const char *mark)
{ return(*(int *)0); }
@@ -264,19 +264,19 @@ const char *menu_mark(
#undef set_item_opts
int set_item_opts(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_off
int item_opts_off(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_on
int item_opts_on(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
@@ -289,7 +289,7 @@ Item_Options item_opts(
#undef set_top_row
int set_top_row(
- MENU *menu,
+ MENU *menu,
int row)
{ return(*(int *)0); }
@@ -302,7 +302,7 @@ int top_row(
#undef set_item_userptr
int set_item_userptr(
- ITEM *item,
+ ITEM *item,
void *userptr)
{ return(*(int *)0); }
@@ -315,7 +315,7 @@ void *item_userptr(
#undef set_item_value
int set_item_value(
- ITEM *item,
+ ITEM *item,
NCURSES_BOOL value)
{ return(*(int *)0); }
@@ -335,7 +335,7 @@ NCURSES_BOOL item_visible(
#undef set_menu_items
int set_menu_items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(int *)0); }
@@ -353,7 +353,7 @@ int item_count(
#undef new_menu_sp
MENU *new_menu_sp(
- SCREEN *sp,
+ SCREEN *sp,
ITEM **items)
{ return(*(MENU **)0); }
@@ -371,19 +371,19 @@ int free_menu(
#undef set_menu_opts
int set_menu_opts(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_off
int menu_opts_off(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_on
int menu_opts_on(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
@@ -396,7 +396,7 @@ Menu_Options menu_opts(
#undef set_menu_pad
int set_menu_pad(
- MENU *menu,
+ MENU *menu,
int pad)
{ return(*(int *)0); }
@@ -414,7 +414,7 @@ char *menu_pattern(
#undef set_menu_pattern
int set_menu_pattern(
- MENU *menu,
+ MENU *menu,
const char *p)
{ return(*(int *)0); }
@@ -422,7 +422,7 @@ int set_menu_pattern(
#undef _nc_Post_Item
void _nc_Post_Item(
- const MENU *menu,
+ const MENU *menu,
const ITEM *item)
{ /* void */ }
@@ -457,8 +457,8 @@ int menu_request_by_name(
#undef scale_menu
int scale_menu(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -466,17 +466,17 @@ int scale_menu(
#undef set_menu_spacing
int set_menu_spacing(
- MENU *menu,
- int s_desc,
- int s_row,
+ MENU *menu,
+ int s_desc,
+ int s_row,
int s_col)
{ return(*(int *)0); }
#undef menu_spacing
int menu_spacing(
- const MENU *menu,
- int *s_desc,
- int *s_row,
+ const MENU *menu,
+ int *s_desc,
+ int *s_row,
int *s_col)
{ return(*(int *)0); }
@@ -484,7 +484,7 @@ int menu_spacing(
#undef set_menu_sub
int set_menu_sub(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
@@ -529,7 +529,7 @@ Menu_Options _nc_retrace_menu_opts(
#undef set_menu_userptr
int set_menu_userptr(
- MENU *menu,
+ MENU *menu,
void *userptr)
{ return(*(int *)0); }
@@ -542,7 +542,7 @@ void *menu_userptr(
#undef set_menu_win
int set_menu_win(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
diff --git a/menu/llib-lmenuw b/menu/llib-lmenuw
index 6ad9614..d5566d4 100644
--- a/menu/llib-lmenuw
+++ b/menu/llib-lmenuw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2002-2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#undef set_menu_fore
int set_menu_fore(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -49,7 +49,7 @@ chtype menu_fore(
#undef set_menu_back
int set_menu_back(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -60,7 +60,7 @@ chtype menu_back(
#undef set_menu_grey
int set_menu_grey(
- MENU *menu,
+ MENU *menu,
chtype attr)
{ return(*(int *)0); }
@@ -73,9 +73,9 @@ chtype menu_grey(
#undef _nc_menu_cursor_pos
int _nc_menu_cursor_pos(
- const MENU *menu,
- const ITEM *item,
- int *pY,
+ const MENU *menu,
+ const ITEM *item,
+ int *pY,
int *pX)
{ return(*(int *)0); }
@@ -88,14 +88,14 @@ int pos_menu_cursor(
#undef _nc_Match_Next_Character_In_Item_Name
int _nc_Match_Next_Character_In_Item_Name(
- MENU *menu,
- int ch,
+ MENU *menu,
+ int ch,
ITEM **item)
{ return(*(int *)0); }
#undef menu_driver
int menu_driver(
- MENU *menu,
+ MENU *menu,
int c)
{ return(*(int *)0); }
@@ -103,15 +103,15 @@ int menu_driver(
#undef set_menu_format
int set_menu_format(
- MENU *menu,
- int rows,
+ MENU *menu,
+ int rows,
int cols)
{ return(*(int *)0); }
#undef menu_format
void menu_format(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ /* void */ }
@@ -124,7 +124,7 @@ ITEM _nc_Default_Item;
#undef _nc_Connect_Items
NCURSES_BOOL _nc_Connect_Items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(NCURSES_BOOL *)0); }
@@ -155,8 +155,8 @@ void _nc_Show_Menu(
#undef _nc_New_TopRow_and_CurrentItem
void _nc_New_TopRow_and_CurrentItem(
- MENU *menu,
- int new_toprow,
+ MENU *menu,
+ int new_toprow,
ITEM *new_current_item)
{ /* void */ }
@@ -164,7 +164,7 @@ void _nc_New_TopRow_and_CurrentItem(
#undef set_menu_init
int set_menu_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -175,7 +175,7 @@ Menu_Hook menu_init(
#undef set_menu_term
int set_menu_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -186,7 +186,7 @@ Menu_Hook menu_term(
#undef set_item_init
int set_item_init(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -197,7 +197,7 @@ Menu_Hook item_init(
#undef set_item_term
int set_item_term(
- MENU *menu,
+ MENU *menu,
Menu_Hook func)
{ return(*(int *)0); }
@@ -210,7 +210,7 @@ Menu_Hook item_term(
#undef set_current_item
int set_current_item(
- MENU *menu,
+ MENU *menu,
ITEM *item)
{ return(*(int *)0); }
@@ -240,7 +240,7 @@ const char *item_description(
#undef new_item
ITEM *new_item(
- const char *name,
+ const char *name,
const char *description)
{ return(*(ITEM **)0); }
@@ -251,7 +251,7 @@ int free_item(
#undef set_menu_mark
int set_menu_mark(
- MENU *menu,
+ MENU *menu,
const char *mark)
{ return(*(int *)0); }
@@ -264,19 +264,19 @@ const char *menu_mark(
#undef set_item_opts
int set_item_opts(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_off
int item_opts_off(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
#undef item_opts_on
int item_opts_on(
- ITEM *item,
+ ITEM *item,
Item_Options opts)
{ return(*(int *)0); }
@@ -289,7 +289,7 @@ Item_Options item_opts(
#undef set_top_row
int set_top_row(
- MENU *menu,
+ MENU *menu,
int row)
{ return(*(int *)0); }
@@ -302,7 +302,7 @@ int top_row(
#undef set_item_userptr
int set_item_userptr(
- ITEM *item,
+ ITEM *item,
void *userptr)
{ return(*(int *)0); }
@@ -315,7 +315,7 @@ void *item_userptr(
#undef set_item_value
int set_item_value(
- ITEM *item,
+ ITEM *item,
NCURSES_BOOL value)
{ return(*(int *)0); }
@@ -335,7 +335,7 @@ NCURSES_BOOL item_visible(
#undef set_menu_items
int set_menu_items(
- MENU *menu,
+ MENU *menu,
ITEM **items)
{ return(*(int *)0); }
@@ -353,7 +353,7 @@ int item_count(
#undef new_menu_sp
MENU *new_menu_sp(
- SCREEN *sp,
+ SCREEN *sp,
ITEM **items)
{ return(*(MENU **)0); }
@@ -371,19 +371,19 @@ int free_menu(
#undef set_menu_opts
int set_menu_opts(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_off
int menu_opts_off(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
#undef menu_opts_on
int menu_opts_on(
- MENU *menu,
+ MENU *menu,
Menu_Options opts)
{ return(*(int *)0); }
@@ -396,7 +396,7 @@ Menu_Options menu_opts(
#undef set_menu_pad
int set_menu_pad(
- MENU *menu,
+ MENU *menu,
int pad)
{ return(*(int *)0); }
@@ -414,7 +414,7 @@ char *menu_pattern(
#undef set_menu_pattern
int set_menu_pattern(
- MENU *menu,
+ MENU *menu,
const char *p)
{ return(*(int *)0); }
@@ -422,7 +422,7 @@ int set_menu_pattern(
#undef _nc_Post_Item
void _nc_Post_Item(
- const MENU *menu,
+ const MENU *menu,
const ITEM *item)
{ /* void */ }
@@ -457,8 +457,8 @@ int menu_request_by_name(
#undef scale_menu
int scale_menu(
- const MENU *menu,
- int *rows,
+ const MENU *menu,
+ int *rows,
int *cols)
{ return(*(int *)0); }
@@ -466,17 +466,17 @@ int scale_menu(
#undef set_menu_spacing
int set_menu_spacing(
- MENU *menu,
- int s_desc,
- int s_row,
+ MENU *menu,
+ int s_desc,
+ int s_row,
int s_col)
{ return(*(int *)0); }
#undef menu_spacing
int menu_spacing(
- const MENU *menu,
- int *s_desc,
- int *s_row,
+ const MENU *menu,
+ int *s_desc,
+ int *s_row,
int *s_col)
{ return(*(int *)0); }
@@ -484,7 +484,7 @@ int menu_spacing(
#undef set_menu_sub
int set_menu_sub(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
@@ -529,7 +529,7 @@ Menu_Options _nc_retrace_menu_opts(
#undef set_menu_userptr
int set_menu_userptr(
- MENU *menu,
+ MENU *menu,
void *userptr)
{ return(*(int *)0); }
@@ -542,7 +542,7 @@ void *menu_userptr(
#undef set_menu_win
int set_menu_win(
- MENU *menu,
+ MENU *menu,
WINDOW *win)
{ return(*(int *)0); }
diff --git a/menu/m_attribs.c b/menu/m_attribs.c
index e3c88ac..a9275d0 100644
--- a/menu/m_attribs.c
+++ b/menu/m_attribs.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_attribs.c,v 1.18 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_attribs.c,v 1.20 2021/06/17 21:20:30 tom Exp $")
/* Macro to redraw menu if it is posted and changed */
#define Refresh_Menu(menu) \
@@ -50,7 +50,7 @@ MODULE_ID("$Id: m_attribs.c,v 1.18 2020/02/02 23:34:34 tom Exp $")
/* "Template" macro to generate a function to set a menus attribute */
#define GEN_MENU_ATTR_SET_FCT( name ) \
-NCURSES_IMPEXP int NCURSES_API set_menu_ ## name (MENU* menu, chtype attr) \
+MENU_EXPORT(int) NCURSES_API set_menu_ ## name (MENU* menu, chtype attr) \
{\
T((T_CALLED("set_menu_" #name "(%p,%s)"), (void *) menu, _traceattr(attr))); \
if (!(attr==A_NORMAL || (attr & A_ATTRIBUTES)==attr))\
@@ -66,76 +66,76 @@ NCURSES_IMPEXP int NCURSES_API set_menu_ ## name (MENU* menu, chtype attr) \
/* "Template" macro to generate a function to get a menu's attribute */
#define GEN_MENU_ATTR_GET_FCT( name ) \
-NCURSES_IMPEXP chtype NCURSES_API menu_ ## name (const MENU * menu)\
+MENU_EXPORT(chtype) NCURSES_API menu_ ## name (const MENU * menu)\
{\
T((T_CALLED("menu_" #name "(%p)"), (const void *) menu));\
returnAttr(Normalize_Menu( menu ) -> name);\
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_fore(MENU *menu, chtype attr)
-|
+|
| Description : Set the attribute for selectable items. In single-
| valued menus this is used to highlight the current
| item ((i.e. where the cursor is), in multi-valued
| menus this is used to highlight the selected items.
|
| Return Values : E_OK - success
-| E_BAD_ARGUMENT - an invalid value has been passed
+| E_BAD_ARGUMENT - an invalid value has been passed
+--------------------------------------------------------------------------*/
GEN_MENU_ATTR_SET_FCT(fore)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : chtype menu_fore(const MENU* menu)
-|
+|
| Description : Return the attribute used for selectable items that
| are current (single-valued menu) or selected (multi-
-| valued menu).
+| valued menu).
|
| Return Values : Attribute value
+--------------------------------------------------------------------------*/
GEN_MENU_ATTR_GET_FCT(fore)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_back(MENU *menu, chtype attr)
-|
+|
| Description : Set the attribute for selectable but not yet selected
| items.
|
-| Return Values : E_OK - success
+| Return Values : E_OK - success
| E_BAD_ARGUMENT - an invalid value has been passed
+--------------------------------------------------------------------------*/
GEN_MENU_ATTR_SET_FCT(back)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : chtype menu_back(const MENU *menu)
-|
+|
| Description : Return the attribute used for selectable but not yet
-| selected items.
+| selected items.
|
| Return Values : Attribute value
+--------------------------------------------------------------------------*/
GEN_MENU_ATTR_GET_FCT(back)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_grey(MENU *menu, chtype attr)
-|
+|
| Description : Set the attribute for unselectable items.
|
| Return Values : E_OK - success
-| E_BAD_ARGUMENT - an invalid value has been passed
+| E_BAD_ARGUMENT - an invalid value has been passed
+--------------------------------------------------------------------------*/
GEN_MENU_ATTR_SET_FCT(grey)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : chtype menu_grey(const MENU *menu)
-|
+|
| Description : Return the attribute used for non-selectable items
|
| Return Values : Attribute value
diff --git a/menu/m_cursor.c b/menu/m_cursor.c
index 3f8e548..b9b301d 100644
--- a/menu/m_cursor.c
+++ b/menu/m_cursor.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_cursor.c,v 1.23 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_cursor.c,v 1.26 2021/03/27 23:46:29 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnmenu
@@ -50,16 +50,16 @@ MODULE_ID("$Id: m_cursor.c,v 1.23 2020/02/02 23:34:34 tom Exp $")
| E_BAD_ARGUMENT - invalid menu
| E_NOT_POSTED - Menu is not posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-_nc_menu_cursor_pos(const MENU * menu, const ITEM * item, int *pY, int *pX)
+MENU_EXPORT(int)
+_nc_menu_cursor_pos(const MENU *menu, const ITEM *item, int *pY, int *pX)
{
if (!menu || !pX || !pY)
return (E_BAD_ARGUMENT);
else
{
- if ((ITEM *) 0 == item)
+ if ((ITEM *)0 == item)
item = menu->curitem;
- assert(item != (ITEM *) 0);
+ assert(item != (ITEM *)0);
if (!(menu->status & _POSTED))
return (E_NOT_POSTED);
@@ -80,19 +80,19 @@ _nc_menu_cursor_pos(const MENU * menu, const ITEM * item, int *pY, int *pX)
| E_BAD_ARGUMENT - invalid menu
| E_NOT_POSTED - Menu is not posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-pos_menu_cursor(const MENU * menu)
+MENU_EXPORT(int)
+pos_menu_cursor(const MENU *menu)
{
- WINDOW *win, *sub;
int x = 0, y = 0;
- int err = _nc_menu_cursor_pos(menu, (ITEM *) 0, &y, &x);
+ int err = _nc_menu_cursor_pos(menu, (ITEM *)0, &y, &x);
T((T_CALLED("pos_menu_cursor(%p)"), (const void *)menu));
if (E_OK == err)
{
- win = Get_Menu_UserWin(menu);
- sub = menu->usersub ? menu->usersub : win;
+ WINDOW *win = Get_Menu_UserWin(menu);
+ WINDOW *sub = menu->usersub ? menu->usersub : win;
+
assert(win && sub);
if ((menu->opt & O_SHOWMATCH) && (menu->pindex > 0))
diff --git a/menu/m_driver.c b/menu/m_driver.c
index e592bab..cf2ef2f 100644
--- a/menu/m_driver.c
+++ b/menu/m_driver.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_driver.c,v 1.34 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_driver.c,v 1.37 2021/03/27 23:46:29 tom Exp $")
/* Macros */
@@ -115,9 +115,9 @@ Is_Sub_String(
| Return Values : E_OK - an item matching the pattern was found
| E_NO_MATCH - nothing found
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+MENU_EXPORT(int)
_nc_Match_Next_Character_In_Item_Name
-(MENU * menu, int ch, ITEM ** item)
+(MENU *menu, int ch, ITEM **item)
{
bool found = FALSE, passed = FALSE;
int idx, last;
@@ -209,8 +209,8 @@ _nc_Match_Next_Character_In_Item_Name
| E_BAD_STATE - menu is in user hook routine
| E_NOT_POSTED - menu is not posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-menu_driver(MENU * menu, int c)
+MENU_EXPORT(int)
+menu_driver(MENU *menu, int c)
{
#define NAVIGATE(dir) \
if (!item->dir)\
@@ -220,7 +220,7 @@ menu_driver(MENU * menu, int c)
int result = E_OK;
ITEM *item;
- int my_top_row, rdiff;
+ int my_top_row;
T((T_CALLED("menu_driver(%p,%d)"), (void *)menu, c));
@@ -239,6 +239,8 @@ menu_driver(MENU * menu, int c)
if ((c > KEY_MAX) && (c <= MAX_MENU_COMMAND))
{
+ int rdiff;
+
if (!((c == REQ_BACK_PATTERN)
|| (c == REQ_NEXT_MATCH) || (c == REQ_PREV_MATCH)))
{
@@ -489,16 +491,20 @@ menu_driver(MENU * menu, int c)
}
else if (wenclose(sub, event.y, event.x))
{ /* Inside the area we try to find the hit item */
- int i, x, y, err;
+ int x, y;
ry = event.y;
rx = event.x;
if (wmouse_trafo(sub, &ry, &rx, FALSE))
{
+ int i;
+
for (i = 0; i < menu->nitems; i++)
{
- err = _nc_menu_cursor_pos(menu, menu->items[i],
- &y, &x);
+ int err = _nc_menu_cursor_pos(menu,
+ menu->items[i],
+ &y, &x);
+
if (E_OK == err)
{
if ((ry == y) &&
diff --git a/menu/m_format.c b/menu/m_format.c
index 9738dbf..65adfc6 100644
--- a/menu/m_format.c
+++ b/menu/m_format.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_format.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_format.c,v 1.22 2021/03/27 23:46:29 tom Exp $")
#define minimum(a,b) ((a)<(b) ? (a): (b))
@@ -56,10 +56,9 @@ MODULE_ID("$Id: m_format.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
| E_NOT_CONNECTED - there are no items connected
| E_POSTED - the menu is already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_format(MENU * menu, int rows, int cols)
+MENU_EXPORT(int)
+set_menu_format(MENU *menu, int rows, int cols)
{
- int total_rows, total_cols;
T((T_CALLED("set_menu_format(%p,%d,%d)"), (void *)menu, rows, cols));
@@ -68,6 +67,8 @@ set_menu_format(MENU * menu, int rows, int cols)
if (menu)
{
+ int total_rows, total_cols;
+
if (menu->status & _POSTED)
RETURN(E_POSTED);
@@ -120,8 +121,8 @@ set_menu_format(MENU * menu, int rows, int cols)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
-menu_format(const MENU * menu, int *rows, int *cols)
+MENU_EXPORT(void)
+menu_format(const MENU *menu, int *rows, int *cols)
{
if (rows)
*rows = Normalize_Menu(menu)->frows;
diff --git a/menu/m_global.c b/menu/m_global.c
index 489987f..4ec08c5 100644
--- a/menu/m_global.c
+++ b/menu/m_global.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,11 +38,11 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_global.c,v 1.30 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_global.c,v 1.33 2021/03/27 23:46:29 tom Exp $")
static char mark[] = "-";
/* *INDENT-OFF* */
-NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = {
+MENU_EXPORT_VAR(MENU) _nc_Default_Menu = {
16, /* Nr. of chars high */
1, /* Nr. of chars wide */
16, /* Nr. of items high */
@@ -81,7 +81,7 @@ NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = {
0 /* status */
};
-NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item = {
+MENU_EXPORT_VAR(ITEM) _nc_Default_Item = {
{ (char *)0, 0 }, /* name */
{ (char *)0, 0 }, /* description */
(MENU *)0, /* Pointer to parent menu */
@@ -108,17 +108,17 @@ NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item = {
| Return Values : -
+--------------------------------------------------------------------------*/
NCURSES_INLINE static void
-ComputeMaximum_NameDesc_Lengths(MENU * menu)
+ComputeMaximum_NameDesc_Lengths(MENU *menu)
{
unsigned MaximumNameLength = 0;
unsigned MaximumDescriptionLength = 0;
ITEM **items;
- unsigned check;
assert(menu && menu->items);
for (items = menu->items; *items; items++)
{
- check = (unsigned)_nc_Calculate_Text_Width(&((*items)->name));
+ unsigned check = (unsigned)_nc_Calculate_Text_Width(&((*items)->name));
+
if (check > MaximumNameLength)
MaximumNameLength = check;
@@ -142,7 +142,7 @@ ComputeMaximum_NameDesc_Lengths(MENU * menu)
| Return Values : -
+--------------------------------------------------------------------------*/
NCURSES_INLINE static void
-ResetConnectionInfo(MENU * menu, ITEM ** items)
+ResetConnectionInfo(MENU *menu, ITEM **items)
{
ITEM **item;
@@ -150,13 +150,13 @@ ResetConnectionInfo(MENU * menu, ITEM ** items)
for (item = items; *item; item++)
{
(*item)->index = 0;
- (*item)->imenu = (MENU *) 0;
+ (*item)->imenu = (MENU *)0;
}
if (menu->pattern)
free(menu->pattern);
menu->pattern = (char *)0;
menu->pindex = 0;
- menu->items = (ITEM **) 0;
+ menu->items = (ITEM **)0;
menu->nitems = 0;
}
@@ -171,14 +171,15 @@ ResetConnectionInfo(MENU * menu, ITEM ** items)
| Return Values : TRUE - successful connection
| FALSE - connection failed
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
-_nc_Connect_Items(MENU * menu, ITEM ** items)
+MENU_EXPORT(bool)
+_nc_Connect_Items(MENU *menu, ITEM **items)
{
- ITEM **item;
unsigned int ItemCount = 0;
if (menu && items)
{
+ ITEM **item;
+
for (item = items; *item; item++)
{
if ((*item)->imenu)
@@ -233,8 +234,8 @@ _nc_Connect_Items(MENU * menu, ITEM ** items)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
-_nc_Disconnect_Items(MENU * menu)
+MENU_EXPORT(void)
+_nc_Disconnect_Items(MENU *menu)
{
if (menu && menu->items)
ResetConnectionInfo(menu, menu->items);
@@ -248,8 +249,8 @@ _nc_Disconnect_Items(MENU * menu)
|
| Return Values : the width
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-_nc_Calculate_Text_Width(const TEXT * item /*FIXME: limit length */ )
+MENU_EXPORT(int)
+_nc_Calculate_Text_Width(const TEXT *item /*FIXME: limit length */ )
{
#if USE_WIDEC_SUPPORT
int result = item->length;
@@ -289,26 +290,22 @@ _nc_Calculate_Text_Width(const TEXT * item /*FIXME: limit length */ )
*/
#if USE_WIDEC_SUPPORT
static int
-calculate_actual_width(MENU * menu, bool name)
+calculate_actual_width(MENU *menu, bool name)
{
int width = 0;
- int check = 0;
- ITEM **items;
assert(menu && menu->items);
if (menu->items != 0)
{
+ ITEM **items;
+
for (items = menu->items; *items; items++)
{
- if (name)
- {
- check = _nc_Calculate_Text_Width(&((*items)->name));
- }
- else
- {
- check = _nc_Calculate_Text_Width(&((*items)->description));
- }
+ int check = (name
+ ? _nc_Calculate_Text_Width(&((*items)->name))
+ : _nc_Calculate_Text_Width(&((*items)->description)));
+
if (check > width)
width = check;
}
@@ -337,8 +334,8 @@ calculate_actual_width(MENU * menu, bool name)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
-_nc_Calculate_Item_Length_and_Width(MENU * menu)
+MENU_EXPORT(void)
+_nc_Calculate_Item_Length_and_Width(MENU *menu)
{
int l;
@@ -376,12 +373,12 @@ _nc_Calculate_Item_Length_and_Width(MENU * menu)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
-_nc_Link_Items(MENU * menu)
+MENU_EXPORT(void)
+_nc_Link_Items(MENU *menu)
{
if (menu && menu->items && *(menu->items))
{
- int i, j;
+ int i;
ITEM *item;
int Number_Of_Items = menu->nitems;
int col = 0, row = 0;
@@ -408,14 +405,14 @@ _nc_Link_Items(MENU * menu)
(cycle ? menu->items[(Last_in_Row >= Number_Of_Items) ?
Number_Of_Items - 1 :
Last_in_Row] :
- (ITEM *) 0);
+ (ITEM *)0);
item->right = ((col < (Number_Of_Columns - 1)) &&
((i + 1) < Number_Of_Items)
)?
menu->items[i + 1] :
(cycle ? menu->items[row * Number_Of_Columns] :
- (ITEM *) 0
+ (ITEM *)0
);
Last_in_Column = (menu->rows - 1) * Number_Of_Columns + col;
@@ -424,14 +421,14 @@ _nc_Link_Items(MENU * menu)
(cycle ? menu->items[(Last_in_Column >= Number_Of_Items) ?
Number_Of_Items - 1 :
Last_in_Column] :
- (ITEM *) 0);
+ (ITEM *)0);
item->down = ((i + Number_Of_Columns) < Number_Of_Items)
?
menu->items[i + Number_Of_Columns] :
(cycle ? menu->items[(row + 1) < menu->rows ?
Number_Of_Items - 1 : col] :
- (ITEM *) 0);
+ (ITEM *)0);
item->x = (short)col;
item->y = (short)row;
if (++col == Number_Of_Columns)
@@ -444,6 +441,7 @@ _nc_Link_Items(MENU * menu)
else
{
int Number_Of_Rows = menu->rows;
+ int j;
for (j = 0; j < Number_Of_Items; j++)
{
@@ -456,12 +454,12 @@ _nc_Link_Items(MENU * menu)
(cycle ? (Last_in_Column >= Number_Of_Items) ?
menu->items[Last_in_Column - Number_Of_Rows] :
menu->items[Last_in_Column] :
- (ITEM *) 0);
+ (ITEM *)0);
item->right = ((i + Number_Of_Rows) < Number_Of_Items)
?
menu->items[i + Number_Of_Rows] :
- (cycle ? menu->items[row] : (ITEM *) 0);
+ (cycle ? menu->items[row] : (ITEM *)0);
Last_in_Row = col * Number_Of_Rows + (Number_Of_Rows - 1);
@@ -471,7 +469,7 @@ _nc_Link_Items(MENU * menu)
menu->items[(Last_in_Row >= Number_Of_Items) ?
Number_Of_Items - 1 :
Last_in_Row] :
- (ITEM *) 0);
+ (ITEM *)0);
item->down = (row < (Number_Of_Rows - 1))
?
@@ -480,7 +478,7 @@ _nc_Link_Items(MENU * menu)
(col - 1) * Number_Of_Rows + row + 1]) :
(cycle ?
menu->items[col * Number_Of_Rows] :
- (ITEM *) 0
+ (ITEM *)0
);
item->x = (short)col;
@@ -503,15 +501,15 @@ _nc_Link_Items(MENU * menu)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
-_nc_Show_Menu(const MENU * menu)
+MENU_EXPORT(void)
+_nc_Show_Menu(const MENU *menu)
{
- WINDOW *win;
- int maxy, maxx;
-
assert(menu);
if ((menu->status & _POSTED) && !(menu->status & _IN_DRIVER))
{
+ WINDOW *win;
+ int maxy, maxx;
+
/* adjust the internal subwindow to start on the current top */
assert(menu->sub);
mvderwin(menu->sub, menu->spc_rows * menu->toprow, 0);
@@ -543,19 +541,19 @@ _nc_Show_Menu(const MENU * menu)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
+MENU_EXPORT(void)
_nc_New_TopRow_and_CurrentItem(
- MENU * menu,
+ MENU *menu,
int new_toprow,
- ITEM * new_current_item)
+ ITEM *new_current_item)
{
- ITEM *cur_item;
- bool mterm_called = FALSE;
- bool iterm_called = FALSE;
-
assert(menu);
if (menu->status & _POSTED)
{
+ ITEM *cur_item;
+ bool mterm_called = FALSE;
+ bool iterm_called = FALSE;
+
if (new_current_item != menu->curitem)
{
Call_Hook(menu, itemterm);
diff --git a/menu/m_hook.c b/menu/m_hook.c
index c98aede..c7d9fe9 100644
--- a/menu/m_hook.c
+++ b/menu/m_hook.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,11 +38,11 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_hook.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_hook.c,v 1.21 2021/06/17 21:26:02 tom Exp $")
/* "Template" macro to generate function to set application specific hook */
#define GEN_HOOK_SET_FUNCTION( typ, name ) \
-NCURSES_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (MENU *menu, Menu_Hook func )\
+MENU_EXPORT(int) NCURSES_API set_ ## typ ## _ ## name (MENU *menu, Menu_Hook func )\
{\
TR_FUNC_BFR(1);\
T((T_CALLED("set_" #typ "_" #name "(%p,%s)"), (void *) menu, TR_FUNC_ARG(0, func)));\
@@ -52,16 +52,16 @@ NCURSES_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (MENU *menu, Menu_Hook f
/* "Template" macro to generate function to get application specific hook */
#define GEN_HOOK_GET_FUNCTION( typ, name ) \
-NCURSES_IMPEXP Menu_Hook NCURSES_API typ ## _ ## name ( const MENU *menu )\
+MENU_EXPORT(Menu_Hook) NCURSES_API typ ## _ ## name ( const MENU *menu )\
{\
T((T_CALLED(#typ "_" #name "(%p)"), (const void *) menu));\
returnMenuHook(Normalize_Menu(menu) -> typ ## name);\
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_init(MENU *menu, void (*f)(MENU *))
-|
+|
| Description : Set user-exit which is called when menu is posted
| or just after the top row changes.
|
@@ -70,11 +70,11 @@ NCURSES_IMPEXP Menu_Hook NCURSES_API typ ## _ ## name ( const MENU *menu )\
GEN_HOOK_SET_FUNCTION(menu, init)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : void (*)(MENU *) menu_init(const MENU *menu)
-|
+|
| Description : Return address of user-exit function which is called
-| when a menu is posted or just after the top row
+| when a menu is posted or just after the top row
| changes.
|
| Return Values : Menu init function address or NULL
@@ -82,9 +82,9 @@ GEN_HOOK_SET_FUNCTION(menu, init)
GEN_HOOK_GET_FUNCTION(menu, init)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_term (MENU *menu, void (*f)(MENU *))
-|
+|
| Description : Set user-exit which is called when menu is unposted
| or just before the top row changes.
|
@@ -93,11 +93,11 @@ GEN_HOOK_GET_FUNCTION(menu, init)
GEN_HOOK_SET_FUNCTION(menu, term)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : void (*)(MENU *) menu_term(const MENU *menu)
-|
+|
| Description : Return address of user-exit function which is called
-| when a menu is unposted or just before the top row
+| when a menu is unposted or just before the top row
| changes.
|
| Return Values : Menu finalization function address or NULL
@@ -105,9 +105,9 @@ GEN_HOOK_SET_FUNCTION(menu, term)
GEN_HOOK_GET_FUNCTION(menu, term)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_item_init (MENU *menu, void (*f)(MENU *))
-|
+|
| Description : Set user-exit which is called when menu is posted
| or just after the current item changes.
|
@@ -116,11 +116,11 @@ GEN_HOOK_GET_FUNCTION(menu, term)
GEN_HOOK_SET_FUNCTION(item, init)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : void (*)(MENU *) item_init (const MENU *menu)
-|
+|
| Description : Return address of user-exit function which is called
-| when a menu is posted or just after the current item
+| when a menu is posted or just after the current item
| changes.
|
| Return Values : Item init function address or NULL
@@ -128,9 +128,9 @@ GEN_HOOK_SET_FUNCTION(item, init)
GEN_HOOK_GET_FUNCTION(item, init)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_item_term (MENU *menu, void (*f)(MENU *))
-|
+|
| Description : Set user-exit which is called when menu is unposted
| or just before the current item changes.
|
@@ -139,11 +139,11 @@ GEN_HOOK_GET_FUNCTION(item, init)
GEN_HOOK_SET_FUNCTION(item, term)
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : void (*)(MENU *) item_init (const MENU *menu)
-|
+|
| Description : Return address of user-exit function which is called
-| when a menu is unposted or just before the current item
+| when a menu is unposted or just before the current item
| changes.
|
| Return Values : Item finalization function address or NULL
diff --git a/menu/m_item_cur.c b/menu/m_item_cur.c
index c09bf31..ed76518 100644
--- a/menu/m_item_cur.c
+++ b/menu/m_item_cur.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,18 +38,18 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_item_cur.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_cur.c,v 1.22 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_current_item(MENU *menu, const ITEM *item)
-|
+|
| Description : Make the item the current item
|
| Return Values : E_OK - success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_current_item(MENU * menu, ITEM * item)
+MENU_EXPORT(int)
+set_current_item(MENU *menu, ITEM *item)
{
T((T_CALLED("set_current_item(%p,%p)"), (void *)menu, (void *)item));
@@ -82,30 +82,30 @@ set_current_item(MENU * menu, ITEM * item)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : ITEM *current_item(const MENU *menu)
-|
+|
| Description : Return the menus current item
|
| Return Values : Item pointer or NULL if failure
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(ITEM *)
-current_item(const MENU * menu)
+MENU_EXPORT(ITEM *)
+current_item(const MENU *menu)
{
T((T_CALLED("current_item(%p)"), (const void *)menu));
- returnItem((menu && menu->items) ? menu->curitem : (ITEM *) 0);
+ returnItem((menu && menu->items) ? menu->curitem : (ITEM *)0);
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int item_index(const ITEM *)
-|
+|
| Description : Return the logical index of this item.
|
| Return Values : The index or ERR if this is an invalid item pointer
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-item_index(const ITEM * item)
+MENU_EXPORT(int)
+item_index(const ITEM *item)
{
T((T_CALLED("item_index(%p)"), (const void *)item));
returnCode((item && item->imenu) ? item->index : ERR);
diff --git a/menu/m_item_nam.c b/menu/m_item_nam.c
index aaf54e0..ce74531 100644
--- a/menu/m_item_nam.c
+++ b/menu/m_item_nam.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,33 +38,33 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_item_nam.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_nam.c,v 1.19 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : char *item_name(const ITEM *item)
-|
+|
| Description : Return name of menu item
|
| Return Values : See above; returns NULL if item is invalid
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(const char *)
-item_name(const ITEM * item)
+MENU_EXPORT(const char *)
+item_name(const ITEM *item)
{
T((T_CALLED("item_name(%p)"), (const void *)item));
returnCPtr((item) ? item->name.str : (char *)0);
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : char *item_description(const ITEM *item)
-|
+|
| Description : Returns description of item
|
| Return Values : See above; Returns NULL if item is invalid
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(const char *)
-item_description(const ITEM * item)
+MENU_EXPORT(const char *)
+item_description(const ITEM *item)
{
T((T_CALLED("item_description(%p)"), (const void *)item));
returnCPtr((item) ? item->description.str : (char *)0);
diff --git a/menu/m_item_new.c b/menu/m_item_new.c
index 1e7950d..28b71ca 100644
--- a/menu/m_item_new.c
+++ b/menu/m_item_new.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020-2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -45,12 +45,12 @@
#endif
#endif
-MODULE_ID("$Id: m_item_new.c,v 1.34 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_new.c,v 1.38 2021/06/17 21:26:02 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : bool Is_Printable_String(const char *s)
-|
+|
| Description : Checks whether or not the string contains only printable
| characters.
|
@@ -75,7 +75,7 @@ Is_Printable_String(const char *s)
mbstowcs(temp, s, (unsigned)count);
for (n = 0; n < count; ++n)
- if (!iswprint((wint_t) temp[n]))
+ if (!iswprint((wint_t)temp[n]))
{
result = FALSE;
break;
@@ -98,16 +98,16 @@ Is_Printable_String(const char *s)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : ITEM *new_item(char *name, char *description)
-|
+|
| Description : Create a new item with name and description. Return
| a pointer to this new item.
| N.B.: an item must(!) have a name.
|
| Return Values : The item pointer or NULL if creation failed.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(ITEM *)
+MENU_EXPORT(ITEM *)
new_item(const char *name, const char *description)
{
ITEM *item;
@@ -118,14 +118,16 @@ new_item(const char *name, const char *description)
if (!name || (*name == '\0') || !Is_Printable_String(name))
{
- item = (ITEM *) 0;
+ item = (ITEM *)0;
SET_ERROR(E_BAD_ARGUMENT);
}
else
{
item = typeCalloc(ITEM, 1);
+
if (item)
{
+ T((T_CREATE("item %p"), (void *)item));
*item = _nc_Default_Item; /* hope we have struct assignment */
item->name.length = (unsigned short)strlen(name);
@@ -150,18 +152,18 @@ new_item(const char *name, const char *description)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int free_item(ITEM *item)
-|
-| Description : Free the allocated storage for this item.
+|
+| Description : Free the allocated storage for this item.
| N.B.: a connected item can't be freed.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid value has been passed
-| E_CONNECTED - item is still connected to a menu
+| E_CONNECTED - item is still connected to a menu
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-free_item(ITEM * item)
+MENU_EXPORT(int)
+free_item(ITEM *item)
{
T((T_CALLED("free_item(%p)"), (void *)item));
@@ -177,24 +179,24 @@ free_item(ITEM * item)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_mark( MENU *menu, const char *mark )
-|
+|
| Description : Set the mark string used to indicate the current
| item (single-valued menu) or the selected items
| (multi-valued menu).
-| The mark argument may be NULL, in which case no
+| The mark argument may be NULL, in which case no
| marker is used.
-| This might be a little bit tricky, because this may
-| affect the geometry of the menu, which we don't allow
+| This might be a little bit tricky, because this may
+| affect the geometry of the menu, which we don't allow
| if it is already posted.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - an invalid value has been passed
| E_SYSTEM_ERROR - no memory to store mark
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_mark(MENU * menu, const char *mark)
+MENU_EXPORT(int)
+set_menu_mark(MENU *menu, const char *mark)
{
short l;
@@ -258,15 +260,15 @@ set_menu_mark(MENU * menu, const char *mark)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : char *menu_mark(const MENU *menu)
-|
+|
| Description : Return a pointer to the marker string
|
| Return Values : The marker string pointer or NULL if no marker defined
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(const char *)
-menu_mark(const MENU * menu)
+MENU_EXPORT(const char *)
+menu_mark(const MENU *menu)
{
T((T_CALLED("menu_mark(%p)"), (const void *)menu));
returnPtr(Normalize_Menu(menu)->mark);
diff --git a/menu/m_item_opt.c b/menu/m_item_opt.c
index f8df220..495e409 100644
--- a/menu/m_item_opt.c
+++ b/menu/m_item_opt.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,12 +38,12 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_item_opt.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_opt.c,v 1.22 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
-| Function : int set_item_opts(ITEM *item, Item_Options opts)
-|
+| Facility : libnmenu
+| Function : int set_item_opts(ITEM *item, Item_Options opts)
+|
| Description : Set the options of the item. If there are relevant
| changes, the item is connected and the menu is posted,
| the menu will be redisplayed.
@@ -51,8 +51,8 @@ MODULE_ID("$Id: m_item_opt.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid item options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_item_opts(ITEM * item, Item_Options opts)
+MENU_EXPORT(int)
+set_item_opts(ITEM *item, Item_Options opts)
{
T((T_CALLED("set_menu_opts(%p,%d)"), (void *)item, opts));
@@ -86,16 +86,16 @@ set_item_opts(ITEM * item, Item_Options opts)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
-| Function : int item_opts_off(ITEM *item, Item_Options opts)
-|
+| Facility : libnmenu
+| Function : int item_opts_off(ITEM *item, Item_Options opts)
+|
| Description : Switch of the options for this item.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-item_opts_off(ITEM * item, Item_Options opts)
+MENU_EXPORT(int)
+item_opts_off(ITEM *item, Item_Options opts)
{
ITEM *citem = item; /* use a copy because set_item_opts must detect
@@ -114,16 +114,16 @@ item_opts_off(ITEM * item, Item_Options opts)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
-| Function : int item_opts_on(ITEM *item, Item_Options opts)
-|
+| Facility : libnmenu
+| Function : int item_opts_on(ITEM *item, Item_Options opts)
+|
| Description : Switch on the options for this item.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-item_opts_on(ITEM * item, Item_Options opts)
+MENU_EXPORT(int)
+item_opts_on(ITEM *item, Item_Options opts)
{
ITEM *citem = item; /* use a copy because set_item_opts must detect
@@ -143,15 +143,15 @@ item_opts_on(ITEM * item, Item_Options opts)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
-| Function : Item_Options item_opts(const ITEM *item)
-|
+| Facility : libnmenu
+| Function : Item_Options item_opts(const ITEM *item)
+|
| Description : Switch of the options for this item.
|
| Return Values : Items options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(Item_Options)
-item_opts(const ITEM * item)
+MENU_EXPORT(Item_Options)
+item_opts(const ITEM *item)
{
T((T_CALLED("item_opts(%p)"), (const void *)item));
returnItemOpts(ALL_ITEM_OPTS & Normalize_Item(item)->opt);
diff --git a/menu/m_item_top.c b/menu/m_item_top.c
index 9417e72..68303c7 100644
--- a/menu/m_item_top.c
+++ b/menu/m_item_top.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,30 +38,28 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_item_top.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_top.c,v 1.16 2021/06/17 21:11:08 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_top_row(MENU *menu, int row)
-|
+|
| Description : Makes the specified row the top row in the menu
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - not a menu pointer or invalid row
| E_NOT_CONNECTED - there are no items for the menu
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_top_row(MENU * menu, int row)
+MENU_EXPORT(int)
+set_top_row(MENU *menu, int row)
{
- ITEM *item;
-
T((T_CALLED("set_top_row(%p,%d)"), (void *)menu, row));
if (menu)
{
if (menu->status & _IN_DRIVER)
RETURN(E_BAD_STATE);
- if (menu->items == (ITEM **) 0)
+ if (menu->items == (ITEM **)0)
RETURN(E_NOT_CONNECTED);
if ((row < 0) || (row > (menu->rows - menu->arows)))
@@ -72,6 +70,8 @@ set_top_row(MENU * menu, int row)
if (row != menu->toprow)
{
+ ITEM *item;
+
if (menu->status & _LINK_NEEDED)
_nc_Link_Items(menu);
@@ -85,15 +85,15 @@ set_top_row(MENU * menu, int row)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int top_row(const MENU *)
-|
+|
| Description : Return the top row of the menu
|
| Return Values : The row number or ERR if there is no row
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-top_row(const MENU * menu)
+MENU_EXPORT(int)
+top_row(const MENU *menu)
{
T((T_CALLED("top_row(%p)"), (const void *)menu));
if (menu && menu->items && *(menu->items))
diff --git a/menu/m_item_use.c b/menu/m_item_use.c
index 3081432..52d087e 100644
--- a/menu/m_item_use.c
+++ b/menu/m_item_use.c
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_item_use.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_use.c,v 1.21 2020/12/12 00:38:08 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnmenu
@@ -49,8 +49,8 @@ MODULE_ID("$Id: m_item_use.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
|
| Return Values : E_OK - success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_item_userptr(ITEM * item, void *userptr)
+MENU_EXPORT(int)
+set_item_userptr(ITEM *item, void *userptr)
{
T((T_CALLED("set_item_userptr(%p,%p)"), (void *)item, (void *)userptr));
Normalize_Item(item)->userptr = userptr;
@@ -67,8 +67,8 @@ set_item_userptr(ITEM * item, void *userptr)
| Return Values : Value of the pointer. If no such pointer has been set,
| NULL is returned.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void *)
-item_userptr(const ITEM * item)
+MENU_EXPORT(void *)
+item_userptr(const ITEM *item)
{
T((T_CALLED("item_userptr(%p)"), (const void *)item));
returnVoidPtr(Normalize_Item(item)->userptr);
diff --git a/menu/m_item_val.c b/menu/m_item_val.c
index d8d11f2..3163f4b 100644
--- a/menu/m_item_val.c
+++ b/menu/m_item_val.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,30 +38,28 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_item_val.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_val.c,v 1.20 2021/06/17 21:11:08 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_item_value(ITEM *item, int value)
-|
+|
| Description : Programmatically set the item's selection value. This is
| only allowed if the item is selectable at all and if
| it is not connected to a single-valued menu.
| If the item is connected to a posted menu, the menu
-| will be redisplayed.
+| will be redisplayed.
|
| Return Values : E_OK - success
| E_REQUEST_DENIED - not selectable or single valued menu
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_item_value(ITEM * item, bool value)
+MENU_EXPORT(int)
+set_item_value(ITEM *item, bool value)
{
- MENU *menu;
-
T((T_CALLED("set_item_value(%p,%d)"), (void *)item, value));
if (item)
{
- menu = item->imenu;
+ MENU *menu = item->imenu;
if ((!(item->opt & O_SELECTABLE)) ||
(menu && (menu->opt & O_ONEVALUE)))
@@ -87,16 +85,16 @@ set_item_value(ITEM * item, bool value)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : bool item_value(const ITEM *item)
-|
+|
| Description : Return the selection value of the item
|
| Return Values : TRUE - if item is selected
| FALSE - if item is not selected
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
-item_value(const ITEM * item)
+MENU_EXPORT(bool)
+item_value(const ITEM *item)
{
T((T_CALLED("item_value(%p)"), (const void *)item));
returnBool((Normalize_Item(item)->value) ? TRUE : FALSE);
diff --git a/menu/m_item_vis.c b/menu/m_item_vis.c
index 8e99341..9ae4fdb 100644
--- a/menu/m_item_vis.c
+++ b/menu/m_item_vis.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,20 +38,20 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_item_vis.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_item_vis.c,v 1.20 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : bool item_visible(const ITEM *item)
-|
+|
| Description : A item is visible if it currently appears in the
| subwindow of a posted menu.
|
| Return Values : TRUE if visible
| FALSE if invisible
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(bool)
-item_visible(const ITEM * item)
+MENU_EXPORT(bool)
+item_visible(const ITEM *item)
{
MENU *menu;
diff --git a/menu/m_items.c b/menu/m_items.c
index 9f46c8b..ecc5e2f 100644
--- a/menu/m_items.c
+++ b/menu/m_items.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2005,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,12 +38,12 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_items.c,v 1.18 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_items.c,v 1.21 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_items(MENU *menu, ITEM **items)
-|
+|
| Description : Sets the item pointer array connected to menu.
|
| Return Values : E_OK - success
@@ -53,8 +53,8 @@ MODULE_ID("$Id: m_items.c,v 1.18 2020/02/02 23:34:34 tom Exp $")
| E_BAD_ARGUMENT - An incorrect menu or item array was
| passed to the function
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_items(MENU * menu, ITEM ** items)
+MENU_EXPORT(int)
+set_menu_items(MENU *menu, ITEM **items)
{
T((T_CALLED("set_menu_items(%p,%p)"), (void *)menu, (void *)items));
@@ -78,31 +78,31 @@ set_menu_items(MENU * menu, ITEM ** items)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : ITEM **menu_items(const MENU *menu)
-|
+|
| Description : Returns a pointer to the item pointer array of the menu
|
| Return Values : NULL on error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(ITEM **)
-menu_items(const MENU * menu)
+MENU_EXPORT(ITEM **)
+menu_items(const MENU *menu)
{
T((T_CALLED("menu_items(%p)"), (const void *)menu));
- returnItemPtr(menu ? menu->items : (ITEM **) 0);
+ returnItemPtr(menu ? menu->items : (ITEM **)0);
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int item_count(const MENU *menu)
-|
+|
| Description : Get the number of items connected to the menu. If the
-| menu pointer is NULL we return -1.
+| menu pointer is NULL we return -1.
|
| Return Values : Number of items or -1 to indicate error.
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-item_count(const MENU * menu)
+MENU_EXPORT(int)
+item_count(const MENU *menu)
{
T((T_CALLED("item_count(%p)"), (const void *)menu));
returnCode(menu ? menu->nitems : -1);
diff --git a/menu/m_new.c b/menu/m_new.c
index cf89196..be17558 100644
--- a/menu/m_new.c
+++ b/menu/m_new.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,12 +38,12 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_new.c,v 1.22 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_new.c,v 1.27 2021/06/17 21:26:02 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : MENU* _nc_new_menu(SCREEN*, ITEM **items)
-|
+|
| Description : Creates a new menu connected to the item pointer
| array items and returns a pointer to the new menu.
| The new menu is initialized with the values from the
@@ -51,8 +51,8 @@ MODULE_ID("$Id: m_new.c,v 1.22 2020/02/02 23:34:34 tom Exp $")
|
| Return Values : NULL on error
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(MENU *)
-NCURSES_SP_NAME(new_menu) (NCURSES_SP_DCLx ITEM ** items)
+MENU_EXPORT(MENU *)
+NCURSES_SP_NAME(new_menu) (NCURSES_SP_DCLx ITEM **items)
{
int err = E_SYSTEM_ERROR;
MENU *menu = typeCalloc(MENU, 1);
@@ -60,6 +60,7 @@ NCURSES_SP_NAME(new_menu) (NCURSES_SP_DCLx ITEM ** items)
T((T_CALLED("new_menu(%p,%p)"), (void *)SP_PARM, (void *)items));
if (menu)
{
+ T((T_CREATE("menu %p"), (void *)menu));
*menu = _nc_Default_Menu;
menu->status = 0;
menu->rows = menu->frows;
@@ -77,7 +78,7 @@ NCURSES_SP_NAME(new_menu) (NCURSES_SP_DCLx ITEM ** items)
{
err = E_NOT_CONNECTED;
free(menu);
- menu = (MENU *) 0;
+ menu = (MENU *)0;
}
else
err = E_OK;
@@ -91,9 +92,9 @@ NCURSES_SP_NAME(new_menu) (NCURSES_SP_DCLx ITEM ** items)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : MENU *new_menu(ITEM **items)
-|
+|
| Description : Creates a new menu connected to the item pointer
| array items and returns a pointer to the new menu.
| The new menu is initialized with the values from the
@@ -102,26 +103,26 @@ NCURSES_SP_NAME(new_menu) (NCURSES_SP_DCLx ITEM ** items)
| Return Values : NULL on error
+--------------------------------------------------------------------------*/
#if NCURSES_SP_FUNCS
-NCURSES_EXPORT(MENU *)
-new_menu(ITEM ** items)
+MENU_EXPORT(MENU *)
+new_menu(ITEM **items)
{
return NCURSES_SP_NAME(new_menu) (CURRENT_SCREEN, items);
}
#endif
/*---------------------------------------------------------------------------
-| Facility : libnmenu
-| Function : int free_menu(MENU *menu)
-|
-| Description : Disconnects menu from its associated item pointer
+| Facility : libnmenu
+| Function : int free_menu(MENU *menu)
+|
+| Description : Disconnects menu from its associated item pointer
| array and frees the storage allocated for the menu.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - Invalid menu pointer passed
| E_POSTED - Menu is already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-free_menu(MENU * menu)
+MENU_EXPORT(int)
+free_menu(MENU *menu)
{
T((T_CALLED("free_menu(%p)"), (void *)menu));
if (!menu)
diff --git a/menu/m_opts.c b/menu/m_opts.c
index 4c29f33..bbf9459 100644
--- a/menu/m_opts.c
+++ b/menu/m_opts.c
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_opts.c,v 1.21 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_opts.c,v 1.23 2020/12/12 00:38:08 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnmenu
@@ -53,8 +53,8 @@ MODULE_ID("$Id: m_opts.c,v 1.21 2020/02/02 23:34:34 tom Exp $")
| E_BAD_ARGUMENT - invalid menu options
| E_POSTED - menu is already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_opts(MENU * menu, Menu_Options opts)
+MENU_EXPORT(int)
+set_menu_opts(MENU *menu, Menu_Options opts)
{
T((T_CALLED("set_menu_opts(%p,%d)"), (void *)menu, opts));
@@ -86,7 +86,7 @@ set_menu_opts(MENU * menu, Menu_Options opts)
{
ITEM **item;
- if (((item = menu->items) != (ITEM **) 0))
+ if (((item = menu->items) != (ITEM **)0))
for (; *item; item++)
(*item)->value = FALSE;
}
@@ -113,8 +113,8 @@ set_menu_opts(MENU * menu, Menu_Options opts)
| E_BAD_ARGUMENT - invalid options
| E_POSTED - menu is already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-menu_opts_off(MENU * menu, Menu_Options opts)
+MENU_EXPORT(int)
+menu_opts_off(MENU *menu, Menu_Options opts)
{
MENU *cmenu = menu; /* use a copy because set_menu_opts must detect
@@ -146,8 +146,8 @@ menu_opts_off(MENU * menu, Menu_Options opts)
| E_BAD_ARGUMENT - invalid menu options
| E_POSTED - menu is already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-menu_opts_on(MENU * menu, Menu_Options opts)
+MENU_EXPORT(int)
+menu_opts_on(MENU *menu, Menu_Options opts)
{
MENU *cmenu = menu; /* use a copy because set_menu_opts must detect
@@ -174,8 +174,8 @@ menu_opts_on(MENU * menu, Menu_Options opts)
|
| Return Values : Menu options
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(Menu_Options)
-menu_opts(const MENU * menu)
+MENU_EXPORT(Menu_Options)
+menu_opts(const MENU *menu)
{
T((T_CALLED("menu_opts(%p)"), (const void *)menu));
returnMenuOpts(ALL_MENU_OPTS & Normalize_Menu(menu)->opt);
diff --git a/menu/m_pad.c b/menu/m_pad.c
index 3d5702a..008e19a 100644
--- a/menu/m_pad.c
+++ b/menu/m_pad.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_pad.c,v 1.14 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_pad.c,v 1.17 2021/06/17 21:20:30 tom Exp $")
/* Macro to redraw menu if it is posted and changed */
#define Refresh_Menu(menu) \
@@ -49,20 +49,20 @@ MODULE_ID("$Id: m_pad.c,v 1.14 2020/02/02 23:34:34 tom Exp $")
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_pad(MENU* menu, int pad)
-|
+|
| Description : Set the character to be used to separate the item name
-| from its description. This must be a printable
+| from its description. This must be a printable
| character.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - an invalid value has been passed
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_pad(MENU * menu, int pad)
+MENU_EXPORT(int)
+set_menu_pad(MENU *menu, int pad)
{
- bool do_refresh = (menu != (MENU *) 0);
+ bool do_refresh = (menu != (MENU *)0);
T((T_CALLED("set_menu_pad(%p,%d)"), (void *)menu, pad));
@@ -79,15 +79,15 @@ set_menu_pad(MENU * menu, int pad)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int menu_pad(const MENU *menu)
-|
+|
| Description : Return the value of the padding character
|
| Return Values : The pad character
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-menu_pad(const MENU * menu)
+MENU_EXPORT(int)
+menu_pad(const MENU *menu)
{
T((T_CALLED("menu_pad(%p)"), (const void *)menu));
returnCode(Normalize_Menu(menu)->pad);
diff --git a/menu/m_pattern.c b/menu/m_pattern.c
index 9ff0230..6fbef23 100644
--- a/menu/m_pattern.c
+++ b/menu/m_pattern.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2006,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,12 +38,12 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_pattern.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_pattern.c,v 1.20 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : char *menu_pattern(const MENU *menu)
-|
+|
| Description : Return the value of the pattern buffer.
|
| Return Values : NULL - if there is no pattern buffer allocated
@@ -51,8 +51,8 @@ MODULE_ID("$Id: m_pattern.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
| pattern is stored
| PatternString - as expected
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(char *)
-menu_pattern(const MENU * menu)
+MENU_EXPORT(char *)
+menu_pattern(const MENU *menu)
{
static char empty[] = "";
@@ -61,9 +61,9 @@ menu_pattern(const MENU * menu)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_pattern(MENU *menu, const char *p)
-|
+|
| Description : Set the match pattern for a menu and position to the
| first item that matches.
|
@@ -73,8 +73,8 @@ menu_pattern(const MENU * menu)
| E_NOT_CONNECTED - no items connected to menu
| E_NO_MATCH - no item matches pattern
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_pattern(MENU * menu, const char *p)
+MENU_EXPORT(int)
+set_menu_pattern(MENU *menu, const char *p)
{
ITEM *matchitem;
int matchpos;
diff --git a/menu/m_post.c b/menu/m_post.c
index 2cc0ea0..1dbd6b8 100644
--- a/menu/m_post.c
+++ b/menu/m_post.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_post.c,v 1.32 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_post.c,v 1.36 2021/05/08 20:20:01 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnmenu
@@ -49,8 +49,8 @@ MODULE_ID("$Id: m_post.c,v 1.32 2020/02/02 23:34:34 tom Exp $")
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
-_nc_Post_Item(const MENU * menu, const ITEM * item)
+MENU_EXPORT(void)
+_nc_Post_Item(const MENU *menu, const ITEM *item)
{
int i;
chtype ch;
@@ -58,7 +58,6 @@ _nc_Post_Item(const MENU * menu, const ITEM * item)
int count = 0;
bool isfore = FALSE, isback = FALSE, isgrey = FALSE;
int name_len;
- int desc_len;
assert(menu->win);
@@ -132,6 +131,7 @@ _nc_Post_Item(const MENU * menu, const ITEM * item)
{
int m = menu->spc_desc / 2;
int cy = -1, cx = -1;
+ int desc_len;
for (ch = ' ', i = 0; i < menu->spc_desc; i++)
{
@@ -197,11 +197,11 @@ _nc_Post_Item(const MENU * menu, const ITEM * item)
|
| Return Values : -
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void)
-_nc_Draw_Menu(const MENU * menu)
+MENU_EXPORT(void)
+_nc_Draw_Menu(const MENU *menu)
{
ITEM *item = menu->items[0];
- ITEM *lasthor, *lastvert;
+ ITEM *lastvert;
ITEM *hitem;
int y = 0;
chtype s_bkgd;
@@ -213,45 +213,50 @@ _nc_Draw_Menu(const MENU * menu)
werase(menu->win);
wbkgdset(menu->win, s_bkgd);
- lastvert = (menu->opt & O_NONCYCLIC) ? (ITEM *) 0 : item;
+ lastvert = (menu->opt & O_NONCYCLIC) ? (ITEM *)0 : item;
- do
+ if (item != NULL)
{
- wmove(menu->win, y, 0);
-
- hitem = item;
- lasthor = (menu->opt & O_NONCYCLIC) ? (ITEM *) 0 : hitem;
-
do
{
- _nc_Post_Item(menu, hitem);
+ ITEM *lasthor;
- wattron(menu->win, (int)menu->back);
- if (((hitem = hitem->right) != lasthor) && hitem)
+ wmove(menu->win, y, 0);
+
+ hitem = item;
+ lasthor = (menu->opt & O_NONCYCLIC) ? (ITEM *)0 : hitem;
+
+ do
{
- int i, j, cy, cx;
- chtype ch = ' ';
+ _nc_Post_Item(menu, hitem);
- getyx(menu->win, cy, cx);
- for (j = 0; j < menu->spc_rows; j++)
+ wattron(menu->win, (int)menu->back);
+ if (((hitem = hitem->right) != lasthor) && hitem)
{
- wmove(menu->win, cy + j, cx);
- for (i = 0; i < menu->spc_cols; i++)
+ int i, j, cy, cx;
+ chtype ch = ' ';
+
+ getyx(menu->win, cy, cx);
+ for (j = 0; j < menu->spc_rows; j++)
{
- waddch(menu->win, ch);
+ wmove(menu->win, cy + j, cx);
+ for (i = 0; i < menu->spc_cols; i++)
+ {
+ waddch(menu->win, ch);
+ }
}
+ wmove(menu->win, cy, cx + menu->spc_cols);
}
- wmove(menu->win, cy, cx + menu->spc_cols);
}
- }
- while (hitem && (hitem != lasthor));
- wattroff(menu->win, (int)menu->back);
+ while (hitem && (hitem != lasthor));
+ wattroff(menu->win, (int)menu->back);
- item = item->down;
- y += menu->spc_rows;
+ item = item->down;
+ y += menu->spc_rows;
+ }
+ while (item && (item != lastvert));
}
- while (item && (item != lastvert));
}
/*---------------------------------------------------------------------------
@@ -267,8 +272,8 @@ _nc_Draw_Menu(const MENU * menu)
| E_BAD_STATE - Menu in userexit routine
| E_POSTED - Menu already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-post_menu(MENU * menu)
+MENU_EXPORT(int)
+post_menu(MENU *menu)
{
T((T_CALLED("post_menu(%p)"), (void *)menu));
@@ -283,7 +288,6 @@ post_menu(MENU * menu)
if (menu->items && *(menu->items))
{
- int y;
int h = 1 + menu->spc_rows * (menu->rows - 1);
WINDOW *win = Get_Menu_Window(menu);
@@ -291,7 +295,8 @@ post_menu(MENU * menu)
if ((menu->win = newpad(h, menu->width)))
{
- y = (maxy >= h) ? h : maxy;
+ int y = (maxy >= h) ? h : maxy;
+
if (y >= menu->height)
y = menu->height;
if (!(menu->sub = subpad(menu->win, y, menu->width, 0, 0)))
@@ -339,8 +344,8 @@ post_menu(MENU * menu)
| E_BAD_STATE - menu in userexit routine
| E_NOT_POSTED - menu is not posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-unpost_menu(MENU * menu)
+MENU_EXPORT(int)
+unpost_menu(MENU *menu)
{
WINDOW *win;
diff --git a/menu/m_req_name.c b/menu/m_req_name.c
index d3f04c1..c72116f 100644
--- a/menu/m_req_name.c
+++ b/menu/m_req_name.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_req_name.c,v 1.24 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_req_name.c,v 1.27 2021/06/17 21:11:08 tom Exp $")
#define DATA(s) { s }
@@ -66,15 +66,15 @@ static const char request_names[MAX_MENU_COMMAND - MIN_MENU_COMMAND + 1][14] =
#define A_SIZE (sizeof(request_names)/sizeof(request_names[0]))
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : const char * menu_request_name (int request);
-|
+|
| Description : Get the external name of a menu request.
|
| Return Values : Pointer to name - on success
| NULL - on invalid request code
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(const char *)
+MENU_EXPORT(const char *)
menu_request_name(int request)
{
T((T_CALLED("menu_request_name(%d)"), request));
@@ -88,27 +88,28 @@ menu_request_name(int request)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int menu_request_by_name (const char *str);
-|
+|
| Description : Search for a request with this name.
|
| Return Values : Request Id - on success
| E_NO_MATCH - request not found
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+MENU_EXPORT(int)
menu_request_by_name(const char *str)
{
/* because the table is so small, it doesn't really hurt
to run sequentially through it.
*/
size_t i = 0;
- char buf[16];
T((T_CALLED("menu_request_by_name(%s)"), _nc_visbuf(str)));
if (str != 0 && (i = strlen(str)) != 0)
{
+ char buf[16];
+
if (i > sizeof(buf) - 2)
i = sizeof(buf) - 2;
memcpy(buf, str, i);
diff --git a/menu/m_scale.c b/menu/m_scale.c
index e013acd..9e7f81d 100644
--- a/menu/m_scale.c
+++ b/menu/m_scale.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2004,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,21 +38,21 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_scale.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_scale.c,v 1.14 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int scale_menu(const MENU *menu)
-|
+|
| Description : Returns the minimum window size necessary for the
-| subwindow of menu.
+| subwindow of menu.
|
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid menu pointer
| E_NOT_CONNECTED - no items are connected to menu
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-scale_menu(const MENU * menu, int *rows, int *cols)
+MENU_EXPORT(int)
+scale_menu(const MENU *menu, int *rows, int *cols)
{
T((T_CALLED("scale_menu(%p,%p,%p)"),
(const void *)menu,
diff --git a/menu/m_spacing.c b/menu/m_spacing.c
index 9bb746a..76f8d5c 100644
--- a/menu/m_spacing.c
+++ b/menu/m_spacing.c
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_spacing.c,v 1.20 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_spacing.c,v 1.22 2020/12/12 00:38:14 tom Exp $")
#define MAX_SPC_DESC ((TABSIZE) ? (TABSIZE) : 8)
#define MAX_SPC_COLS ((TABSIZE) ? (TABSIZE) : 8)
@@ -52,8 +52,8 @@ MODULE_ID("$Id: m_spacing.c,v 1.20 2020/02/02 23:34:34 tom Exp $")
|
| Return Values : E_OK - on success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_spacing(MENU * menu, int s_desc, int s_row, int s_col)
+MENU_EXPORT(int)
+set_menu_spacing(MENU *menu, int s_desc, int s_row, int s_col)
{
MENU *m; /* split for ATAC workaround */
@@ -87,8 +87,8 @@ set_menu_spacing(MENU * menu, int s_desc, int s_row, int s_col)
|
| Return Values : E_OK - on success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-menu_spacing(const MENU * menu, int *s_desc, int *s_row, int *s_col)
+MENU_EXPORT(int)
+menu_spacing(const MENU *menu, int *s_desc, int *s_row, int *s_col)
{
const MENU *m; /* split for ATAC workaround */
diff --git a/menu/m_sub.c b/menu/m_sub.c
index 4658e90..a055245 100644
--- a/menu/m_sub.c
+++ b/menu/m_sub.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,19 +38,19 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_sub.c,v 1.13 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_sub.c,v 1.16 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_sub(MENU *menu, WINDOW *win)
-|
+|
| Description : Sets the subwindow of the menu.
|
| Return Values : E_OK - success
| E_POSTED - menu is already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_sub(MENU * menu, WINDOW *win)
+MENU_EXPORT(int)
+set_menu_sub(MENU *menu, WINDOW *win)
{
T((T_CALLED("set_menu_sub(%p,%p)"), (void *)menu, (void *)win));
@@ -82,15 +82,15 @@ set_menu_sub(MENU * menu, WINDOW *win)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : WINDOW* menu_sub(const MENU *menu)
-|
+|
| Description : Returns a pointer to the subwindow of the menu
|
| Return Values : NULL on error, otherwise a pointer to the window
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(WINDOW *)
-menu_sub(const MENU * menu)
+MENU_EXPORT(WINDOW *)
+menu_sub(const MENU *menu)
{
const MENU *m = Normalize_Menu(menu);
diff --git a/menu/m_trace.c b/menu/m_trace.c
index f5332b1..331236c 100644
--- a/menu/m_trace.c
+++ b/menu/m_trace.c
@@ -33,37 +33,37 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_trace.c,v 1.7 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_trace.c,v 1.9 2020/12/12 00:38:14 tom Exp $")
-NCURSES_EXPORT(ITEM *)
-_nc_retrace_item(ITEM * code)
+MENU_EXPORT(ITEM *)
+_nc_retrace_item(ITEM *code)
{
T((T_RETURN("%p"), (void *)code));
return code;
}
-NCURSES_EXPORT(ITEM **)
-_nc_retrace_item_ptr(ITEM ** code)
+MENU_EXPORT(ITEM **)
+_nc_retrace_item_ptr(ITEM **code)
{
T((T_RETURN("%p"), (void *)code));
return code;
}
-NCURSES_EXPORT(Item_Options)
+MENU_EXPORT(Item_Options)
_nc_retrace_item_opts(Item_Options code)
{
T((T_RETURN("%d"), code));
return code;
}
-NCURSES_EXPORT(MENU *)
-_nc_retrace_menu(MENU * code)
+MENU_EXPORT(MENU *)
+_nc_retrace_menu(MENU *code)
{
T((T_RETURN("%p"), (void *)code));
return code;
}
-NCURSES_EXPORT(Menu_Hook)
+MENU_EXPORT(Menu_Hook)
_nc_retrace_menu_hook(Menu_Hook code)
{
TR_FUNC_BFR(1);
@@ -71,7 +71,7 @@ _nc_retrace_menu_hook(Menu_Hook code)
return code;
}
-NCURSES_EXPORT(Menu_Options)
+MENU_EXPORT(Menu_Options)
_nc_retrace_menu_opts(Menu_Options code)
{
T((T_RETURN("%d"), code));
diff --git a/menu/m_userptr.c b/menu/m_userptr.c
index df3a45f..72f2d4c 100644
--- a/menu/m_userptr.c
+++ b/menu/m_userptr.c
@@ -38,7 +38,7 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_userptr.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_userptr.c,v 1.21 2020/12/12 00:38:14 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnmenu
@@ -49,8 +49,8 @@ MODULE_ID("$Id: m_userptr.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
|
| Return Values : E_OK - success
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_userptr(MENU * menu, void *userptr)
+MENU_EXPORT(int)
+set_menu_userptr(MENU *menu, void *userptr)
{
T((T_CALLED("set_menu_userptr(%p,%p)"), (void *)menu, (void *)userptr));
Normalize_Menu(menu)->userptr = userptr;
@@ -67,8 +67,8 @@ set_menu_userptr(MENU * menu, void *userptr)
| Return Values : Value of the pointer. If no such pointer has been set,
| NULL is returned
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(void *)
-menu_userptr(const MENU * menu)
+MENU_EXPORT(void *)
+menu_userptr(const MENU *menu)
{
T((T_CALLED("menu_userptr(%p)"), (const void *)menu));
returnVoidPtr(Normalize_Menu(menu)->userptr);
diff --git a/menu/m_win.c b/menu/m_win.c
index f06c580..4bb64e6 100644
--- a/menu/m_win.c
+++ b/menu/m_win.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,19 +38,19 @@
#include "menu.priv.h"
-MODULE_ID("$Id: m_win.c,v 1.18 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: m_win.c,v 1.21 2021/06/17 21:20:30 tom Exp $")
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : int set_menu_win(MENU *menu, WINDOW *win)
-|
+|
| Description : Sets the window of the menu.
|
| Return Values : E_OK - success
| E_POSTED - menu is already posted
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
-set_menu_win(MENU * menu, WINDOW *win)
+MENU_EXPORT(int)
+set_menu_win(MENU *menu, WINDOW *win)
{
T((T_CALLED("set_menu_win(%p,%p)"), (void *)menu, (void *)win));
@@ -82,15 +82,15 @@ set_menu_win(MENU * menu, WINDOW *win)
}
/*---------------------------------------------------------------------------
-| Facility : libnmenu
+| Facility : libnmenu
| Function : WINDOW* menu_win(const MENU*)
-|
+|
| Description : Returns pointer to the window of the menu
|
| Return Values : NULL on error, otherwise pointer to window
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(WINDOW *)
-menu_win(const MENU * menu)
+MENU_EXPORT(WINDOW *)
+menu_win(const MENU *menu)
{
const MENU *m = Normalize_Menu(menu);
diff --git a/menu/menu.h b/menu/menu.h
index b2e845c..e5a5372 100644
--- a/menu/menu.h
+++ b/menu/menu.h
@@ -31,7 +31,7 @@
* Author: Juergen Pfeifer, 1995,1997 *
****************************************************************************/
-/* $Id: menu.h,v 1.24 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: menu.h,v 1.26 2020/12/12 00:38:02 tom Exp $ */
#ifndef ETI_MENU
#define ETI_MENU
@@ -44,11 +44,23 @@
#include <eti.h>
#ifdef __cplusplus
-extern "C" {
+extern "C"
+{
#endif
-typedef int Menu_Options;
-typedef int Item_Options;
+#if defined(BUILDING_MENU)
+# define MENU_IMPEXP NCURSES_EXPORT_GENERAL_EXPORT
+#else
+# define MENU_IMPEXP NCURSES_EXPORT_GENERAL_IMPORT
+#endif
+
+#define MENU_WRAPPED_VAR(type,name) extern MENU_IMPEXP type NCURSES_PUBLIC_VAR(name)(void)
+
+#define MENU_EXPORT(type) MENU_IMPEXP type NCURSES_API
+#define MENU_EXPORT_VAR(type) MENU_IMPEXP type
+
+ typedef int Menu_Options;
+ typedef int Item_Options;
/* Menu options: */
#define O_ONEVALUE (0x01)
@@ -63,85 +75,85 @@ typedef int Item_Options;
#define O_SELECTABLE (0x01)
#if !NCURSES_OPAQUE_MENU
-typedef struct
-{
- const char* str;
- unsigned short length;
-} TEXT;
-#endif /* !NCURSES_OPAQUE_MENU */
+ typedef struct
+ {
+ const char *str;
+ unsigned short length;
+ }
+ TEXT;
+#endif /* !NCURSES_OPAQUE_MENU */
-struct tagMENU;
+ struct tagMENU;
-typedef struct tagITEM
+ typedef struct tagITEM
#if !NCURSES_OPAQUE_MENU
-{
- TEXT name; /* name of menu item */
- TEXT description; /* description of item, optional in display */
- struct tagMENU *imenu; /* Pointer to parent menu */
- void *userptr; /* Pointer to user defined per item data */
- Item_Options opt; /* Item options */
- short index; /* Item number if connected to a menu */
- short y; /* y and x location of item in menu */
- short x;
- bool value; /* Selection value */
-
- struct tagITEM *left; /* neighbor items */
- struct tagITEM *right;
- struct tagITEM *up;
- struct tagITEM *down;
-
-}
-#endif /* !NCURSES_OPAQUE_MENU */
-ITEM;
-
-typedef void (*Menu_Hook)(struct tagMENU *);
-
-typedef struct tagMENU
-#if 1 /* not yet: !NCURSES_OPAQUE_MENU */
-{
- short height; /* Nr. of chars high */
- short width; /* Nr. of chars wide */
- short rows; /* Nr. of items high */
- short cols; /* Nr. of items wide */
- short frows; /* Nr. of formatted items high */
- short fcols; /* Nr. of formatted items wide */
- short arows; /* Nr. of items high (actual) */
- short namelen; /* Max. name length */
- short desclen; /* Max. description length */
- short marklen; /* Length of mark, if any */
- short itemlen; /* Length of one item */
- short spc_desc; /* Spacing for descriptor */
- short spc_cols; /* Spacing for columns */
- short spc_rows; /* Spacing for rows */
- char *pattern; /* Buffer to store match chars */
- short pindex; /* Index into pattern buffer */
- WINDOW *win; /* Window containing menu */
- WINDOW *sub; /* Subwindow for menu display */
- WINDOW *userwin; /* User's window */
- WINDOW *usersub; /* User's subwindow */
- ITEM **items; /* array of items */
- short nitems; /* Nr. of items in menu */
- ITEM *curitem; /* Current item */
- short toprow; /* Top row of menu */
- chtype fore; /* Selection attribute */
- chtype back; /* Nonselection attribute */
- chtype grey; /* Inactive attribute */
- unsigned char pad; /* Pad character */
-
- Menu_Hook menuinit; /* User hooks */
- Menu_Hook menuterm;
- Menu_Hook iteminit;
- Menu_Hook itemterm;
-
- void *userptr; /* Pointer to menus user data */
- char *mark; /* Pointer to marker string */
-
- Menu_Options opt; /* Menu options */
- unsigned short status; /* Internal state of menu */
-}
-#endif /* !NCURSES_OPAQUE_MENU */
-MENU;
-
+ {
+ TEXT name; /* name of menu item */
+ TEXT description; /* description of item, optional in display */
+ struct tagMENU *imenu; /* Pointer to parent menu */
+ void *userptr; /* Pointer to user defined per item data */
+ Item_Options opt; /* Item options */
+ short index; /* Item number if connected to a menu */
+ short y; /* y and x location of item in menu */
+ short x;
+ bool value; /* Selection value */
+
+ struct tagITEM *left; /* neighbor items */
+ struct tagITEM *right;
+ struct tagITEM *up;
+ struct tagITEM *down;
+
+ }
+#endif /* !NCURSES_OPAQUE_MENU */
+ ITEM;
+
+ typedef void (*Menu_Hook) (struct tagMENU *);
+
+ typedef struct tagMENU
+#if 1 /* not yet: !NCURSES_OPAQUE_MENU */
+ {
+ short height; /* Nr. of chars high */
+ short width; /* Nr. of chars wide */
+ short rows; /* Nr. of items high */
+ short cols; /* Nr. of items wide */
+ short frows; /* Nr. of formatted items high */
+ short fcols; /* Nr. of formatted items wide */
+ short arows; /* Nr. of items high (actual) */
+ short namelen; /* Max. name length */
+ short desclen; /* Max. description length */
+ short marklen; /* Length of mark, if any */
+ short itemlen; /* Length of one item */
+ short spc_desc; /* Spacing for descriptor */
+ short spc_cols; /* Spacing for columns */
+ short spc_rows; /* Spacing for rows */
+ char *pattern; /* Buffer to store match chars */
+ short pindex; /* Index into pattern buffer */
+ WINDOW *win; /* Window containing menu */
+ WINDOW *sub; /* Subwindow for menu display */
+ WINDOW *userwin; /* User's window */
+ WINDOW *usersub; /* User's subwindow */
+ ITEM **items; /* array of items */
+ short nitems; /* Nr. of items in menu */
+ ITEM *curitem; /* Current item */
+ short toprow; /* Top row of menu */
+ chtype fore; /* Selection attribute */
+ chtype back; /* Nonselection attribute */
+ chtype grey; /* Inactive attribute */
+ unsigned char pad; /* Pad character */
+
+ Menu_Hook menuinit; /* User hooks */
+ Menu_Hook menuterm;
+ Menu_Hook iteminit;
+ Menu_Hook itemterm;
+
+ void *userptr; /* Pointer to menus user data */
+ char *mark; /* Pointer to marker string */
+
+ Menu_Options opt; /* Menu options */
+ unsigned short status; /* Internal state of menu */
+ }
+#endif /* !NCURSES_OPAQUE_MENU */
+ MENU;
/* Define keys */
@@ -180,92 +192,90 @@ MENU;
# define MAX_COMMAND (KEY_MAX + 128)
#endif
-
/* --------- prototypes for libmenu functions ----------------------------- */
-extern NCURSES_EXPORT(ITEM **) menu_items (const MENU *);
-extern NCURSES_EXPORT(ITEM *) current_item (const MENU *);
-extern NCURSES_EXPORT(ITEM *) new_item (const char *,const char *);
-
-extern NCURSES_EXPORT(MENU *) new_menu (ITEM **);
-
-extern NCURSES_EXPORT(Item_Options) item_opts (const ITEM *);
-extern NCURSES_EXPORT(Menu_Options) menu_opts (const MENU *);
-
-extern NCURSES_EXPORT(Menu_Hook) item_init (const MENU *);
-extern NCURSES_EXPORT(Menu_Hook) item_term (const MENU *);
-extern NCURSES_EXPORT(Menu_Hook) menu_init (const MENU *);
-extern NCURSES_EXPORT(Menu_Hook) menu_term (const MENU *);
-
-extern NCURSES_EXPORT(WINDOW *) menu_sub (const MENU *);
-extern NCURSES_EXPORT(WINDOW *) menu_win (const MENU *);
-
-extern NCURSES_EXPORT(const char *) item_description (const ITEM *);
-extern NCURSES_EXPORT(const char *) item_name (const ITEM *);
-extern NCURSES_EXPORT(const char *) menu_mark (const MENU *);
-extern NCURSES_EXPORT(const char *) menu_request_name (int);
-
-extern NCURSES_EXPORT(char *) menu_pattern (const MENU *);
-
-extern NCURSES_EXPORT(void *) menu_userptr (const MENU *);
-extern NCURSES_EXPORT(void *) item_userptr (const ITEM *);
-
-extern NCURSES_EXPORT(chtype) menu_back (const MENU *);
-extern NCURSES_EXPORT(chtype) menu_fore (const MENU *);
-extern NCURSES_EXPORT(chtype) menu_grey (const MENU *);
-
-extern NCURSES_EXPORT(int) free_item (ITEM *);
-extern NCURSES_EXPORT(int) free_menu (MENU *);
-extern NCURSES_EXPORT(int) item_count (const MENU *);
-extern NCURSES_EXPORT(int) item_index (const ITEM *);
-extern NCURSES_EXPORT(int) item_opts_off (ITEM *,Item_Options);
-extern NCURSES_EXPORT(int) item_opts_on (ITEM *,Item_Options);
-extern NCURSES_EXPORT(int) menu_driver (MENU *,int);
-extern NCURSES_EXPORT(int) menu_opts_off (MENU *,Menu_Options);
-extern NCURSES_EXPORT(int) menu_opts_on (MENU *,Menu_Options);
-extern NCURSES_EXPORT(int) menu_pad (const MENU *);
-extern NCURSES_EXPORT(int) pos_menu_cursor (const MENU *);
-extern NCURSES_EXPORT(int) post_menu (MENU *);
-extern NCURSES_EXPORT(int) scale_menu (const MENU *,int *,int *);
-extern NCURSES_EXPORT(int) set_current_item (MENU *menu,ITEM *item);
-extern NCURSES_EXPORT(int) set_item_init (MENU *, Menu_Hook);
-extern NCURSES_EXPORT(int) set_item_opts (ITEM *,Item_Options);
-extern NCURSES_EXPORT(int) set_item_term (MENU *, Menu_Hook);
-extern NCURSES_EXPORT(int) set_item_userptr (ITEM *, void *);
-extern NCURSES_EXPORT(int) set_item_value (ITEM *,bool);
-extern NCURSES_EXPORT(int) set_menu_back (MENU *,chtype);
-extern NCURSES_EXPORT(int) set_menu_fore (MENU *,chtype);
-extern NCURSES_EXPORT(int) set_menu_format (MENU *,int,int);
-extern NCURSES_EXPORT(int) set_menu_grey (MENU *,chtype);
-extern NCURSES_EXPORT(int) set_menu_init (MENU *, Menu_Hook);
-extern NCURSES_EXPORT(int) set_menu_items (MENU *,ITEM **);
-extern NCURSES_EXPORT(int) set_menu_mark (MENU *, const char *);
-extern NCURSES_EXPORT(int) set_menu_opts (MENU *,Menu_Options);
-extern NCURSES_EXPORT(int) set_menu_pad (MENU *,int);
-extern NCURSES_EXPORT(int) set_menu_pattern (MENU *,const char *);
-extern NCURSES_EXPORT(int) set_menu_sub (MENU *,WINDOW *);
-extern NCURSES_EXPORT(int) set_menu_term (MENU *, Menu_Hook);
-extern NCURSES_EXPORT(int) set_menu_userptr (MENU *,void *);
-extern NCURSES_EXPORT(int) set_menu_win (MENU *,WINDOW *);
-extern NCURSES_EXPORT(int) set_top_row (MENU *,int);
-extern NCURSES_EXPORT(int) top_row (const MENU *);
-extern NCURSES_EXPORT(int) unpost_menu (MENU *);
-extern NCURSES_EXPORT(int) menu_request_by_name (const char *);
-extern NCURSES_EXPORT(int) set_menu_spacing (MENU *,int,int,int);
-extern NCURSES_EXPORT(int) menu_spacing (const MENU *,int *,int *,int *);
-
-
-extern NCURSES_EXPORT(bool) item_value (const ITEM *);
-extern NCURSES_EXPORT(bool) item_visible (const ITEM *);
-
-extern NCURSES_EXPORT(void) menu_format (const MENU *,int *,int *);
+ extern MENU_EXPORT(ITEM **) menu_items(const MENU *);
+ extern MENU_EXPORT(ITEM *) current_item(const MENU *);
+ extern MENU_EXPORT(ITEM *) new_item(const char *, const char *);
+
+ extern MENU_EXPORT(MENU *) new_menu(ITEM **);
+
+ extern MENU_EXPORT(Item_Options) item_opts(const ITEM *);
+ extern MENU_EXPORT(Menu_Options) menu_opts(const MENU *);
+
+ extern MENU_EXPORT(Menu_Hook) item_init(const MENU *);
+ extern MENU_EXPORT(Menu_Hook) item_term(const MENU *);
+ extern MENU_EXPORT(Menu_Hook) menu_init(const MENU *);
+ extern MENU_EXPORT(Menu_Hook) menu_term(const MENU *);
+
+ extern MENU_EXPORT(WINDOW *) menu_sub(const MENU *);
+ extern MENU_EXPORT(WINDOW *) menu_win(const MENU *);
+
+ extern MENU_EXPORT(const char *) item_description(const ITEM *);
+ extern MENU_EXPORT(const char *) item_name(const ITEM *);
+ extern MENU_EXPORT(const char *) menu_mark(const MENU *);
+ extern MENU_EXPORT(const char *) menu_request_name(int);
+
+ extern MENU_EXPORT(char *) menu_pattern(const MENU *);
+
+ extern MENU_EXPORT(void *) menu_userptr(const MENU *);
+ extern MENU_EXPORT(void *) item_userptr(const ITEM *);
+
+ extern MENU_EXPORT(chtype) menu_back(const MENU *);
+ extern MENU_EXPORT(chtype) menu_fore(const MENU *);
+ extern MENU_EXPORT(chtype) menu_grey(const MENU *);
+
+ extern MENU_EXPORT(int) free_item(ITEM *);
+ extern MENU_EXPORT(int) free_menu(MENU *);
+ extern MENU_EXPORT(int) item_count(const MENU *);
+ extern MENU_EXPORT(int) item_index(const ITEM *);
+ extern MENU_EXPORT(int) item_opts_off(ITEM *, Item_Options);
+ extern MENU_EXPORT(int) item_opts_on(ITEM *, Item_Options);
+ extern MENU_EXPORT(int) menu_driver(MENU *, int);
+ extern MENU_EXPORT(int) menu_opts_off(MENU *, Menu_Options);
+ extern MENU_EXPORT(int) menu_opts_on(MENU *, Menu_Options);
+ extern MENU_EXPORT(int) menu_pad(const MENU *);
+ extern MENU_EXPORT(int) pos_menu_cursor(const MENU *);
+ extern MENU_EXPORT(int) post_menu(MENU *);
+ extern MENU_EXPORT(int) scale_menu(const MENU *, int *, int *);
+ extern MENU_EXPORT(int) set_current_item(MENU *menu, ITEM *item);
+ extern MENU_EXPORT(int) set_item_init(MENU *, Menu_Hook);
+ extern MENU_EXPORT(int) set_item_opts(ITEM *, Item_Options);
+ extern MENU_EXPORT(int) set_item_term(MENU *, Menu_Hook);
+ extern MENU_EXPORT(int) set_item_userptr(ITEM *, void *);
+ extern MENU_EXPORT(int) set_item_value(ITEM *, bool);
+ extern MENU_EXPORT(int) set_menu_back(MENU *, chtype);
+ extern MENU_EXPORT(int) set_menu_fore(MENU *, chtype);
+ extern MENU_EXPORT(int) set_menu_format(MENU *, int, int);
+ extern MENU_EXPORT(int) set_menu_grey(MENU *, chtype);
+ extern MENU_EXPORT(int) set_menu_init(MENU *, Menu_Hook);
+ extern MENU_EXPORT(int) set_menu_items(MENU *, ITEM **);
+ extern MENU_EXPORT(int) set_menu_mark(MENU *, const char *);
+ extern MENU_EXPORT(int) set_menu_opts(MENU *, Menu_Options);
+ extern MENU_EXPORT(int) set_menu_pad(MENU *, int);
+ extern MENU_EXPORT(int) set_menu_pattern(MENU *, const char *);
+ extern MENU_EXPORT(int) set_menu_sub(MENU *, WINDOW *);
+ extern MENU_EXPORT(int) set_menu_term(MENU *, Menu_Hook);
+ extern MENU_EXPORT(int) set_menu_userptr(MENU *, void *);
+ extern MENU_EXPORT(int) set_menu_win(MENU *, WINDOW *);
+ extern MENU_EXPORT(int) set_top_row(MENU *, int);
+ extern MENU_EXPORT(int) top_row(const MENU *);
+ extern MENU_EXPORT(int) unpost_menu(MENU *);
+ extern MENU_EXPORT(int) menu_request_by_name(const char *);
+ extern MENU_EXPORT(int) set_menu_spacing(MENU *, int, int, int);
+ extern MENU_EXPORT(int) menu_spacing(const MENU *, int *, int *, int *);
+
+ extern MENU_EXPORT(bool) item_value(const ITEM *);
+ extern MENU_EXPORT(bool) item_visible(const ITEM *);
+
+ extern MENU_EXPORT(void) menu_format(const MENU *, int *, int *);
#if NCURSES_SP_FUNCS
-extern NCURSES_EXPORT(MENU *) NCURSES_SP_NAME(new_menu) (SCREEN*, ITEM **);
+ extern MENU_EXPORT(MENU *) NCURSES_SP_NAME(new_menu) (SCREEN *, ITEM **);
#endif
#ifdef __cplusplus
- }
+}
#endif
-#endif /* ETI_MENU */
+#endif /* ETI_MENU */
diff --git a/menu/menu.priv.h b/menu/menu.priv.h
index d084565..0bc6147 100644
--- a/menu/menu.priv.h
+++ b/menu/menu.priv.h
@@ -31,7 +31,7 @@
* Author: Juergen Pfeifer, 1995,1997 *
****************************************************************************/
-/* $Id: menu.priv.h,v 1.28 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: menu.priv.h,v 1.29 2020/05/24 01:40:20 anonymous.maarten Exp $ */
/***************************************************************************
* Module menu.priv.h *
@@ -52,8 +52,8 @@
/* Backspace code */
#define BS (8)
-extern NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item;
-extern NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu;
+extern MENU_EXPORT_VAR(ITEM) _nc_Default_Item;
+extern MENU_EXPORT_VAR(MENU) _nc_Default_Menu;
/* Normalize item to default if none was given */
#define Normalize_Item( item ) ((item)=(item)?(item):&_nc_Default_Item)
@@ -120,17 +120,17 @@ extern NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu;
#define UChar(c) ((unsigned char)(c))
/* Internal functions. */
-extern NCURSES_EXPORT(void) _nc_Draw_Menu (const MENU *);
-extern NCURSES_EXPORT(void) _nc_Show_Menu (const MENU *);
-extern NCURSES_EXPORT(void) _nc_Calculate_Item_Length_and_Width (MENU *);
-extern NCURSES_EXPORT(int) _nc_Calculate_Text_Width(const TEXT *);
-extern NCURSES_EXPORT(void) _nc_Post_Item (const MENU *, const ITEM *);
-extern NCURSES_EXPORT(bool) _nc_Connect_Items (MENU *, ITEM **);
-extern NCURSES_EXPORT(void) _nc_Disconnect_Items (MENU *);
-extern NCURSES_EXPORT(void) _nc_New_TopRow_and_CurrentItem (MENU *,int, ITEM *);
-extern NCURSES_EXPORT(void) _nc_Link_Items (MENU *);
-extern NCURSES_EXPORT(int) _nc_Match_Next_Character_In_Item_Name (MENU*,int,ITEM**);
-extern NCURSES_EXPORT(int) _nc_menu_cursor_pos (const MENU* menu, const ITEM* item,
+extern MENU_EXPORT(void) _nc_Draw_Menu (const MENU *);
+extern MENU_EXPORT(void) _nc_Show_Menu (const MENU *);
+extern MENU_EXPORT(void) _nc_Calculate_Item_Length_and_Width (MENU *);
+extern MENU_EXPORT(int) _nc_Calculate_Text_Width(const TEXT *);
+extern MENU_EXPORT(void) _nc_Post_Item (const MENU *, const ITEM *);
+extern MENU_EXPORT(bool) _nc_Connect_Items (MENU *, ITEM **);
+extern MENU_EXPORT(void) _nc_Disconnect_Items (MENU *);
+extern MENU_EXPORT(void) _nc_New_TopRow_and_CurrentItem (MENU *,int, ITEM *);
+extern MENU_EXPORT(void) _nc_Link_Items (MENU *);
+extern MENU_EXPORT(int) _nc_Match_Next_Character_In_Item_Name (MENU*,int,ITEM**);
+extern MENU_EXPORT(int) _nc_menu_cursor_pos (const MENU* menu, const ITEM* item,
int* pY, int* pX);
#ifdef TRACE
@@ -142,12 +142,12 @@ extern NCURSES_EXPORT(int) _nc_menu_cursor_pos (const MENU* menu, const ITEM* i
#define returnMenuHook(code) TRACE_RETURN1(code,menu_hook)
#define returnMenuOpts(code) TRACE_RETURN1(code,menu_opts)
-extern NCURSES_EXPORT(ITEM *) _nc_retrace_item (ITEM *);
-extern NCURSES_EXPORT(ITEM **) _nc_retrace_item_ptr (ITEM **);
-extern NCURSES_EXPORT(Item_Options) _nc_retrace_item_opts (Item_Options);
-extern NCURSES_EXPORT(MENU *) _nc_retrace_menu (MENU *);
-extern NCURSES_EXPORT(Menu_Hook) _nc_retrace_menu_hook (Menu_Hook);
-extern NCURSES_EXPORT(Menu_Options) _nc_retrace_menu_opts (Menu_Options);
+extern MENU_EXPORT(ITEM *) _nc_retrace_item (ITEM *);
+extern MENU_EXPORT(ITEM **) _nc_retrace_item_ptr (ITEM **);
+extern MENU_EXPORT(Item_Options) _nc_retrace_item_opts (Item_Options);
+extern MENU_EXPORT(MENU *) _nc_retrace_menu (MENU *);
+extern MENU_EXPORT(Menu_Hook) _nc_retrace_menu_hook (Menu_Hook);
+extern MENU_EXPORT(Menu_Options) _nc_retrace_menu_opts (Menu_Options);
#else /* !TRACE */
diff --git a/misc/Makefile.in b/misc/Makefile.in
index 1d83da8..befbb02 100644
--- a/misc/Makefile.in
+++ b/misc/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.73 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.78 2021/07/03 19:07:50 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2016,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -76,13 +76,29 @@ INSTALL_DATA = @INSTALL_DATA@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : depend
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.data
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.data
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
+depend \
sources ::
@MAKE_DATABASE@all \
-@MAKE_DATABASE@sources :: terminfo.tmp
-
-depend :
+@MAKE_DATABASE@sources :: terminfo.tmp
@MAKE_DATABASE@install :: @MISC_INSTALL_DATA@
@@ -101,12 +117,12 @@ depend :
@MAKE_DATABASE@ source=terminfo.tmp \
@MAKE_DATABASE@ cross_compiling=@cross_compiling@ \
@MAKE_DATABASE@ $(SHELL) ./run_tic.sh
-@MAKE_DATABASE@ @cd $(srcdir)/tabset && \
+@MAKE_DATABASE@ @( cd $(srcdir)/tabset && \
@MAKE_DATABASE@ $(SHELL) -c 'for i in * ; do \
@MAKE_DATABASE@ if test -f $$i ; then \
@MAKE_DATABASE@ echo installing $$i; \
@MAKE_DATABASE@ $(INSTALL_DATA) $$i $(DESTDIR)$(tabsetdir)/$$i; \
-@MAKE_DATABASE@ fi; done'
+@MAKE_DATABASE@ fi; done' )
install.data ::
@echo "finished $@"
@@ -132,7 +148,7 @@ install.libs :: $(DESTDIR)$(bindir) ncurses-config
@MAKE_PC_FILES@install \
@MAKE_PC_FILES@install.libs :: pc-files
@MAKE_PC_FILES@ @$(SHELL) -c 'case "x$(DESTDIR)$(PKG_CONFIG_LIBDIR)" in \
-@MAKE_PC_FILES@ (x/*) \
+@MAKE_PC_FILES@ x/*) \
@MAKE_PC_FILES@ mkdir -p $(DESTDIR)$(PKG_CONFIG_LIBDIR); \
@MAKE_PC_FILES@ for name in $(PC_FILES); do \
@MAKE_PC_FILES@ test -f $$name || continue; \
@@ -140,7 +156,7 @@ install.libs :: $(DESTDIR)$(bindir) ncurses-config
@MAKE_PC_FILES@ $(INSTALL_DATA) $$name $(DESTDIR)$(PKG_CONFIG_LIBDIR)/$$name; \
@MAKE_PC_FILES@ done \
@MAKE_PC_FILES@ ;; \
-@MAKE_PC_FILES@ (*) \
+@MAKE_PC_FILES@ *) \
@MAKE_PC_FILES@ echo "...skip actual install: no destination was given" ; \
@MAKE_PC_FILES@ ;; \
@MAKE_PC_FILES@ esac'
@@ -177,7 +193,7 @@ uninstall.data :
uninstall.libs :
-rm -f $(DESTDIR)$(bindir)/$(NCURSES_CONFIG)
@MAKE_PC_FILES@ @$(SHELL) -c 'case x$(DESTDIR)$(PKG_CONFIG_LIBDIR) in \
-@MAKE_PC_FILES@ (x/*) \
+@MAKE_PC_FILES@ x/*) \
@MAKE_PC_FILES@ for name in $(PC_FILES); do \
@MAKE_PC_FILES@ test -f $$name || continue; \
@MAKE_PC_FILES@ echo uninstalling $$name; \
diff --git a/misc/csort b/misc/csort
index 2455419..c39c295 100755
--- a/misc/csort
+++ b/misc/csort
@@ -1,7 +1,7 @@
#!/bin/sh
-# $Id: csort,v 1.3 2020/02/02 23:34:34 tom Exp $
+# $Id: csort,v 1.4 2021/09/04 15:55:29 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2002 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -34,4 +34,4 @@ LANG=C; export LANG
LANGUAGE=C; export LANGUAGE
LC_ALL=C; export LC_ALL
LC_CTYPE=C; export LC_CTYPE
-sort $*
+sort "$@"
diff --git a/misc/gen-pkgconfig.in b/misc/gen-pkgconfig.in
index 8f00b82..a45dd54 100644
--- a/misc/gen-pkgconfig.in
+++ b/misc/gen-pkgconfig.in
@@ -1,7 +1,7 @@
#!@SHELL@
-# $Id: gen-pkgconfig.in,v 1.44 2020/02/12 00:09:26 tom Exp $
+# $Id: gen-pkgconfig.in,v 1.52 2021/08/07 21:36:33 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 2009-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -44,6 +44,7 @@ PANEL_NAME=@PANEL_NAME@
MENU_NAME=@MENU_NAME@
FORM_NAME=@FORM_NAME@
CXX_NAME=@CXX_NAME@
+
DFT_DEP_SUFFIX=@DFT_DEP_SUFFIX@
TINFO_ARG_SUFFIX=@TINFO_ARG_SUFFIX@
CXX_LIB_SUFFIX=@CXX_LIB_SUFFIX@
@@ -64,9 +65,11 @@ show_libdir='@libdir@'
MAIN_LIBRARY="${LIB_NAME}@USE_ARG_SUFFIX@"
SUB_LIBRARY="${TINFO_ARG_SUFFIX}"
-PANEL_LIBRARY="${PANEL_NAME}@USE_ARG_SUFFIX@"
-MENU_LIBRARY="${MENU_NAME}@USE_ARG_SUFFIX@"
+
+CXX_LIBRARY="${CXX_NAME}@USE_ARG_SUFFIX@"
FORM_LIBRARY="${FORM_NAME}@USE_ARG_SUFFIX@"
+MENU_LIBRARY="${MENU_NAME}@USE_ARG_SUFFIX@"
+PANEL_LIBRARY="${PANEL_NAME}@USE_ARG_SUFFIX@"
CFLAGS="@PKG_CFLAGS@"
if [ "$includedir" != "/usr/include" ]; then
@@ -80,7 +83,7 @@ if [ "$includedir" != "/usr/include" ]; then
fi
lib_flags=
-for opt in -L$libdir @LDFLAGS@ @EXTRA_LDFLAGS@ @LIBS@
+for opt in -L$libdir @EXTRA_PKG_LDFLAGS@ @LIBS@
do
case $opt in
-l*) # LIBS is handled specially below
@@ -92,11 +95,47 @@ do
-Wl,-z,*) # ignore flags used to manipulate shared image
continue
;;
+ -Wl,--dynamic-linker*) # ignore ELF interpreter
+ continue
+ ;;
-L*)
- [ -d ${opt##-L} ] || continue
- case ${opt##-L} in
+ lib_check=`echo "x$opt" | sed -e 's/^.-L//'`
+ [ -d "$lib_check" ] || continue
+ case "$lib_check" in
@LD_SEARCHPATH@) # skip standard libdir
- continue
+ if [ "$lib_check" = "$libdir" ]
+ then
+ lib_first=yes
+ IFS_save="$IFS"
+ IFS='|'
+ LIBDIRS="@LD_SEARCHPATH@"
+ for lib_check in $LIBDIRS
+ do
+ if [ -d "$lib_check" ]
+ then
+ if [ "$lib_check" != "$libdir" ]
+ then
+ lib_first=no
+ fi
+ break
+ fi
+ done
+ IFS="$IFS_save"
+ [ $lib_first = yes ] && continue
+ found=no
+ for check in $lib_flags
+ do
+ if [ "x$check" = "x$opt" ]
+ then
+ found=yes
+ break
+ fi
+ done
+ [ $found = yes ] && continue
+ :
+ else
+ continue
+ fi
;;
*)
found=no
@@ -138,6 +177,12 @@ CFGVER=`pkg-config --version 2>/dev/null |head -n 1 | awk -F. '/0.[0-9][0-9]/{pr
for name in @PC_MODULES_TO_MAKE@
do
name="${name}"
+ case $name in
+ form*) name="$FORM_LIBRARY" ;;
+ menu*) name="$MENU_LIBRARY" ;;
+ panel*) name="$PANEL_LIBRARY" ;;
+ ncurses++*) name="$CXX_LIBRARY" ;;
+ esac
LIBS="-l$name"
desc="ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@"
diff --git a/misc/gen_edit.sh b/misc/gen_edit.sh
index dadf003..0c41611 100755
--- a/misc/gen_edit.sh
+++ b/misc/gen_edit.sh
@@ -1,6 +1,6 @@
#!/bin/sh
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2004-2011,2012 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -30,7 +30,7 @@
#
# Author: Thomas E. Dickey
#
-# $Id: gen_edit.sh,v 1.6 2020/02/02 23:34:34 tom Exp $
+# $Id: gen_edit.sh,v 1.7 2021/09/04 15:55:29 tom Exp $
# Generate a sed-script for converting the terminfo.src to the form which will
# be installed.
#
@@ -40,10 +40,10 @@
linux_dft=linux2.2
-: ${datadir=/usr/share}
-: ${WHICH_LINUX=$linux_dft}
-: ${WHICH_XTERM=xterm-new}
-: ${XTERM_KBS=BS}
+: "${datadir=/usr/share}"
+: "${WHICH_LINUX=$linux_dft}"
+: "${WHICH_XTERM=xterm-new}"
+: "${XTERM_KBS=BS}"
# If we're not installing into /usr/share/, we'll have to adjust the location
# of the tabset files in terminfo.src (which are in a parallel directory).
diff --git a/misc/makedef.cmd b/misc/makedef.cmd
index 12baeca..129ca83 100644
--- a/misc/makedef.cmd
+++ b/misc/makedef.cmd
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998,2006 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -28,7 +28,7 @@
****************************************************************************/
/*
- * $Id: makedef.cmd,v 1.6 2020/02/02 23:34:34 tom Exp $
+ * $Id: makedef.cmd,v 1.7 2021/09/04 10:52:55 tom Exp $
*
* Author: Juan Jose Garcia Ripoll <worm@arrakis.es>.
* Webpage: http://www.arrakis.es/~worm/
@@ -119,12 +119,12 @@ do while queued() > 0
* it has a valid code that we store
* we mark that code as used
* ELIF (it has no number) THEN
- * (it's a new symbol)
+ * (it is a new symbol)
* we increase the counter of defined symbols
* we assign it the special number 0
* (later on it'll be assigned an unused export code)
* ELSE
- * this symbol was in the old DLL and it's no longer
+ * this symbol was in the old DLL and it is no longer
* here, so we skip it.
*/
select
diff --git a/misc/makellib b/misc/makellib
index 06e50f2..fb3d3b7 100755
--- a/misc/makellib
+++ b/misc/makellib
@@ -1,6 +1,6 @@
#!/bin/sh
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998,2000 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -30,7 +30,7 @@
#
# Author: Thomas E. Dickey 1996,1997,2000
#
-# $Id: makellib,v 1.9 2020/02/02 23:34:34 tom Exp $
+# $Id: makellib,v 1.11 2021/09/04 15:49:38 tom Exp $
# System-dependent wrapper for 'lint' that creates a lint-library via the
# following method (XXX is the name of the library):
# a. If the file llib-lXXX doesn't exist, create it using the make-rule
@@ -45,7 +45,7 @@
# a. On a few systems, you'll have to manually-edit the llib-lXXX file
# to get a usable lint-library (not all C-preprocessors work well).
# b. The system's lint utility won't recognize -lXXX as a lint-library
-# (Use tdlint as a wrapper; it's designed for this).
+# (Use tdlint as a wrapper; it is designed for this).
#
# Parameters:
# $1 = library name
@@ -68,7 +68,7 @@ while test $# != 0
do
case $1 in
-L*)
- DST="$DST `echo $1|sed -e 's/^-L//'`"
+ DST="$DST `echo "$1"|sed -e 's/^-L//'`"
;;
-*)
OPT="$OPT $1"
@@ -94,8 +94,8 @@ then
llib="llib-l$LLIB"
fi
-if test ! -f $llib ; then
- if ( make $llib )
+if test ! -f "$llib" ; then
+ if ( make "$llib" )
then
:
else
@@ -103,39 +103,39 @@ if test ! -f $llib ; then
fi
fi
-rm -f $llib.ln $llib.c
+rm -f "$llib.ln" "$llib.c"
TARGET=$LLIB
case "$ARCH" in
AIX)
CREATE="-uvxo$LLIB -Nn4000"
TARGET=$llib.c
- ln $llib $TARGET
+ ln "$llib" "$TARGET"
;;
Solaris)
CREATE="-C$llib"
TARGET=$llib.c
- ln $llib $TARGET
+ ln "$llib" "$TARGET"
;;
FreeBSD)
CREATE="-g -z -C$LLIB"
TARGET=$llib.c
- ln $llib $TARGET
+ ln "$llib" "$TARGET"
;;
CLIX)
CREATE="-DLINTLIBRARY -vxo$LLIB"
TARGET=$llib.c
- ln $llib $TARGET
+ ln "$llib" "$TARGET"
;;
IRIX*)
CREATE="-DLINTLIBRARY -vxyo$LLIB"
TARGET=$llib.c
- ln $llib $TARGET
+ ln "$llib" "$TARGET"
;;
UNIX_SV)
CREATE="-DLINTLIBRARY -vxyo$LLIB"
TARGET=$llib.c
- ln $llib $TARGET
+ ln "$llib" "$TARGET"
;;
*)
echo "Sorry. I do not know how to build a lint-library for $ARCH"
@@ -145,24 +145,24 @@ esac
echo OPT "$OPT"
echo TARGET "$TARGET"
echo LIBNAME "$llib"
-if ( lint $CREATE $OPT $TARGET )
+if ( lint "$CREATE" "$OPT" "$TARGET" )
then
- if test -f $llib.ln
+ if test -f "$llib.ln"
then
for p in $HOME/lib $HOME/lib/$ARCH $HOME/lib/$ARCH/lint
do
- if test ! -d $p
+ if test ! -d "$p"
then
- mkdir $p
+ mkdir "$p"
fi
done
for p in $DST
do
- cp $llib.ln $p/
+ cp "$llib.ln" "$p/"
done
- rm -f $llib.ln
+ rm -f "$llib.ln"
fi
fi
if test "x$TARGET" = "x$llib.c" ; then
- rm -f $TARGET
+ rm -f "$TARGET"
fi
diff --git a/misc/ncu2openbsd b/misc/ncu2openbsd
new file mode 100755
index 0000000..b066a10
--- /dev/null
+++ b/misc/ncu2openbsd
@@ -0,0 +1,1286 @@
+#!/usr/bin/env perl
+# $Id: ncu2openbsd,v 1.65 2021/10/03 18:52:22 tom Exp $
+# -----------------------------------------------------------------------------
+# Copyright 2021 by Thomas E. Dickey
+#
+# All Rights Reserved
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
+# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name(s) of the above copyright
+# holders shall not be used in advertising or otherwise to promote the
+# sale, use or other dealings in this Software without prior written
+# authorization.
+# -----------------------------------------------------------------------------
+# https://invisible-island.net/ncurses/ncurses-openbsd.html
+#
+# Update the OpenBSD source-tree given an ncurses tarball or build-tree.
+
+use strict;
+use warnings;
+
+use Getopt::Std;
+use Cwd;
+use Cwd 'abs_path';
+use File::Path qw/ remove_tree /;
+use File::Temp qw/ tempdir /;
+
+$| = 1;
+
+our ( $opt_d, $opt_n, $opt_r, $opt_t, $opt_v, $opt_x );
+our $source_dir;
+our $target_dir;
+our $update_dir;
+our $backup_dir;
+
+our $tempdir = tempdir( CLEANUP => 1 );
+my $current = getcwd;
+my $working = $current;
+
+our $generated_by = "generated by: ncu2openbsd";
+
+our %setup_dir = qw(
+ lib/libcurses ncurses
+ lib/libform form
+ lib/libmenu menu
+ lib/libpanel panel
+ usr.bin/infocmp progs
+ usr.bin/tabs progs
+ usr.bin/tic progs
+ usr.bin/toe progs
+ usr.bin/tput progs
+ usr.bin/tset progs
+ share/termtypes misc
+);
+
+our %generated = qw(
+ codes.c 1
+ comp_captab.c 1
+ comp_userdefs.c 1
+ expanded.c 1
+ fallback.c 1
+ init_keytry.h 1
+ keys.list 1
+ lib_gen.c 1
+ lib_keyname.c 1
+ make_hash 1
+ make_keys 1
+ names.c 1
+ termsort.c 1
+ unctrl.c 1
+);
+
+our %definitions = qw(
+ CAPTOINFO captoinfo
+ DATADIR /usr/share
+ INFOCMP infocmp
+ INFOTOCAP infotocap
+ NCURSES_MAJOR 5
+ NCURSES_MINOR 7
+ NCURSES_OSPEED int
+ NCURSES_PATCH 20081102
+ TERMINFO /usr/share/terminfo
+ TIC tic
+ TOE toe
+ TPUT tput
+ TSET tset
+);
+
+sub patchdate() {
+ return $definitions{"NCURSES_PATCH"};
+}
+
+sub failed($) {
+ chdir $current;
+ printf STDERR "? %s\n", $_[0];
+ exit;
+}
+
+sub verbose($) {
+ my $text = shift;
+ printf "%s\n", $text if ($opt_v);
+}
+
+sub read_file($) {
+ my $name = shift;
+ open( my $fp, $name ) || &failed("cannot open $name");
+ my (@input) = <$fp>;
+ chomp @input;
+ close($fp);
+ return @input;
+}
+
+sub read_dir($) {
+ my $path = shift;
+ my @result;
+ if ( opendir( my $dh, $path ) ) {
+ my @data = sort readdir($dh);
+ closedir $dh;
+ for my $d ( 0 .. $#data ) {
+ next if ( $data[$d] =~ /^\.(\.)?$/ );
+ next if ( -l $path . "/" . $data[$d] );
+ $result[ $#result + 1 ] = $data[$d];
+ }
+ }
+ return @result;
+}
+
+sub rename_dir($$) {
+ my $src = shift;
+ my $dst = shift;
+ printf "%% mv %s -> %s\n", $src, $dst if ($opt_v);
+ rename $src, $dst unless ($opt_n);
+}
+
+sub check_sourcedir($) {
+ my $path = shift;
+ &failed("not a directory: $path") unless ( -d $path );
+ my $full = abs_path($path);
+ chdir $full;
+ &failed("not an ncurses source-tree: $path")
+ unless ( -f "NEWS" and -f "dist.mk" );
+ $source_dir = $full;
+}
+
+sub unpack($) {
+ my $path = shift;
+ my $full = abs_path($path);
+ my $command = "";
+ if ( $path =~ /\.tgz$/ or $path =~ /\.tar\.gz$/ ) {
+ $command = "tar xzf %s";
+ }
+ elsif ( $path =~ /\.zip$/ ) {
+ $command = "unzip -q %s";
+ }
+ else {
+ &failed("not a gzip'd tarball or zip-file: $path");
+ }
+ chdir $tempdir;
+ system( sprintf( $command, $full ) );
+
+ # there should be exactly one subdirectory -- the source-tree
+ my @data = &read_dir(".");
+ &failed("found no subdirectories of $path") if ( $#data < 0 );
+ &failed( "too many subdirectories: " . $data[0] . " vs " . $data[1] )
+ if ( $#data > 0 );
+ &check_sourcedir( $data[0] );
+}
+
+sub remove_dir($) {
+ my $tree = shift;
+ if ( -d $tree ) {
+ printf "%% rm -rf %s\n", $tree if ($opt_v);
+ remove_tree( $tree, $opt_v ? 1 : 0, 1 ) unless ($opt_n);
+ }
+}
+
+sub copy_CVS($) {
+ my $leaf = shift;
+ my $src = $target_dir . $leaf . "/CVS";
+ my $dst = $update_dir . $leaf . "/CVS";
+ my $verbose = $opt_v ? "v" : "";
+ if ( -d $src and !-d $dst ) {
+ my $mid = $update_dir . $leaf;
+ mkdir $mid unless ( -d $mid );
+ mkdir $dst unless ( -d $dst );
+ system("cp -a$verbose $src/* $dst/");
+ }
+}
+
+sub is_tic_code($) {
+ my $item = shift;
+ my $result = 0;
+ $result = 1
+ if (
+ $item =~ /^(capconvert
+ |tic
+ |dump
+ |progs
+ |termsort
+ |transform
+ |MKtermsort)/x
+ );
+ return $result;
+}
+
+sub is_ident($$) {
+ my $name = shift;
+ my $text = shift;
+ my $code = 0;
+ $code = 1 if ( $text =~ /\$$name:.*\$/ );
+ return $code;
+}
+
+# We "could", filter out differences with ident's using the diff -I option,
+# but in practice, that is cumbersome.
+sub munge_ident($) {
+ my $target = shift;
+ my $source = $target;
+ $source =~ s/\.update\b//;
+ &failed("bug at $source") if ( $source eq $target );
+ return unless ( -f $source );
+ my @source = &read_file($source);
+ my @target = &read_file($target);
+ my $old_id = "";
+ my $gap_id = 0;
+ my $new_id = "";
+ my $skipit = -1;
+
+ for my $n ( 0 .. $#source ) {
+ if ( &is_ident( "OpenBSD", $source[$n] ) ) {
+ $old_id = $source[$n];
+ $skipit = $n + 1;
+ }
+ elsif ( &is_ident( "Id", $source[$n] ) ) {
+ $new_id = $source[$n];
+ last;
+ }
+ elsif ( $n == $skipit ) {
+ $source[$n] =~ s/\s+$//;
+ if ( $source[$n] eq "" ) {
+ $gap_id = $source[$n];
+ }
+ elsif ( $source[$n] eq '.\"' ) {
+ $gap_id = $source[$n];
+ }
+ }
+ }
+ if ( $old_id ne "" ) {
+ my @update;
+ my $tables = &uses_tables($target);
+ $update[ $#update + 1 ] = $target[0] if ($tables);
+ $update[ $#update + 1 ] = $old_id;
+ $update[ $#update + 1 ] = $gap_id unless ( $gap_id eq 0 );
+ for my $n ( $tables .. $#target ) {
+ if ( &is_ident( "Id", $target[$n] ) ) {
+ $update[ $#update + 1 ] = $new_id;
+ }
+ else {
+ $update[ $#update + 1 ] = $target[$n];
+ }
+ }
+ system("chmod u+w $target");
+ if ( open my $fp, ">", $target ) {
+ for my $n ( 0 .. $#update ) {
+ printf $fp "%s\n", $update[$n];
+ }
+ close $fp;
+ system("chmod u-w $target");
+ }
+ }
+}
+
+# ncurses manual pages provide for renaming the utilities, normally as part of
+# the scripts provided in its sources. OpenBSD developers do not use those.
+sub munge_docs($) {
+ my $path = shift;
+ my @data = &read_file($path);
+ my $done = 0;
+ for my $n ( 0 .. $#data ) {
+ my $text = $data[$n];
+ $text =~ s/\b1M\b/1/g;
+ $text =~ s/\b3X\b/3/g;
+ $text =~ s/\bcurs_(term(info|cap)\s*3\b)/$1/g;
+ $text =~ s/(\\fB)curs_(term(info|cap)\\f[RP]\(3\))/$1$2/g;
+ my $left = "";
+ while ( $text =~ /@[[:alnum:]_]+@/ ) {
+ my $next = index( $text, "@" );
+ last if ( $next < 0 );
+ $left .= substr( $text, 0, $next++ );
+ $text = substr( $text, $next );
+ $next = index( $text, "@" );
+ last if ( $next < 0 );
+ my $word = substr( $text, 0, $next );
+ if ( $word =~ /^[[:alnum:]_]+/ ) {
+
+ if ( $definitions{$word} ) {
+ $word = $definitions{$word};
+ }
+ else {
+ $word = "?";
+ }
+ $left .= $word;
+ $text = substr( $text, $next + 1 );
+ }
+ else {
+ &failed("unexpected definition @$word@");
+ }
+ }
+ $text = $left . $text;
+ if ( $text ne $data[$n] ) {
+ $done++;
+ $data[$n] = $text;
+ }
+ }
+ if ($done) {
+ system("chmod u+w $path");
+ if ( open my $fp, ">", $path ) {
+ for my $n ( 0 .. $#data ) {
+ printf $fp "%s\n", $data[$n];
+ }
+ close $fp;
+ system("chmod u-w $path");
+ }
+ }
+}
+
+sub copy_file($$) {
+ my $src = shift;
+ my $dst = shift;
+ my $verbose = $opt_v ? "v" : "";
+ if ( -d $dst ) {
+ my $leaf = $src;
+ $leaf =~ s,^.*/,,;
+ $dst .= "/" . $leaf;
+ }
+ system("chmod u+w $dst") if ( -f $dst );
+ system("cp -a$verbose $src $dst");
+ &munge_ident($dst);
+}
+
+sub copy_code($) {
+ my $src = shift;
+ my $dst = shift;
+ &copy_CVS( substr( $dst, length($update_dir) ) );
+ printf ".. copying files for $dst\n";
+ my @data = &read_dir($src);
+ printf ".. %d entries\n", $#data + 1;
+ my $verbose = $opt_v ? "v" : "";
+ for my $d ( 0 .. $#data ) {
+ my $item = $data[$d];
+ my $src_item = $src . "/" . $item;
+ next if ( -d $src_item );
+ next if ( -l $src_item );
+ next if ( $item =~ /^\.(\.)?$/ );
+ next if ( $item =~ /\.(bak|in|log|status)$/ );
+ next if ( $item =~ /^llib-/ );
+ next if ( $item =~ /^modules/ );
+ next if ( $item =~ /^[fm]_trace\.c/ and not $opt_t );
+ next
+ if ( $item =~ /^Makefile/ and index( $update_dir, "/share/" ) < 0 );
+ next if ( $item =~ /^README/ );
+ next if ( $item eq "headers" );
+ next if ( $generated{$item} );
+ next if ( $item eq "link_test.c" );
+
+ if ( index( $dst, "/usr.bin/" ) >= 0 ) {
+ next if ( $item =~ /^(clear)/ ); # OpenBSD uses "tput clear"
+ my $prog = $dst;
+ $prog =~ s%^.*/%%;
+ $prog =~ s/(update|backup)//;
+ $prog .= "c";
+ if ( $dst =~ /infocmp/ ) {
+ next if ( $item ne $prog );
+ }
+ elsif ( $dst =~ /tabs/ ) {
+ next if ( $item ne $prog );
+ }
+ elsif ( $dst =~ /tic/ ) {
+ next if ( &is_tic_code($item) == 0 );
+ }
+ elsif ( $dst =~ /toe/ ) {
+ next if ( $item ne $prog );
+ }
+ elsif ( $dst =~ /tput/ ) {
+ next if ( $item ne $prog );
+ }
+ elsif ( $dst =~ /tset/ ) {
+ next if ( $item ne $prog );
+ }
+ else {
+ next;
+ }
+ }
+ system( sprintf( "cp -a$verbose %s %s/%s", $src_item, $dst, $item ) );
+ &munge_ident("$dst/$item");
+ }
+}
+
+# Checking if nroff supports tables is a long-obsolete issue, and is not really
+# necessary, except to match OpenBSD's source-tree.
+sub uses_tables($) {
+ my $docs = shift;
+ my @docs = &read_file($docs);
+ my $code = 0;
+ for my $n ( 0 .. $#docs ) {
+ if ( $docs[$n] =~ /^[.']\\"\s+t\b.*/ ) {
+ $code = 1;
+ last;
+ }
+ elsif ( $docs[$n] =~ /^\./ ) {
+ last;
+ }
+ }
+ return $code;
+}
+
+sub copy_1doc($$) {
+ my $docs = shift;
+ my $src = "$source_dir/man/$docs";
+ my $dst = "$update_dir/$docs";
+ $src .= "m" if ( -f "${src}m" );
+ $dst =~ s/x$//;
+ if ( $dst =~ /\.3/ ) {
+ $dst =~ s/\bncurses/curses/ if ( $dst =~ /ncurses\./ );
+ $dst =~ s/\bcurs_// if ( $dst =~ /_term(cap|info)\./ );
+ }
+ &copy_file( $src, $dst );
+ &munge_docs($dst);
+}
+
+sub copy_docs($) {
+ my $docs = shift;
+ if ( index( $update_dir, "/usr.bin/" ) >= 0 ) {
+ &copy_1doc( $docs . ".1" );
+ if ( $docs eq "tic" ) {
+ &copy_1doc("captoinfo.1");
+ &copy_1doc("infotocap.1");
+ }
+ }
+ else {
+ my @docs = &read_dir("$source_dir/man");
+ if ( $docs eq "curses" ) {
+ for my $n ( 0 .. $#docs ) {
+ next if ( $docs[$n] eq "Makefile" );
+ next if ( $docs[$n] eq "make_sed.sh" );
+ next if ( $docs[$n] eq "man_db.renames" );
+ next if ( $docs[$n] eq "manlinks.sed" );
+ next if ( $docs[$n] =~ /\.(1|head|tail|in)/ );
+ next if ( $docs[$n] =~ /^(form|menu|mitem|panel)/ );
+ &copy_1doc( $docs[$n] );
+ }
+ }
+ elsif ( $docs eq "form" ) {
+ for my $n ( 0 .. $#docs ) {
+ next unless ( $docs[$n] =~ /^form/ );
+ &copy_1doc( $docs[$n] );
+ }
+ }
+ elsif ( $docs eq "menu" ) {
+ for my $n ( 0 .. $#docs ) {
+ next unless ( $docs[$n] =~ /^(menu|mitem)/ );
+ &copy_1doc( $docs[$n] );
+ }
+ }
+ elsif ( $docs eq "panel" ) {
+ for my $n ( 0 .. $#docs ) {
+ next unless ( $docs[$n] =~ /^panel/ );
+ &copy_1doc( $docs[$n] );
+ }
+ }
+ }
+}
+
+sub setup_dir($) {
+ my $dst = shift;
+ &failed("no definition for $dst")
+ unless ( defined $setup_dir{$dst} or $opt_r );
+ $target_dir = sprintf( "%s/%s", $opt_d, $dst );
+ $update_dir = $target_dir . ".update";
+ $backup_dir = $target_dir . ".backup";
+ my $result = 0;
+ if ($opt_r) {
+ &remove_dir($update_dir);
+ if ( $target_dir =~ /\/(tabs|toe)$/ ) {
+ &remove_dir($target_dir);
+ }
+ elsif ( -d $backup_dir ) {
+ &remove_dir($target_dir);
+ &rename_dir( $backup_dir, $target_dir );
+ }
+ }
+ else {
+ &remove_dir($update_dir);
+ mkdir $update_dir;
+
+ # reuse the shared-library version, assuming ABI=5 would involve at
+ # most a minor-version bump.
+ &copy_file( "$target_dir/shlib_version", $update_dir )
+ if ( $dst =~ /^lib\// );
+ &copy_code( $source_dir . "/" . $setup_dir{$dst}, $update_dir )
+ unless ( $setup_dir{$dst} eq "misc" );
+ $result = 1;
+ }
+ return $result;
+}
+
+sub do_build($) {
+ my $command = shift;
+ printf "%% %s\n", $command if ($opt_v);
+ system($command);
+}
+
+sub finish_dir() {
+ printf "** $target_dir\n";
+ system("diff -Naurb $target_dir $update_dir | diffstat -n 30")
+ if ( -d $target_dir );
+ if ($opt_n) {
+ &do_build("cd $update_dir && make -n") if ($opt_x);
+ }
+ else {
+ if ( -d $backup_dir ) {
+ printf STDERR "? backup directory exists: %s\n", $backup_dir;
+ }
+ else {
+ &rename_dir( $target_dir, $backup_dir );
+ &rename_dir( $update_dir, $target_dir );
+ }
+ &do_build("cd $target_dir && make") if ($opt_x);
+ }
+}
+
+################################################################################
+
+sub only_c_files($) {
+ my @data = @{ $_[0] };
+ my %data;
+ for my $n ( 0 .. $#data ) {
+ my $text = $data[$n];
+ $data{$text}++ if ( $text =~ /\.c$/ );
+ }
+ return sort keys %data;
+}
+
+sub makefile_list($$$) {
+ my @data = @{ $_[0] };
+ my $name = $_[1];
+ my $skip = $_[2];
+ my %data;
+ my $state = 0;
+ for my $n ( 0 .. $#data ) {
+ my $text = $data[$n];
+ $text =~ s/^\s+//;
+ next if ( index( $text, $skip ) == 0 );
+ $text =~ s/\s+=/=/;
+ $text =~ s/=\s+/=/;
+ $text =~ s/\s*\\//;
+ $state = 1 if ( $text =~ /^${name}=/ );
+ next unless ( $state == 1 );
+
+ if ( index( $text, "(trace)" ) >= 0 and not $opt_t ) {
+ next unless ( $text =~ /\b(lib_trace|visbuf)\.c$/ );
+ }
+ if ( not $opt_t ) {
+ next if ( $text =~ /\b[fm]_trace\.c$/ );
+ }
+ $text =~ s/^.*=//;
+ $text =~ s/\$o/.o/g;
+ $text =~ s/^.*\///;
+ next if ( $text eq "link_test.c" );
+ next if ( $text eq "mf_common.h" );
+ next if ( $text eq "transform.h" );
+ $data{$text}++ if ( $text ne "" );
+ last if ( $data[$n] !~ /\\$/ );
+ }
+ return sort keys %data;
+}
+
+sub manpage_list($) {
+ my $path = shift;
+ my @data = &read_dir($path);
+ my %data;
+ for my $n ( 0 .. $#data ) {
+ my $text = $data[$n];
+ $data{$text}++ if ( $text =~ /\.\d$/ );
+ }
+ return sort keys %data;
+}
+
+sub columns_of($) {
+ my $string = shift;
+ my $result = 0;
+ for my $n ( 0 .. length($string) - 1 ) {
+ my $c = substr( $string, $n, 1 );
+ if ( $c eq "\t" ) {
+ $result |= 7;
+ $result++;
+ }
+ elsif ( $c eq "\n" ) {
+ $result = 0;
+ }
+ else {
+ ++$result;
+ }
+ }
+ return $result;
+}
+
+sub format_list($$) {
+ my $name = $_[0];
+ my @data = @{ $_[1] };
+ my $keep = ( defined $_[2] ) ? 1 : 0;
+ my $base;
+ my $fill;
+ if ( length($name) >= 9 ) {
+ $fill = " ";
+ $base = length($name) + 1;
+ }
+ else {
+ $base = 9;
+ $fill = "\t";
+ }
+ my $result = sprintf( "%s%s", $name, $fill );
+ if ( $keep == 0 ) {
+ my %data;
+ for my $n ( 0 .. $#data ) {
+ $data{ $data[$n] } = 1 if ( defined $data[$n] );
+ }
+ @data = sort keys %data;
+ }
+ for my $n ( 0 .. $#data ) {
+ my $data = $data[$n];
+ my $col = &columns_of($result);
+ my $add = 1 + length($data);
+ if ( ( $col + $add ) > 76 ) {
+ $result .= " " if ( $col > $base );
+ $base = 9;
+ $fill = "\t";
+ $result .= "\\\n" . $fill . $data;
+ }
+ else {
+ $result .= " " if ( $col > $base );
+ $result .= $data;
+ }
+ }
+ return $result;
+}
+
+################################################################################
+
+sub compare_makefiles($) {
+ if ($opt_v) {
+ my $newfile = shift;
+ my $bakfile =
+ ( -d $backup_dir ? $backup_dir : $target_dir ) . "/Makefile";
+ system("diff -u $bakfile $newfile") if ( -f $bakfile );
+ }
+}
+
+# The curses makefile has to build build-time utilities and generate source.
+sub gen_1st_makefile() {
+ my $libname = "curses";
+ my $oldfile = "$source_dir/n$libname/Makefile";
+ my @oldfile = &read_file($oldfile);
+
+ my $newfile = "$update_dir/Makefile";
+ open( my $fp, ">", $newfile ) || &failed("cannot open $newfile");
+ my @subdirs = (
+ '${.CURDIR}/base', '${.CURDIR}/tinfo',
+ '${.CURDIR}/tty', '${.CURDIR}/widechar'
+ );
+ $subdirs[ $#subdirs + 1 ] = '${.CURDIR}/trace' if ($opt_t);
+ printf $fp <<EOF;
+# $generated_by
+
+LIB= $libname
+
+# Uncomment this to enable tracing in libcurses
+#CURSESTRACE=-DTRACE
+
+# This is used to compile terminal info directly into the library
+FALLBACK_LIST=
+
+# XXX - should be defined elsewhere
+AWK?= /usr/bin/awk
+
+# Search in subdirs
+EOF
+ printf $fp "%s\n", &format_list( ".PATH:", \@subdirs );
+
+ my @autosrc = &makefile_list( \@oldfile, "AUTO_SRC", "?" );
+ my @auto_cc = &only_c_files( \@autosrc );
+ printf $fp "%s\n", &format_list( "SRCS=", \@auto_cc );
+
+ my @sources = &makefile_list( \@oldfile, "C_SRC", "./" );
+ printf $fp "%s\n", &format_list( "SRCS+=", \@sources );
+
+ printf $fp <<EOF;
+
+HOSTCFLAGS?= \${CFLAGS}
+HOSTLDFLAGS?= \${LDFLAGS}
+HOSTCFLAGS+= -I. -I\${.CURDIR} \${CURSESTRACE}
+CFLAGS+= -I. -I\${.CURDIR} \${CURSESTRACE} -D_XOPEN_SOURCE_EXTENDED -DNDEBUG
+
+EOF
+ my @manpages = &manpage_list($update_dir);
+ printf $fp "%s\n", &format_list( "MAN=", \@manpages );
+
+ $autosrc[ $#autosrc++ ] = "make_hash";
+ $autosrc[ $#autosrc++ ] = "make_keys";
+ printf $fp "%s\n", &format_list( "GENERATED=", \@autosrc );
+ printf $fp <<EOF;
+
+CAPLIST = \${.CURDIR}/Caps
+USE_BIG_STRINGS = 1
+
+CLEANFILES+= \${GENERATED}
+
+BUILDFIRST = \${GENERATED}
+
+includes:
+ \@cmp -s \${DESTDIR}/usr/include/ncurses.h \${.CURDIR}/curses.h || \\
+ \${INSTALL} \${INSTALL_COPY} -m 444 -o \$(BINOWN) -g \$(BINGRP) \\
+ \${.CURDIR}/curses.h \${DESTDIR}/usr/include/ncurses.h
+ \@cd \${.CURDIR}; for i in ncurses_dll.h unctrl.h term.h termcap.h; do \\
+ cmp -s \$\$i \${DESTDIR}/usr/include/\$\$i || \\
+ \${INSTALL} \${INSTALL_COPY} -m 444 -o \$(BINOWN) -g \$(BINGRP) \$\$i \\
+ \${DESTDIR}/usr/include; done
+
+keys.list: \${.CURDIR}/tinfo/MKkeys_list.sh
+ sh \${.CURDIR}/tinfo/MKkeys_list.sh \${.CURDIR}/Caps | sort > \${.TARGET}
+
+fallback.c: \${.CURDIR}/tinfo/MKfallback.sh
+ sh \${.CURDIR}/tinfo/MKfallback.sh /usr/share/terminfo \${.CURDIR}/../../share/termtypes/termtypes.master \$(FALLBACK_LIST) > \${.TARGET}
+
+lib_gen.c: \${.CURDIR}/base/MKlib_gen.sh
+ sh \${.CURDIR}/base/MKlib_gen.sh "\${CC} -E -P -I\${.CURDIR}" \\
+ "\${AWK}" generated < \${.CURDIR}/curses.h > lib_gen.c
+
+init_keytry.h: make_keys keys.list
+ ./make_keys keys.list > \${.TARGET}
+
+make_keys: \${.CURDIR}/tinfo/make_keys.c \${.CURDIR}/curses.priv.h names.c
+ \${HOSTCC} \${LDSTATIC} \${HOSTCFLAGS} \${HOSTLDFLAGS} \\
+ -o \${.TARGET} \${.CURDIR}/tinfo/make_keys.c \${LDADD}
+EOF
+
+ if ( &patchdate >= 20090808 ) {
+ printf $fp <<EOF;
+make_hash: \${.CURDIR}/tinfo/make_hash.c \\
+ \${.CURDIR}/curses.priv.h \\
+ \${.CURDIR}/hashsize.h
+ \${HOSTCC} \${LDSTATIC} \${HOSTCFLAGS} -DMAIN_PROGRAM \${HOSTLDFLAGS} \\
+ -o \${.TARGET} \${.CURDIR}/tinfo/make_hash.c \${LDADD}
+EOF
+ }
+ else {
+ printf $fp <<EOF;
+make_hash: \${.CURDIR}/tinfo/comp_hash.c \\
+ \${.CURDIR}/curses.priv.h \\
+ \${.CURDIR}/hashsize.h
+ \${HOSTCC} \${LDSTATIC} \${HOSTCFLAGS} -DMAIN_PROGRAM \${HOSTLDFLAGS} \\
+ -o \${.TARGET} \${.CURDIR}/tinfo/comp_hash.c \${LDADD}
+EOF
+ }
+
+ if ( &patchdate >= 20190309 ) {
+ printf $fp <<EOF;
+CAPLIST += \${.CURDIR}/Caps-ncurses
+
+comp_userdefs.c: make_hash \\
+ \${.CURDIR}/hashsize.h \\
+ \${.CURDIR}/tinfo/MKuserdefs.sh
+ sh \${.CURDIR}/tinfo/MKuserdefs.sh \${AWK} \${USE_BIG_STRINGS} \${CAPLIST} > \${.TARGET}
+EOF
+ }
+ printf $fp <<EOF;
+
+expanded.c: \${.CURDIR}/term.h \${.CURDIR}/curses.priv.h \\
+ \${.CURDIR}/ncurses_cfg.h \${.CURDIR}/tty/MKexpanded.sh
+ sh \${.CURDIR}/tty/MKexpanded.sh "\${CC} -E -P" \${CPPFLAGS} > \${.TARGET}
+
+comp_captab.c: make_hash
+ sh \${.CURDIR}/tinfo/MKcaptab.sh \${AWK} \${USE_BIG_STRINGS} \\
+ \${.CURDIR}/tinfo/MKcaptab.awk \${CAPLIST} > \${.TARGET}
+
+lib_keyname.c: keys.list \${.CURDIR}/base/MKkeyname.awk
+ \${AWK} -f \${.CURDIR}/base/MKkeyname.awk \\
+ bigstrings=\${USE_BIG_STRINGS} \\
+ keys.list > \${.TARGET}
+
+names.c: \${.CURDIR}/tinfo/MKnames.awk
+ \${AWK} -f \${.CURDIR}/tinfo/MKnames.awk \\
+ bigstrings=\${USE_BIG_STRINGS} \\
+ \${CAPLIST} > \${.TARGET}
+codes.c: \${.CURDIR}/tinfo/MKcodes.awk
+ \${AWK} -f \${.CURDIR}/tinfo/MKcodes.awk \\
+ bigstrings=\${USE_BIG_STRINGS} \\
+ \${CAPLIST} > \${.TARGET}
+
+unctrl.c: \${.CURDIR}/base/MKunctrl.awk
+ echo | \${AWK} -f \${.CURDIR}/base/MKunctrl.awk bigstrings=1 > \${.TARGET}
+
+.include <bsd.own.mk>
+
+# Link libtermlib, libtermcap to libcurses so we don't break people's Makefiles
+afterinstall:
+ -cd \${DESTDIR}\${LIBDIR}; \\
+ for i in \${_LIBS}; do \\
+ ln -f \$\$i `echo \$\$i | sed 's/curses/termlib/'`; \\
+ ln -f \$\$i `echo \$\$i | sed 's/curses/termcap/'`; \\
+ ln -f \$\$i `echo \$\$i | sed 's/curses/ncurses/'`; \\
+ ln -f \$\$i `echo \$\$i | sed 's/curses/ncursesw/'`; \\
+ done
+
+.include <bsd.lib.mk>
+EOF
+ close $fp;
+ &compare_makefiles($newfile);
+}
+
+sub gen_lib_makefile($) {
+ my $libname = shift;
+ my $oldfile = "$source_dir/$libname/Makefile";
+ my @oldfile = &read_file($oldfile);
+
+ # in ncurses, header-files are quasi-generated, because the original
+ # header file for form/menu/panel lives in the source-directory, but is
+ # copied to the include-directory with "make sources".
+ my @headers = &makefile_list( \@oldfile, "AUTO_SRC", "?" );
+
+ # The C source is more straightforward.
+ my @sources = &makefile_list( \@oldfile, "C_SRC", "?" );
+ my $newfile = "$update_dir/Makefile";
+ open( my $fp, ">", $newfile ) || &failed("cannot open $newfile");
+ printf $fp <<EOF;
+# $generated_by
+
+LIB= $libname
+EOF
+
+ printf $fp "%s\n", &format_list( "SRCS=", \@sources );
+ printf $fp "%s\n", &format_list( "HDRS=", \@headers );
+ my $includes = '-I${.CURDIR}/../libcurses';
+ $includes .= ' -I${.CURDIR}/../libmenu' if ( $libname eq "form" );
+ printf $fp <<EOF;
+CFLAGS+=$includes -D_XOPEN_SOURCE_EXTENDED -DNDEBUG
+EOF
+ my @manpages = &manpage_list($update_dir);
+ printf $fp "%s\n", &format_list( "MAN=", \@manpages );
+ printf $fp <<EOF;
+
+includes:
+ \@cd \$\{.CURDIR}; for i in \$\{HDRS}; do \\
+ cmp -s \$\$i \${DESTDIR}/usr/include/\$\$i || \\
+ \${INSTALL} \${INSTALL_COPY} -m 444 -o \$(BINOWN) -g \$(BINGRP) \$\$i \\
+ \${DESTDIR}/usr/include; done
+
+.include <bsd.own.mk>
+
+afterinstall:
+ -cd \${DESTDIR}\${LIBDIR}; \\
+ for i in \${_LIBS}; do \\
+ ln -f \$\$i `echo \$\$i | sed 's/${libname}/${libname}w/'`; \\
+ done
+
+.include <bsd.lib.mk>
+EOF
+ close $fp;
+ &compare_makefiles($newfile);
+}
+
+sub gen_bin_makefile($) {
+ my $binname = shift;
+ my $oldfile = "$source_dir/progs/Makefile";
+ my @oldfile = &read_file($oldfile);
+ my $newfile = "$update_dir/Makefile";
+
+ open( my $fp, ">", $newfile ) || &failed("cannot open $newfile");
+ my @sources = ("$binname.c");
+ my @links = ();
+ my @autosrc = &makefile_list( \@oldfile, "AUTO_SRC", "?" );
+
+ my $tput_ver = 0;
+ my $use_dump_entry = 0;
+ my $use_termsort = 0;
+ my $use_tparm_type = 0;
+ my $use_transform = 0;
+
+ $use_dump_entry = 1 if ( $binname eq "infocmp" or $binname eq "tic" );
+ $use_termsort = 1 if ( $use_dump_entry or $binname eq "tput" );
+
+ if ( &patchdate >= 20090314 ) {
+ $use_transform = 1 if ( $binname =~ /^(tic|tput|tset)/ );
+ }
+ if ( &patchdate >= 20140521 ) {
+ $use_tparm_type = 1 if ( $binname =~ /^(tic|tput)$/ );
+ }
+ if ( &patchdate >= 20160806 ) {
+ $tput_ver = &patchdate;
+ }
+
+ $sources[ ++$#sources ] = "dump_entry.c" if ($use_dump_entry);
+ $sources[ ++$#sources ] = "tparm_type.c" if ($use_tparm_type);
+ $sources[ ++$#sources ] = "transform.c" if ($use_transform);
+
+ $autosrc[ ++$#autosrc ] = "termsort.c" if ($use_termsort);
+
+ # transform.h also is generated, but OpenBSD checked-in a copy
+
+ if ( $binname eq "tic" ) {
+ $links[ ++$#links ] = "captoinfo";
+ $links[ ++$#links ] = "infotocap";
+ }
+ elsif ( $binname eq "tabs" ) {
+ $sources[ ++$#sources ] = "tty_settings.c" if ( $tput_ver >= 20161224 );
+ }
+ elsif ( $binname eq "tput" ) {
+ $sources[ ++$#sources ] = "clear_cmd.c" if ( $tput_ver >= 20161022 );
+ $sources[ ++$#sources ] = "reset_cmd.c" if ( $tput_ver >= 20160806 );
+ $sources[ ++$#sources ] = "tty_settings.c" if ( $tput_ver >= 20161224 );
+ $links[ ++$#links ] = "clear";
+ }
+ elsif ( $binname eq "tset" ) {
+ $sources[ ++$#sources ] = "reset_cmd.c" if ( $tput_ver >= 20160806 );
+ $sources[ ++$#sources ] = "tty_settings.c" if ( $tput_ver >= 20161224 );
+ $links[ ++$#links ] = "reset";
+ }
+
+ printf $fp <<EOF;
+# $generated_by
+
+PROG= $binname
+EOF
+ printf $fp "%s\n", &format_list( "SRCS=", \@sources );
+ printf $fp <<EOF;
+CURSES= \${.CURDIR}/../../lib/libcurses
+DPADD= \${LIBCURSES}
+LDADD= -L\${CURSES} -lcurses\t# in-tree link to add _nc_strict_bsd, etc
+EOF
+ if ( $#links >= 0 ) {
+ my @bin_links;
+ for my $n ( 0 .. $#links ) {
+ $bin_links[ ++$#bin_links ] = '${BINDIR}/' . $binname;
+ $bin_links[ ++$#bin_links ] = '${BINDIR}/' . $links[$n];
+ }
+ printf $fp "%s\n", &format_list( "LINKS=", \@bin_links, 1 );
+ }
+ my $ticfix = '${.CURDIR}/';
+ if ( $binname eq "tic" ) {
+ printf $fp <<EOF;
+CFLAGS+= -I\${CURSES} -I\${.CURDIR} -I.
+EOF
+ }
+ else {
+ $ticfix = '${TIC}/';
+ printf $fp <<EOF;
+TIC= \${.CURDIR}/../tic
+CFLAGS+= -I\${CURSES} -I\${TIC} -I\${.CURDIR} -I.
+.PATH: \${TIC}
+EOF
+ }
+ printf $fp "%s\n", &format_list( "CLEANFILES+=", \@autosrc );
+ if ($use_dump_entry) {
+ printf $fp <<EOF;
+
+dump_entry.o: termsort.c
+EOF
+ }
+ if ($use_termsort) {
+ printf $fp <<EOF;
+
+termsort.c: ${ticfix}MKtermsort.sh
+ sh ${ticfix}MKtermsort.sh awk \${CURSES}/Caps > \${.TARGET}
+EOF
+ }
+ printf $fp <<EOF;
+
+.include <bsd.prog.mk>
+EOF
+ close $fp;
+
+ &compare_makefiles($newfile);
+}
+
+################################################################################
+
+sub setup_lib_libcurses() {
+ if ( &setup_dir("lib/libcurses") ) {
+ &copy_code( "$source_dir/ncurses/base", "$update_dir/base" );
+ &copy_code( "$source_dir/ncurses/tinfo", "$update_dir/tinfo" );
+ &copy_code( "$source_dir/ncurses/tty", "$update_dir/tty" );
+ &copy_code( "$source_dir/ncurses/widechar", "$update_dir/widechar" );
+ &copy_file( "$source_dir/include/Caps", $update_dir );
+ &copy_file( "$source_dir/include/capdefaults.c", $update_dir );
+ &copy_file( "$source_dir/include/curses.h", $update_dir );
+ &copy_file( "$source_dir/include/hashed_db.h", $update_dir );
+ &copy_file( "$source_dir/include/hashsize.h", $update_dir );
+ &copy_file( "$source_dir/include/nc_alloc.h", $update_dir );
+ &copy_file( "$source_dir/include/nc_panel.h", $update_dir );
+ &copy_file( "$source_dir/include/nc_tparm.h", $update_dir );
+ &copy_file( "$source_dir/include/ncurses_cfg.h", $update_dir );
+ &copy_file( "$source_dir/include/ncurses_def.h", $update_dir );
+ &copy_file( "$source_dir/include/ncurses_dll.h", $update_dir );
+ &copy_file( "$source_dir/include/parametrized.h", $update_dir );
+ &copy_file( "$source_dir/include/term.h", $update_dir );
+ &copy_file( "$source_dir/include/termcap.h", $update_dir );
+ &copy_file( "$source_dir/include/term_entry.h", $update_dir );
+ &copy_file( "$source_dir/include/tic.h", $update_dir );
+ &copy_file( "$source_dir/include/unctrl.h", $update_dir );
+ &copy_file( "$source_dir/man/terminfo.5", $update_dir );
+ &copy_docs("curses");
+
+ &verbose(".. work around a bug in /bin/sh in OpenBSD");
+ system( "sed -i"
+ . " -e 's,^shift,test \$# != 0 \\&\\& shift,'"
+ . " $update_dir/tinfo/MKfallback.sh" );
+
+ # OpenBSD dropped support for sys/ttydev.h, without mentioning the
+ # system version. Just trim it.
+ &verbose(".. work around mishandled sys/ttydef.h");
+ system( "sed -i"
+ . " -e '/__FreeBSD_version/s,|| defined(__OpenBSD__),,'"
+ . " $update_dir/tinfo/lib_baudrate.c" );
+
+ if ($opt_t) {
+ &copy_code( "$source_dir/ncurses/trace", "$update_dir/trace" );
+ }
+ else {
+ &copy_file( "$source_dir/ncurses/trace/lib_trace.c", $update_dir );
+ &copy_file( "$source_dir/ncurses/trace/visbuf.c", $update_dir );
+ }
+ &copy_file( "$source_dir/include/nc_termios.h", $update_dir )
+ if ( &patchdate >= 20110625 );
+ &copy_file( "$source_dir/include/nc_string.h", $update_dir )
+ if ( &patchdate >= 20120222 );
+ &copy_file( "$source_dir/include/nc_access.h", $update_dir )
+ if ( &patchdate >= 20210626 );
+ &copy_file( "$source_dir/include/Caps-ncurses", $update_dir )
+ if ( &patchdate >= 20190302 );
+ &gen_1st_makefile;
+ &finish_dir;
+ }
+}
+
+sub setup_lib_libform() {
+ if ( &setup_dir("lib/libform") ) {
+ &copy_docs("form");
+ &gen_lib_makefile("form");
+ &finish_dir;
+ }
+}
+
+sub setup_lib_libmenu() {
+ if ( &setup_dir("lib/libmenu") ) {
+ &copy_docs("menu");
+ &gen_lib_makefile("menu");
+ &finish_dir;
+ }
+}
+
+sub setup_lib_libpanel() {
+ if ( &setup_dir("lib/libpanel") ) {
+ &copy_docs("panel");
+ &gen_lib_makefile("panel");
+ &finish_dir;
+ }
+}
+
+sub setup_bin_infocmp() {
+ if ( &setup_dir("usr.bin/infocmp") ) {
+ &copy_docs("infocmp");
+ &gen_bin_makefile("infocmp");
+ &finish_dir;
+ }
+}
+
+sub setup_bin_tabs() {
+ if ( &setup_dir("usr.bin/tabs") ) {
+ &copy_docs("tabs");
+ &gen_bin_makefile("tabs");
+ &finish_dir;
+ }
+}
+
+sub setup_bin_tic() {
+ if ( &setup_dir("usr.bin/tic") ) {
+ if ( &patchdate >= 20140521 ) {
+ &copy_file( "$source_dir/progs/tparm_type.c", $update_dir );
+ &copy_file( "$source_dir/progs/tparm_type.h", $update_dir );
+ }
+
+ # shared files for tput/tset
+ if ( &patchdate >= 20160806 ) {
+ &copy_file( "$source_dir/progs/reset_cmd.c", $update_dir );
+ &copy_file( "$source_dir/progs/reset_cmd.h", $update_dir );
+ }
+ if ( &patchdate >= 20161022 ) {
+ &copy_file( "$source_dir/progs/clear_cmd.c", $update_dir );
+ &copy_file( "$source_dir/progs/clear_cmd.h", $update_dir );
+ }
+ if ( &patchdate >= 20161224 ) {
+ &copy_file( "$source_dir/progs/tty_settings.c", $update_dir );
+ &copy_file( "$source_dir/progs/tty_settings.h", $update_dir );
+ }
+ &copy_docs("tic");
+ &gen_bin_makefile("tic");
+ &finish_dir;
+ }
+}
+
+sub setup_bin_toe() {
+ if ( &setup_dir("usr.bin/toe") ) {
+ &copy_docs("toe");
+ &gen_bin_makefile("toe");
+ &finish_dir;
+ }
+}
+
+sub setup_bin_tput() {
+ if ( &setup_dir("usr.bin/tput") ) {
+ &copy_docs("tput");
+ &gen_bin_makefile("tput");
+ &finish_dir;
+ }
+}
+
+sub setup_bin_tset() {
+ if ( &setup_dir("usr.bin/tset") ) {
+ &copy_docs("tset");
+ &gen_bin_makefile("tset");
+ &finish_dir;
+ }
+}
+
+sub setup_terminfo() {
+ if ( &setup_dir("share/termtypes") ) {
+ &copy_code( $target_dir, $update_dir );
+ &copy_file( "$source_dir/misc/terminfo.src",
+ "$update_dir/termtypes.master" );
+
+ # build the terminfo database using the in-tree tic.
+ # This is always best practice, but for ncurses 6.2 in particular is
+ # required.
+ my $prog = abs_path("$target_dir/../../usr.bin/tic");
+ my $libs = abs_path("$target_dir/../../lib/libcurses");
+ if ( defined $prog and defined $libs ) {
+ $prog .= "/tic";
+ &verbose(".. changing makefile to use in-tree tic");
+ system( "sed -i -E "
+ . "-e 's,(TIC=).*,\\1\t$prog,' "
+ . "-e 's,(\\\${TIC}),LD_LIBRARY_PATH=$libs \\1,' "
+ . "$update_dir/Makefile" );
+ }
+ &finish_dir;
+ }
+}
+
+sub configure_tree() {
+ return if ( -f "ncurses/Makefile" );
+ my @search = ( "/usr/share/terminfo", "/usr/local/share/terminfo" );
+ my @prefix = ("./configure");
+ $prefix[ ++$#prefix ] = "--with-abi-version=5"
+ if ( &patchdate >= 20150502 );
+ my @options = (
+ "--with-ospeed=int", #
+ "--with-shared", #
+ "--without-normal", #
+ "--without-debug", #
+ "--with-terminfo-dirs=" . join( ':', @search ), #
+ "--without-ada", #
+ "--disable-hard-tabs", #
+ "--enable-const", #
+ "--enable-getcap", #
+ "--enable-bsdpad", #
+ "--enable-signed-char", #
+ "--enable-termcap", #
+ "--enable-widec"
+ );
+ $options[ ++$#options ] = "--with-trace" if ($opt_t);
+ $options[ ++$#options ] = "--enable-string-hacks"
+ if ( &patchdate >= 20120225 );
+ system( join( ' ', @prefix ) . ' ' . join( ' ', @options ) );
+ &failed("problem with configuring") unless ( -f "ncurses/Makefile" );
+
+ system("make sources");
+
+ # OpenBSD developers edit the generated file and do not regen it when
+ # doing upgrades. This script reflects those edits.
+ system( "sed -i" . " -E"
+ . " -e '/TYPEOF_CHTYPE/s,int,long,'"
+ . " -e '/USE_TERMCAP/d'"
+ . " -e '/HAVE_LIB(FORM|MENU|PANEL)/s,^(.*)\$,/* \\1 */,'"
+ . " -e 's/TERMPATH.*/PURE_TERMINFO 0/'"
+ . " -e '/SYSTEM_NAME/s,\[0-9.\]+,,'"
+ . " include/ncurses_cfg.h" );
+}
+
+sub get_definitions() {
+ my @data = &read_file("dist.mk");
+ for my $n ( 0 .. $#data ) {
+ my $text = $data[$n];
+ $text =~ s/^\s*//;
+ next unless ( $text =~ /^NCURSES.*=/ );
+ $text =~ s/\s*=\s+/=/;
+ my $name = $text;
+ $name =~ s/=.*//;
+ my $value = $text;
+ $value =~ s/^[^=]*=//;
+ $value =~ s/\s.*//;
+ $definitions{$name} = $value;
+ }
+}
+
+sub setup_all_dirs() {
+ printf "** %s all build-directories\n", $opt_r ? "removing" : "setting up";
+ &get_definitions;
+ &configure_tree unless ($opt_r);
+ &setup_lib_libcurses;
+ &setup_lib_libmenu;
+ &setup_lib_libform; # build after libmenu, for mf_common.h
+ &setup_lib_libpanel;
+ &setup_bin_tic; # do this first, for shared headers
+ &setup_bin_infocmp;
+ &setup_bin_tabs if ( -f "$source_dir/progs/tabs.c" );
+ &setup_bin_toe;
+ &setup_bin_tput;
+ &setup_bin_tset;
+ &setup_terminfo;
+}
+
+sub usage() {
+ print <<EOF;
+Usage: ncu2openbsd [options] [sourcetree]
+
+Options:
+ -d DST specify destination (default: /usr/src)
+ -n no-op, do not update destination
+ -r remove update, restore sources from ".orig"
+ -t enable ncurses trace
+ -v verbose
+ -x build each directory after setting up
+EOF
+ exit;
+}
+
+$Getopt::Std::STANDARD_HELP_VERSION = 1;
+&getopts('d:nrtvx') || &usage();
+$opt_d = "/usr/src" unless ($opt_d);
+&usage() unless ( $#ARGV <= 0 );
+
+if ( $#ARGV == 0 ) {
+ if ( -f $ARGV[0] ) {
+ printf "** unpacking sources: %s\n", $ARGV[0];
+ &unpack( $ARGV[0] );
+ }
+ else {
+ &check_sourcedir( $ARGV[0] );
+ }
+}
+else {
+ &check_sourcedir(".");
+}
+
+&setup_all_dirs;
+
+# move out of temp-directory to allow cleanup.
+chdir $current;
+
+1;
diff --git a/misc/ncurses-config.in b/misc/ncurses-config.in
index 7f8ba69..7b02ac2 100644
--- a/misc/ncurses-config.in
+++ b/misc/ncurses-config.in
@@ -1,7 +1,7 @@
#!@SHELL@
-# $Id: ncurses-config.in,v 1.43 2020/02/02 23:34:34 tom Exp $
+# $Id: ncurses-config.in,v 1.50 2021/08/07 21:36:14 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 2006-2015,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -98,10 +98,10 @@ fi
# are standard library directories (i.e., the linker is supposed to search
# those directories).
#
-# There is no portable way to find the list of standard library directories.
+# There is no portable way to find the list of standard library directories.
# Require a POSIX shell anyway, to keep this simple.
lib_flags=
-for opt in -L$libdir @LDFLAGS@ @EXTRA_LDFLAGS@ $LIBS
+for opt in -L$libdir @EXTRA_PKG_LDFLAGS@ $LIBS
do
case $opt in
-specs*) # ignore linker specs-files which were used to build library
@@ -110,11 +110,47 @@ do
-Wl,-z,*) # ignore flags used to manipulate shared image
continue
;;
+ -Wl,--dynamic-linker*) # ignore ELF interpreter
+ continue
+ ;;
-L*)
- [ -d ${opt##-L} ] || continue
- case ${opt##-L} in
+ lib_check=`echo "x$opt" | sed -e 's/^.-L//'`
+ [ -d "$lib_check" ] || continue
+ case "$lib_check" in
@LD_SEARCHPATH@) # skip standard libdir
- continue
+ if [ "$lib_check" = "$libdir" ]
+ then
+ lib_first=yes
+ IFS_save="$IFS"
+ IFS='|'
+ LIBDIRS="@LD_SEARCHPATH@"
+ for lib_check in $LIBDIRS
+ do
+ if [ -d "$lib_check" ]
+ then
+ if [ "$lib_check" != "$libdir" ]
+ then
+ lib_first=no
+ fi
+ break
+ fi
+ done
+ IFS="$IFS_save"
+ [ $lib_first = yes ] && continue
+ found=no
+ for check in $lib_flags
+ do
+ if [ "x$check" = "x$opt" ]
+ then
+ found=yes
+ break
+ fi
+ done
+ [ $found = yes ] && continue
+ :
+ else
+ continue
+ fi
;;
*)
found=no
diff --git a/misc/run_tic.in b/misc/run_tic.in
index 817c97b..b335b48 100644
--- a/misc/run_tic.in
+++ b/misc/run_tic.in
@@ -1,5 +1,5 @@
#!@SHELL@
-# $Id: run_tic.in,v 1.37 2020/02/02 23:34:34 tom Exp $
+# $Id: run_tic.in,v 1.38 2020/02/15 15:30:53 tom Exp $
##############################################################################
# Copyright 2019,2020 Thomas E. Dickey #
# Copyright 2000-2012,2017 Free Software Foundation, Inc. #
@@ -145,6 +145,7 @@ Running $TIC_PATH to install $TERMINFO ...
document, and install the terminfo without the -x option.
EOF
+$TIC_PATH -V
if ( $TIC_PATH -x -s -o "$TERMINFO" $source )
then
echo "** built new $TERMINFO"
@@ -164,6 +165,7 @@ Running $TIC_PATH to install $TERMINFO ...
document, and install the terminfo without the -x option.
EOF
+$TIC_PATH -V
if ( $TIC_PATH -s -o "$TERMINFO" $source )
then
echo "** built new $TERMINFO"
diff --git a/misc/shlib b/misc/shlib
index 8772d4f..7b93d17 100755
--- a/misc/shlib
+++ b/misc/shlib
@@ -1,6 +1,6 @@
#!/bin/sh
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2005,2007 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -30,7 +30,7 @@
#
# Author: Thomas E. Dickey <dickey@clark.net> 1996
#
-# $Id: shlib,v 1.13 2020/02/02 23:34:34 tom Exp $
+# $Id: shlib,v 1.14 2021/09/04 15:55:29 tom Exp $
# Use this script as a wrapper when running executables linked to shared
# libraries on systems that use the $LD_LIBRARY_PATH variable and don't embed
# the soname's path within the linked executable (such as IRIX), e.g,
@@ -81,7 +81,7 @@ q=""
for p in lib ../lib ../../lib ../../../lib
do
if test -d $p; then
- q=`cd $p; pwd`
+ q=`cd $p || exit; pwd`
break
elif test -f configure && test ! -d ../$p ; then
break
@@ -102,7 +102,7 @@ if test -n "$q" ; then
elif test -n "$LD_LIBRARY_PATH"; then
system=unix
else
- for r in $q/*.*
+ for r in "$q"/*.*
do
if test -f "$r"
then
diff --git a/misc/tdlint b/misc/tdlint
index 71b0d89..8ff5a40 100755
--- a/misc/tdlint
+++ b/misc/tdlint
@@ -1,6 +1,6 @@
#!/bin/sh
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998,2000 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -30,7 +30,7 @@
#
# Author: Thomas E. Dickey <dickey@clark.net> 1996
#
-# $Id: tdlint,v 1.7 2020/02/02 23:34:34 tom Exp $
+# $Id: tdlint,v 1.8 2021/09/04 15:55:29 tom Exp $
#
# Lint-script that allows user's own lint libraries, in addition to the ones
# installed in the system.
@@ -45,16 +45,16 @@ if test -z "$ARCH" ; then
exit 1
else
case $ARCH in
- AIX) set - $* -Nn4000
+ AIX) set - "$@" -Nn4000
;;
- IRIX) set - $* -n -lc
+ IRIX) set - "$@" -n -lc
;;
- FreeBSD) set - $* -g -p -u -v -z
+ FreeBSD) set - "$@" -g -p -u -v -z
;;
SunOS)
case `uname -r` in
5.*) ARCH=Solaris
- set - $* -n -lc
+ set - "$@" -n -lc
;;
esac
;;
@@ -63,7 +63,7 @@ fi
# LIBDIR=$HOME/lib/$ARCH/lint ;export LIBDIR
for p in $HOME/lib/$ARCH/lint /usr/lib/lint /usr/lib
do
- if [ -d $p ]
+ if [ -d "$p" ]
then
DIRS="$DIRS $p"
fi
@@ -74,15 +74,15 @@ do
case $1 in
-D*\"*) ;;
-L*)
- DIRS="`echo $1|sed -e 's/^-L//'` $DIRS"
+ DIRS="`echo "$1"|sed -e 's/^-L//'` $DIRS"
;;
-l*)
- lib="llib-l`echo $1 | sed -e 's/^-l//'`.ln"
+ lib="llib-l`echo "$1" | sed -e 's/^-l//'`.ln"
found=no
for p in $DIRS
do
- echo -n testing $p/$lib
- if [ -f $p/$lib ]
+ printf "testing %s" "$p/$lib"
+ if [ -f "$p/$lib" ]
then
LIBS="$LIBS $p/$lib"
echo " (ok)"
@@ -111,4 +111,4 @@ do
shift
done
#
-eval lint $OPT $FILES $LIBS
+exec lint $OPT $FILES $LIBS
diff --git a/misc/terminfo.src b/misc/terminfo.src
index 70047be..080b46d 100644
--- a/misc/terminfo.src
+++ b/misc/terminfo.src
@@ -6,8 +6,8 @@
# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.779 $
-# $Date: 2020/01/19 01:09:38 $
+# $Revision: 1.943 $
+# $Date: 2021/10/14 00:40:38 $
#
# The original header is preserved below for reference. It is noted that there
# is a "newer" version which differs in some cosmetic details (but actually
@@ -351,6 +351,8 @@ ansi+erase|ANSI clear screen/line,
clear=\E[H\E[J, ed=\E[J, el=\E[K,
ansi+rca|ANSI relative cursor-addressing,
hpa=\E[%p1%{1}%+%dG, vpa=\E[%p1%{1}%+%dd,
+ansi+rca2|ANSI relative cursor-addressing,
+ hpa=\E[%i%p1%dG, vpa=\E[%i%p1%dd,
ansi+cup|ANSI absolute cursor-addressing,
cup=\E[%i%p1%d;%p2%dH, home=\E[H,
ansi+rep|ANSI repeat-character,
@@ -649,7 +651,10 @@ ansi-generic|ansiterm|generic ansi standard terminal,
# though undocumented. The <pfkey> capability is untested but should work for
# keys F1-F10 (%p1 values outside this range will yield unpredictable results).
# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 7 1995
-ansi.sys-old|ANSI.SYS under PC-DOS 2.1,
+#
+# DOS 2.0 (January 1983) documented these features in
+# Chapter 13, "Using Extended Screen and Keyboard Control" -TD
+ansi.sys-old|ANSI.SYS under PC-DOS 2.0,
OTbs, am, mir, msgr, xon,
cols#80, lines#25,
clear=\E[2J, cub1=^H, cud1=\E[B, cuf1=\E[C,
@@ -692,7 +697,7 @@ ansi.sys|ANSI.SYS 3.1 and later versions,
kf42=\0m, kf43=\0n, kf44=\0o, kf45=\0p, kf46=\0q,
kf47=\0\213, kf48=\0\214, kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B,
kf9=\0C, khome=\0G, kich1=\0R, knp=\0Q, kpp=\0I,
- pfkey=\E[0;%?%p1%{11}%<%t%'\:'%e%p1%{13}%<%t%'z'%e%p1%{23}%<
+ pfkey=\E[0;%?%p1%{11}%<%t%':'%e%p1%{13}%<%t%'z'%e%p1%{23}%<
%t%'G'%e%p1%{25}%<%t%'p'%e%p1%'#'%<%t%'E'%e%p1%'%'%<%t
%'f'%e%p1%'/'%<%t%'C'%e%{92}%;%p1%+%d;%p2"%s"p,
use=ansi.sys-old,
@@ -764,22 +769,22 @@ st52-color|at-color|atari-color|atari_st-color|Atari ST with color,
is2=\Ev\Eq\Ee\Eb1\Ec0, rs2=\Ev\Eq\Ee\Eb1\Ec0,
setab=\Ec%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}
%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1
- %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:
- %e%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1
- %{14}%=%t6%e?,
+ %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t:%e
+ %p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}
+ %=%t6%e?,
setaf=\Eb%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}
%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1
- %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:
- %e%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1
- %{14}%=%t6%e?,
+ %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t:%e
+ %p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}
+ %=%t6%e?,
setb=\Ec%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}
%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1
- %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:%e
+ %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t:%e
%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}%=
%t6%e?,
setf=\Eb%?%p1%{0}%=%t1%e%p1%{1}%=%t2%e%p1%{2}%=%t3%e%p1%{3}
%=%t>%e%p1%{4}%=%t4%e%p1%{5}%=%t7%e%p1%{6}%=%t5%e%p1
- %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t\:%e
+ %{7}%=%t0%e%p1%{8}%=%t8%e%p1%{9}%=%t9%e%p1%{10}%=%t:%e
%p1%{11}%=%t;%e%p1%{12}%=%t<%e%p1%{13}%=%t=%e%p1%{14}%=
%t6%e?,
use=st52,
@@ -797,7 +802,7 @@ st52|st52-m|at|at-m|atari|atari-m|atari_st|atarist-m|Atari ST,
kf9=\EX, khlp=\EH, khome=\EE, kich1=\EI, knp=\Eb, kpp=\Ea,
kund=\EK, nel=\r\n, rc=\Ek, rev=\Ep, ri=\EI, rmso=\Eq,
rs2=\Ev\Eq\Ee, sc=\Ej, sgr0=\Eq, smso=\Ep,
-tw100|toswin vt100 window mgr,
+tw100|Toswin vt100 window manager,
eo, mir, msgr, xon,
colors#8, cols#80, it#8, lines#24, pairs#64, vt#3,
acsc=++\,\,--..00II``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxy
@@ -866,7 +871,7 @@ stv52pc|MiNT virtual console with PC charset,
smso=\Ep, smul=\EyH,
# From: Simson L. Garfinkel <simsong@media-lab.mit.edu>
-atari-old|atari st,
+atari-old|Atari st,
OTbs, am,
cols#80, it#8, lines#25,
clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC,
@@ -877,7 +882,7 @@ atari-old|atari st,
# From: Paul M. Aoki <aoki@ucbvax.berkeley.edu>
uniterm|uniterm49|UniTerm VT220 emulator with 49 lines,
lines#49,
- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;49r\E[49;1H, use=vt220,
+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;49r\E[49;1H, use=vt220-base,
# MiNT VT52 emulation. 80 columns, 25 rows.
# MiNT is Now TOS, the operating system which comes with all Ataris now
# (mainly Atari Falcon). This termcap is for the VT52 emulation you get
@@ -911,18 +916,17 @@ beterm|BeOS Terminal,
ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H,
hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
il=\E[%p1%dL, il1=\E[L, ind=\n, kbs=^H, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~,
- kend=\E[4~, kf1=\E[11~, kf10=\E[20~, kf11=\E[21~,
- kf12=\E[22~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
- kf5=\E[15~, kf6=\E[16~, kf7=\E[17~, kf8=\E[18~, kf9=\E[19~,
- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z,
- nel=\r\n, op=\E[m, rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l,
- rmkx=\E[?4l, rmso=\E[m, rmul=\E[24m, rs1=\Ec, sc=\E7,
- setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
- setb=\E[%p1%{40}%+%cm, setf=\E[%p1%{30}%+%cm,
- sgr0=\E[0;10m, smir=\E[4h, smkx=\E[?4h, smso=\E[7m,
- smul=\E[4m, u6=\E[%i%p1%d;%p2%dR, u7=\E[6n,
- vpa=\E[%i%p1%dd,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[11~,
+ kf10=\E[20~, kf11=\E[21~, kf12=\E[22~, kf2=\E[12~,
+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[16~, kf7=\E[17~,
+ kf8=\E[18~, kf9=\E[19~, kspd=^Z, nel=\r\n, op=\E[m, rc=\E8,
+ rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?4l, rmso=\E[m,
+ rmul=\E[24m, rs1=\Ec, sc=\E7, setab=\E[4%p1%dm,
+ setaf=\E[3%p1%dm, setb=\E[%p1%{40}%+%cm,
+ setf=\E[%p1%{30}%+%cm, sgr0=\E[0;10m, smir=\E[4h,
+ smkx=\E[?4h, smso=\E[7m, smul=\E[4m,
+ u6=\E[%i%p1%d;%p2%dR, u7=\E[6n, vpa=\E[%i%p1%dd,
+ use=vt220+pcedit,
#### Linux consoles
#
@@ -950,7 +954,7 @@ beterm|BeOS Terminal,
# All linux kernels since 1.2.13 (at least) set the screen size
# themselves; this entry assumes that capability.
#
-linux-basic|linux console,
+linux-basic|Linux console,
am, bce, eo, mir, msgr, xenl, xon,
it#8, ncv#18, U8#1,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i
@@ -964,20 +968,24 @@ linux-basic|linux console,
el=\E[K, el1=\E[1K, flash=\E[?5h$<200/>\E[?5l, home=\E[H,
hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
il=\E[%p1%dL, il1=\E[L, ind=\n, kb2=\E[G, kbs=^?, kcbt=\E[Z,
- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
- kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D,
- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
- kspd=^Z, nel=\r\n, rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l,
- rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[[A,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[[B,
+ kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, kmous=\E[M, kspd=^Z, nel=\r\n,
+ rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, rmir=\E[4l,
+ rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7,
sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;2%;%?%p6%t;1%;%?%p9%t;11%;m,
smam=\E[?7h, smir=\E[4h, smul=\E[4m, tbc=\E[3g,
- vpa=\E[%i%p1%dd, use=vt102+enq, use=klone+sgr,
- use=ecma+color,
+ vpa=\E[%i%p1%dd, use=vt220+pcedit, use=vt102+enq,
+ use=klone+sgr, use=ecma+color, use=linux+sfkeys,
+
+linux+decid|ncurses extension for Linux console DECID,
+ u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?6c, u9=\EZ,
+
+linux+sfkeys|shifted function-keys for Linux console,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
linux-m|Linux console no color,
colors@, pairs@,
@@ -988,13 +996,13 @@ linux-m|Linux console no color,
# not supposedly back-portable to older SV curses (although it has worked fine
# on Solaris for several years) and not supported in ncurses versions before
# 1.9.9.
-linux-c-nc|linux console with color-change,
+linux-c-nc|Linux console with color-change,
ccc,
initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/
%02x%p4%{255}%*%{1000}%/%02x,
oc=\E]R, use=linux-basic,
# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996
-linux-c|linux console 1.3.6+ for older ncurses,
+linux-c|Linux console 1.3.6+ for older ncurses,
ccc,
initc=\E]P%?%p1%{9}%>%t%p1%{10}%-%'a'%+%c%e%p1%d%;%p2%{255}
%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'
@@ -1010,7 +1018,7 @@ linux-c|linux console 1.3.6+ for older ncurses,
# The 2.2.x kernels add a private mode that sets the cursor type; use that to
# get a block cursor for cvvis.
# reported by Frank Heckenbach <frank@g-n-u.de>.
-linux2.2|linux 2.2.x console,
+linux2.2|Linux 2.2.x console,
civis=\E[?25l\E[?1c, cnorm=\E[?25h\E[?0c,
cvvis=\E[?25h\E[?8c, use=linux-c-nc,
@@ -1023,9 +1031,27 @@ linux2.2|linux 2.2.x console,
# 'p' scan line 3
# 'r' scan line 7
# '_' scan line 9
-linux2.6|linux 2.6.x console,
- acsc=++\,\,--..00__``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwx
- xyyzz{{||}c~~,
+#
+# The fix for SI/SO is part of a configurable (i.e., "optional") kernel feature
+# misleadingly called CONFIG_CONSOLE_TRANSLATIONS. Disabling that not only
+# omits the line-drawing using SI/SO, but also part/all of the Unicode feature:
+#
+# https://cateee.net/lkddb/web-lkddb/CONSOLE_TRANSLATIONS.html
+# "This enables support for font mapping and Unicode translation on virtual consoles."
+#
+# This mailing list thread in July 2008 illustrates:
+#
+# https://marc.info/?t=121734656700005&r=1&w=4
+# "commit a29ccf6f823a84d89e1c7aaaf221cf7282022024 break console on slackware 12.1"
+#
+# The change which made it configurable was to reduce the size for use in
+# embedded systems. Some background is found in
+#
+# https://lwn.net/Articles/284767/
+# "An interview with the new embedded maintainers"
+linux2.6|Linux 2.6.x console,
+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
+ yzz{{||}}~~,
enacs=\E)0, rmacs=^O,
sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;2%;%?%p6%t;1%;m%?%p9%t\016%e\017%;,
@@ -1033,11 +1059,22 @@ linux2.6|linux 2.6.x console,
# The 3.0 kernel adds support for clearing scrollback buffer (capability E3).
# It is the same as xterm's erase-saved-lines feature.
-linux3.0|linux 3.0 kernels,
- E3=\E[3J, use=linux2.6,
+#
+# Linux 3.0 was released in July 2011. The keyboard utilities (kbd) are
+# used for configuring its keyboard mappings.
+#
+# kbd 1.14 was released before that (January 2008), but due to its placement
+# late in the Linux 2.6.x series had no immediate effect for most users. That
+# provided a default mapping for shift-tab to the (misnamed) Meta_Tab, i.e.,
+# the same as Alt-Tab.
+#
+# The suggested mapping for the conventional \E[Z is provided in this entry as
+# an extended key to lessen user surprise -TD
+linux3.0|Linux 3.0 kernels,
+ kcbt=\E^I, E3=\E[3J, kcbt2=\E[Z, use=linux2.6,
# This is Linux console for ncurses.
-linux|linux console,
+linux|Linux console,
use=linux3.0,
# Subject: linux 2.6.26 vt back_color_erase
@@ -1046,16 +1083,16 @@ linux|linux console,
# apparently from
# http://lkml.org/lkml/2008/4/26/305
# http://lkml.org/lkml/2008/10/3/66
-linux2.6.26|linux console w/o bce,
+linux2.6.26|Linux console w/o bce,
bce@, use=linux2.6,
# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
-linux-nic|linux with ich/ich1 suppressed for non-curses programs,
+linux-nic|Linux with ich/ich1 suppressed for non-curses programs,
ich@, ich1@, use=linux,
# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts.
# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997.
-linux-koi8|linux with koi8 alternate character set,
+linux-koi8|Linux with koi8 alternate character set,
acsc=+\020\,\021-\030.^Y0\215`\004a\221f\234g\237h\220i
\276j\205k\203l\202m\204n\212o~p\0q\0r\0s_t\206u\207v
\211w\210x\201y\230z\231{\267|\274~\224,
@@ -1063,11 +1100,11 @@ linux-koi8|linux with koi8 alternate character set,
# Another entry for KOI8-r with Qing Long's acsc.
# (which one better complies with the standard?)
-linux-koi8r|linux with koi8-r alternate character set,
+linux-koi8r|Linux with koi8-r alternate character set,
use=linux, use=klone+koi8acs,
# Entry for the latin1 and latin2 fonts
-linux-lat|linux with latin1 or latin2 alternate character set,
+linux-lat|Linux with latin1 or latin2 alternate character set,
acsc=+\020\,\021-\030.^Y0\333`\004a\013f\370g\361h\260i
\316j\211k\214l\206m\203n\305o~p\304q\212r\304s_t\207u
\215v\301w\302x\205y\363z\362{\343|\330}\234~\376,
@@ -1076,7 +1113,7 @@ linux-lat|linux with latin1 or latin2 alternate character set,
# This uses graphics from VT codeset instead of from cp437.
# reason: cp437 (aka "straight to font") is not functional under luit.
# from: Andrey V Lukyanov <land@long.yar.ru>.
-linux-vt|linux console using VT codes for graphics,
+linux-vt|Linux console using VT codes for graphics,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
yzz~~,
rmacs=\E(K, rmpch@, sgr@, sgr0=\E[0m\E(K\017, smacs=\E(0,
@@ -1131,8 +1168,18 @@ fbterm|FbTerm for Linux with framebuffer,
# (but nonstandard) SGR 21, which was supported in the Linux console since 1992
# as an equivalent for SGR 22. Long after (early 2018), someone modified the
# console driver to make it ignore SGR 21 because the ECMA-48 standard
-# suggested a different use for that particular code.
-linux-16color|linux console with 16 colors,
+# suggested a different use for that particular code:
+#
+# https://github.com/torvalds/linux/commit/65d9982d7e523a1a8e7c9af012da0d166f72fc56#diff-7da3c215d12c9f6b88e1a37d38b116f0
+#
+# Two years later, someone (unfamiliar with ECMA-48 this time) documented it:
+#
+# https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/commit/man4/console_codes.4?id=a133a6bc03d751a424fe0a4adea2198757599615
+#
+# For background, refer to the report on bug-ncurses:
+#
+# https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00059.html
+linux-16color|Linux console with 16 colors,
colors#16, ncv#42, pairs#0x100,
setab=\E[4%p1%{8}%m%d%?%p1%{7}%>%t;5%e;25%;m,
setaf=\E[3%p1%{8}%m%d%?%p1%{7}%>%t;1%e;22%;m,
@@ -1148,26 +1195,25 @@ linux-16color|linux console with 16 colors,
bterm|bogl virtual terminal,
am, bce,
colors#8, cols#80, lines#24, pairs#64,
- acsc=aajjkkllmmqqttuuxx, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r, cub1=^H, cud1=\n,
- cup=\E[%i%p1%d;%p2%dH, ed=\E[J, el=\E[K, home=\E[H, ind=\n,
- kb2=\E[G, kbs=^?, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A,
+ acsc=aajjkkllmmqqttuuxx, bold=\E[1m, clear=\E[H\E[2J,
+ cr=\r, cub1=^H, cud1=\n, cup=\E[%i%p1%d;%p2%dH, ed=\E[J,
+ el=\E[K, home=\E[H, ind=\n, kb2=\E[G, kbs=^?, kcbt=\E[Z,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[[A,
kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~,
kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~,
- kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~,
- kmous=\E[M, knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=\r\n,
+ kf8=\E[19~, kf9=\E[20~, kmous=\E[M, kspd=^Z, nel=\r\n,
op=\E[49m\E[39m, rev=\E[7m, ri=\EM, rmacs=^O, rmso=\E[27m,
rmul=\E[24m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr0=\E[0m, smacs=^N, smso=\E[7m, smul=\E[4m,
+ use=vt220+pcedit, use=vt220+cvis,
#### Mach
#
# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk>
-mach|Mach Console,
+mach|Mach console,
am, km,
cols#80, it#8, lines#25,
bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=\r,
@@ -1181,9 +1227,9 @@ mach|Mach Console,
kf9=\EOX, khome=\E[H, kich1=\E[@, kll=\E[F, knp=\E[U,
kpp=\E[V, rev=\E[7m, rmso=\E[0m, rmul=\E[24m, sgr0=\E[0m,
smso=\E[7m, smul=\E[4m,
-mach-bold|Mach Console with bold instead of underline,
+mach-bold|Mach console with bold instead of underline,
rmul=\E[0m, smul=\E[1m, use=mach,
-mach-color|Mach Console with ANSI color,
+mach-color|Mach console with ANSI color,
colors#8, pairs#64,
dim=\E[2m, invis=\E[8m, op=\E[37;40m, rmso=\E[27m,
setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=mach,
@@ -1204,13 +1250,13 @@ mach-gnu|GNU Mach,
2%;%?%p6%t;1%;%?%p7%t;8%;m,
use=ecma+index, use=mach,
-mach-gnu-color|Mach Console with ANSI color,
+mach-gnu-color|Mach console with ANSI color,
colors#8, pairs#64,
op=\E[37;40m, rmso=\E[27m, setab=\E[4%p1%dm,
setaf=\E[3%p1%dm, use=mach-gnu,
# From: Marcus Brinkmann
-# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/
+# http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/
#
# Comments in the original are summarized here:
#
@@ -1241,31 +1287,30 @@ hurd|The GNU Hurd console server,
colors#8, it#8, ncv#18, pairs#64,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
yzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\Ec, cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr,
- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B,
- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
- cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[34l, dch=\E[%p1%dP,
- dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M,
- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, flash=\Eg,
- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@,
- il=\E[%p1%dL, il1=\E[L, ind=\E[S, invis=\E[8m, kb2=\E[G,
- kbs=^?, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
- kcuu1=\EOA, kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\Ec, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
+ cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
+ el1=\E[1K, flash=\Eg, home=\E[H, hpa=\E[%i%p1%dG, ht=^I,
+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
+ invis=\E[8m, kb2=\E[G, kbs=^?, kcbt=\E[Z, kcub1=\EOD,
+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf10=\E[21~,
kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS,
kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
- kspd=^Z, nel=\r\n, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\E[T,
- rmacs=\E[10m, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
- rs1=\EM\E[?1000l, sc=\E7, setab=\E[4%p1%dm,
- setaf=\E[3%p1%dm,
+ kich1=\E[2~, kmous=\E[M, kspd=^Z, nel=\r\n, op=\E[39;49m,
+ rc=\E8, rev=\E[7m, ri=\E[T, rmacs=\E[10m, rmir=\E[4l,
+ rmso=\E[27m, rmul=\E[24m, rs1=\EM\E[?1000l, sc=\E7,
+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;
2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
sgr0=\E[0m, smacs=\E[11m, smir=\E[4h, smso=\E[7m,
smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l, gsbom=\E[>1h,
- use=ecma+index, use=ecma+italics,
+ use=vt220+pcedit, use=ecma+index, use=ecma+italics,
+ use=vt220+cvis,
#### QNX
#
@@ -1278,7 +1323,7 @@ hurd|The GNU Hurd console server,
# optimization. Bug: The <op> capability resets attributes.
# From: Michael Hunter <mphunter@qnx.com> 30 Jul 1996
# (removed: <sgr=%?%p1%t\E<%;%p2%t\E[%;%p3%t\E(%;%p4%t\E{%;%p6%t\E<%;,>)
-qnx|qnx4|qnx console,
+qnx|qnx4|QNX console,
daisy, km, mir, msgr, xhpa, xt,
colors#8, cols#80, it#4, lines#25, ncv#3, pairs#8,
acsc=O\333a\261j\331k\277l\332m\300n\305o\337q\304s\334t
@@ -1360,7 +1405,7 @@ qnxtmono|Monochrome QNX4 terminal or console,
# From: Federico Bianchi <bianchi@pc-arte2.arte.unipi.it>, 1 Jul 1998
# (esr: commented out <scp> and <rmcup> to avoid warnings.)
# (TD: derive from original qnx4 entry)
-qnxt2|qnx 2.15 serial terminal,
+qnxt2|QNX 2.15 serial terminal,
am,
civis@, cnorm@, cvvis@, dch1@, ich1@, kRES@, kRPL@, kUND@, kspd@,
rep@, rmcup@, rmso=\E>, setb@, setf@, smcup@, smso=\E<, use=qnx4,
@@ -1370,9 +1415,8 @@ qansi-g|QNX ANSI,
am, eslok, hs, xon,
colors#8, cols#80, it#8, lines#25, ncv#19, pairs#64, wsl#80,
acsc=Oa``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[2J\E[H, cnorm=\E[?25h\E[?12l, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[2J\E[H,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, cuu1=\E[A,
cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
@@ -1416,7 +1460,7 @@ qansi-g|QNX ANSI,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smso=\E[7m,
smul=\E[4m, tbc=\E[3g,
tsl=\E7\E1;24r\E[?6l\E[25;%i%p1%dH, use=ansi+rep,
- use=ecma+index,
+ use=att610+cvis0, use=ecma+index,
#
qansi|QNX ansi with console writes,
daisy, xhpa, use=qansi-g,
@@ -1467,9 +1511,9 @@ qansi-w|QNX ansi for windows,
scoansi-old|SCO Extended ANSI standard crt (5.0.5),
OTbs, am, bce, eo, xon,
colors#8, cols#80, it#8, lines#25, pairs#64,
- acsc=+/\,.-\230.\2310[5566778899\:\:;;<<==>>FFGGHHIIJJKKLLMM
- NNOOPPQQRRSSTTUUVVWWXX`\204a0fxgqh2jYk?lZm@nEqDtCu4vAwB
- x3yszr{c}\034~\207,
+ acsc=+/\,.-\230.\2310[5566778899::;;<<==>>FFGGHHIIJJKKLLMMNN
+ OOPPQQRRSSTTUUVVWWXX`\204a0fxgqh2jYk?lZm@nEqDtCu4vAwBx3
+ yszr{c}\034~\207,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
civis=\E[=14;12C, clear=\E[H\E[2J, cnorm=\E[=10;12C,
cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B,
@@ -1616,39 +1660,45 @@ pccon+keys|OpenBSD PC keyboard keys,
kf9=\E[20~, khome=\E[7~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
krfr=^R,
pccon+sgr+acs0|sgr and simple ASCII pseudographics for OpenBSD PC console,
- acsc=+>\,<-\^.v0#`+a\:f\\h#i#j+k+l+m+n+o~p-q-r-s_t+u+v+w+x|y
- #z#{*|!}#~o,
+ acsc=+>\,<-\^.v0#`+a:f\\h#i#j+k+l+m+n+o~p-q-r-s_t+u+v+w+x|y#
+ z#{*|!}#~o,
+ bold=\E[1m, rev=\E[7m, rmso=\E[27m,
sgr=\E[0%?%p1%p3%|%t;7%;%?%p6%t;1%;%?%p2%t;4%;m,
- sgr0=\E[m,
+ sgr0=\E[m, smso=\E[7m,
pccon+sgr+acs|sgr and default ASCII pseudographics for OpenBSD PC console,
- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
- yzz{{||}}~~,
- enacs=\E)0$<5>, rmacs=\E(B$<5>,
+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ bold=\E[1m, enacs=\E)0, rev=\E[7m, rmacs=\E(B, rmso=\E[27m,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e
- \E(B%;$<2>,
- sgr0=\E[m\E(B$<5>, smacs=\E(0$<5>,
+ \E(B%;,
+ sgr0=\E[m\E(B, smacs=\E(0, smso=\E[7m,
# underline renders as color
pccon+colors|ANSI colors for OpenBSD PC console,
bce,
colors#8, ncv#2, pairs#64,
- op=\E[47;30m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ op=\E[49;39m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+# OpenBSD uses wscons,
+# + which does not implement DECSCNM or anything comparable, so it does not
+# support flash.
+# + it renders underline using color.
pccon+base|base capabilities for OpenBSD PC console,
am, km, mc5i, msgr, npc, nxon, xenl, xon,
cols#80, it#8, lines#24,
- bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=\r, cub1=^H, cud1=\n,
- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
- dch=\E[%p1%dP, dch1=\E[P, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J,
- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
- il1=\E[L, ind=\ED, nel=\EE, rev=\E[7m, ri=\EM, rmam=\E[?7l,
- rmso=\E[27m, rmul=\E[24m, rs2=\Ec$<50>, smam=\E[?7h,
- smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR,
- u7=\E[6n,
+ bel=^G, clear=\E[H\E[J, cr=\r, csr=\E[%i%p1%d;%p2%dr,
+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
+ el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
+ il=\E[%p1%dL, il1=\E[L, ind=\ED, nel=\EE, rc=\E8, ri=\EM,
+ rmam=\E[?7l, rmul=\E[24m, rs2=\Ec, sc=\E7, smam=\E[?7h,
+ smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n,
pccon0-m|OpenBSD PC console without colors & with simple ASCII pseudographics,
use=pccon+sgr+acs0, use=pccon+base, use=pccon+keys,
pccon0|OpenBSD PC console with simple ASCII pseudographics,
use=pccon0-m, use=pccon+colors,
pccon-m|OpenBSD PC console without colors,
use=pccon+base, use=pccon+sgr+acs, use=pccon+keys,
+ use=ansi+enq, use=vt220+cvis,
pccon|OpenBSD PC console,
use=pccon-m, use=pccon+colors,
@@ -1670,8 +1720,7 @@ pcvtXX|pcvt vt200 emulator (DEC VT220),
it#8, vt#3,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
yzz~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -1689,54 +1738,54 @@ pcvtXX|pcvt vt200 emulator (DEC VT220),
rs1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- use=ecma+index,
+ use=ecma+index, use=vt220+cvis,
# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
# 50 lines entries; 80 columns
-pcvt25|dec vt220 emulation with 25 lines,
+pcvt25|DEC vt220 emulation with 25 lines,
cols#80, lines#25,
is2=\E[1;25r\E[25;1H, use=pcvtXX,
-pcvt28|dec vt220 emulation with 28 lines,
+pcvt28|DEC vt220 emulation with 28 lines,
cols#80, lines#28,
is2=\E[1;28r\E[28;1H, use=pcvtXX,
-pcvt35|dec vt220 emulation with 35 lines,
+pcvt35|DEC vt220 emulation with 35 lines,
cols#80, lines#35,
is2=\E[1;35r\E[35;1H, use=pcvtXX,
-pcvt40|dec vt220 emulation with 40 lines,
+pcvt40|DEC vt220 emulation with 40 lines,
cols#80, lines#40,
is2=\E[1;40r\E[40;1H, use=pcvtXX,
-pcvt43|dec vt220 emulation with 43 lines,
+pcvt43|DEC vt220 emulation with 43 lines,
cols#80, lines#43,
is2=\E[1;43r\E[43;1H, use=pcvtXX,
-pcvt50|dec vt220 emulation with 50 lines,
+pcvt50|DEC vt220 emulation with 50 lines,
cols#80, lines#50,
is2=\E[1;50r\E[50;1H, use=pcvtXX,
# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
# 50 lines entries; 132 columns
-pcvt25w|dec vt220 emulation with 25 lines and 132 cols,
+pcvt25w|DEC vt220 emulation with 25 lines and 132 cols,
cols#132, lines#25,
is2=\E[1;25r\E[25;1H, use=pcvtXX,
-pcvt28w|dec vt220 emulation with 28 lines and 132 cols,
+pcvt28w|DEC vt220 emulation with 28 lines and 132 cols,
cols#132, lines#28,
is2=\E[1;28r\E[28;1H, use=pcvtXX,
-pcvt35w|dec vt220 emulation with 35 lines and 132 cols,
+pcvt35w|DEC vt220 emulation with 35 lines and 132 cols,
cols#132, lines#35,
is2=\E[1;35r\E[35;1H, use=pcvtXX,
-pcvt40w|dec vt220 emulation with 40 lines and 132 cols,
+pcvt40w|DEC vt220 emulation with 40 lines and 132 cols,
cols#132, lines#40,
is2=\E[1;40r\E[40;1H, use=pcvtXX,
-pcvt43w|dec vt220 emulation with 43 lines and 132 cols,
+pcvt43w|DEC vt220 emulation with 43 lines and 132 cols,
cols#132, lines#43,
is2=\E[1;43r\E[43;1H, use=pcvtXX,
-pcvt50w|dec vt220 emulation with 50 lines and 132 cols,
+pcvt50w|DEC vt220 emulation with 50 lines and 132 cols,
cols#132, lines#50,
is2=\E[1;50r\E[50;1H, use=pcvtXX,
# OpenBSD implements a color variation
-pcvt25-color|dec vt220 emulation with 25 lines and color,
+pcvt25-color|DEC vt220 emulation with 25 lines and color,
cols#80, lines#25,
is2=\E[1;25r\E[25;1H, kf1=\EOP, kf10=\E[29~, kf11=\E[23~,
kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
@@ -1783,7 +1832,7 @@ arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768),
# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996
x68k|x68k-ite|NetBSD/x68k ITE,
cols#96, lines#32,
- kclr=\E[9~, khlp=\E[28~, use=vt220,
+ kclr=\E[9~, khlp=\E[28~, use=vt220-base,
# <tv@pobox.com>:
# Entry for the DNARD OpenFirmware console, close to ANSI but not quite.
@@ -1823,11 +1872,10 @@ ofcons|DNARD OpenFirmware console,
wsvt25|NetBSD wscons in 25 line DEC VT220 mode,
bce, msgr,
colors#8, cols#80, it#8, lines#25, ncv#2, pairs#64,
- civis=\E[?25l, cnorm=\E[?25h, is2=\E[r\E[25;1H,
- kdch1=\E[3~, kend=\E[8~, kf1=\E[11~, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, kf3=\E[13~,
- kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
- kf9=\E[20~, khome=\E[7~, op=\E[m, rs1=\Ec,
+ is2=\E[r\E[25;1H, kdch1=\E[3~, kend=\E[8~, kf1=\E[11~,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~,
+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, khome=\E[7~, op=\E[m, rs1=\Ec,
setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=vt220,
wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta,
@@ -1933,7 +1981,7 @@ mgterm|MGL/MGL2 MobileGear Graphic Library,
# F13-F24 are shifted F1-F12
# F25-F36 are control F1-F12
# F37-F48 are shift+control F1-F12
-cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode),
+cons25w|ansiw|ansi80x25-raw|FreeBSD console (25-line raw mode),
am, bce, bw, eo, msgr, npc,
colors#8, cols#80, it#8, lines#25, ncv#21, pairs#64,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
@@ -1962,71 +2010,71 @@ cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode),
sgr=\E[0%?%p1%t;2;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;30;1%;%?
%p6%t;1%;m,
sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd, use=ecma+index,
-cons25|ansis|ansi80x25|freebsd console (25-line ansi mode),
+cons25|ansis|ansi80x25|FreeBSD console (25-line ansi mode),
acsc=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l
\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~
\371,
use=cons25w,
-cons25-debian|freebsd console with debian backspace (25-line ansi mode),
+cons25-debian|FreeBSD console with debian backspace (25-line ansi mode),
kbs=^?, kdch1=\E[3~, use=cons25,
-cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode),
+cons25-m|ansis-mono|ansi80x25-mono|FreeBSD console (25-line mono ansi mode),
colors@, pairs@,
bold@, dim@, op@, rmul=\E[m, setab@, setaf@,
sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m,
smul=\E[4m, use=cons25,
-cons30|ansi80x30|freebsd console (30-line ansi mode),
+cons30|ansi80x30|FreeBSD console (30-line ansi mode),
lines#30, use=cons25,
-cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode),
+cons30-m|ansi80x30-mono|FreeBSD console (30-line mono ansi mode),
lines#30, use=cons25-m,
-cons43|ansi80x43|freebsd console (43-line ansi mode),
+cons43|ansi80x43|FreeBSD console (43-line ansi mode),
lines#43, use=cons25,
-cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode),
+cons43-m|ansi80x43-mono|FreeBSD console (43-line mono ansi mode),
lines#43, use=cons25-m,
-cons50|ansil|ansi80x50|freebsd console (50-line ansi mode),
+cons50|ansil|ansi80x50|FreeBSD console (50-line ansi mode),
lines#50, use=cons25,
-cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode),
+cons50-m|ansil-mono|ansi80x50-mono|FreeBSD console (50-line mono ansi mode),
lines#50, use=cons25-m,
-cons60|ansi80x60|freebsd console (60-line ansi mode),
+cons60|ansi80x60|FreeBSD console (60-line ansi mode),
lines#60, use=cons25,
-cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode),
+cons60-m|ansi80x60-mono|FreeBSD console (60-line mono ansi mode),
lines#60, use=cons25-m,
-cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic,
+cons25r|pc3r|ibmpc3r|cons25-koi8-r|FreeBSD console w/koi8-r cyrillic,
acsc=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m
\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~
\225,
use=cons25w,
-cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono),
+cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|FreeBSD console w/koi8-r cyrillic (mono),
colors@, pairs@,
op@, rmul=\E[m, setab@, setaf@,
sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;30;1%;%?%p6%t;1%;m,
smul=\E[4m, use=cons25r,
-cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines),
+cons50r|cons50-koi8r|FreeBSD console w/koi8-r cyrillic (50 lines),
lines#50, use=cons25r,
-cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono),
+cons50r-m|cons50-koi8r-m|FreeBSD console w/koi8-r cyrillic (50-line mono),
lines#50, use=cons25r-m,
-cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines),
+cons60r|cons60-koi8r|FreeBSD console w/koi8-r cyrillic (60 lines),
lines#60, use=cons25r,
-cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono),
+cons60r-m|cons60-koi8r-m|FreeBSD console w/koi8-r cyrillic (60-line mono),
lines#60, use=cons25r-m,
# ISO 8859-1 FreeBSD console
-cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars,
+cons25l1|cons25-iso8859|FreeBSD console w/iso 8859-1 chars,
acsc=+\253\,\273-\030.\031`\201a\202f\207g\210i\247j\213k
\214l\215m\216n\217o\220p\221q\222r\223s\224t\225u
\226v\227w\230x\231y\232z\233~\237,
use=cons25w,
-cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono),
+cons25l1-m|cons25-iso-m|FreeBSD console w/iso 8859-1 chars (mono),
colors@, pairs@,
bold@, dim@, op@, rmul=\E[m, setab@, setaf@,
sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m,
smul=\E[4m, use=cons25l1,
-cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines),
+cons50l1|cons50-iso8859|FreeBSD console w/iso 8859-1 chars (50 lines),
lines#50, use=cons25l1,
-cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono),
+cons50l1-m|cons50-iso-m|FreeBSD console w/iso 8859-1 chars (50-line mono),
lines#50, use=cons25l1-m,
-cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines),
+cons60l1|cons60-iso|FreeBSD console w/iso 8859-1 chars (60 lines),
lines#60, use=cons25l1,
-cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono),
+cons60l1-m|cons60-iso-m|FreeBSD console w/iso 8859-1 chars (60-line mono),
lines#60, use=cons25l1-m,
# Starting with FreeBSD 8, an alternative configuration for syscons is provided,
@@ -2067,14 +2115,14 @@ teken|syscons with teken,
bw@, mir, xenl,
acsc=0\333a\260f\370g\361h\261j\331k\277l\332m\300n\305q
\304t\303u\264v\301w\302x\263y\363z\362~\371,
- civis=\E[?25l, cnorm=\E[?25h, cvvis@, hpa=\E[%i%p1%dG,
- hts=\EH, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kend=\E[F, kent=\r, kf1=\EOP, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rmir=\E[4l,
- smir=\E[4h, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n,
- u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd, use=cons25,
+ cvvis@, hpa=\E[%i%p1%dG, hts=\EH, kcub1=\E[D, kcud1=\E[B,
+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[F, kent=\r,
+ kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ,
+ kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, khome=\E[H, kich1=\E[2~, knp=\E[6~,
+ kpp=\E[5~, rmir=\E[4l, smir=\E[4h, tbc=\E[3g,
+ u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c,
+ vpa=\E[%i%p1%dd, use=vt220+cvis, use=cons25,
#### 386BSD and BSD/OS Consoles
#
@@ -2082,7 +2130,7 @@ teken|syscons with teken,
# This was the original 386BSD console entry (I think).
# Some places it's named oldpc3|oldibmpc3.
# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu>
-origpc3|origibmpc3|IBM PC 386BSD Console,
+origpc3|origibmpc3|IBM PC 386BSD console,
OTbs, am, bw, eo, xon,
cols#80, lines#25,
acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x
@@ -2095,7 +2143,7 @@ origpc3|origibmpc3|IBM PC 386BSD Console,
smso=\E[1;7x\E[2;0x, smul=\E[1;7x\E[2;0x,
# description of BSD/386 console emulator in version 1.0 (supplied by BSDI)
-oldpc3|oldibmpc3|old IBM PC BSD/386 Console,
+oldpc3|oldibmpc3|old IBM PC BSD/386 console,
OTbs, km,
lines#25,
bel=^G, bold=\E[=15F, cr=\r, cud1=\n, dim=\E[=8F, dl1=\E[M,
@@ -2111,7 +2159,7 @@ oldpc3|oldibmpc3|old IBM PC BSD/386 Console,
# "stty rows NN", e.g. to use 24 lines.
# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996)
# Bug: The <op> capability resets attributes.
-bsdos-pc|IBM PC BSD/OS Console,
+bsdos-pc|IBM PC BSD/OS console,
sgr=\E[0;10%?%p1%t;7%;%?%p2%t;1%;%?%p3%t;7%;%?%p4%t;5%;%?%p6
%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
use=bsdos-pc-nobold,
@@ -2134,17 +2182,17 @@ bsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono,
use=klone+sgr8,
# Old names for BSD/OS PC console used in releases before 4.1.
-pc3|BSD/OS on the PC Console,
+pc3|BSD/OS on the PC console,
use=bsdos-pc-nobold,
-ibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline,
+ibmpc3|pc3-bold|BSD/OS on the PC console with bold instead of underline,
use=bsdos-pc,
# BSD/OS on the SPARC
-bsdos-sparc|Sun SPARC BSD/OS Console,
+bsdos-sparc|Sun SPARC BSD/OS console,
use=sun,
# BSD/OS on the PowerPC
-bsdos-ppc|PowerPC BSD/OS Console,
+bsdos-ppc|PowerPC BSD/OS console,
use=bsdos-pc,
@@ -2166,14 +2214,21 @@ bsdos-ppc|PowerPC BSD/OS Console,
# not be used as a guide to the capabilities of the vt52. Note in particular
# that vt52 does not support line-drawing characters (the scan-X values refer
# to a crude plotting feature) -TD
-vt52|dec vt52,
+vt52|DEC vt52,
OTbs,
+ it#8, lines#24,
+ acsc=+h.k0affggolpnqprrss, home=\EH, kbs=^H, nel=\r\n,
+ ri=\EI, rmacs=\EG, rmkx=\E>, smacs=\EF, smkx=\E=, u8=\E/[KL],
+ use=vt50h,
+
+# This is more likely the "vt52" that you would see in emulation, i.e., no
+# keypad, no graphics.
+vt52-basic|vt52 for emulators,
cols#80, it#8, lines#24,
- acsc=+h.k0affggolpnqprrss, bel=^G, clear=\EH\EJ, cr=\r,
- cub1=\ED, cud1=\EB, cuf1=\EC,
- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
- el=\EK, home=\EH, ht=^I, ind=\n, kbs=^H, kcub1=\ED, kcud1=\EB,
- kcuf1=\EC, kcuu1=\EA, nel=\r\n, ri=\EI, rmacs=\EG, smacs=\EF,
+ bel=^G, clear=\EH\EJ, cr=\r, cub1=\ED, cud1=\EB, cuf1=\EC,
+ cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK,
+ home=\EH, ht=^I, ind=\n, kbs=^H, kcub1=\ED, kcud1=\EB,
+ kcuf1=\EC, kcuu1=\EA, nel=\r\n, ri=\EI,
#### DEC VT100 and compatibles
#
@@ -2286,12 +2341,12 @@ vt52|dec vt52,
# terminfo guidelines. That is a compromise used to assign the remaining
# keys on the keypad to kf5-kf0, used on older systems with legacy termcap
# support:
-vt100+keypad|dec vt100 numeric keypad no fkeys,
+vt100+keypad|DEC vt100 numeric keypad no fkeys,
ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn,
-vt100+pfkeys|dec vt100 numeric keypad,
+vt100+pfkeys|DEC vt100 numeric keypad,
kent=\EOM, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
use=vt100+keypad,
-vt100+fnkeys|dec vt100 numeric keypad,
+vt100+fnkeys|DEC vt100 numeric keypad,
kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl,
kf9=\EOw, use=vt100+pfkeys,
#
@@ -2316,7 +2371,7 @@ vt100+fnkeys|dec vt100 numeric keypad,
# | $Op | $On | |
# |___________________|_________|_kent_@8_|
#
-vt220+keypad|dec vt220 numeric keypad,
+vt220+keypad|DEC vt220 numeric keypad,
ka1=\EOw, ka3=\EOy, kb2=\EOu, kc1=\EOq, kc3=\EOs, kent=\EOM,
kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, ka2=\EOx, kb1=\EOt,
kb3=\EOv, kc2=\EOr,
@@ -2360,7 +2415,7 @@ vt102+enq|ncurses extension for vt102-style ENQ,
# INTERLACE_OFF
#
# (vt100: I added <rmam>/<smam> based on the init string, also <OTbs>. -- esr)
-vt100|vt100-am|dec vt100 (w/advanced video),
+vt100|vt100-am|DEC vt100 (w/advanced video),
OTbs, mc5i, xenl, xon,
vt#3,
csr=\E[%i%p1%d;%p2%dr, kcub1=\EOD, kcud1=\EOB,
@@ -2372,7 +2427,7 @@ vt100|vt100-am|dec vt100 (w/advanced video),
%;m%?%p9%t\016%e\017%;$<2>,
smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m$<2>,
use=vt100+4bsd, use=vt100+fnkeys,
-vt100+4bsd|dec vt100 from 4.0BSD,
+vt100+4bsd|DEC vt100 from 4.0BSD,
am, msgr,
cols#80, it#8, lines#24,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -2392,14 +2447,14 @@ vt100+4bsd|dec vt100 from 4.0BSD,
vt100nam|vt100-nam|vt100 no automargins,
am@, xenl@,
rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt100-am,
-vt100-vb|dec vt100 (w/advanced video) & no beep,
+vt100-vb|DEC vt100 (w/advanced video) & no beep,
bel@, flash=\E[?5h$<100/>\E[?5l, use=vt100,
# Ordinary vt100 in 132 column ("wide") mode.
-vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video),
+vt100-w|vt100-w-am|DEC vt100 132 cols (w/advanced video),
cols#132, lines#24,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-am,
-vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin),
+vt100-w-nam|vt100-nam-w|DEC vt100 132 cols (w/advanced video no automargin),
cols#132, lines#14, vt@,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-nam,
@@ -2408,7 +2463,7 @@ vt100-nav|vt100 without advanced video option,
xmc#1,
blink@, bold@, rev@, rmso=\E[m, rmul@, sgr@, sgr0@, smso=\E[7m,
smul@, use=vt100,
-vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option),
+vt100-nav-w|vt100-w-nav|DEC vt100 132 cols 14 lines (no advanced video option),
cols#132, lines#14, use=vt100-nav,
# vt100 with one of the 24 lines used as a status line.
@@ -2432,10 +2487,10 @@ vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline,
# Most of the `vt100' emulators out there actually emulate a vt102
# This entry (or vt102-nsgr) is probably the right thing to use for
# these.
-vt102|dec vt102,
+vt102|DEC vt102,
dch1=\E[P, dl1=\E[M, il1=\E[L, rmir=\E[4l, smir=\E[4h,
use=vt100,
-vt102-w|dec vt102 in wide mode,
+vt102-w|DEC vt102 in wide mode,
cols#132,
rs3=\E[?3h, use=vt102,
@@ -2458,7 +2513,7 @@ vt125|vt125 graphics terminal,
# This isn't a DEC entry, it came from University of Wisconsin.
# (vt131: I added <rmam>/<smam> based on the init string, also <OTbs> -- esr)
-vt131|dec vt131,
+vt131|DEC vt131,
OTbs, am, xenl,
cols#80, it#8, lines#24, vt#3,
bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
@@ -2497,25 +2552,48 @@ vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
cols#80, lines#24, vt#3,
OTnl=\n,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, civis=\E[?25l,
- clear=\E[H\E[2J$<50>, cnorm=\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C,
+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
+ clear=\E[H\E[2J$<50>, cr=\r, csr=\E[%i%p1%d;%p2%dr,
+ cub1=^H, cud1=\E[B, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P,
dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I,
if=/usr/share/tabset/vt100, il1=\E[L, ind=\ED$<20/>,
is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\EOP,
- kf10=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~,
- kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~,
- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rc=\E8,
- rev=\E[7m$<2>, rf=/usr/share/tabset/vt100,
- ri=\EM$<14/>, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l,
- rmso=\E[27m, rmul=\E[24m,
- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
+ kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf10=\E[29~, kf2=\EOQ,
+ kf3=\EOR, kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~,
+ kf8=\E[20~, kf9=\E[21~, kich1=\E[2~, rc=\E8, rev=\E[7m$<2>,
+ rf=/usr/share/tabset/vt100, ri=\EM$<14/>,
+ rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, rmso=\E[27m,
+ rmul=\E[24m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
+ sc=\E7,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?
%p9%t\E(0%e\E(B%;$<2>,
sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h,
- smso=\E[7m, smul=\E[4m,
+ smso=\E[7m, smul=\E[4m, use=vt220+pcedit, use=vt220+cvis,
+
+# Here's a picture of the Sun/PC editing keypad:
+# +--------+--------+--------+
+# | Insert | Home | PageUp |
+# +--------+--------+--------+
+# | Delete | End | PageDn |
+# +--------+--------+--------+
+#
+# VT220 emulators such as xterm, using PC-keyboards use a different layout than
+# the VT220 keyboard:
+# VT220 PC
+# ----- --
+# Prev PageUp
+# Next PageDn
+# Insert Insert
+# Remove Delete
+# Find Home
+# Select End
+vt220+pcedit|editing-keypad for vt220 using PC keyboard,
+ kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~,
+ knp=\E[6~, kpp=\E[5~,
+vt220+vtedit|editing-keypad for vt220 using DEC keyboard,
+ kdch1=\E[3~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
+ kslt=\E[4~,
# A much better description of the VT200/220; used to be vt220-8
# changed rmacs/smacs from shift-in/shift-out to vt200-old's explicit G0/G1
@@ -2527,7 +2605,10 @@ vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
# +--------+--------+--------+
# | Select | Prev | Next |
# +--------+--------+--------+
-vt220|vt200|dec vt220,
+#
+# Still, this is a "base" entry. Software emulators commonly leave out the
+# DECTCEM feature -TD
+vt220-base|DEC VT220 as emulated,
OTbs, am, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -2545,21 +2626,21 @@ vt220|vt200|dec vt220,
kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
kf14=\E[26~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
- khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
- krdo=\E[29~, kslt=\E[4~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4,
- nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B$<4>,
- rmam=\E[?7l, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
- rs1=\E[?3l, sc=\E7,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khlp=\E[28~,
+ krdo=\E[29~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, nel=\EE,
+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l,
+ rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\E[?3l, sc=\E7,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?
%p9%t\E(0%e\E(B%;$<2>,
sgr0=\E[m\E(B, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h,
- smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=ansi+pp,
- use=ansi+enq,
+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt220+vtedit,
+ use=ansi+pp, use=ansi+enq,
+vt220|vt200|DEC vt220,
+ use=vt220+cvis, use=vt220-base,
vt220-w|vt200-w|DEC vt220 in wide mode,
cols#132,
rs3=\E[?3h, use=vt220,
-vt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode,
+vt220-8bit|vt220-8|vt200-8bit|vt200-8|DEC vt220/200 in 8-bit mode,
OTbs, am, mc5i, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -2587,7 +2668,7 @@ vt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode,
sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m
%?%p9%t\E(0%e\E(B%;$<2>,
sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, smir=\2334h,
- smso=\2337m, smul=\2334m, tbc=\2333g,
+ smso=\2337m, smul=\2334m, tbc=\2333g, use=vt220+cvis8,
# vt220d:
# This vt220 description regards F6--F10 as the second block of function keys
@@ -2622,7 +2703,7 @@ vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins,
# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996
# (Added vt100 <rc>,<sc> to quiet a tic warning -- esr)
# added msgr -TD
-vt200-js|vt220-js|dec vt200 series with jump scroll,
+vt200-js|vt220-js|DEC vt200 series with jump scroll,
am, msgr,
cols#80,
bel=^G, clear=\E[H\E[J, cr=\r, csr=\E[%i%p1%d;%p2%dr,
@@ -2637,6 +2718,7 @@ vt200-js|vt220-js|dec vt200 series with jump scroll,
rmkx=\E[?1l\E>, rmso=\E[27m$<5/>, rmul=\E[24m,
rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, smdc=,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m$<5/>, smul=\E[4m,
+ use=vt220+cvis,
# This was DEC's vt320. Use the purpose-built one below instead
#vt320|DEC VT320 in vt100 emulation mode,
@@ -2646,7 +2728,8 @@ vt200-js|vt220-js|dec vt200 series with jump scroll,
#
vt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode,
am@,
- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220,
+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h,
+ use=vt220-base,
# These entries are not DEC's official ones, they were purpose-built for the
# VT320. Here are the designer's notes:
@@ -2661,12 +2744,11 @@ vt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode,
# to SMASH the 1k-barrier...
# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
# (vt320: uncommented <fsl> --esr)
-vt320|vt300|dec vt320 7 bit terminal,
+vt320|vt300|DEC vt320 7 bit terminal,
am, hs, mir, msgr, xenl,
cols#80, lines#24, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -2690,17 +2772,18 @@ vt320|vt300|dec vt320 7 bit terminal,
%p9%t\E(0%e\E(B%;$<2>,
sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- use=dec+pp, use=vt220+keypad, use=dec+sl, use=ansi+enq,
-vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy,
+ use=dec+pp, use=vt220+cvis, use=vt220+keypad, use=dec+sl,
+ use=ansi+enq,
+vt320-nam|vt300-nam|DEC vt320 7 bit terminal with no am to make SAS happy,
am@,
is2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H,
rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, use=vt320,
# We have to init 132-col mode, not 80-col mode.
-vt320-w|vt300-w|dec vt320 wide 7 bit terminal,
+vt320-w|vt300-w|DEC vt320 wide 7 bit terminal,
cols#132, wsl#132,
is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, use=vt320,
-vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am,
+vt320-w-nam|vt300-w-nam|DEC vt320 wide 7 bit terminal with no am,
am@,
is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, use=vt320-w,
@@ -2710,8 +2793,8 @@ vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am,
# host writable status line, yet another different DRCS matrix size,
# and such, but they add the DEC Technical character set, Multiple text
# pages, selectable length pages, and the like. The difference between
-# the vt330 and vt340 is that the latter has only 2 planes and a monochrome
-# monitor, the former has 4 planes and a color monitor. These terminals
+# the vt330 and vt340 is that the former has only 2 planes and a monochrome
+# monitor, the latter has 4 planes and a color monitor. These terminals
# support VT131 and ANSI block mode, but as with much of these things,
# termcap/terminfo doesn't deal with these features.
#
@@ -2725,19 +2808,18 @@ vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am,
# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993
# (vt340: string capability "sb=\E[M" corrected to "sr";
# also, added <rmam>/<smam> based on the init string -- esr)
-vt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page,
+vt340|dec-vt340|vt330|dec-vt330|DEC vt340 graphics terminal with 24 line page,
am, eslok, hs, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J,
- cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr,
- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
- dl=\E[%p1%dM, dl1=\E[M, dsl=\E[2$~\r\E[1$}\E[K\E[$},
- ed=\E[J, el=\E[K, flash=\E[?5h$<200/>\E[?5l, fsl=\E[$},
- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL,
- il1=\E[L, ind=\ED,
+ blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
+ dsl=\E[2$~\r\E[1$}\E[K\E[$}, ed=\E[J, el=\E[K,
+ flash=\E[?5h$<200/>\E[?5l, fsl=\E[$}, home=\E[H, ht=^I,
+ hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
is2=\E<\E\sF\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r
\E[24;1H,
kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
@@ -2751,11 +2833,13 @@ vt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page,
%p9%t\E(0%e\E(B%;$<2>,
sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- tsl=\E[2$~\E[1$}\E[1;%dH,
+ tsl=\E[2$~\E[1$}\E[1;%dH, use=vt220+cvis,
# Left/right margins are supported in xterm since patch #279 (2012/05/10)
vt420+lrmm|VT420 left/right margins,
- mgc=\E[?69l, smglr=\E[?69h\E[%i%p1%d;%p2%ds,
+ mgc=\E[?69l, smglp=\E[?69h\E[%i%p1%ds,
+ smglr=\E[?69h\E[%i%p1%d;%p2%ds,
+ smgrp=\E[?69h\E[%i;%p1%ds,
# DEC doesn't supply a vt400 description, so we add Daniel Glasser's
# (originally written with vt420 as its primary name, and usable for it).
@@ -2768,7 +2852,7 @@ vt420+lrmm|VT420 left/right margins,
# macros, and other features too numerous to remember right now. TERMCAP
# can only take advantage of a few of these added features.
#
-# Note that this entry is are set up in what was the standard way for GNU
+# Note that this entry is set up in what was the standard way for GNU
# Emacs v18 terminal modes to deal with the cursor keys in that the arrow
# keys were switched into application mode at the same time the numeric pad
# is switched into application mode. This changes the definitions of the
@@ -2778,12 +2862,11 @@ vt420+lrmm|VT420 left/right margins,
# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993
# (vt400: string capability ":sb=\E[M:" corrected to ":sr=\E[M:";
# also, added <rmam>/<smam> based on the init string -- esr)
-vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap,
+vt400|vt400-24|dec-vt400|DEC vt400 24x80 column autowrap,
am, eslok, hs, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J$<10/>, cnorm=\E[?25h, cr=\r,
+ blink=\E[5m, bold=\E[1m, clear=\E[H\E[J$<10/>, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -2805,7 +2888,7 @@ vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap,
%p9%t\E(0%e\E(B%;$<2>,
sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- tsl=\E[2$~\E[1$}\E[1;%dH, use=dec+sl,
+ tsl=\E[2$~\E[1$}\E[1;%dH, use=dec+sl, use=vt220+cvis,
# (vt420: I removed <kf0>, it collided with <kf10>. I also restored
# a missing <sc> -- esr)
@@ -2814,30 +2897,30 @@ vt420|DEC VT420,
am, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, civis=\E[?25l,
- clear=\E[H\E[2J$<50>, cnorm=\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA, cuu1=\E[A,
- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
- ech=\E[%p1%dX, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K,
- enacs=\E)0, flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I,
- hts=\EH, ich=\E[%p1%d@, if=/usr/share/tabset/vt300,
+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
+ clear=\E[H\E[2J$<50>, cr=\r, csr=\E[%i%p1%d;%p2%dr,
+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH$<10>,
+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J$<50>,
+ el=\E[K$<3>, el1=\E[1K, enacs=\E)0,
+ flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, hts=\EH,
+ ich=\E[%p1%d@, if=/usr/share/tabset/vt300,
il=\E[%p1%dL, il1=\E[L, ind=\ED, is2=\E[1;24r\E[24;1H,
is3=\E[?67h\E[64;1"p, kbs=^H, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, kf10=\E[29~,
- kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~, kf6=\E[18~,
- kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, kfnd=\E[1~,
- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, nel=\EE,
- rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300,
- ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>,
+ kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf10=\E[29~, kf2=\EOQ,
+ kf3=\EOR, kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~,
+ kf8=\E[20~, kf9=\E[21~, nel=\EE, rc=\E8, rev=\E[7m$<2>,
+ rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B$<4>,
+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E>,
rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
rmso=\E[27m, rmul=\E[24m, rs3=\E[?67h\E[64;1"p, sc=\E7,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?
%p9%t\E(0%e\E(B%;$<2>,
sgr0=\E[m\E(B$<2>, smacs=\E(0$<2>, smam=\E[?7h,
smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- use=ansi+pp, use=dec+sl, use=ansi+enq,
+ use=vt220+vtedit, use=ansi+pp, use=dec+sl, use=ansi+enq,
+ use=vt220+cvis, use=vt420+lrmm,
# DEC VT220 and up support DECUDK (user-defined keys). DECUDK (i.e., pfx)
# takes two parameters, the key and the string. Translating the key is
@@ -2869,7 +2952,7 @@ vt420pc|DEC VT420 w/PC keyboard,
kf43=\E[31;2~, kf44=\E[32;2~, kf45=\E[33;2~,
kf46=\E[34;2~, kf47=\E[35;2~, kf48=\E[36;2~, kf5=\E[15~,
kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H,
- pctrm=USR_TERM\:vt420pcdos\:,
+ pctrm=USR_TERM:vt420pcdos:,
pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>
%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+
%d/%p2%s\E\\,
@@ -2945,15 +3028,15 @@ dec-vt220|DOS tnvt200 terminal emulator,
# Zstem340 is an (IMHO) excellent VT emulator for PC's. I recommend it to
# anyone who needs PC VT340 emulation. (or anything below that level, for
# that matter -- DEC's ALL-in-1 seems happy with it, as does INFOPLUS's
-# RDBM systems, it includes ReGIS and SiXel support! I'm impressed...
+# RDBM systems, it includes ReGIS and Sixel support! I'm impressed...
# I can send the address if requested.
# (z340: changed garbled \E[5?l to \E[?5l, DEC smooth scroll off -- esr)
# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
-z340|zstem vt340 terminal emulator 132col 42line,
+z340|ZSTEM vt340 terminal emulator 132col 42line,
lines#42,
is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H, use=vt320-w,
-z340-nam|zstem vt340 terminal emulator 132col 42line (no automatic margins),
+z340-nam|ZSTEM vt340 terminal emulator 132col 42line (no automatic margins),
am@,
is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H, use=z340,
@@ -3205,7 +3288,7 @@ nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset
sgr0=\E[m\017, smacs=^N, use=nsterm+7,
nsterm+mac|AppKit Terminal.app v41+ basic capabilities w/MacRoman alternate-charset,
- acsc=+\335\,\334-\366.\3770#`\327a\:f\241g\261h#i
+ acsc=+\335\,\334-\366.\3770#`\327a:f\241g\261h#i
\360jjkkllmmnno\370p\370q\321rrssttuuvvwwxxy\262z\263{
\271|\255}\243~\245,
enacs=\E(B\E)0, rmacs=^O,
@@ -3303,16 +3386,16 @@ nsterm-c-s|AppKit Terminal.app v51+ w/MacRoman charset (full color w/statusline)
# vt52, vt100, vt102 and xterm.
nsterm-16color|AppKit Terminal.app v240.2+ with Mac OS X version 10.5,
bw@, mir, npc,
- civis=\E[?25l, cnorm=\E[?25h, dch=\E[%p1%dP, dch1=\E[P,
- flash=\E[?5h$<200/>\E[?5l, hpa=\E[%i%p1%dG,
- ich=\E[%p1%d@, ich1=\E[@, kdch1=\E[3~, kend=\E[F,
- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
- kf18=\E[22~, kf19=\E[33~, kf20=\E[34~, kf5=\E[15~,
- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H,
- knp=\E[6~, kpp=\E[5~, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l,
- smcup=\E7\E[?47h, smir=\E[4h, vpa=\E[%i%p1%dd,
- kLFT5=\E[5D, kRIT5=\E[5C, use=nsterm-c-s-acs,
+ dch=\E[%p1%dP, dch1=\E[P, flash=\E[?5h$<200/>\E[?5l,
+ hpa=\E[%i%p1%dG, ich=\E[%p1%d@, ich1=\E[@, kdch1=\E[3~,
+ kend=\E[F, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[22~, kf19=\E[33~, kf20=\E[34~,
+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ khome=\E[H, knp=\E[6~, kpp=\E[5~, rmcup=\E[2J\E[?47l\E8,
+ rmir=\E[4l, smcup=\E7\E[?47h, smir=\E[4h,
+ vpa=\E[%i%p1%dd, kLFT5=\E[5D, kRIT5=\E[5C,
+ use=nsterm-c-s-acs, use=vt220+cvis,
# The versions of Terminal.app in Mac OS X version 10.3.x seem to have
# the background color erase feature. The newer version 240.2 in Mac OS X
@@ -3480,8 +3563,7 @@ iTerm.app|iterm|iTerm.app terminal emulator for Mac OS X,
am, bce, hs, mir, msgr, npc, xenl, xon,
cols#80, it#8, lines#24, wsl#50,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -3505,11 +3587,11 @@ iTerm.app|iterm|iTerm.app terminal emulator for Mac OS X,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
tbc=\E[3g, vpa=\E[%i%p1%dd, kEND5=\E[1;5F, kHOM5=\E[1;5H,
use=ansi+enq, use=xterm+sl-twm, use=vt100+keypad,
- use=xterm+x11mouse, use=xterm+256setaf,
+ use=xterm+x11mouse, use=xterm+256setaf, use=vt220+cvis,
# iTerm2 3.0.15
#
-# https://www.iterm2.com/
+# https://iterm2.com/
# https://github.com/gnachman/iTerm2
# ~/Library/Preferences/com.googlecode.iterm2.plist
# "iTerm" stalled in 2009. A different set of developers began "iTerm2".
@@ -3657,7 +3739,7 @@ iTerm2.app|iterm2|terminal emulator for Mac OS X,
# color-bold entries do not include size information.
# The '+' entries are building blocks
-xnuppc+basic|Darwin PowerPC Console basic capabilities,
+xnuppc+basic|Darwin PowerPC console basic capabilities,
am, bce, mir, xenl,
it#8,
bold=\E[1m, clear=\E[H\E[J, cr=\r, csr=\E[%i%p1%d;%p2%dr,
@@ -3673,162 +3755,162 @@ xnuppc+basic|Darwin PowerPC Console basic capabilities,
sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m,
smul=\E[4m, tbc=\E[3g, use=vt100+keypad,
-xnuppc+c|Darwin PowerPC Console ANSI color support,
+xnuppc+c|Darwin PowerPC console ANSI color support,
colors#8, ncv#32, pairs#64,
op=\E[37;40m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-xnuppc+b|Darwin PowerPC Console color-bold support,
+xnuppc+b|Darwin PowerPC console color-bold support,
ncv#32,
bold=\E[35m,
sgr=\E[0%?%p6%t;35%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m,
use=xnuppc+basic,
-xnuppc+f|Darwin PowerPC Console fancy color support,
+xnuppc+f|Darwin PowerPC console fancy color support,
ncv#35,
sgr=\E[0%?%p6%t;35%;%?%p2%t;36;4%;%?%p1%t;33;44%;%?%p3%t;7%;
m,
smso=\E[33;44m, smul=\E[36;4m, use=xnuppc+b,
-xnuppc+f2|Darwin PowerPC Console alternate fancy color support,
+xnuppc+f2|Darwin PowerPC console alternate fancy color support,
ncv#35,
bold=\E[33m,
sgr=\E[0%?%p6%t;33%;%?%p2%t;34%;%?%p1%t;31;47%;%?%p3%t;7%;m,
smso=\E[31;47m, smul=\E[34m, use=xnuppc+basic,
# Building blocks for specific screen sizes
-xnuppc+80x25|Darwin PowerPC Console 80x25 support (640x400 pixels),
+xnuppc+80x25|Darwin PowerPC console 80x25 support (640x400 pixels),
cols#80, lines#25,
-xnuppc+80x30|Darwin PowerPC Console 80x30 support (640x480 pixels),
+xnuppc+80x30|Darwin PowerPC console 80x30 support (640x480 pixels),
cols#80, lines#30,
-xnuppc+90x30|Darwin PowerPC Console 90x30 support (720x480 pixels),
+xnuppc+90x30|Darwin PowerPC console 90x30 support (720x480 pixels),
cols#90, lines#30,
-xnuppc+100x37|Darwin PowerPC Console 100x37 support (800x600 pixels),
+xnuppc+100x37|Darwin PowerPC console 100x37 support (800x600 pixels),
cols#100, lines#37,
-xnuppc+112x37|Darwin PowerPC Console 112x37 support (896x600 pixels),
+xnuppc+112x37|Darwin PowerPC console 112x37 support (896x600 pixels),
cols#112, lines#37,
-xnuppc+128x40|Darwin PowerPC Console 128x40 support (1024x640 pixels),
+xnuppc+128x40|Darwin PowerPC console 128x40 support (1024x640 pixels),
cols#128, lines#40,
-xnuppc+128x48|Darwin PowerPC Console 128x48 support (1024x768 pixels),
+xnuppc+128x48|Darwin PowerPC console 128x48 support (1024x768 pixels),
cols#128, lines#48,
-xnuppc+144x48|Darwin PowerPC Console 144x48 support (1152x768 pixels),
+xnuppc+144x48|Darwin PowerPC console 144x48 support (1152x768 pixels),
cols#144, lines#48,
-xnuppc+160x64|Darwin PowerPC Console 160x64 support (1280x1024 pixels),
+xnuppc+160x64|Darwin PowerPC console 160x64 support (1280x1024 pixels),
cols#160, lines#64,
-xnuppc+200x64|Darwin PowerPC Console 200x64 support (1600x1024 pixels),
+xnuppc+200x64|Darwin PowerPC console 200x64 support (1600x1024 pixels),
cols#200, lines#64,
-xnuppc+200x75|Darwin PowerPC Console 200x75 support (1600x1200 pixels),
+xnuppc+200x75|Darwin PowerPC console 200x75 support (1600x1200 pixels),
cols#200, lines#75,
-xnuppc+256x96|Darwin PowerPC Console 256x96 support (2048x1536 pixels),
+xnuppc+256x96|Darwin PowerPC console 256x96 support (2048x1536 pixels),
cols#0x100, lines#96,
# These are different combinations of the building blocks
-xnuppc-m|darwin-m|Darwin PowerPC Console (monochrome),
+xnuppc-m|darwin-m|Darwin PowerPC console (monochrome),
use=xnuppc+basic,
-xnuppc|darwin|Darwin PowerPC Console (color),
+xnuppc|darwin|Darwin PowerPC console (color),
use=xnuppc+c, use=xnuppc+basic,
-xnuppc-m-b|darwin-m-b|Darwin PowerPC Console (monochrome w/color-bold),
+xnuppc-m-b|darwin-m-b|Darwin PowerPC console (monochrome w/color-bold),
use=xnuppc+b,
-xnuppc-b|darwin-b|Darwin PowerPC Console (color w/color-bold),
+xnuppc-b|darwin-b|Darwin PowerPC console (color w/color-bold),
use=xnuppc+b, use=xnuppc+c,
-xnuppc-m-f|darwin-m-f|Darwin PowerPC Console (fancy monochrome),
+xnuppc-m-f|darwin-m-f|Darwin PowerPC console (fancy monochrome),
use=xnuppc+f,
-xnuppc-f|darwin-f|Darwin PowerPC Console (fancy color),
+xnuppc-f|darwin-f|Darwin PowerPC console (fancy color),
use=xnuppc+f, use=xnuppc+c,
-xnuppc-m-f2|darwin-m-f2|Darwin PowerPC Console (alternate fancy monochrome),
+xnuppc-m-f2|darwin-m-f2|Darwin PowerPC console (alternate fancy monochrome),
use=xnuppc+f2,
-xnuppc-f2|darwin-f2|Darwin PowerPC Console (alternate fancy color),
+xnuppc-f2|darwin-f2|Darwin PowerPC console (alternate fancy color),
use=xnuppc+f2, use=xnuppc+c,
# Combinations for specific screen sizes
-xnuppc-80x25-m|darwin-80x25-m|Darwin PowerPC Console (monochrome) 80x25,
+xnuppc-80x25-m|darwin-80x25-m|Darwin PowerPC console (monochrome) 80x25,
use=xnuppc+80x25, use=xnuppc+basic,
-xnuppc-80x25|darwin-80x25|Darwin PowerPC Console (color) 80x25,
+xnuppc-80x25|darwin-80x25|Darwin PowerPC console (color) 80x25,
use=xnuppc+c, use=xnuppc+80x25, use=xnuppc+basic,
-xnuppc-80x30-m|darwin-80x30-m|Darwin PowerPC Console (monochrome) 80x30,
+xnuppc-80x30-m|darwin-80x30-m|Darwin PowerPC console (monochrome) 80x30,
use=xnuppc+80x30, use=xnuppc+basic,
-xnuppc-80x30|darwin-80x30|Darwin PowerPC Console (color) 80x30,
+xnuppc-80x30|darwin-80x30|Darwin PowerPC console (color) 80x30,
use=xnuppc+c, use=xnuppc+80x30, use=xnuppc+basic,
-xnuppc-90x30-m|darwin-90x30-m|Darwin PowerPC Console (monochrome) 90x30,
+xnuppc-90x30-m|darwin-90x30-m|Darwin PowerPC console (monochrome) 90x30,
use=xnuppc+90x30, use=xnuppc+basic,
-xnuppc-90x30|darwin-90x30|Darwin PowerPC Console (color) 90x30,
+xnuppc-90x30|darwin-90x30|Darwin PowerPC console (color) 90x30,
use=xnuppc+c, use=xnuppc+90x30, use=xnuppc+basic,
-xnuppc-100x37-m|darwin-100x37-m|Darwin PowerPC Console (monochrome) 100x37,
+xnuppc-100x37-m|darwin-100x37-m|Darwin PowerPC console (monochrome) 100x37,
use=xnuppc+100x37, use=xnuppc+basic,
-xnuppc-100x37|darwin-100x37|Darwin PowerPC Console (color) 100x37,
+xnuppc-100x37|darwin-100x37|Darwin PowerPC console (color) 100x37,
use=xnuppc+c, use=xnuppc+100x37, use=xnuppc+basic,
-xnuppc-112x37-m|darwin-112x37-m|Darwin PowerPC Console (monochrome) 112x37,
+xnuppc-112x37-m|darwin-112x37-m|Darwin PowerPC console (monochrome) 112x37,
use=xnuppc+112x37, use=xnuppc+basic,
-xnuppc-112x37|darwin-112x37|Darwin PowerPC Console (color) 112x37,
+xnuppc-112x37|darwin-112x37|Darwin PowerPC console (color) 112x37,
use=xnuppc+c, use=xnuppc+112x37, use=xnuppc+basic,
-xnuppc-128x40-m|darwin-128x40-m|Darwin PowerPC Console (monochrome) 128x40,
+xnuppc-128x40-m|darwin-128x40-m|Darwin PowerPC console (monochrome) 128x40,
use=xnuppc+128x40, use=xnuppc+basic,
-xnuppc-128x40|darwin-128x40|Darwin PowerPC Console (color) 128x40,
+xnuppc-128x40|darwin-128x40|Darwin PowerPC console (color) 128x40,
use=xnuppc+c, use=xnuppc+128x40, use=xnuppc+basic,
-xnuppc-128x48-m|darwin-128x48-m|Darwin PowerPC Console (monochrome) 128x48,
+xnuppc-128x48-m|darwin-128x48-m|Darwin PowerPC console (monochrome) 128x48,
use=xnuppc+128x48, use=xnuppc+basic,
-xnuppc-128x48|darwin-128x48|Darwin PowerPC Console (color) 128x48,
+xnuppc-128x48|darwin-128x48|Darwin PowerPC console (color) 128x48,
use=xnuppc+c, use=xnuppc+128x48, use=xnuppc+basic,
-xnuppc-144x48-m|darwin-144x48-m|Darwin PowerPC Console (monochrome) 144x48,
+xnuppc-144x48-m|darwin-144x48-m|Darwin PowerPC console (monochrome) 144x48,
use=xnuppc+144x48, use=xnuppc+basic,
-xnuppc-144x48|darwin-144x48|Darwin PowerPC Console (color) 144x48,
+xnuppc-144x48|darwin-144x48|Darwin PowerPC console (color) 144x48,
use=xnuppc+c, use=xnuppc+144x48, use=xnuppc+basic,
-xnuppc-160x64-m|darwin-160x64-m|Darwin PowerPC Console (monochrome) 160x64,
+xnuppc-160x64-m|darwin-160x64-m|Darwin PowerPC console (monochrome) 160x64,
use=xnuppc+160x64, use=xnuppc+basic,
-xnuppc-160x64|darwin-160x64|Darwin PowerPC Console (color) 160x64,
+xnuppc-160x64|darwin-160x64|Darwin PowerPC console (color) 160x64,
use=xnuppc+c, use=xnuppc+160x64, use=xnuppc+basic,
-xnuppc-200x64-m|darwin-200x64-m|Darwin PowerPC Console (monochrome) 200x64,
+xnuppc-200x64-m|darwin-200x64-m|Darwin PowerPC console (monochrome) 200x64,
use=xnuppc+200x64, use=xnuppc+basic,
-xnuppc-200x64|darwin-200x64|Darwin PowerPC Console (color) 200x64,
+xnuppc-200x64|darwin-200x64|Darwin PowerPC console (color) 200x64,
use=xnuppc+c, use=xnuppc+200x64, use=xnuppc+basic,
-xnuppc-200x75-m|darwin-200x75-m|Darwin PowerPC Console (monochrome) 200x75,
+xnuppc-200x75-m|darwin-200x75-m|Darwin PowerPC console (monochrome) 200x75,
use=xnuppc+200x75, use=xnuppc+basic,
-xnuppc-200x75|darwin-200x75|Darwin PowerPC Console (color) 200x75,
+xnuppc-200x75|darwin-200x75|Darwin PowerPC console (color) 200x75,
use=xnuppc+c, use=xnuppc+200x75, use=xnuppc+basic,
-xnuppc-256x96-m|darwin-256x96-m|Darwin PowerPC Console (monochrome) 256x96,
+xnuppc-256x96-m|darwin-256x96-m|Darwin PowerPC console (monochrome) 256x96,
use=xnuppc+256x96, use=xnuppc+basic,
-xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96,
+xnuppc-256x96|darwin-256x96|Darwin PowerPC console (color) 256x96,
use=xnuppc+c, use=xnuppc+256x96, use=xnuppc+basic,
######## DOS/WINDOWS
@@ -3836,16 +3918,148 @@ xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96,
crt|crt-vt220|CRT 2.3 emulating VT220,
bce, msgr,
ncv@,
- hts=\EH, use=vt100+enq, use=vt220, use=ecma+color,
+ hts=\EH, use=vt100+enq, use=vt220-base, use=ecma+color,
+
+# SecureCRT 8.7.3.2279
+# 8.7.3 was released 2020/08/11
+# (eval 2021/02/05)
+# VanDyke Software, Inc.
+#
+# Advertised features:
+# Xterm 24-bit color
+# Xterm 256-color
+# Double-size characters
+# Xterm extensions for mouse support and changing title bar
+# Emulates VT100, VT102, VT220, VT320, Linux console, SCO ANSI,
+# TN3270, TVI910, TVI925, Wyse 50/60, and ANSI.
+# Changes:
+# Added ANSI sc/rc and REP in 2019/12/17
+# Added TVI910/ TVI925 in 2019/11/20
+#
+# Default:
+# Emulate "Xterm", using "ANSI with 256color"
+# TERM=xterm-256color
+#
+# vttest:
+# DA1 \E[?62;1;2;6;7;8;9c (vt220 with DRCS and NRCS)
+# DA2 \E[>1;136;0c
+# double-sized characters do not work
+# Menu-1 fails (window resizes to 132-columns, but does not repaint)
+# NRCS fails (tried French, but none of the replacements worked)
+# VT100 line-drawing works, except the C/R, etc., are an hline.
+# VT52 works except for S8C1T bug.
+# RIS hangs the terminal.
+# Local SRM does not echo.
+# Some of the VT320/VT220 status reports work, not locator or DECXCPR
+# DECUDK works if I press shift.
+# Fails CHT, CNL, CPL
+# Does not honor bce with ECH
+# ERM/SPA does not work
+# REP has 11 +'s except for final 2 +'s, like PuTTY.
+# Fails SL/SR
+# DECRPM does not respond.
+# dtterm modify/report operations do not work
+# Alternate screen works.
+# Mouse:
+# highlight tracking does not work.
+# any event tracking does not work, but
+# button event tracking does work.
+# DEC locator does not work.
+# SGR coordinates does not work.
+# ncurses:
+# reset6 does reset to 80-columns
+# ncurses RGB edit does not work.
+# direct colors don't work, probably needs semicolons.
+# tack:
+# blink works, but not dim or invis
+# no italics or crossed-out
+# scripts:
+# 256color handles "-r" option (but test/ncurses menu d does not alter)
+# dynamic colors queries do not work, though it seems some can be set.
+# resize.pl gets no reply, resize.sh needs fix for no reply.
+scrt|securecrt|SecureCRT emulating xterm-256color,
+ bce@, km@, npc,
+ bel@, cvvis@, kcbt=\E[Z, kent=\EOM, use=vt220+pcedit,
+ use=xterm+256setaf, use=ecma+index, use=ansi+rep,
+ use=xterm+keypad, use=xterm+pcfkeys, use=xterm-basic,
+
+# Absolute Telnet
+# (eval 2021/02/20)
+# 11.24 was released 2020/08/13
+# Celestial Software
+#
+# Advertised features:
+# Emacs compatibility mode (Meta Keys can be enabled for left/right ALT)
+# Double-size characters
+# Xterm extensions for mouse support
+# Emulates VT52, VT100, VT220, VT320, ansi, xterm, qnx, scoansi,
+# ANSIBBS, WYSE60, TeleVideo 950.
+#
+# Default:
+# TERM=xterm
+#
+# vttest:
+# DA1: \E[?62;1;2;6;7;8;9;15;22c (VT200 with DRCS, UDK, NRCS)
+# DA2: \E[>1;10;0c
+# However:
+# + NRCS tests do not work
+# + DECUDK test fails
+# + VT100 double-sized characters work
+# menu-1 autowrap does not work
+# supports blinking text
+# VT220 DECSCA last screen (ignoring ECH, etc), leaves fill on top/left
+# VT220 device status reports fail, except operating status
+# 8-bit controls work
+# xterm alternate screen recognized, but cursor restored incorrectly
+# xterm mouse (normal, any event, button event) works
+# xterm highlight-mouse does not work properly, confused with any-event
+# does not recognize SGR-mouse mode
+# supports xterm window-modifiny/reporting controls
+# supports ECMA-48 cursor movement except HPR
+# supports REP and SD, but not ECMA-48 SL, SR, SU
+# tack:
+# italics and crossed-out do not work
+# supports xterm-style modified function-keys, using X11R6 F1-F4.
+# does not support modified cursor-keys or editing-keys
+# uses VT220-style Home/End
+# if alt-keys are enabled,
+# meta-mode sends escape rather than shifting, in 7-bit mode
+# meta-mode does the expected shifting in 8-bit mode
+# scripts:
+# supports 256-colors, including changing palette (ncurses menu d works)
+# supports UTF-8, but honors VT100 line-drawing
+absolute|Absolute Telnet emulating xterm,
+ kcbt=\E[Z, use=ecma+index, use=ansi+rep,
+ use=vt220+pcedit, use=xterm+keypad, use=xterm+app,
+ use=xterm+pcf0, use=xterm+256color, use=xterm+x11mouse,
+ use=xterm-basic,
#### PuTTY
-# PuTTY 0.55 (released 3 August 2004)
+# PuTTY 0.74 (27 June 2020)
# http://www.chiark.greenend.org.uk/~sgtatham/putty/
#
+# PuTTY 0.73 (September 2019)
+# Testing with tack:
+# does not implement italics
+# does not implement cross-out text
+# its settings dialog allows some of the VT100 line-drawing tests to pass
+# (not the padding test, though)
+# Testing with vttest:
+# xterm mouse modes are incomplete: X10, highlight, any-event, and focus in/out modes are not implemented.
+# does not implement protected areas
+# does not implement SL/SR
+#
+# PuTTY 0.71 (March 2019) provided a workable "rep" capability. It also
+# changed longstanding keypad assignments, so that these no longer apply:
+# kLFT=\E[D, kRIT=\E[C, kb2=\E[G,
+#
+# PuTTY recognized xterm's 1006 mouse mode in late 2015; subsequent release was
+# in 2017 (0.70) -TD
+#
# Comparing with 0.51, vttest is much better (only a few problems with the
# cursor position reports and wrapping).
#
-# PuTTY 0.51 (released 14 December 2000)
+# PuTTY 0.51 (14 December 2000)
#
# This emulates vt100 + vt52 (plus a few vt220 features: ech, SRM, DECTCEM, as
# well as SCO and Atari, color palettes from Linux console). Reading the code,
@@ -3857,22 +4071,20 @@ crt|crt-vt220|CRT 2.3 emulating VT220,
# Control responses, wrapping and tabs are buggy, failing a couple of
# screens in vttest.
#
-# xterm mouse support is not implemented (unrelease version may).
+# xterm mouse support is not implemented (unreleased version may).
#
# Several features such as backspace/delete are optional; this entry documents
-# the default behavior -TD
+# the default behavior. None of the combinations of keyboard settings match
+# those used for xterm -TD
#
# PuTTY recognizes xterm's 1049 mode for switching to/from alternate screen,
# but implements it incorrectly as mentioned here:
# http://stackoverflow.com/questions/24613237/terminal-retains-bg-color-after-closing-vim-using-color-scheme-and-putty-256co/37869114#37869114
-# PuTTY recognized xterm's 1006 mode since late 2015; subsequent release was
-# in 2017 (0.70) -TD
putty|PuTTY terminal emulator,
am, bce, bw, ccc, mir, msgr, xenl, xon, XT,
colors#8, it#8, ncv#22, pairs#64, U8#1,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
@@ -3885,16 +4097,13 @@ putty|PuTTY terminal emulator,
%%G\340\202\242\E%%@%e%p1%c%;,
dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
el1=\E[1K, enacs=\E(B\E)0, flash=\E[?5h$<100/>\E[?5l,
- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, il=\E[%p1%dL,
- il1=\E[L, ind=\n,
+ home=\E[H, hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, ind=\n,
initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/
%02x%p4%{255}%*%{1000}%/%02x,
is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R,
- kLFT=\E[D, kRIT=\E[C, kb2=\E[G, kbs=^?, kcbt=\E[Z,
- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~,
- kind=\E[B, knp=\E[6~, kpp=\E[5~, kri=\E[A, kspd=^Z, nel=\r\n,
- oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
+ kbs=^?, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
+ kcuu1=\EOA, kind=\E[B, kri=\E[A, kspd=^Z, nel=\r\n, oc=\E]R,
+ op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
rmam=\E[?7l, rmcup=\E[2J\E[?47l, rmir=\E[4l,
rmkx=\E[?1l\E>, rmpch=\E[10m, rmso=\E[27m, rmul=\E[24m,
rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l,
@@ -3904,9 +4113,16 @@ putty|PuTTY terminal emulator,
%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h,
smir=\E[4h, smkx=\E[?1h\E=, smpch=\E[11m, smso=\E[7m,
- smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3J,
- use=ecma+index, use=xterm+sm+1006, use=putty+fnkeys,
- use=vt102+enq, use=xterm+sl,
+ smul=\E[4m, vpa=\E[%i%p1%dd, E3=\E[3J, use=vt220+pcedit,
+ use=ansi+tabs, use=ansi+rep, use=ecma+index,
+ use=xterm+sm+1006, use=putty+fnkeys, use=vt102+enq,
+ use=xterm+sl, use=vt100+fnkeys, use=putty+keypad,
+ use=vt220+cvis,
+putty+keypad|PuTTY numeric keypad,
+ kp1=\EOq, kp2=\EOr, kp3=\EOs, kp4=\EOt, kp5=\EOu, kp6=\EOv,
+ kp7=\EOw, kp8=\EOx, kp9=\EOy, kpADD=\EOl, kpDIV=\EOQ,
+ kpDOT=\EOn, kpMUL=\EOR, kpNUM=\EOP, kpSUB=\EOS, kpZRO=\EOp,
+
vt100-putty|Reset PuTTY to pure vt100,
rs2=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p,
use=vt100,
@@ -3989,8 +4205,8 @@ putty+fnkeys+sco|SCO fn-keys for PuTTY,
# https://github.com/mintty/mintty
#
# Originally a fork (and reduction) of PuTTY, this has grown from 15ksloc in
-# 2013 to 38ksloc in 2019. That is still smaller than PuTTY (160ksloc), but
-# larger than rxvt (31ksloc).
+# 2013 to 41ksloc in 2020. That is still smaller than PuTTY (160ksloc), but
+# larger than rxvt (31ksloc) and slightly smaller than rxvt-unicode (42ksloc).
#
# Version 3.0 responds to DA as a VT400, however it does not implement the
# application keypad. The assignment of cursor-keys versus modifiers differs
@@ -4017,20 +4233,20 @@ mintty|Cygwin Terminal,
setal=\E[5%p1%dm, use=xterm+256color,
use=mintty+common,
mintty-direct|Cygwin Terminal direct-color,
- setal=\E[%?%p1%{8}%<%t5%p1%d%e58\:2\:\:%p1%{65536}%/%d\:%p1
- %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+ setal=\E[%?%p1%{8}%<%t5%p1%d%e58:2::%p1%{65536}%/%d:%p1
+ %{256}%/%{255}%&%d:%p1%{255}%&%d%;m,
use=xterm+direct, use=mintty+common,
mintty+common|shared capabilities for mintty,
km@, npc,
kcbt=\E[Z, kent=\EOM, rmm@, rmpch=\E[10m,
rs1=\Ec\E]104\007, rshm=\E[22m, rsubm=\E[75m,
- rsupm=\E[75m, smm@, smpch=\E[11m, sshm=\E[1\:2m,
+ rsupm=\E[75m, smm@, smpch=\E[11m, sshm=\E[1:2m,
ssubm=\E[74m, ssupm=\E[73m, Rmol=\E[55m, Smol=\E[53m,
- Smulx=\E[4\:%p1%dm, blink2=\E[6m, norm=\E[22m,
+ Smulx=\E[4:%p1%dm, blink2=\E[6m, norm=\E[22m,
opaq=\E[28m, smul2=\E[21m, use=ansi+rep,
use=ecma+strikeout, use=ecma+index, use=vt420+lrmm,
use=xterm+sm+1006, use=xterm+pcfkeys, use=xterm+tmux,
- use=xterm-basic,
+ use=ecma+italics, use=xterm-basic,
# 2019-06-09: These capabilities are commented-out for compatibility with
# existing releases 5.9-6.1, and may be considered for inclusion after the
# release of ncurses 6.2:
@@ -4096,21 +4312,20 @@ teraterm2.3|Tera Term Pro,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
- blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J,
- cnorm=\E[?25h, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
- cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
- flash=\E[?5h$<200/>\E[?5l, hpa=\E[%i%p1%dG,
- il=\E[%p1%dL, il1=\E[L, kdch1=\E[3~, kf1=\E[11~,
+ blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cuf1=\E[C,
+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP,
+ dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J,
+ el=\E[K, el1=\E[1K, flash=\E[?5h$<200/>\E[?5l,
+ hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, kf1=\E[11~,
kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~,
kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~,
- kpp=\E[5~, kslt=\E[4~, op=\E[100m, rev=\E[7m, ri=\EM,
+ kf8=\E[19~, kf9=\E[20~, op=\E[100m, rev=\E[7m, ri=\EM,
rmso=\E[27m, rmul=\E[24m, sgr0=\E[0m\017, smso=\E[7m,
- smul=\E[4m, vpa=\E[%i%p1%dd, use=vt100+enq,
- use=klone+color, use=vt100,
+ smul=\E[4m, vpa=\E[%i%p1%dd, use=vt220+vtedit,
+ use=vt100+enq, use=klone+color, use=vt100,
+ use=vt220+cvis,
# Version 4.59 has regular vt100 line-drawing (so it is no longer necessary
# to choose a Windows OEM font).
@@ -4174,7 +4389,7 @@ teraterm|Tera Term,
# but that is not unusual for vt100 "emulators".
# b) Does not implement vt100 keypad
# c) Recognizes a subset of vt52 controls.
-ms-vt100|MS telnet imitating dec vt100,
+ms-vt100|MS telnet imitating DEC vt100,
lines#25,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
@@ -4230,9 +4445,59 @@ ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+,
use=ms-vt100+,
# Windows Terminal (Preview)
+# https://github.com/microsoft/terminal
+#
+# Windows 10 21H1
+# Version 1.9.1942.0
+#
+# This has longstanding issues with CR/LF mapping, e.g.,
+# - first reported by Juergen Pfeifer August 13, 2020, with workaround
+# - Windows Terminal #8303 "Updates to ms-terminal terminal type in terminfo to
+# 1.4 from 0.2"
+# - Windows Terminal #6733 "Midnight Commander (mc) output is screwed when
+# using the 'ms-terminal' as $TERM"
+#
+# still seen in testing during May-July 2021. As a workaround, this terminal
+# description sets cud1 to an escape sequence rather than just \r.
+#
+# Using TERM=xterm-256color shows a number of problems.
+# A few are seen only in the WSL2 environment.
+#
+# tack:
+# - flash does not work.
+# - video attribute blink does not work.
+# - video attribute invis does not work in WSL2.
+# - italics sitm/ritm do not work in WSL2.
+# - crossed-out smxx/rmxx do not work in WSL2.
+# - reloading colors via initp interchanges red/blue.
+# - does not implement OSC 104, which is used for resetting colors in xterm.
+# - does not support numeric keypad application mode.
+# - control-modifier (without alt/shift) does not work for special keys.
+# - meta-key sends escape character rather than acting as a meta key.
+#
+# vttest:
+# - identifies itself as a VT100.
+# - cursor movement (menu 1) does not work properly, e.g., for wrapping.
+# - does not support 8-bit controls.
+# - does not support VT420 rectangles.
+# - does not support VT420 left/right margins.
+# - ECMA-48 cursor-movement works.
+# - does not support X10 mouse, or mouse highlight tracking.
+# - SGR mouse mode 1006 works.
+# - any-event mouse mode shows no focus-in/focus-out events.
+# - alternate screen 47/48 modes do not work, nor do 1047/1048.
+# - alternate screen 1049 mode works.
+# - none of the window report/modify operations work.
+# - none of the DECRPM/DECRQM reporting operations work.
+#
+# xterm:
+# - 256colors2.pl -r, -i and -q options work.
+# - dynamic colors do not work.
+# - paste64.pl does not work, i.e., bracketed-paste.
+# - tcapquery.pl does not work.
+#
# Windows 10 1903
# Version 0.2.1831.0
-# https://github.com/microsoft/terminal
#
# The task manager shows this as "OpenConsole.exe", which differs
# from the "Windows Command Processor" used for the command-prompt.
@@ -4271,11 +4536,29 @@ ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+,
# - does not recognize either xterm+direct or xterm+indirect escapes.
ms-terminal|Windows10 terminal,
npc,
- rmkx=\E[?1l, rmm@, smkx=\E[?1h, smm@, use=xterm+256setaf,
- use=xterm+pcfkeys, use=ansi+rep, use=ecma+index,
- use=xterm-basic,
+ cud1=\E[B, kcbt=\E[Z, rmkx=\E[?1l, rmm@, smkx=\E[?1h, smm@,
+ Cr@, Ms@, use=xterm+256color, use=xterm+pcfkeys,
+ use=ansi+rep, use=xterm+sm+1006, use=ecma+index,
+ use=ecma+italics, use=ecma+strikeout, use=xterm-basic,
+ use=xterm+tmux,
#### Visual Studio
+# Visual Studio Code 1.45.0 uses xterm.js 12.8.1 (see https://xtermjs.org/).
+#
+# vttest:
+# - fixes menu 1 problem with wrapping
+# - supports DECALN
+# - fixes menu 8 problem with delete-character
+# - REP, SL/SL work
+# - keypad application mode still does not work; PF1-PF4 are not assigned.
+# - DECRQM/DECRPM do not work
+# - xterm mouse features:
+# - SGR coordinates work; the other modes do not (see vscode #96058)
+# - focus-events are not sent
+# - mouse highlight tracking does not send button event
+# tack/other:
+# - little or no change since previous review
+#
# Visual Studio Code 1.35.1 uses xterm.js (see https://xtermjs.org/).
# https://code.visualstudio.com/docs/editor/integrated-terminal
#
@@ -4308,7 +4591,7 @@ vscode|xterm.js|Visual Studio Code terminal using xterm.js,
npc,
kcbt=\E[Z, rmkx=\E[?1l, smkx=\E[?1h, use=xterm+256setaf,
use=ecma+index, use=xterm+sm+1006, use=xterm+pcfkeys,
- use=xterm-basic,
+ use=ecma+italics, use=xterm-basic,
vscode-direct|Visual Studio Code with direct-colors,
use=xterm+indirect, use=vscode,
@@ -4358,19 +4641,19 @@ xterm-r5|xterm R5 version,
dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J,
el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
il=\E[%p1%dL, il1=\E[L, ind=\n, kcub1=\EOD, kcud1=\EOB,
- kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kdl1=\E[31~,
- kel=\E[8~, kend=\E[4~, kf0=\EOq, kf1=\E[11~, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, kf3=\E[13~,
- kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
- kf9=\E[20~, khome=\E[1~, kich1=\E[2~, kil1=\E[30~,
- kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, rev=\E[7m, ri=\EM,
+ kcuf1=\EOC, kcuu1=\EOA, kdl1=\E[31~, kel=\E[8~, kf0=\EOq,
+ kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~,
+ kil1=\E[30~, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM,
rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
rs2=\E>\E[?1;3;4;5;6l\E[4l\E[?7h\E[m\E[r\E[2J\E[H,
sc=\E7,
sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
%;m,
sgr0=\E[m, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m,
- smul=\E[4m, tbc=\E[3g, use=vt100+enq, use=xterm+kbs,
+ smul=\E[4m, tbc=\E[3g, use=vt220+pcedit, use=vt100+enq,
+ use=xterm+kbs,
# Compatible with the R6 xterm
# (from XFree86 3.2 distribution, <acsc> and <it> added, <blink@> removed)
# added khome/kend, hts based on the R6 xterm code - TD
@@ -4388,27 +4671,25 @@ xterm-r6|xterm X11R6 version,
el=\E[K, enacs=\E)0, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL,
il1=\E[L, ind=\n,
is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8,
- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
- kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- kfnd=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
- kslt=\E[4~, meml=\El, memu=\Em, rc=\E8, rev=\E[7m, ri=\EM,
- rmacs=^O, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l,
- rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\E[11~,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
+ kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~,
+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, kmous=\E[M, meml=\El, memu=\Em,
+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmcup=\E[2J\E[?47l\E8,
+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
rs2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, sc=\E7,
sgr0=\E[m, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- use=xterm+kbs, use=vt100+enq,
+ use=vt220+vtedit, use=xterm+kbs, use=vt100+enq,
xterm-old|antique xterm version,
use=xterm-r6,
# The monochrome version began as a copy of "xtermm" (from Solaris), and was
# initially part of the xterm sources (in XFree86). But "xterm" continued to
# grow, while "xterm-mono" had none of the newer features. Additionally,
# inheriting from "xtermm" runs into several problems, including different
-# function keys as well as the fact that the mouse support is not compatible.
+# function keys as well as the fact that the mouse support is not compatible.
# This entry restores the original intent, intentionally not an alias to
# simplify maintenance -TD
xterm-mono|monochrome xterm,
@@ -4419,8 +4700,7 @@ xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
OTbs, am, bce, km, mir, msgr, xenl, XT,
cols#80, it#8, lines#24, ncv@,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -4451,7 +4731,7 @@ xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
tbc=\E[3g, vpa=\E[%i%p1%dd, use=xterm+kbs, use=vt100+enq,
- use=ecma+color, use=vt220+keypad,
+ use=ecma+color, use=vt220+cvis, use=vt220+keypad,
# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100
# codes for F1-F4 except while in VT220 mode.
@@ -4502,21 +4782,42 @@ xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System),
%p7%t;8%;m%?%p9%t\016%e\017%;,
use=xterm-xf86-v40,
+# Controlling the cursor-visibility is not a "new" feature, but was generally
+# neglected in terminal emulators until the mid-1990s. These would work for
+# the hardware terminals, or for more recent emulators, e.g., xterm.
+vt220+cvis|DECTCEM VT220 cursor-visibility,
+ civis=\E[?25l, cnorm=\E[?25h,
+vt220+cvis8|8-bit DECTCEM VT220 cursor-visibility,
+ civis=\233?25l, cnorm=\233?25h,
+# The cvvis capability was unused in the SVr4 terminal descriptions for the
+# AT&T terminals, and there are no available documents as of 2021 which can
+# provide that it would have worked. The first block is used for those 1980s
+# terminals; the second is used for terminals whose behavior can be verified.
+att610+cvis0|AT&T 610 cursor-visibility,
+ civis=\E[?25l, cnorm=\E[?25h\E[?12l,
+att610+cvis|xterm cursor-visibility in XFree86 4.4,
+ civis=\E[?25l, cnorm=\E[?12l\E[?25h, cvvis=\E[?12;25h,
+
# This version was released in XFree86 4.4.
xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
- cnorm=\E[?12l\E[?25h, cvvis=\E[?12;25h, use=ecma+index,
- use=xterm-xf86-v43,
+ use=att610+cvis, use=ecma+index, use=xterm-xf86-v43,
xterm-xfree86|xterm terminal emulator (XFree86),
use=xterm-xf86-v44,
+xterm+nofkeys|building block for xterm fkey-variants,
+ npc,
+ kcbt=\E[Z, kent=\EOM, nel=\EE, use=ecma+index,
+ use=ansi+rep, use=ecma+strikeout, use=vt420+lrmm,
+ use=xterm+sm+1006, use=xterm+tmux, use=ecma+italics,
+ use=xterm+keypad, use=xterm-basic,
+
# This version reflects the current xterm features.
xterm-new|modern xterm terminal emulator,
npc,
- kcbt=\E[Z, kent=\EOM, use=ecma+index, use=ansi+rep,
- use=ecma+strikeout, use=xterm+keypad, use=vt420+lrmm,
- use=xterm+sm+1006, use=xterm+pcfkeys, use=xterm+tmux,
- use=xterm-basic,
+ kcbt=\E[Z, kent=\EOM, nel=\EE, use=ecma+index,
+ use=ansi+rep, use=ecma+strikeout, use=xterm+pcfkeys,
+ use=xterm+nofkeys,
# This fragment is for people who cannot agree on what the backspace key
# should send.
@@ -4541,7 +4842,28 @@ xterm+kbs|fragment for backspace key,
xterm+pcfkeys|fragment for PC-style fkeys,
use=xterm+app, use=xterm+pcf2, use=xterm+pcc2,
use=xterm+pce2,
-#
+
+# The xterm ctrlFKeys resource defaults to 10, so without the "pc-style"
+# feature, e.g., setting the modifyCursorKeys and modifyFunctionKeys resources
+# to -1 to disable them, one gets 42 function-keys on a 12-function-key
+# keyboard, e.g.,
+# kf1 = \E[11~
+# kf11 shift f1 = \E[23~
+# kf21 control f1 = \E[42~
+# kf31 shift control f1 = \E[52~
+xterm+nopcfkeys|fragment without PC-style fkeys,
+ kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[12~,
+ kf20=\E[34~, kf21=\E[42~, kf22=\E[43~, kf23=\E[44~,
+ kf24=\E[45~, kf25=\E[46~, kf26=\E[47~, kf27=\E[48~,
+ kf28=\E[49~, kf29=\E[50~, kf3=\E[13~, kf30=\E[51~,
+ kf31=\E[52~, kf32=\E[53~, kf33=\E[54~, kf34=\E[55~,
+ kf35=\E[56~, kf36=\E[57~, kf37=\E[58~, kf38=\E[59~,
+ kf39=\E[60~, kf4=\E[14~, kf40=\E[61~, kf41=\E[62~,
+ kf42=\E[63~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~,
+
xterm+noapp|fragment with cursor keys in normal mode,
kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[F,
khome=\E[H,
@@ -4713,22 +5035,34 @@ xterm+alt+title|xterm 90 and 251 features combined,
# | NumLock | / | * | - |
# | | $Oo | $Oj | $OS |
# |_________|__kpDIV__|__kpMUL__|__kpSUB__|
-# | 7 8 9 | |
-# | $Ow | $Ox | $Oy | + |
-# |_ka1__K1_|_________|_ka3__K3_| $Ok |
-# | 4 | 5 | 6 | kpADD |
+# | 7 8 9 | + |
+# | $Ow | $Ox | $Oy | $Ok |
+# |_ka1__K1_|_________|_ka3__K3_| kpADD |
+# | 4 | 5 | 6 | |
# | $Ot | $Ou | $Ov | |
# |_________|_kb2__K2_|_________|_________|
# | 1 | 2 | 3 | |
# | $Oq | $Or | $Os | |
# |_kc1__K4_|_________|_kc3__K5_| enter |
-# | 0 | . | $OM |
-# | $Op | $On | |
-# |___________________|_________|_kent_@8_|
+# | 0 | . | $OM |
+# | $Op | $On | |
+# |_______kpZRO_______|__kpDOT__|_kent_@8_|
+#
+# ka2, kb1, kb3 and kc2 are extensions, as are the mixed-case names.
+# There are no termcap equivalents for these extensions.
+#
+# kpCMA (comma) is used here for the VT100 keypad, which xterm emulates with
+# shifted-keypad-plus, though normally that invokes a font-size change.
+#
+# Old versions of xterm, e.g., xterm-xfree86, documented \EOE as kb2, which
+# does not fit into this layout. The extension kp5 fits, but is not visible
+# to termcap applications. As an alternative, kbeg (which does have a termcap
+# equivalent) is provided.
#
xterm+keypad|xterm emulating VT100/VT220 numeric keypad,
- kp5=\EOE, kpADD=\EOk, kpCMA=\EOl, kpDIV=\EOo, kpDOT=\EOn,
- kpMUL=\EOj, kpSUB=\EOm, kpZRO=\EOp, use=vt220+keypad,
+ kbeg=\EOE, kp5=\EOE, kpADD=\EOk, kpCMA=\EOl, kpDIV=\EOo,
+ kpDOT=\EOn, kpMUL=\EOj, kpSUB=\EOm, kpZRO=\EOp,
+ use=vt220+keypad,
#
# Those chunks use the new-style (the xterm oldFunctionKeys resource is false).
# Alternatively, the same scheme with old-style function keys as in xterm-r6
@@ -4744,23 +5078,21 @@ xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys:2,
#
# This chunk is used for building the VT220/Sun/PC keyboard variants.
xterm-basic|modern xterm terminal emulator - common,
- OTbs, am, bce, km, mir, msgr, xenl, AX, XT,
+ OTbs, am, bce, mir, msgr, xenl, AX, XT,
colors#8, cols#80, it#8, lines#24, pairs#64,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
- cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
- el1=\E[1K, flash=\E[?5h$<100/>\E[?5l, home=\E[H,
- hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
- il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m,
- is2=\E[!p\E[?3;4l\E[4l\E>, kmous=\E[M, meml=\El,
- memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
- rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>,
- rmm=\E[?1034l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM,
+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
+ flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG,
+ ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
+ ind=\n, invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>,
+ kmous=\E[M, meml=\El, memu=\Em, op=\E[39;49m, rc=\E8,
+ rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l,
+ rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7, setab=\E[4%p1%dm,
setaf=\E[3%p1%dm,
setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}
@@ -4770,10 +5102,14 @@ xterm-basic|modern xterm terminal emulator - common,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
- smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m, smul=\E[4m,
- tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3J, use=ecma+italics,
- use=ansi+pp, use=xterm+kbs, use=xterm+alt+title,
- use=ansi+enq,
+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
+ vpa=\E[%i%p1%dd, E3=\E[3J, use=ansi+pp, use=xterm+kbs,
+ use=xterm+alt+title, use=ansi+enq, use=att610+cvis,
+ use=xterm+meta,
+
+xterm+meta|meta mode for xterm,
+ km,
+ rmm=\E[?1034l, smm=\E[?1034h,
# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997
# In retrospect, something like xterm-r6 was intended here -TD
@@ -4789,16 +5125,16 @@ xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1,
# xterm also recognizes the control sequences for initc -TD
xterm-16color|xterm with 16 colors like aixterm,
ccc,
- initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
+ initc=\E]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
use=xterm+osc104, use=ibm+16color, use=xterm-new,
# 256-colors is a compile-time feature of XFree86 xterm beginning with
# xterm patch #111 (1999/7/10) -TD
-xterm+256color|xterm 256-color feature,
+xterm+256color|original xterm 256-color feature,
ccc,
colors#0x100, pairs#0x10000,
- initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
+ initc=\E]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
oc=\E]104\007,
setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;
@@ -4807,6 +5143,19 @@ xterm+256color|xterm 256-color feature,
;%p1%d%;m,
setb@, setf@,
+# The semicolon separator used in xterm+256color does not follow the ECMA-48
+# standard. Since patch #282 (in 2012), xterm has supported both the legacy
+# subparameter separator (semicolon) and the standard (colon).
+#
+# The xterm FAQ gives some of the history:
+# https://invisible-island.net/xterm/xterm.faq.html#color_by_number
+xterm+256color2|xterm 256-color feature,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48:
+ 5:%p1%d%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38:5
+ :%p1%d%;m,
+ use=xterm+256color,
+
# xterm OSC 104 resets the color palette. Using it as part of xterm+256color
# has the drawback that some of the xterm-alikes which use that building block
# require a different approach to rs1 -TD
@@ -4840,9 +5189,12 @@ xterm+256setaf|xterm 256-color (set-only),
# The default color palette for the 256- and 88-colors are different. A
# given executable will have one palette (perhaps compiled-in). If the program
# supports xterm's control sequence, it can be programmed using initc.
-xterm+88color|xterm 88-color feature,
+xterm+88color|original xterm 88-color feature,
colors#88, pairs#7744, use=xterm+256color,
+xterm+88color2|xterm 88-color feature,
+ colors#88, pairs#7744, use=xterm+256color2,
+
# These variants of XFree86 3.9.16 xterm are built as a configure option.
xterm-256color|xterm with 256 colors,
use=xterm+osc104, use=xterm+256color, use=xterm-new,
@@ -4860,12 +5212,12 @@ xterm-88color|xterm with 88 colors,
# for numeric capabilities provided in ncurses 6.1:
xterm+direct2|xterm with direct-color indexing,
RGB,
- colors#0x1000000, pairs#0x10000,
+ colors#0x1000000, pairs#0x10000, CO#8,
initc@, op=\E[39;49m,
- setab=\E[%?%p1%{8}%<%t4%p1%d%e48\:2\:%p1%{65536}%/%d\:%p1
- %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
- setaf=\E[%?%p1%{8}%<%t3%p1%d%e38\:2\:%p1%{65536}%/%d\:%p1
- %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e48:2:%p1%{65536}%/%d:%p1%{256}
+ %/%{255}%&%d:%p1%{255}%&%d%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e38:2:%p1%{65536}%/%d:%p1%{256}
+ %/%{255}%&%d:%p1%{255}%&%d%;m,
setb@, setf@,
xterm-direct2|xterm with direct-color indexing (old),
use=xterm+direct2, use=xterm+titlestack, use=xterm,
@@ -4875,12 +5227,12 @@ xterm-direct2|xterm with direct-color indexing (old),
# identifier" parameter. This version provides for that parameter:
xterm+direct|xterm with direct-color indexing,
RGB,
- colors#0x1000000, pairs#0x10000,
+ colors#0x1000000, pairs#0x10000, CO#8,
initc@, op=\E[39;49m,
- setab=\E[%?%p1%{8}%<%t4%p1%d%e48\:2\:\:%p1%{65536}%/%d\:%p1
- %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
- setaf=\E[%?%p1%{8}%<%t3%p1%d%e38\:2\:\:%p1%{65536}%/%d\:%p1
- %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e48:2::%p1%{65536}%/%d:%p1
+ %{256}%/%{255}%&%d:%p1%{255}%&%d%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e38:2::%p1%{65536}%/%d:%p1
+ %{256}%/%{255}%&%d:%p1%{255}%&%d%;m,
setb@, setf@,
xterm-direct|xterm with direct-color indexing,
use=xterm+direct, use=xterm,
@@ -4906,15 +5258,15 @@ xterm+indirect|xterm with direct-color indexing (old),
setb@, setf@,
konsole-direct|konsole with direct-color indexing,
use=xterm+indirect, use=konsole,
-st-direct|st with direct-color indexing,
+st-direct|simpleterm with direct-color indexing,
use=xterm+indirect, use=st,
-vte-direct|vte with direct-color indexing,
+vte-direct|VTE with direct-color indexing,
use=xterm+indirect, use=vte,
# reportedly in Apple's Mohave (fall 2018), but untested -TD
nsterm-direct|nsterm with direct-color indexing,
use=xterm+indirect, use=nsterm,
-# As for others:
+# As for others (commenting at the time of release for ncurses 6.1):
# + Apple's Terminal.app does not recognize either form of the direct-color
# sequences.
# + Cygwin's mintty recognizes xterm's original implementation, does okay with
@@ -4926,6 +5278,45 @@ nsterm-direct|nsterm with direct-color indexing,
# + terminology 0.91 recognizes xterm's original implementation, but does
# nothing useful with it.
+# Reviewing after ncurses 6.2:
+# + Apple's Terminal.app is unchanged, has no support for direct color:
+# Catalina 10.15.5 Terminal.app 2.10 (433)
+# Mohave 10.14.6 - Terminal.app 2.9.5 (421.2)
+# + Cygwin's mintty 3.1.7 works with colon/semicolon
+# + PuTTY 0.73 works with semicolon
+# + Teraterm 4.105 works with semicolon
+# + terminology 1.7.0 works with colon/semicolon.
+
+# Other variants are possible, e.g., by using more of xterm's indexed color
+# palette, though the intrusion of indexed colors on the direct-color space
+# would be more noticeable.
+
+xterm+direct16|xterm with direct-color indexing,
+ CO#16,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e%?%p1%{16}%<%t%p1%{92}%+%d%e48
+ :2::%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1%{255}%&
+ %d%;%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e%?%p1%{16}%<%t%p1%'R'%+%d%e38:
+ 2::%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1%{255}%&%d
+ %;%;m,
+ setb@, setf@, use=xterm+direct,
+
+xterm-direct16|xterm with direct-colors and 16 indexed colors,
+ use=xterm+direct16, use=xterm,
+
+xterm+direct256|xterm with direct-color indexing,
+ CO#0x100,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e%?
+ %p1%{256}%<%t48;5;%p1%d%e48:2::%p1%{65536}%/%d:%p1
+ %{256}%/%{255}%&%d:%p1%{255}%&%d%;%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e%?
+ %p1%{256}%<%t38;5;%p1%d%e38:2::%p1%{65536}%/%d:%p1
+ %{256}%/%{255}%&%d:%p1%{255}%&%d%;%;m,
+ setb@, setf@, use=xterm+direct,
+
+xterm-direct256|xterm with direct-colors and 256 indexed colors,
+ use=xterm+direct256, use=xterm,
+
#### XTERM Features
# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who
@@ -4949,6 +5340,9 @@ nsterm-direct|nsterm with direct-color indexing,
xterm+tmux|advanced xterm features used in tmux,
Cr=\E]112\007, Cs=\E]12;%p1%s\007,
Ms=\E]52;%p1%s;%p2%s\007, Se=\E[2 q, Ss=\E[%p1%d q,
+xterm+tmux2|advanced xterm features used in tmux,
+ Cr=\E]112\E\\, Cs=\E]12;%p1%s\E\\,
+ Ms=\E]52;%p1%s;%p2%s\E\\, Se=\E[ q, Ss=\E[%p1%d q,
# This is another variant, for XFree86 4.0 xterm (T.Dickey)
# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color.
@@ -5005,11 +5399,27 @@ xterm-8bit|xterm terminal emulator 8-bit controls (X Window System),
u7=\E[6n, u8=\233[?%[;0123456789]c, u9=\E[c,
vpa=\233%i%p1%dd, use=xterm+kbs,
+# Note: normally xterm supports modified function-keys as described in
+# XTerm - "Other" modified keys
+# https://invisible-island.net/xterm/modified-keys.html
+#
+# However, xterm-hp, xterm-sco and xterm-sun assume no modifiers. Here is
+# a simple script which demonstrates these descriptions:
+# #!/bin/sh
+# export TERM=xterm-$1
+# xterm \
+# -kt $1 \
+# -fs 16 -fa mono \
+# -title $TERM \
+# -tn $TERM \
+# -xrm '*modifyCursorKeys:-1' \
+# -xrm '*modifyFunctionKeys:-1' \
+# -e tack
+# e.g., "foo sun" if the script is named "foo" -TD
xterm-hp|xterm with hpterm function keys,
kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
- kdch1=\EP, kend=\EF, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es,
- kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, kich1=\EQ,
- knp=\ES, kpp=\ET, use=xterm-basic,
+ kdch1=\EP, kend=\EF, khome=\Eh, kich1=\EQ, knp=\ES, kpp=\ET,
+ use=hp+pfk-cr, use=xterm+nofkeys, use=xterm+nopcfkeys,
xterm-sco|xterm with SCO function keys,
kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
@@ -5024,7 +5434,7 @@ xterm-sco|xterm with SCO function keys,
kf44=\E[], kf45=\E[\^, kf46=\E[_, kf47=\E[`, kf48=\E[{,
kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H,
kich1=\E[L, kmous=\E[>M, knp=\E[G, kpp=\E[I,
- use=xterm-basic,
+ use=xterm+nofkeys,
# The xterm-new description has all of the features, but is not completely
# compatible with vt220. If you are using a Sun or PC keyboard, set the
@@ -5036,23 +5446,27 @@ xterm-sco|xterm with SCO function keys,
# + uses DEC-style control sequences for the application keypad.
#
xterm-vt220|xterm emulating vt220,
+ npc,
kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kend=\E[4~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
- kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
- use=xterm+app, use=xterm+edit, use=xterm-basic,
- use=vt220+keypad,
+ kend=\E[4~, kent=\EOM, kf10=\E[21~, kf11=\E[23~,
+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
+ kf20=\E[34~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~,
+ kmous=\E[M, knp=\E[6~, kpp=\E[5~, nel=\EE, use=xterm+app,
+ use=xterm+edit, use=vt220+keypad, use=ecma+italics,
+ use=ecma+index, use=ansi+rep, use=ecma+strikeout,
+ use=xterm+sm+1006, use=xterm+tmux, use=xterm+keypad,
+ use=xterm-basic,
-xterm-vt52|xterm emulating dec vt52,
+xterm-vt52|xterm emulating DEC vt52,
cols#80, it#8, lines#24,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, clear=\EH\EJ, cr=\r, cub1=\ED, cud1=\EB, cuf1=\EC,
cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK,
home=\EH, ht=^I, ind=\n, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
kcuu1=\EA, nel=\r\n, ri=\EI, rmacs=\EG, smacs=\EF,
- use=xterm+kbs,
+ use=xterm+kbs, use=vt52+keypad,
xterm-noapp|xterm with cursor keys in normal mode,
rmcup@, rmkx=\E>, smcup@, smkx=\E=, use=xterm+noapp,
@@ -5401,7 +5815,7 @@ xterm-sun|xterm with sunFunctionKeys true,
kf5=\E[228z, kf6=\E[229z, kf7=\E[230z, kf8=\E[231z,
kf9=\E[232z, kfnd=\E[200z, khlp=\E[196z, khome=\E[214z,
kich1=\E[2z, knp=\E[222z, kpp=\E[216z, kund=\E[195z,
- use=xterm-basic,
+ use=xterm+nofkeys, use=xterm+nopcfkeys,
xterms-sun|small (80x24) xterm with sunFunctionKeys true,
cols#80, lines#24, use=xterm-sun,
@@ -5432,11 +5846,12 @@ gnome-rh62|Gnome terminal,
# it hangs in tack after running function-keys test.
gnome-rh72|GNOME Terminal,
bce, km@,
- civis=\E[?25l, cnorm=\E[?25h, kdch1=\E[3~, kf1=\EOP,
- kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmam=\E[?7l,
+ kdch1=\E[3~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
+ rmam=\E[?7l,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e
\017%;,
- sgr0=\E[0m\017, smam=\E[?7h, tbc@, use=xterm-color,
+ sgr0=\E[0m\017, smam=\E[?7h, tbc@, use=vt220+cvis,
+ use=xterm-color,
# GNOME Terminal 2.0.1 (Redhat 8.0)
#
@@ -5483,7 +5898,7 @@ gnome-fc5|GNOME Terminal,
# interpret those according to the $TERM value, but others not in the
# terminfo according to some constantly changing set of hacker guidelines -TD
vte-2007|VTE in GNOME Terminal snapshot 2.18.1,
- use=xterm+pcc2, use=gnome-fc5,
+ use=xterm+pcc2, use=vt220+cvis, use=gnome-fc5,
gnome-2007|GNOME Terminal snapshot 2.18.1,
use=vte-2007,
@@ -5583,7 +5998,7 @@ vte-2017|VTE 0.50.2,
# 2018, respectively. Overline (Smol/Rmol) has been supported since December
# 2017.
vte-2018|VTE 0.51.2,
- Rmol=\E[55m, Smol=\E[53m, Smulx=\E[4\:%p1%dm,
+ Rmol=\E[55m, Smol=\E[53m, Smulx=\E[4:%p1%dm,
use=vte-2017,
vte|VTE aka GNOME Terminal,
@@ -5601,6 +6016,27 @@ vte-256color|VTE with xterm 256-colors,
xfce|Xfce Terminal,
use=vte-2008,
+# HTERM
+#
+# https://hterm.org
+#
+# A terminal written in JavaScript, which can provide xterm-like terminal
+# emulation in a browser such as Google Chrome, or in Chome OS.
+#
+# https://chromium.googlesource.com/apps/libapps/+/master/nassh/doc/FAQ.md
+#
+# Tested with Secure Shell App version 0.39 in Chrome 89.0.4389.90, found that
+# the numeric keypad escapes are missing -TD
+hterm|Chromium hterm,
+ npc,
+ U8#1,
+ kcbt=\E[Z, kent=\EOM, nel=\EE, use=xterm+osc104,
+ use=ecma+index, use=ansi+rep, use=ecma+strikeout,
+ use=vt420+lrmm, use=xterm+sm+1006, use=xterm+tmux,
+ use=ecma+italics, use=xterm+pcfkeys, use=xterm-basic,
+hterm-256color|Chromium hterm with xterm 256-colors,
+ use=xterm+256color2, use=hterm,
+
# TERMITE
#
# https://github.com/thestinger/termite
@@ -5610,7 +6046,7 @@ xfce|Xfce Terminal,
# https://github.com/thestinger/vte-ng
# which (based on the default branch setting) seems to be a fork of vte
# 0.48.2, and is noted as such in Arch:
-# https://www.archlinux.org/packages/community/x86_64/vte3-ng/
+# https://aur.archlinux.org/packages/vte3-ng/
# It won't be merged:
# https://bugzilla.gnome.org/show_bug.cgi?id=679658#c10
# https://bugzilla.gnome.org/show_bug.cgi?id=78291
@@ -5626,8 +6062,7 @@ termite|VTE-based terminal,
cols#80, it#8, lines#24, ncv@,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
yzz{{||}}~~,
- bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=\r,
+ bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -5644,8 +6079,8 @@ termite|VTE-based terminal,
smso=\E[7m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
use=xterm+alt1049, use=ecma+index, use=ansi+idc,
use=ansi+idl, use=ansi+enq, use=ecma+italics,
- use=xterm+256color, use=ecma+color, use=xterm+pcfkeys,
- use=xterm+sl-twm,
+ use=xterm+256color, use=ecma+color, use=vt220+cvis,
+ use=xterm+pcfkeys, use=xterm+sl-twm,
#### Other GNOME
# Multi-Gnome-Terminal 1.6.2
@@ -5712,22 +6147,25 @@ kvt|KDE terminal,
# (also overline, which is too rarely used to provide as an extension)
#
# Updated for konsole 17.12.0 (late 2017):
+#
+# Re-enable "bel", since it is latent in the source-code even though KDE config
+# often hides the feature (2020/5/30)
konsole-base|KDE console window,
bce, km@, npc, XT,
ncv@,
- bel@, blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h, dim=\E[2m,
- ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l,
- hpa=\E[%i%p1%dG, invis=\E[8m, kbs=^?, kdch1=\E[3~,
- kend=\E[4~, kf1@, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@,
- kf17@, kf18@, kf19@, kf2@, kf20@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@,
- kf9@, kfnd@, khome=\E[1~, kslt@, rmam=\E[?7l, rmso=\E[27m,
- rmul=\E[24m, rs1=\Ec,
+ blink=\E[5m, dim=\E[2m, ech=\E[%p1%dX,
+ flash=\E[?5h$<100/>\E[?5l, hpa=\E[%i%p1%dG,
+ invis=\E[8m, kbs=^?, kdch1=\E[3~, kend=\E[4~, kf1@, kf10@,
+ kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, kf2@,
+ kf20@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, kfnd@, khome=\E[1~,
+ kslt@, rmam=\E[?7l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[0m\017, smam=\E[?7h, vpa=\E[%i%p1%dd,
use=ecma+index, use=xterm+sm+1006, use=ecma+strikeout,
use=ecma+italics, use=ecma+color, use=xterm-r6,
+ use=vt220+cvis,
# The keytab feature was introduced in 0.9.12 (February 2000) with "linux" and
# "vt100" key-table files along with a compiled-in default key-table.
@@ -5784,7 +6222,7 @@ konsole-base|KDE console window,
#
# As of 2018, konsole still provides 3 keyboard profiles ("XFree 4", "linux",
# "solaris").
-konsole-linux|KDE console window with linux keyboard,
+konsole-linux|KDE console window with Linux keyboard,
kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13@,
kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\E[[B, kf20@,
kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~,
@@ -5836,20 +6274,57 @@ konsole-256color|KDE console window with xterm 256-colors,
use=xterm+256setaf, use=konsole,
#### MLTERM
-# http://mlterm.sourceforge.net/
+# https://github.com/arakiken/mlterm
mlterm|multi lingual terminal emulator,
use=mlterm3,
-# Tested mlterm 3.2.2:
-# mlterm 3.x has made changes, but they are not reflected in the included
-# mlterm.ti; this entry is based on testing with ncurses, tack and vttest -TD
-# 2018/01/21: found xterm+sm+1006 did not work with version 3.3.8
+# Tested mlterm 3.9.0 (2020/09/19):
+# ncurses:
+# - has blinking text
+# - has italics
+# - has invisible-text
+# tack:
+# - has crossed-out text
+# - does not support palette reset with OSC 104
+# - testing the function-keys is difficult because the terminal is
+# preconfigured to set many of the modified keys to special functions, e.g.,
+# - shift-F1 and shift-F2 are bound to a split-screen feature
+# - control-F1 and control-F2 is bound to a new-terminal feature
+# vttest:
+# - primary response says it is a VT340 (ReGIS and Sixel).
+# - has partial support for double-size characters.
+# - character-set tests do not work.
+# - DEC locator works.
+# - 1006-mouse works.
+# - focus-events do not work reliably.
+# - numeric keypad escapes do not work.
+# - back-color erase works
+# other:
+# - title-stack works.
+# - doesn't respond to 8-bit controls.
+# - 256-color palette initializing works.
+# - DECSTR soft-reset is documented.
+#
+# Tested mlterm 3.3.8 (2018/01/21):
+# found xterm+sm+1006 did not work with version 3.3.8
+# soft-reset DECSTR is in sources since 2017/09/19.
+#
+# Tested mlterm 3.2.2 (2014/03/22):
+# mlterm 3.x made further changes, but they were not reflected in the included
+# mlterm.ti (which was dropped in 2015). This entry has been based on testing
+# with ncurses, tack and vttest -TD
mlterm3|multi lingual terminal emulator,
- kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
- use=ecma+italics, use=xterm+app, use=xterm+pcf0,
- use=xterm+pcc2, use=xterm+pce2, use=xterm+x11mouse,
- use=mlterm2,
+ bce, AX,
+ blink=\E[5m, flash=\E[?5h$<100/>\E[?5l, invis=\E[8m,
+ is2=\E[!p\E[?3;4l\E>, rs2=\E[!p\E[?3;4l\E>,
+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;%?
+ %p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
+ use=ansi+enq, use=ansi+rep, use=ecma+italics,
+ use=ecma+strikeout, use=xterm+app, use=xterm+pcf2,
+ use=xterm+pcc2, use=xterm+pce2, use=xterm+meta,
+ use=xterm+alt+title, use=xterm+sm+1006,
+ use=vt100+pfkeys, use=mlterm2,
# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD
#
@@ -5874,8 +6349,7 @@ mlterm2|multi lingual terminal emulator,
am, eslok, km, mc5i, mir, msgr, npc, xenl, XT,
colors#8, cols#80, it#8, lines#24, pairs#64,
acsc=00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -5885,12 +6359,10 @@ mlterm2|multi lingual terminal emulator,
il=\E[%p1%dL, il1=\E[L, ind=\n,
is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, kbs=^?,
kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kend=\EOF, kent=\EOM, kfnd=\E[1~, khome=\EOH,
- kich1=\E[2~, kind=\EO1;2B, kmous=\E[M, knp=\E[6~,
- kpp=\E[5~, kri=\EO1;2A, kslt=\E[4~, mc0=\E[i, nel=\EE,
- op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B,
- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
- rmul=\E[24m, rs1=\Ec,
+ kend=\EOF, kent=\EOM, khome=\EOH, kind=\EO1;2B, kmous=\E[M,
+ kri=\EO1;2A, mc0=\E[i, nel=\EE, op=\E[39;49m, rc=\E8,
+ rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l,
+ rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l,
sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e
@@ -5898,8 +6370,9 @@ mlterm2|multi lingual terminal emulator,
sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c,
- vpa=\E[%i%p1%dd, use=xterm+alt1049, use=ecma+index,
- use=mlterm+pcfkeys, use=xterm+r6f2,
+ vpa=\E[%i%p1%dd, use=vt220+vtedit, use=xterm+alt1049,
+ use=ecma+index, use=mlterm+pcfkeys, use=vt220+cvis,
+ use=xterm+r6f2,
# The insert/delete/home/end keys do not respond to modifiers because mlterm
# looks in its termcap to decide which string to send. If it used terminfo
@@ -5944,8 +6417,7 @@ rxvt-basic|rxvt terminal base (X Window System),
OTbs, am, bce, eo, mir, msgr, xenl, xon, XT,
cols#80, it#8, lines#24,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -5965,7 +6437,7 @@ rxvt-basic|rxvt terminal base (X Window System),
%p9%t\016%e\017%;,
sgr0=\E[0m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt100+enq,
- use=rxvt+pcfkeys, use=vt220+keypad,
+ use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad,
# Key Codes from rxvt reference:
#
# Note: Shift + F1-F10 generates F11-F20
@@ -6049,24 +6521,23 @@ rxvt-basic|rxvt terminal base (X Window System),
rxvt+pcfkeys|fragment for PC-style fkeys,
kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kIC=\E[2$, kLFT=\E[d,
kNXT=\E[6$, kPRV=\E[5$, kRIT=\E[c, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kel=\E[8\^,
- kend=\E[8~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
- kf2=\E[12~, kf20=\E[34~, kf21=\E[23$, kf22=\E[24$,
- kf23=\E[11\^, kf24=\E[12\^, kf25=\E[13\^, kf26=\E[14\^,
- kf27=\E[15\^, kf28=\E[17\^, kf29=\E[18\^, kf3=\E[13~,
- kf30=\E[19\^, kf31=\E[20\^, kf32=\E[21\^, kf33=\E[23\^,
- kf34=\E[24\^, kf35=\E[25\^, kf36=\E[26\^, kf37=\E[28\^,
- kf38=\E[29\^, kf39=\E[31\^, kf4=\E[14~, kf40=\E[32\^,
- kf41=\E[33\^, kf42=\E[34\^, kf43=\E[23@, kf44=\E[24@,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- kfnd=\E[1~, khome=\E[7~, kich1=\E[2~, kind=\E[a, knp=\E[6~,
- kpp=\E[5~, kri=\E[b, kslt=\E[4~, kDC5=\E[3\^, kDC6=\E[3@,
- kDN=\E[b, kDN5=\EOb, kEND5=\E[8\^, kEND6=\E[8@,
- kHOM5=\E[7\^, kHOM6=\E[7@, kIC5=\E[2\^, kIC6=\E[2@,
- kLFT5=\EOd, kNXT5=\E[6\^, kNXT6=\E[6@, kPRV5=\E[5\^,
- kPRV6=\E[5@, kRIT5=\EOc, kUP=\E[a, kUP5=\EOa,
+ kcuf1=\E[C, kcuu1=\E[A, kel=\E[8\^, kend=\E[8~, kf1=\E[11~,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
+ kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~,
+ kf21=\E[23$, kf22=\E[24$, kf23=\E[11\^, kf24=\E[12\^,
+ kf25=\E[13\^, kf26=\E[14\^, kf27=\E[15\^, kf28=\E[17\^,
+ kf29=\E[18\^, kf3=\E[13~, kf30=\E[19\^, kf31=\E[20\^,
+ kf32=\E[21\^, kf33=\E[23\^, kf34=\E[24\^, kf35=\E[25\^,
+ kf36=\E[26\^, kf37=\E[28\^, kf38=\E[29\^, kf39=\E[31\^,
+ kf4=\E[14~, kf40=\E[32\^, kf41=\E[33\^, kf42=\E[34\^,
+ kf43=\E[23@, kf44=\E[24@, kf5=\E[15~, kf6=\E[17~,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[7~, kind=\E[a,
+ kri=\E[b, kDC5=\E[3\^, kDC6=\E[3@, kDN=\E[b, kDN5=\EOb,
+ kEND5=\E[8\^, kEND6=\E[8@, kHOM5=\E[7\^, kHOM6=\E[7@,
+ kIC5=\E[2\^, kIC6=\E[2@, kLFT5=\EOd, kNXT5=\E[6\^,
+ kNXT6=\E[6@, kPRV5=\E[5\^, kPRV6=\E[5@, kRIT5=\EOc,
+ kUP=\E[a, kUP5=\EOa, use=vt220+vtedit,
# rxvt was originally "xvt", first announced in April 1993:
# http://www.krsaborio.net/linux-desktops/research/1993/0416.html
@@ -6195,8 +6666,7 @@ Eterm|Eterm-color|Eterm with xterm-style color support (X Window System),
am, bce, bw, eo, mc5i, mir, msgr, xenl, xon, XT,
btns#5, cols#80, it#8, lines#24, lm#0, ncv@,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -6219,7 +6689,7 @@ Eterm|Eterm-color|Eterm with xterm-style color support (X Window System),
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h,
smir=\E[4h, smkx=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
vpa=\E[%i%p1%dd, use=vt100+enq, use=rxvt+pcfkeys,
- use=ecma+color,
+ use=ecma+color, use=vt220+cvis,
Eterm-256color|Eterm with xterm 256-colors,
use=xterm+256color, use=Eterm,
@@ -6247,19 +6717,17 @@ xiterm|internationalized terminal emulator for X,
# HP ships this (HPUX 9 and 10), except for the pb#9600 which was merged in
# from BSD termcap. (hpterm: added empty <acsc>, we have no idea what ACS
# chars look like --esr)
-hpterm|X-hpterm|hp X11 terminal emulator,
+hpterm|X-hpterm|HP X11 terminal emulator,
am, da, db, mir, xhp, xon,
cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, pb#9600, xmc#0,
acsc=, bel=^G, bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=\r,
cub1=^H, cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC,
cuu1=\EA, dch1=\EP, dim=\E&dH, dl1=\EM, ed=\EJ$<1>, el=\EK,
hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, ind=\n, kbs=^H,
- kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep,
- kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew,
- khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF,
- knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, meml=\El,
- memu=\Em, pfkey=\E&f%p1%dk%p2%l%dL%p2%s,
+ kclr=\EJ, kctab=\E2, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK,
+ khts=\E1, kich1=\EQ, kil1=\EL, knp=\EU, kpp=\EV, krmir=\ER,
+ ktbc=\E3, meml=\El, memu=\Em,
+ pfkey=\E&f%p1%dk%p2%l%dL%p2%s,
pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s,
pfx=\E&f2a%p1%dk%p2%l%dL%p2%s,
pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET,
@@ -6269,7 +6737,7 @@ hpterm|X-hpterm|hp X11 terminal emulator,
%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
sgr0=\E&d@\017, smacs=^N, smir=\EQ, smkx=\E&s1A,
smln=\E&jB, smso=\E&dJ, smul=\E&dD, tbc=\E3,
- vpa=\E&a%p1%dY,
+ vpa=\E&a%p1%dY, use=hp+pfk-cr, use=hp+arrows,
# HPUX 11 provides a color version.
hpterm-color|HP X11 terminal emulator with color,
ccc,
@@ -6278,6 +6746,54 @@ hpterm-color|HP X11 terminal emulator with color,
initp=\E&v%p2%da%p3%db%p4%dc%p5%dx%p6%dy%p7%dz%p1%dI,
op=\E&v0S, scp=\E&v%p1%dS, use=hpterm,
+# http://bitsavers.trailing-edge.com/pdf/hp/9000_hpux/1986/97089-90081_198611_Facilities_for_Series_200_300_and_500.pdf
+# http://bitsavers.trailing-edge.com/pdf/hp/9000_hpux/1987/97089-90081_198709_Facilities_for_Series_200_300_and_500_HP-UX_Concepts_and_Tutorials.pdf
+#
+# This article does not cover the HP 46020A keyboard that is used by the Model
+# 217 and 237 computers. For information on this keyboard read the article,
+# "The Series 300 ITE as System Console" found in the manual, HP-UX Concepts
+# and Tutorials, Vol. 7.
+#
+# Possibly:
+# http://bitsavers.trailing-edge.com/pdf/hp/9000_hpux/1986/97089-90042_198608_HP-UX_Concepts_and_Tutorials.pdf
+#
+# HP300_Series_ITE.pdf
+#
+# This version, which came from Martin Trusler, was tested with lynx using
+# ncurses 5.4
+hpterm-color2|X-hpterm-color2|HP X11 terminal emulator with color,
+ OTbs, am, ccc, da, db, km, mir, xhp,
+ colors#8, cols#80, it#8, lh#2, lines#24, lm#0, lw#8, nlab#8,
+ pairs#8, xmc#0,
+ acsc=+>\,<-\^.v0\374``a\374f\372g\376h\374j+k+l+m+n+o-q-s-t+
+ u+v+w+x|y<z>{*|!}\273~\362,
+ bel=^G, bold=\E&dD, cbt=\Ei, clear=\EH\EJ, cr=\r, cub1=^H,
+ cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA,
+ dch1=\EP, dim=\E&dH, dl1=\EM, ed=\EJ$<1>, el=\EK,
+ home=\E&a0y0C, hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL,
+ ind=\ES,
+ initp=\E&v0m%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.
+ %p3%d%;b%?%p4%{1000}%=%t1%e.%p4%d%;c%?%p5%{1000}%=%t1
+ %e.%p5%d%;x%?%p6%{1000}%=%t1%e.%p6%d%;y%?%p7%{1000}%=
+ %t1%e.%p7%d%;z%p1%dI,
+ is1=\EH\EJ, kbs=^H, kctab=\E2, kdch1=\EP, kdl1=\EM, ked=\EJ,
+ kel=\EK, khts=\E1, kich1=\EQ, kil1=\EL, knp=\EU, kpp=\EV,
+ krmir=\ER, ktbc=\E3, meml=\El, memu=\Em,
+ oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5
+ I\E&v1b1c6I\E&v1x1y7I,
+ op=\E&v0S, pfkey=\E&f%p1%dk%p2%l%dL%p2%s,
+ pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s,
+ pfx=\E&f2a%p1%dk%p2%l%dL%p2%s,
+ pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET,
+ rmacs=^O, rmam=\E&s1C, rmcup=\E&s0A, rmir=\ER, rmkx=\E&s0A,
+ rmln=\E&j@, rmm=\E&k0I, rmso=\E&d@, rmul=\E&d@, rs1=\EE,
+ scp=\E&v%p1%dS,
+ sgr=\E&d%p1%p3%|%{2}%*%p2%p6%|%{4}%*%+%p5%{8}%*%+%{64}%+%c%?
+ %p9%t%'\016'%c%e%'\017'%c%;,
+ sgr0=\E&d@\017, smacs=^N, smam=\E&s0C, smcup=\E&s1A,
+ smir=\EQ, smkx=\E&s1A, smln=\E&jB, smm=\E&k1I, smso=\E&dB,
+ smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, use=hp+pfk-cr,
+ use=hp+arrows,
#### EMU
# This is for the extensible terminal emulator on the X11R6 contrib tape.
# It corresponds to emu's internal emulation:
@@ -6319,8 +6835,7 @@ emu-220|Emu-220 (vt200-7bit mode),
am, xenl, xon,
cols#80, it#8, lines#24, vt#200,
acsc=aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G,
- blink=\E[0;5m, bold=\E[0;1m, civis=\E[?25l,
- clear=\E[2J\E[H, cnorm=\E[?25h, cr=\r,
+ blink=\E[0;5m, bold=\E[0;1m, clear=\E[2J\E[H, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[1D,
cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A,
@@ -6329,20 +6844,20 @@ emu-220|Emu-220 (vt200-7bit mode),
hts=\EH, if=/usr/share/tabset/vt300, il=\E[%p1%dL,
il1=\E[1L, ind=\ED, is2=\E>\E[?1l\E[?3l\E[4l\E[?7h,
kbs=^H, kcmd=\E[29~, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
- kcuu1=\E[A, kdch1=\E[3~, kent=\EOM, kf0=\EOp, kf1=\EOq,
- kf10=\EOl, kf11=\EOm, kf12=\EOn, kf13=\EOP, kf14=\EOQ,
- kf15=\EOR, kf16=\EOS, kf2=\EOr, kf26=\E[17~, kf27=\E[18~,
- kf28=\E[19~, kf29=\E[20~, kf3=\EOs, kf30=\E[21~,
- kf34=\E[26~, kf37=\E[31~, kf38=\E[32~, kf39=\E[33~,
- kf4=\EOt, kf40=\E[34~, kf5=\EOu, kf6=\EOv, kf7=\EOw,
- kf8=\EOx, kf9=\EOy, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~,
- knp=\E[6~, kpp=\E[5~, kslt=\E[4~, rc=\E8, rev=\E[0;7m,
- ri=\EM, rmacs=^O, rmcup=\E>, rmkx=\E>, rmso=\E[m, rmul=\E[m,
+ kcuu1=\E[A, kent=\EOM, kf0=\EOp, kf1=\EOq, kf10=\EOl,
+ kf11=\EOm, kf12=\EOn, kf13=\EOP, kf14=\EOQ, kf15=\EOR,
+ kf16=\EOS, kf2=\EOr, kf26=\E[17~, kf27=\E[18~, kf28=\E[19~,
+ kf29=\E[20~, kf3=\EOs, kf30=\E[21~, kf34=\E[26~,
+ kf37=\E[31~, kf38=\E[32~, kf39=\E[33~, kf4=\EOt,
+ kf40=\E[34~, kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx,
+ kf9=\EOy, khlp=\E[28~, rc=\E8, rev=\E[0;7m, ri=\EM, rmacs=^O,
+ rmcup=\E>, rmkx=\E>, rmso=\E[m, rmul=\E[m,
rs2=\E[4l\E[34l\E[?1l\E[?3l\E[?5l\E[?7h, sc=\E7,
sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;
2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smcup=\E[?1l\E=, smkx=\E=,
- smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g,
+ smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g, use=vt220+vtedit,
+ use=vt220+cvis,
#### MVTERM
# A commercial product, Reportedly a version of Xterm with an OPEN LOOK UI,
@@ -6417,8 +6932,7 @@ decansi|ANSI emulation with DEC compatibility hacks,
am, mir, msgr, xenl,
colors#8, it#8, pairs#64,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -6426,21 +6940,21 @@ decansi|ANSI emulation with DEC compatibility hacks,
dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, enacs=\E(B\E)0,
home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, il=\E[%p1%dL,
il1=\E[L, ind=\E[S, invis=\E[8m, is2=\E)0\E[r\017, kbs=^H,
- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
- kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~,
- nel=\EE, op=\E[0m, rc=\E8, rev=\E[7m, ri=\E[T, rmacs=^O,
- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
- rmul=\E[24m, sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\E[11~,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
+ kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~,
+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, nel=\EE, op=\E[0m, rc=\E8, rev=\E[7m,
+ ri=\E[T, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>,
+ rmso=\E[27m, rmul=\E[24m, sc=\E7, setab=\E[4%p1%dm,
+ setaf=\E[3%p1%dm,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, u6=\E[%i%d;%dR,
- u7=\E[6n, vpa=\E[%i%p1%dd, use=ecma+index,
+ u7=\E[6n, vpa=\E[%i%p1%dd, use=vt220+vtedit,
+ use=ecma+index, use=vt220+cvis,
#### VWM
# http://vwm.sourceforge.net/
@@ -6452,23 +6966,22 @@ vwmterm|(vwm term),
am, bce, ccc, mir, msgr, npc, xenl, xon,
colors#8, pairs#64,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r, cub=\E[%p1%dD,
- cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC,
- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA,
- cuu1=\E[A, cvvis=\E[?25h, dim=\E[2m, ed=\E[J, el=\E[K,
- home=\E[H, il1=\E[L, ind=\n, invis=\E[8m, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~,
- kend=\E[4~, kf1=\E[[A, kf10=\E[21~, kf11=\E[22~,
- kf12=\E[23~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E,
- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B,
+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
+ cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[?25h, dim=\E[2m,
+ ed=\E[J, el=\E[K, home=\E[H, il1=\E[L, ind=\n, invis=\E[8m,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
+ kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~,
+ kf11=\E[22~, kf12=\E[23~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D,
+ kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
khome=\E[1~, knp=\E[6~, kpp=\E[5~, rev=\E[7m, rmacs=\E[10m,
rmam=\E[?7l, rs1=\E[H\E[J\E[m\Ec, setab=\E[4%p1%dm,
setaf=\E[3%p1%dm,
sgr=\E[0;10%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
sgr0=\E[0;10m, smacs=\E[11m, smam=\E[?7h, smso=\E[3m,
- smul=\E[4m, use=xterm+alt1049,
+ smul=\E[4m, use=vt220+cvis, use=xterm+alt1049,
#### MGR
#
@@ -6544,7 +7057,7 @@ st-0.8|simpleterm 0.7,
st-0.7|simpleterm 0.7,
ccc,
dim=\E[2m,
- initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
+ initc=\E]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
kcbt@, kent@, oc=\E]104\007,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
@@ -6588,14 +7101,13 @@ st-0.6|simpleterm 0.6,
colors#8, cols#80, it#8, lines#24, pairs#64,
acsc=+C\,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyy
zz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
- cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
- enacs=\E)0, flash=\E[?5h$<100/>\E[?5l, fsl=^G, home=\E[H,
+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0,
+ flash=\E[?5h$<100/>\E[?5l, fsl=^G, home=\E[H,
hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m,
is2=\E[4l\E>\E[?1034l, kDC=\E[3;2~, kEND=\E[1;2F,
@@ -6603,31 +7115,30 @@ st-0.6|simpleterm 0.6,
kPRV=\E[5;2~, kRIT=\E[1;2C, ka1=\E[1~, ka3=\E[5~, kb2=\EOu,
kbs=^?, kc1=\E[4~, kc3=\E[6~, kcbt=\E[Z, kclr=\E[3;5~,
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kdl1=\E[3;2~, ked=\E[1;5F, kel=\E[1;2F,
- kend=\E[4~, kent=\EOM, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R,
- kf16=\E[1;2S, kf17=\E[15;2~, kf18=\E[17;2~,
- kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~, kf21=\E[20;2~,
- kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~,
- kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R, kf28=\E[1;5S,
- kf29=\E[15;5~, kf3=\EOR, kf30=\E[17;5~, kf31=\E[18;5~,
- kf32=\E[19;5~, kf33=\E[20;5~, kf34=\E[21;5~,
- kf35=\E[23;5~, kf36=\E[24;5~, kf37=\E[1;6P, kf38=\E[1;6Q,
- kf39=\E[1;6R, kf4=\EOS, kf40=\E[1;6S, kf41=\E[15;6~,
- kf42=\E[17;6~, kf43=\E[18;6~, kf44=\E[19;6~,
- kf45=\E[20;6~, kf46=\E[21;6~, kf47=\E[23;6~,
- kf48=\E[24;6~, kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q,
- kf51=\E[1;3R, kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,
+ kdl1=\E[3;2~, ked=\E[1;5F, kel=\E[1;2F, kent=\EOM,
+ kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R, kf16=\E[1;2S,
+ kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ,
+ kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~,
+ kf23=\E[23;2~, kf24=\E[24;2~, kf25=\E[1;5P, kf26=\E[1;5Q,
+ kf27=\E[1;5R, kf28=\E[1;5S, kf29=\E[15;5~, kf3=\EOR,
+ kf30=\E[17;5~, kf31=\E[18;5~, kf32=\E[19;5~,
+ kf33=\E[20;5~, kf34=\E[21;5~, kf35=\E[23;5~,
+ kf36=\E[24;5~, kf37=\E[1;6P, kf38=\E[1;6Q, kf39=\E[1;6R,
+ kf4=\EOS, kf40=\E[1;6S, kf41=\E[15;6~, kf42=\E[17;6~,
+ kf43=\E[18;6~, kf44=\E[19;6~, kf45=\E[20;6~,
+ kf46=\E[21;6~, kf47=\E[23;6~, kf48=\E[24;6~,
+ kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q, kf51=\E[1;3R,
+ kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,
kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,
kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~,
kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,
- kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~,
- kil1=\E[2;5~, kind=\E[1;2B, kmous=\E[M, knp=\E[6~,
- kpp=\E[5~, kri=\E[1;2A, krmir=\E[2;2~, mc0=\E[i, mc4=\E[4i,
- mc5=\E[5i, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
- rmacs=\E(B, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
- rmul=\E[24m, rs1=\Ec, rs2=\E[4l\E>\E[?1034l, sc=\E7,
- setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kil1=\E[2;5~,
+ kind=\E[1;2B, kmous=\E[M, kri=\E[1;2A, krmir=\E[2;2~,
+ mc0=\E[i, mc4=\E[4i, mc5=\E[5i, op=\E[39;49m, rc=\E8,
+ rev=\E[7m, ri=\EM, rmacs=\E(B, rmir=\E[4l, rmkx=\E[?1l\E>,
+ rmso=\E[27m, rmul=\E[24m, rs1=\Ec, rs2=\E[4l\E>\E[?1034l,
+ sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}
%=%t3%e%p1%d%;m,
setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}
@@ -6637,8 +7148,9 @@ st-0.6|simpleterm 0.6,
sgr0=\E[0m, smacs=\E(0, smir=\E[4h, smkx=\E[?1h\E=,
smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR,
u7=\E[6n, u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd, Se=\E[2 q,
- Ss=\E[%p1%d q, use=ecma+index, use=xterm+alt1049,
- use=xterm+sl, use=ecma+italics,
+ Ss=\E[%p1%d q, use=vt220+pcedit, use=ecma+index,
+ use=xterm+alt1049, use=vt220+cvis, use=xterm+sl,
+ use=ecma+italics,
#
# st-0.1.1
#
@@ -6658,28 +7170,27 @@ st-0.6|simpleterm 0.6,
# - shifted cursor-keys send sequences like rxvt
# - sgr referred to unimplemented "invis" mode.
# Fixes: add eo and xenl per tack, remove nonworking cbt, hts and tbc, invis
-simpleterm|old-st| simpleterm 0.1.1,
+simpleterm|old-st|simpleterm 0.1.1,
am, eo, mir, msgr, ul, xenl,
colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J,
- cnorm=\E[?12l\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr,
- cub1=^H, cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
- dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K,
- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@,
- il=\E[%p1%dL, il1=\E[L, ind=\n, kbs=^?, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~,
- kend=\E[4~, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[15~,
- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud=\E[%p1%dB, cud1=\n,
+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
+ cuu=\E[%p1%dA, cuu1=\E[A, dch1=\E[P, dl=\E[%p1%dM,
+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%i%p1%dG,
+ ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\n, kbs=^?,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
+ kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
+ kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
khome=\E[1~, knp=\E[6~, kpp=\E[5~, op=\E[37;40m, rc=\E8,
rev=\E[7m, rmacs=\E(B, rmso=\E[m, rmul=\E[m, sc=\E7,
setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
%t;7%;m,
sgr0=\E[0m, smacs=\E(0, smso=\E[7m, smul=\E[4m,
- use=ecma+index,
+ use=vt220+cvis, use=ecma+index,
st-16color|stterm-16color|simpleterm with 16-colors,
use=ibm+16color, use=st,
# Tested with st 0.8.2
@@ -6769,35 +7280,35 @@ terminator|Terminator no line wrap,
bce, eo, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, lm#0,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J,
- cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr,
- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
- dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K,
- el1=\E[1K, enacs=\E(B\E)0, flash=^G, home=\E[H,
- hpa=\E[%i%p1%dG, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L,
- ind=\n, is1=\E[?47l\E=\E[?1l,
+ bold=\E[1m, clear=\E[H\E[2J, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM,
+ dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
+ flash=^G, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
+ il=\E[%p1%dL, il1=\E[L, ind=\n, is1=\E[?47l\E=\E[?1l,
is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^?,
- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
- kf15=\E[28~, kf16=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rc=\E8,
- rev=\E[7m, ri=\EM, rmacs=\E(B, rmir=\E[4l, rmso=\E[27m,
- rmul=\E[24m, rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>,
- s0ds=\E(B, s1ds=\E(0, sc=\E7,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf2=\EOQ, kf3=\EOR,
+ kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
+ kf9=\E[20~, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B,
+ rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
+ rs2=\E[!p\E[?3;4l\E[4l\E>, s0ds=\E(B, s1ds=\E(0, sc=\E7,
sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p5%t;2%;%?%p1%p3%|%t;7
%;m%?%p9%t\E(0%e\E(B%;,
sgr0=\E[m\E(B, smacs=\E(0, smir=\E[4h, smso=\E[7m,
- smul=\E[4m, tbc=\E[3g, tsl=\E]2;%p1, vpa=\E[%i%p1%dd,
- use=ecma+italics, use=ecma+index, use=xterm+256setaf,
- use=xterm+sl-twm, use=xterm+alt1049,
+ smul=\E[4m, tbc=\E[3g, tsl=\E]2;, vpa=\E[%i%p1%dd,
+ use=vt220+pcedit, use=ecma+italics, use=ecma+index,
+ use=xterm+256setaf, use=xterm+sl-twm,
+ use=xterm+alt1049, use=vt220+cvis,
#### TERMINOLOGY
# https://www.enlightenment.org/about-terminology
+# https://github.com/borisfaure/terminology
#
+# 2014/10/14:
# Tested terminology-0.3.0, 0.6.1, using tack and vttest. This is not a vt100
# emulator, nor is it compatible with xterm, but it uses a few features from
# both -TD
@@ -6861,6 +7372,7 @@ terminology-0.6.1|EFL-based terminal emulator,
kRIT7=\E[1;7C, kUP=\E[1;2A, use=xterm+pcf0, use=vt100,
use=xterm+256setaf,
+# 2017-11-11
# Tested terminology 1.0.0
#
# tack -
@@ -6875,22 +7387,44 @@ terminology-0.6.1|EFL-based terminal emulator,
# Aside from the partial fixes for function/cursor/editing keys, no improvement
# in other tests versus 0.6.1
terminology-1.0.0|EFL-based terminal emulator,
- civis=\E[?25l, cnorm=\E[?12l\E[?25h, dim=\E[2m,
- flash=\E[?5h$<100/>\E[?5l, kend=\E[OF, khome=\E[OH,
- rmacs=\E(B,
+ dim=\E[2m, flash=\E[?5h$<100/>\E[?5l, kend=\E[OF,
+ khome=\E[OH, rmacs=\E(B,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
%?%p1%p3%|%t;7%;%?%p7%t;8%;m$<2>,
sgr0=\E(B\E[m, smacs=\E(0, use=ecma+italics,
- use=xterm+x11mouse, use=xterm+pce2, use=xterm+pcf2,
- use=xterm+pcc2, use=terminology-0.6.1,
+ use=vt220+cvis, use=xterm+x11mouse, use=xterm+pce2,
+ use=xterm+pcf2, use=xterm+pcc2, use=terminology-0.6.1,
+
+# 2020/12/26:
+# Tested terminology 1.8.1 using tack and vttest.
+# tack -
+# flash does not work
+# italics and crossed-out text work
+# no meta mode
+# vttest -
+# DA1 says this is a VT420 with with 132 columns, NRCS, horizontal scrolling
+# DA2 says this is a VT510, version 33.7
+# NRCS does not work, program hangs in the locking shift test.
+# some of the VT420 rectangle operations work
+# left/right margins do not work
+# most of DECSCUSR works
+# most problems with bce are fixed.
+terminology-1.8.1|EFL-based terminal emulator,
+ km@,
+ cvvis@, flash@, initc@, kcbt=\E[Z, rmm@, smm@, Ms@,
+ use=ecma+index, use=xterm+256setaf, use=ansi+rep,
+ use=ecma+strikeout, use=xterm+sm+1006,
+ use=xterm+pcfkeys, use=xterm+tmux, use=vt220+cvis,
+ use=ecma+italics, use=xterm-basic,
terminology|EFL-based terminal emulator,
- use=terminology-1.0.0,
+ use=terminology-1.8.1,
######## OPENGL CLIENTS
#### Alacritty
# https://github.com/jwilm/alacritty
+# Version 0.6.0 (2020/11/25)
# Version 0.4.0 (2019/11/25)
# Version 0.3.3 (2019/08/03)
# Version 0.2.1 (2018/10/03)
@@ -6950,14 +7484,14 @@ alacritty-direct|alacritty with direct color indexing,
alacritty+common|base fragment for alacritty,
km@, npc,
kb2=\EOE, kbs=^?, kcbt=\E[Z, kent=\EOM, Se=\E[0 q,
- use=ecma+index, use=xterm+sm+1006, use=xterm-basic,
- use=xterm+app, use=ansi+rep, use=xterm+tmux,
- use=ecma+strikeout, use=xterm+sl-twm, use=ecma+italics,
- use=xterm+pce2, use=xterm+pcc2, use=xterm+pcf2,
+ Smulx=\E[4:%p1%dm, use=ecma+index, use=xterm+sm+1006,
+ use=xterm-basic, use=xterm+app, use=ansi+rep,
+ use=xterm+tmux, use=ecma+strikeout, use=xterm+sl-twm,
+ use=ecma+italics, use=xterm+pce2, use=xterm+pcc2,
+ use=xterm+pcf2,
#### Kitty
# https://github.com/kovidgoyal/kitty
-# Version 0.13.3
# Project started in 2016/10 (see alacritty), but is a Python script rather
# than Rust, using OpenGL. The same caveats regarding remote connections
# apply. This is not an X terminal, though (like alacritty), it copies
@@ -6972,6 +7506,23 @@ alacritty+common|base fragment for alacritty,
# http://lists.gnu.org/archive/html/bug-ncurses/2018-09/msg00005.html
# https://github.com/kovidgoyal/kitty/issues/879
#
+# Version 0.19.1
+# changes since 0.13.3:
+# vttest
+# ISO-6429
+# REP works, though using unspecified behavior
+# xterm
+# xterm's SGR-mouse mode is recognized.
+# does recognize original alternate-screen
+# bug: mouse focus in/out does not work.
+# bug: X10 mouse mode responds like any-event
+# bug: highlight-tracking does not work; terminal hangs.
+#
+# tack
+# rs1 adds an empty string for resetting title- and other OSC-strings.
+# italics work
+#
+# Version 0.13.3
# Notes:
# initial screensize 71x22
# does not respond to "resize -s"
@@ -7041,8 +7592,7 @@ kitty+common|KovId's TTY common properties,
cols#80, it#8, lines#24,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
yzz{{||}}~~,
- bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=\r,
+ bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -7061,17 +7611,75 @@ kitty+common|KovId's TTY common properties,
kf31=\E[18;5~, kf32=\E[19;5~, kf33=\E[20;5~,
kf34=\E[21;5~, kf35=\E[23;5~, kf36=\E[24;5~, kf4=\EOS,
kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\EOH, kich1=\E[2~, kind=\E[1;2B, kmous=\E[M,
- knp=\E[6~, kpp=\E[5~, kri=\E[1;2A, op=\E[39;49m, rc=\E8,
- rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l,
- rmkx=\E[?1l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec, sc=\E7,
+ khome=\EOH, kich1=\E[2~, kind=\E[1;2B, knp=\E[6~,
+ kpp=\E[5~, kri=\E[1;2A, op=\E[39;49m, rc=\E8, rev=\E[7m,
+ ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l,
+ rmso=\E[27m, rmul=\E[24m, rs1=\E]\E\\\Ec, sc=\E7,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
%?%p1%p3%|%t;7%;m,
sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- vpa=\E[%i%p1%dd, use=ecma+index, use=xterm+sl-twm,
+ vpa=\E[%i%p1%dd, use=ansi+enq, use=ansi+rep,
+ use=xterm+sm+1006, use=ecma+index, use=xterm+sl-twm,
use=ecma+strikeout, use=xterm+pce2, use=xterm+pcc2,
- use=ecma+italics, use=xterm+alt1049,
+ use=ecma+italics, use=xterm+alt1049, use=att610+cvis,
+ use=xterm+tmux,
+
+######## WAYLAND CLIENTS
+
+#### Foot
+# https://codeberg.org/dnkl/foot/
+# Version 1.8.2
+#
+# This identifies as a VT220 with 4=sixel and 22=color, however:
+# tack:
+# bell does not work
+# status-line does not work because foot does not set the window title
+# sends escape when meta key is used, whether or not smm/rmm enabled
+# vttest:
+# wrap-test fails
+# no application-mode for numeric keypad (unless private mode 1035 is set)
+# no NRCS
+# no VT52
+# no SRM
+# protected areas do not work
+# SU/SD work, SL/SR do not
+# DECRPM responds, but not the corresponding ANSI reports.
+# otherwise few reports, except cursor-position and mouse and some dtterm
+# VT520 cursor-movement works, except for left/right margins
+# supports xterm/DECSCUSR, though default case in vttest does not blink
+# Send: <27> [ 0 <32> q
+# Text: The cursor should be a blinking rectangle
+# partial support for xterm mouse any-event mode and button-event mode:
+# + does not report focus-in/focus-out
+# + does not report buttons 6/7
+# alternate-screen works
+foot|foot terminal emulator,
+ oc=\E]104\E\\, use=xterm+256color2, use=foot+base,
+
+foot-direct|foot with direct color indexing,
+ use=xterm+direct, use=foot+base,
+
+foot+base|foot base fragment,
+ am, bce, bw, hs, mir, msgr, npc, xenl, AX, XT,
+ cols#80, it#8, lines#24,
+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
+ cub1=^H, cud1=\n, dim=\E[2m, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
+ el1=\E[1K, flash=\E]555\E\\, ind=\n, invis=\E[8m,
+ is2=\E[!p\E[?3;4l\E[4l\E>, kbs=^?, kcbt=\E[Z,
+ oc=\E]104\E\\, op=\E[39;49m, rev=\E[7m, ri=\EM, rmacs=\E(B,
+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
+ rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>,
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
+ %?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
+ sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smkx=\E[?1h\E=,
+ smso=\E[7m, smul=\E[4m, E3=\E[3J, use=att610+cvis,
+ use=ansi+csr, use=ansi+cup, use=ansi+enq, use=ansi+local,
+ use=ansi+idc, use=ansi+idl, use=ansi+rca2, use=ansi+rep,
+ use=ansi+tabs, use=ecma+index, use=ecma+italics,
+ use=ecma+strikeout, use=xterm+alt+title,
+ use=xterm+pcfkeys, use=xterm+sm+1006, use=xterm+tmux2,
######## WEB CLIENTS
@@ -7127,7 +7735,6 @@ domterm|DomTerm web client,
%t;7%;m,
sitm@, smkx=\E[?1h, use=xterm+256setaf, use=ecma+index,
use=xterm+sm+1006, use=xterm+pcfkeys, use=xterm-basic,
- use=xterm-basic,
######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS
#
@@ -7184,14 +7791,13 @@ eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96,
el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@,
il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m, kbs=^?,
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~,
- knp=\E[6~, kpp=\E[5~, op=\E[39;49m, rc=\E8, rev=\E[7m,
- ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
- sc=\E7, setab=\E[%p1%'('%+%dm, setaf=\E[%p1%{30}%+%dm,
+ op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l,
+ rmso=\E[27m, rmul=\E[24m, rs1=\Ec, sc=\E7,
+ setab=\E[%p1%'('%+%dm, setaf=\E[%p1%{30}%+%dm,
sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?
%p7%t;8%;m,
sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m,
- u6=\E[%i%d;%dR, u7=\E[6n,
+ u6=\E[%i%d;%dR, u7=\E[6n, use=vt220+pcedit,
# shell.el can "do" color, though not nearly as well.
#
@@ -7300,19 +7906,18 @@ screen|VT 100/ANSI X3.64 virtual terminal,
enacs=\E(B\E)0, flash=\Eg, home=\E[H, hpa=\E[%i%p1%dG,
ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
ind=\n, indn=\E[%p1%dS, is2=\E)0, kbs=^H, kcbt=\E[Z,
- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
- nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmir=\E[4l,
- rmkx=\E[?1l\E>, rmso=\E[23m, rmul=\E[24m,
- rs2=\Ec\E[?1000l\E[?25h, sc=\E7,
+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR,
+ kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
+ kf9=\E[20~, kmous=\E[M, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
+ rmacs=^O, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[23m,
+ rmul=\E[24m, rs2=\Ec\E[?1000l\E[?25h, sc=\E7,
sgr=\E[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;
5%;%?%p5%t;2%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smir=\E[4h, smkx=\E[?1h\E=,
smso=\E[3m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
- E0=\E(B, S0=\E(%p1%c, use=xterm+alt1049, use=ecma+color,
+ E0=\E(B, S0=\E(%p1%c, use=vt220+pcedit,
+ use=xterm+alt1049, use=ecma+color, use=vt100+enq,
# The bce and status-line entries are from screen 3.9.13 (and require some
# changes to .screenrc).
screen-bce|VT 100/ANSI X3.64 virtual terminal with bce,
@@ -7453,10 +8058,10 @@ screen.konsole|screen in KDE console window,
use=xterm+x11mouse, use=screen+italics,
use=screen+fkeys, use=konsole,
# fix the backspace key
-screen.linux|screen in linux console,
+screen.linux|screen.linux-s|screen in Linux console,
bw,
- kbs=^?, kcbt@, use=xterm+x11mouse, use=screen+fkeys,
- use=screen4,
+ kbs=^?, kcbt@, use=linux+sfkeys, use=xterm+x11mouse,
+ use=screen+fkeys, use=screen4,
screen.mlterm|screen in mlterm,
use=xterm+x11mouse, use=screen+fkeys, use=mlterm,
screen.putty|screen in putty,
@@ -7493,7 +8098,7 @@ screen-bce.gnome|screen optimized for GNOME-Terminal,
screen-bce.konsole|screen optimized for KDE console window,
bce,
ech@, use=screen+italics, use=screen.konsole,
-screen-bce.linux|screen optimized for linux console,
+screen-bce.linux|screen optimized for Linux console,
bce,
ech@, use=screen.linux,
@@ -7565,10 +8170,10 @@ screen5|VT 100/ANSI X3.64 virtual terminal (someday),
# various entries such as screen.xterm-new provide a way to more closely
# match the terminal.
tmux|tmux terminal multiplexer,
- invis=\E[8m, rmso=\E[27m,
+ invis=\E[8m, kbs=^?, rmso=\E[27m,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
- smso=\E[7m, E3=\E[3J, Smulx=\E[4\:%p1%dm,
+ smso=\E[7m, E3=\E[3J, Smulx=\E[4:%p1%dm,
use=ecma+italics, use=ecma+strikeout, use=xterm+edit,
use=xterm+pcfkeys, use=xterm+sl, use=xterm+tmux,
use=screen,
@@ -7576,6 +8181,11 @@ tmux|tmux terminal multiplexer,
tmux-256color|tmux with 256 colors,
use=xterm+256setaf, use=tmux,
+tmux-direct|tmux with direct-color indexing,
+ setal=\E[%?%p1%{8}%<%t5%p1%d%e58:2::%p1%{65536}%/%d:%p1
+ %{256}%/%{255}%&%d:%p1%{255}%&%d%;m,
+ use=xterm+direct, use=tmux,
+
#### Dvtm
# dvtwm 0.15
@@ -7601,8 +8211,7 @@ dvtm|dynamic virtual terminal manager,
am, eo, mir, msgr, xenl, AX,
colors#8, cols#80, it#8, lines#24, ncv@, pairs#64,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -7614,18 +8223,16 @@ dvtm|dynamic virtual terminal manager,
kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kIC=\E[2$, kLFT=\E[d,
kNXT=\E[6$, kPRV=\E[5$, kRIT=\E[c, ka1=\EOw, ka3=\EOy,
kb2=\EOu, kbs=^?, kc1=\EOq, kc3=\EOs, kcbt=\E[Z, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~,
- kel=\E[8\^, kend=\E[8~, kent=\EOM, kf0=\E[21~, kf1=\E[11~,
- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
- kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~,
- kf21=\E[23$, kf22=\E[24$, kf3=\E[13~, kf4=\E[14~,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- kfnd=\E[1~, khome=\E[7~, kich1=\E[2~, kind=\E[a,
- kmous=\E[M, knp=\E[6~, kpp=\E[5~, kri=\E[b, kslt=\E[4~,
- op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[27m,
- rmul=\E[24m,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kel=\E[8\^, kend=\E[8~,
+ kent=\EOM, kf0=\E[21~, kf1=\E[11~, kf10=\E[21~,
+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
+ kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, kf21=\E[23$,
+ kf22=\E[24$, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~,
+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ khome=\E[7~, kind=\E[a, kmous=\E[M, kri=\E[b, op=\E[39;49m,
+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmcup=\E[2J\E[?47l\E8,
+ rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H,
rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?
25h,
@@ -7635,7 +8242,7 @@ dvtm|dynamic virtual terminal manager,
%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
smso=\E[7m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
- use=ecma+italics,
+ use=vt220+vtedit, use=vt220+cvis, use=ecma+italics,
dvtm-256color|dynamic virtual terminal manager with 256 colors,
colors#0x100, pairs#0x10000,
@@ -7684,8 +8291,7 @@ dvtm-256color|dynamic virtual terminal manager with 256 colors,
ncsa-m|ncsa-vt220-8|NCSA Telnet 2.6 for Macintosh in vt220-8 mode,
am, km, mir, msgr, xenl,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -7709,7 +8315,8 @@ ncsa-m|ncsa-vt220-8|NCSA Telnet 2.6 for Macintosh in vt220-8 mode,
%p9%t\E(0%e\E(B%;,
sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E7,
smir=\E[4h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- u8=\E[?62;1;6c, use=xterm+sl, use=ansi+enq,
+ u8=\E[?62;1;6c, use=vt220+cvis, use=xterm+sl,
+ use=ansi+enq,
ncsa|NCSA Telnet 2.7 for Macintosh in vt220-8 mode,
use=ncsa-m, use=klone+color,
ncsa-ns|NCSA Telnet 2.7 for Macintosh in vt220-8 mode,
@@ -7916,7 +8523,7 @@ sun-color|Sun Microsystems Workstation console with color support (IA systems),
# See the note on Iris extensions near the end of this file.
# Finally, removed suboptimal <clear>=\EH\EJ and added <cud1> &
# <flash> from BRL -- esr)
-wsiris|iris40|iris emulating a 40 line visual 50 (approximately),
+wsiris|iris40|IRIS emulating a 40 line Visual 50 (approximately),
OTbs, OTnc, OTpt, am,
OTkn#3, cols#80, it#8, lines#40,
OTnl=\EB, bel=^G, clear=\Ev, cnorm=\E>, cub1=^H, cud1=\EB,
@@ -7992,7 +8599,7 @@ nextshell|NeXT Shell application,
#
# (news-unk: this had :KB=news: -- esr)
-news-unk|SONY NEWS vt100 emulator common entry,
+news-unk|Sony NEWS vt100 emulator common entry,
OTbs, OTpt, am, xenl,
cols#80,
OTnl=\n, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J,
@@ -8009,39 +8616,39 @@ news-unk|SONY NEWS vt100 emulator common entry,
sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
#
# (news-29: this had :TY=ascii: --esr)
-news-29|SONY NEWS vt100 emulator with 29 lines,
+news-29|Sony NEWS vt100 emulator with 29 lines,
lines#29, use=news-unk,
# (news-29-euc: this had :TY=euc: --esr)
-news-29-euc|SONY NEWS vt100 emulator with 29 lines and EUC,
+news-29-euc|Sony NEWS vt100 emulator with 29 lines and EUC,
use=news-29,
# (news-29-sjis: this had :TY=sjis: --esr)
-news-29-sjis|SONY NEWS vt100 emulator with 29 lines and SJIS,
+news-29-sjis|Sony NEWS vt100 emulator with 29 lines and SJIS,
use=news-29,
#
# (news-33: this had :TY=ascii: --esr)
-news-33|SONY NEWS vt100 with 33 lines,
+news-33|Sony NEWS vt100 with 33 lines,
lines#33, use=news-unk,
# (news-33-euc: this had :TY=euc: --esr)
-news-33-euc|SONY NEWS vt100 with 33 lines and EUC,
+news-33-euc|Sony NEWS vt100 with 33 lines and EUC,
use=news-33,
# (news-33-sjis: this had :TY=sjis: --esr)
-news-33-sjis|SONY NEWS vt100 with 33 lines and SJIS,
+news-33-sjis|Sony NEWS vt100 with 33 lines and SJIS,
use=news-33,
#
# (news-42: this had :TY=ascii: --esr)
-news-42|SONY NEWS vt100 with 42 lines,
+news-42|Sony NEWS vt100 with 42 lines,
lines#42, use=news-unk,
# (news-42-euc: this had :TY=euc: --esr)
-news-42-euc|SONY NEWS vt100 with 42 lines and EUC,
+news-42-euc|Sony NEWS vt100 with 42 lines and EUC,
use=news-42,
# (news-42-sjis: this had :TY=sjis: --esr)
-news-42-sjis|SONY NEWS vt100 with 42 lines and SJIS,
+news-42-sjis|Sony NEWS vt100 with 42 lines and SJIS,
use=news-42,
#
# NEWS-OS old termcap entry
#
# (news-old-unk: this had :KB=news:TY=sjis: --esr)
-news-old-unk|SONY NEWS vt100 emulator common entry,
+news-old-unk|Sony NEWS vt100 emulator common entry,
OTbs, OTpt, am, xenl,
cols#80, vt#3,
OTnl=\n, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J,
@@ -8055,7 +8662,7 @@ news-old-unk|SONY NEWS vt100 emulator common entry,
sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
#
# (nwp512: this had :DE=^H:, which I think means <OTbs> --esr)
-nwp512|news|nwp514|news40|vt100-bm|old sony vt100 emulator 40 lines,
+nwp512|news|nwp514|news40|vt100-bm|old Sony vt100 emulator 40 lines,
OTbs,
lines#40,
is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40
@@ -8063,13 +8670,13 @@ nwp512|news|nwp514|news40|vt100-bm|old sony vt100 emulator 40 lines,
use=news-old-unk,
#
# (nwp512-a: this had :TY=ascii: and the alias vt100-bm --esr)
-nwp512-a|nwp514-a|news-a|news42|news40-a|sony vt100 emulator 42 line,
+nwp512-a|nwp514-a|news-a|news42|news40-a|Sony vt100 emulator 42 line,
lines#42,
is2=\E[?7h\E[?1l\E[?3l\E7\E[1;42r\E8,
use=news-old-unk,
#
# (nwp-512-o: this had :KB=nwp410:DE=^H: I interpret the latter as <OTbs>. --esr)
-nwp512-o|nwp514-o|news-o|news40-o|vt100-bm-o|sony vt100 emulator 40 lines,
+nwp512-o|nwp514-o|news-o|news40-o|vt100-bm-o|Sony vt100 emulator 40 lines,
OTbs,
lines#40,
is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40
@@ -8077,7 +8684,7 @@ nwp512-o|nwp514-o|news-o|news40-o|vt100-bm-o|sony vt100 emulator 40 lines,
use=news-old-unk,
#
# (nwp513: this had :DE=^H: and the alias vt100-bm --esr)
-nwp513|nwp518|nwe501|newscbm|news31|sony vt100 emulator 33 lines,
+nwp513|nwp518|nwe501|newscbm|news31|Sony vt100 emulator 33 lines,
OTbs,
lines#31,
is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31
@@ -8086,7 +8693,7 @@ nwp513|nwp518|nwe501|newscbm|news31|sony vt100 emulator 33 lines,
#
# (nwp513-a: this had :TY=ascii: and :DE=^H:, which I interpret as <OTbs>; --esr)
# also the alias vt100-bm.
-nwp513-a|nwp518-a|nwe501-a|nwp251-a|newscbm-a|news31-a|newscbm33|news33|old sony vt100 emulator 33 lines,
+nwp513-a|nwp518-a|nwe501-a|nwp251-a|newscbm-a|news31-a|newscbm33|news33|old Sony vt100 emulator 33 lines,
OTbs,
lines#33,
is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33
@@ -8094,7 +8701,7 @@ nwp513-a|nwp518-a|nwe501-a|nwp251-a|newscbm-a|news31-a|newscbm33|news33|old sony
use=news-old-unk,
#
# (nwp513-o: had :DE=^H:, I think that's <OTbs>; also the alias vt100-bm --esr)
-nwp513-o|nwp518-o|nwe501-o|nwp251-o|newscbm-o|news31-o|old sony vt100 emulator 33 lines,
+nwp513-o|nwp518-o|nwe501-o|nwp251-o|newscbm-o|news31-o|old Sony vt100 emulator 33 lines,
OTbs,
lines#31,
is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31
@@ -8102,7 +8709,7 @@ nwp513-o|nwp518-o|nwe501-o|nwp251-o|newscbm-o|news31-o|old sony vt100 emulator 3
use=news-old-unk,
#
# (news28: this had :DE=^H:, I think that's <OTbs>, and :KB=nws1200: --esr)
-news28|sony vt100 emulator 28 lines,
+news28|Sony vt100 emulator 28 lines,
OTbs,
lines#28,
is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;28
@@ -8110,7 +8717,7 @@ news28|sony vt100 emulator 28 lines,
use=news-old-unk,
#
# (news29: this had :TY=ascii:KB=nws1200:\ --esr)
-news29|news28-a|sony vt100 emulator 29 lines,
+news29|news28-a|Sony vt100 emulator 29 lines,
lines#29,
is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;29
r\E8,
@@ -8136,7 +8743,7 @@ nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows,
cols#80, lines#30,
OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$},
is2=\E7\E[r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
- tsl=\E[1$}\E[;%df, use=vt200,
+ tsl=\E[1$}\E[;%df, use=vt220-base,
# (news517-w: this had :TY=sjis:. --esr)
nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows,
eslok, hs,
@@ -8144,7 +8751,7 @@ nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows,
OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$},
is2=\E7\E[r\E8\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h,
- tsl=\E[1$}\E[;%df, use=vt200,
+ tsl=\E[1$}\E[;%df, use=vt220-base,
#### Common Desktop Environment
#
@@ -8155,8 +8762,7 @@ dtterm|CDE desktop terminal,
am, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, lm#0, ncv@,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -8166,19 +8772,19 @@ dtterm|CDE desktop terminal,
ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
ind=\ED, invis=\E[8m, is2=\E F\E>\E[?1l\E[?7h\E[?45l,
kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
- kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~,
- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
- kslt=\E[4~, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
+ kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[12~,
+ kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~,
+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ khlp=\E[28~, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
rmam=\E[?7l, rmir=\E[4l, rmso=\E[22;27m, rmul=\E[24m,
sc=\E7,
sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
- smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, use=ecma+color,
+ smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, use=vt220+vtedit,
+ use=vt220+cvis, use=ecma+color,
######## Non-Unix Consoles
#
@@ -8201,9 +8807,9 @@ emx-base|DOS special keys,
ansi-emx|ANSI.SYS color,
am, bce, eo, mir, msgr, xon,
colors#8, cols#80, it#8, lines#25, pairs#64,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[1;33;44m\E[H\E[J, cnorm=\E[?25h, cr=\r, cub1=^H,
- cud1=\n, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
+ bel=^G, blink=\E[5m, bold=\E[1m,
+ clear=\E[1;33;44m\E[H\E[J, cr=\r, cub1=^H, cud1=\n,
+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
dch=\E[%p1%dp, ed=\E[J, el=\E[K,
flash=\E[?5h$<100/>\E[?5l, home=\E[H, ht=^I, hts=\EH,
ich=\E[%p1%d@, ich1=\E[@, ind=\n, kb2=\E[G, kbs=^H, kf0=\0D,
@@ -8212,7 +8818,8 @@ ansi-emx|ANSI.SYS color,
rmul=\E[0;44m\E[1;33m, rs1=\Ec, setab=\E[4%p1%dm,
setaf=\E[3%p1%dm, sgr0=\E[0m\E[1;33;44m, smir=\E[4h,
smpch=\E[11m, smso=\E[0;31;47m, smul=\E[1;31;44m,
- tbc=\E[3g, u8=\E[?6c, u9=\E[c, use=emx-base,
+ tbc=\E[3g, u8=\E[?6c, u9=\E[c, use=vt220+cvis,
+ use=emx-base,
# nice colors for Emacs (white on blue, mode line white on cyan)
ansi-color-2-emx|ANSI.SYS color 2,
clear=\E[0;37;44m\E[H\E[J, rev=\E[1;37;46m,
@@ -8242,13 +8849,12 @@ mono-emx|stupid monochrome ansi terminal with only one kind of emphasis,
# underline is colored bright magenta
# shifted kf1-kf12 are kf11-kf22
cygwinB19|ANSI emulation for cygwin32,
- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
- kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D,
- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rmam@, smam@,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[[A,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
+ kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~,
+ kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, rmam@, smam@, use=vt220+pcedit,
use=ansi.sys,
# Use this for cygwin (tested with version 1.1.0).
@@ -8316,21 +8922,20 @@ cygwin|ANSI emulation for Cygwin,
hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m, kb2=\E[G,
kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
- kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D,
- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z,
- nel=\r\n, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
- rmacs=\E[10m, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l,
- rmpch=\E[10m, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R,
- sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[[B,
+ kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kspd=^Z, nel=\r\n,
+ op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E[10m,
+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmpch=\E[10m,
+ rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7,
+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7
%t;8%;%?%p9%t;11%;m,
sgr0=\E[0;10m, smacs=\E[11m, smcup=\E7\E[?47h,
smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m, tsl=\E];,
- vpa=\E[%i%p1%dd, use=vt102+enq,
+ vpa=\E[%i%p1%dd, use=vt220+pcedit, use=vt102+enq,
# I've supplied this so that you can help test new values and add other
# features. Cheers, earnie_boyd@yahoo.com.
@@ -8345,29 +8950,27 @@ cygwinDBG|Debug Version for Cygwin,
\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v
\301w\302x\263y\363z\362{\343|\330}\234~\376,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
- cnorm=\E[?25h, cr=\r, cub=\E[%p1%dD, cub1=\E[D,
- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
- dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM,
- dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
- flash=\E[?5h$<200/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG,
- ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL,
- il1=\E[L, ind=\n, invis=\E[8m, kNXT=\E[6$, kPRV=\E[5$,
- kb2=\E[G, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A,
- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
- kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~,
- kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~,
- kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~,
- knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=\r\n, op=\E[39;49m,
- rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E[10m, rmir=\E[4l,
- rmso=\E[m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7,
- setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ cr=\r, cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B,
+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
+ dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K,
+ el1=\E[1K, flash=\E[?5h$<200/>\E[?5l, home=\E[H,
+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
+ il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m, kNXT=\E[6$,
+ kPRV=\E[5$, kb2=\E[G, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[[A, kf10=\E[21~,
+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
+ kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D,
+ kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ kspd=^Z, nel=\r\n, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
+ rmacs=\E[10m, rmir=\E[4l, rmso=\E[m, rmul=\E[m,
+ rs1=\Ec\E]R, sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m,
sgr0=\E[0;10m, smacs=\E[11m, smir=\E[4h, smso=\E[7m,
- smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt102+enq,
+ smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt220+pcedit,
+ use=vt220+cvis, use=vt102+enq,
#### DJGPP
@@ -8504,24 +9107,23 @@ djgpp|ANSI emulation for DJGPP alpha,
home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@,
ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, invis=\E[8m,
kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D,
- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\r\n,
- op=\E[37;40m, rev=\E[7m, ri=\E[T, rmso=\E[m,
- setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, nel=\r\n, op=\E[37;40m,
+ rev=\E[7m, ri=\E[T, rmso=\E[m, setab=\E[4%p1%dm,
+ setaf=\E[3%p1%dm,
sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%e;25%;%?
%p6%t;1%;%?%p7%t;8%;m,
sgr0=\E[m, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd,
- use=ecma+index,
+ use=vt220+pcedit, use=ecma+index,
-djgpp203|Entry for DJGPP 2.03,
+djgpp203|entry for DJGPP 2.03,
OTbs, am,
cols#80, it#8, lines#25,
bel=^G, cr=\r, cub1=^H, cud1=\n, ht=^I, ind=\n, kbs=^H, kcub1=^H,
kcud1=\n, nel=\r\n,
-djgpp204|Entry for DJGPP 2.04,
+djgpp204|entry for DJGPP 2.04,
OTbs, am, AX,
colors#8, cols#80, it#8, lines#25, ncv#3, pairs#64,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v,
@@ -8532,13 +9134,12 @@ djgpp204|Entry for DJGPP 2.04,
dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL,
il1=\E[L, ind=\E[S, invis=\E[8m, kbs=^H, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~,
- kf0=\E[21~, kf1=\E[[A, kf10=\E[21~, kf2=\E[[B, kf3=\E[[C,
- kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
- kf9=\E[20~, khome=\E[1~, kich1=\E[2~, kll=\E[4~, knp=\E[6~,
- kpp=\E[5~, nel=\r\n, rev=\E[7m, ri=\E[T, rmso=\E[m,
- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[m,
- smso=\E[7m, smul=\E[4m, use=ecma+index,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\E[21~, kf1=\E[[A,
+ kf10=\E[21~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E,
+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kll=\E[4~,
+ nel=\r\n, rev=\E[7m, ri=\E[T, rmso=\E[m, setab=\E[4%p1%dm,
+ setaf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
+ use=vt220+pcedit, use=ecma+index,
#### U/Win
@@ -8551,21 +9152,21 @@ uwin|U/Win 3.2 console,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r, cub1=^H, cud1=\n,
- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
- dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, ech=\E[%p1%dX,
- ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH,
- ich=\E[%p1%d@, ich1=\E[@, kbs=^H, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=^?, kend=\E[Y, kf1=\EOP,
- kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ, kf3=\EOR,
- kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, kf9=\EOX,
- khome=\E[H, kich1=\E[@, nel=\r\n, op=\E[39;49m, rc=\E8,
- rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmpch=\E[10m,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
+ cub1=^H, cud1=\n, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
+ cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I,
+ hts=\EH, ich=\E[%p1%d@, ich1=\E[@, kbs=^H, kcub1=\E[D,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=^?, kend=\E[Y,
+ kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ,
+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW,
+ kf9=\EOX, khome=\E[H, kich1=\E[@, nel=\r\n, op=\E[39;49m,
+ rc=\E8, rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmpch=\E[10m,
rmso=\E[27m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7,
setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m,
smacs=\E[11m, smir=\E[4h, smpch=\E[11m, smso=\E[7m,
smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n,
+ use=vt220+cvis,
#### Microsoft (miscellaneous)
@@ -8596,7 +9197,7 @@ uwin|U/Win 3.2 console,
# variables may be permanently set in the Control Panel\System applet.
#
# You can find out more about the restrictions of this facility at
-# <http://www.nentug.org/unix-to-nt/ntposix.htm>.
+# <https://jeffpar.github.io/kbarchive/kb/108/Q108581/>
#
# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997
ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode,
@@ -8754,7 +9355,7 @@ opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color,
# Comparison with the k* capabilities makes it obvious that the c* things are
# shift keys. I have renamed them to keys 32 and up accordingly. Also,
# :sr: was given as a boolean-- esr)
-altos2|alt2|altos-2|altos II,
+altos2|alt2|altos-2|Altos II,
cols#80, it#8, lines#24, xmc#0,
clear=\E[H\E[2J, cr=\r, cub1=^H, cud1=\E[1B, cuf1=\E[1C,
cup=\E[%i%p1%d;%p2%dH, cuu1=\E[1A, dch1=\E[P, dl1=\E[M,
@@ -8778,9 +9379,9 @@ altos2|alt2|altos-2|altos II,
# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\
# :HL=^AP\r:SP=\E[i:\
# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:
-altos3|altos5|alt3|alt5|altos-3|altos-5|altos III or V,
+altos3|altos5|alt3|alt5|altos-3|altos-5|Altos III or V,
blink=\E[5p, ri=\EM, sgr0=\E[p, use=altos2,
-altos4|alt4|altos-4|altos IV,
+altos4|alt4|altos-4|Altos IV,
use=wy50,
# (altos7: had extension capabilities:
# :GG#0:GI=\EH8:GF=\EH7:\
@@ -8792,15 +9393,15 @@ altos4|alt4|altos-4|altos IV,
# shift keys. I have renamed them to keys 32 and up accordingly. I have
# also made this entry relative to adm12 in order to give it an <sgr>. The
# <invis> imported by use=adm+sgr may work, let me know. -- esr)
-altos7|alt7|altos VII,
+altos7|alt7|Altos VII,
am, mir,
cols#80, lines#24, xmc#0,
- acsc=j5k3l2m1n8q\:t4u9v=w0x6, blink=\EG2, bold=\EGt,
+ acsc=j5k3l2m1n8q:t4u9v=w0x6, blink=\EG2, bold=\EGt,
clear=\E+^^, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
dim=\EGp, dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, il1=\EE,
ind=\n, invis=\EG1,
- is2=\E`\:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Eu\E~2, kDL=^Am\r,
+ is2=\E`:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Eu\E~2, kDL=^Am\r,
kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=^H,
kcud1=\n, kcuf1=^L, kcuu1=^K, kdch1=^AM\r, kel=^AN\r,
kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r,
@@ -8810,7 +9411,7 @@ altos7|alt7|altos VII,
kf8=^AG\r, kf9=^AH\r, khome=^^, kil1=^AJ\r, kind=^AO\r,
knp=\EK, kpp=\EJ, mc4=\EJ, mc5=\Ed#, nel=\r\n, ri=\Ej,
rmir=\Er, smir=\Eq, use=adm+sgr,
-altos7pc|alt7pc|altos PC VII,
+altos7pc|alt7pc|Altos PC VII,
kend=\ET, use=altos7,
#### Hewlett-Packard (hp)
@@ -8829,7 +9430,7 @@ altos7pc|alt7pc|altos PC VII,
#
# Generic HP terminal - this should (hopefully) work on any HP terminal.
-hpgeneric|hp|hewlett-packard generic terminal,
+hpgeneric|hp|Hewlett-Packard generic terminal,
OTbs, OTpt, am, da, db, mir, xhp,
cols#80, lines#24, lm#0, vt#6,
bel=^G, clear=\EH\EJ, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
@@ -8839,14 +9440,14 @@ hpgeneric|hp|hewlett-packard generic terminal,
sgr0=\E&d@, smir=\EQ, smso=\E&dJ, smul=\E&dD, tbc=\E3,
vpa=\E&a%p1%dY,
-hp110|hewlett-packard model 110 portable,
+hp110|Hewlett-Packard model 110 portable,
lines#16, use=hpgeneric,
-hp+pfk+cr|hp function keys with CR,
+hp+pfk+cr|HP function keys with CR,
kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, kf5=\Et\r,
kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r,
-hp+pfk-cr|hp function keys w/o CR,
+hp+pfk-cr|HP function keys w/o CR,
kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev,
kf8=\Ew,
@@ -8854,12 +9455,12 @@ hp+pfk-cr|hp function keys w/o CR,
# but not separate escape sequences. These definitions allow the
# user to use those keys as arrow keys rather than as function
# keys.
-hp+pfk+arrows|hp alternate arrow definitions,
+hp+pfk+arrows|HP alternate arrow definitions,
kcub1=\Eu\r, kcud1=\Ew\r, kcuf1=\Ev\r, kcuu1=\Et\r, kf1@,
kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, khome=\Ep\r, kind=\Er\r,
kll=\Eq\r, kri=\Es\r,
-hp+arrows|hp arrow definitions,
+hp+arrows|HP arrow definitions,
kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
kind=\ES, kll=\EF, kri=\ET,
@@ -8892,15 +9493,15 @@ hp262x|HP 262x terminals,
# Since there is no way to set/unset the strap with an escape
# sequence, we don't use it in the default.
# If you like, you can use 2621-ba (brain-damaged arrow keys).
-hp2621-ba|2621 w/new rom and strap A set,
+hp2621-ba|HP 2621 w/new rom and strap A set,
rmkx@, smkx@, use=hp+arrows, use=hp2621,
# hp2621 with function labels. Most of the time they are off,
# but inside vi, the function key labels appear. You have to
# hold down shift to get them to xmit.
-hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|hp 2621 w/labels,
+hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|HP 2621 w/labels,
is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl,
-hp2621-fl|hp 2621,
+hp2621-fl|HP 2621,
xhp@, xon,
pb#19200,
cbt=\Ei, cup=\E&a%p2%dc%p1%dY, dch1=\EP$<2>, ht=\011$<2>,
@@ -8909,32 +9510,32 @@ hp2621-fl|hp 2621,
use=hp+pfk+cr, use=hpgeneric,
# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p
-hp2621p|hp 2621 with printer,
+hp2621p|HP 2621 with printer,
mc4=\E&p13C, mc5=\E&p11C, use=hp2621,
hp2621p-a|hp2621p with fn as arrows,
use=hp+pfk+arrows, use=hp2621p,
# hp2621 with k45 keyboard
-hp2621-k45|hp2621k45|k45|hp 2621 with 45 keyboard,
+hp2621-k45|hp2621k45|k45|HP 2621 with 45 keyboard,
kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
khome=\Eh, rmkx=\E&s0A, smkx=\E&s1A, use=hp2621,
# 2621 using all 48 lines of memory, only 24 visible at any time.
-hp2621-48|48 line 2621,
+hp2621-48|HP 48 line 2621,
lines#48,
cup=\E&a%p2%dc%p1%dR, home=\EH, vpa=\E&a%p1%dR,
use=hp2621,
# 2621 with no labels ever. Also prevents vi delays on escape.
-hp2621-nl|hp 2621 with no labels,
+hp2621-nl|HP 2621 with no labels,
kcub1@, kcud1@, kcuf1@, kcuu1@, khome@, rmkx@, smkx@,
use=hp2621-fl,
# Needed for UCB ARPAVAX console, since lsi-11 expands tabs
# (wrong).
#
-hp2621-nt|hp 2621 w/no tabs,
+hp2621-nt|HP 2621 w/no tabs,
ht@, use=hp2621,
# Hp 2624 B with 4 or 10 pages of memory.
@@ -8988,7 +9589,7 @@ hp2624|hp2624a|hp2624b|hp2624b-4p|Hewlett Packard 2624 B,
#
# The padding probably should be changed.
#
-hp2626|hp2626a|hp2626p|hp 2626,
+hp2626|hp2626a|hp2626p|HP 2626,
da, db,
lm#0, pb#19200,
ed=\ED\EJ$<500>\EC, indn=\E&r%p1%dD, ip=$<4>,
@@ -9006,7 +9607,7 @@ hp2626|hp2626a|hp2626p|hp 2626,
# Note that this clears the tabs so it must be done by tset before
# it sets the tabs.
#
-hp2626-s|hp 2626 using only 23 lines,
+hp2626-s|HP 2626 using only 23 lines,
eslok, hs,
lines#23,
fsl=\E&d@\E&w7f2p1I\E&w4f1I,
@@ -9014,36 +9615,36 @@ hp2626-s|hp 2626 using only 23 lines,
\s\E&w2f2i0d23u23l0S\s\E&w7f2p1I\s\r,
tsl=\E&w7f2p2I\E&w4f2I\r\EK\E&a%p1%dC, use=hp2626,
# Force terminal back to 24 lines after being 23.
-hp2626-ns|hp 2626 using all 24 lines,
+hp2626-ns|HP 2626 using all 24 lines,
is1=\E&q3t0{0H\s\E&w0f118n1I\s\E&w0f1n2I\s\E&w2f1i0d0u23l0S
\s\E&w3f2I\s\E&w7f2p1I\s\r,
use=hp2626,
# Various entries useful for small windows on 2626.
-hp2626-12|hewlett-packard 2626 12 lines,
+hp2626-12|Hewlett-Packard 2626 12 lines,
lines#12, use=hp2626,
-hp2626-12x40|hewlett-packard 2626 12 lines 40 columns,
+hp2626-12x40|Hewlett-Packard 2626 12 lines 40 columns,
cols#40, lines#12, use=hp2626,
-hp2626-x40|hewlett-packard 2626 40 columns,
+hp2626-x40|Hewlett-Packard 2626 40 columns,
cols#40, use=hp2626,
-hp2626-12-s|hewlett-packard 2626 11 lines plus status,
+hp2626-12-s|Hewlett-Packard 2626 11 lines plus status,
lines#11, use=hp2626-s,
#
# hp2627 color tubes from University of Wisconsin
#
-hp2627a-rev|hp 2627 with reverse video colors,
+hp2627a-rev|HP 2627 with reverse video colors,
cr=\r, cud1=\n, ht=^I, ind=\n,
is2=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3
\r,
kbs=^H, kcub1=^H, kcud1=\n, nel=\r\n, rmul=\E&v0S\E&d@,
smul=\E&dD\E&v1S, use=hp2621-nl,
-hp2627a|hp 2627 color terminal with no labels,
+hp2627a|HP 2627 color terminal with no labels,
cr=\r, cud1=\n, ht=^I, ind=\n,
is2=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r,
kbs=^H, kcub1=^H, kcud1=\n, nel=\r\n, rmso=\E&v0S,
rmul=\E&v0S\E&d@, smso=\E&v2S, smul=\E&dD\E&v1S,
use=hp2621-nl,
-hp2627c|hp 2627 color (cyan) terminal with no labels,
+hp2627c|HP 2627 color (cyan) terminal with no labels,
cr=\r, cud1=\n, ht=^I, ind=\n,
is2=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r,
kbs=^H, kcub1=^H, kcud1=\n, nel=\r\n, use=hp2627a,
@@ -9051,10 +9652,10 @@ hp2627c|hp 2627 color (cyan) terminal with no labels,
# hp2640a doesn't have the Y cursor addressing feature, and C is
# memory relative instead of screen relative, as we need.
#
-hp2640a|hp 2640a,
+hp2640a|HP 2640a,
cup@, rmkx@, smkx@, use=hp2645,
-hp2640b|hp2644a|hp 264x series,
+hp2640b|hp2644a|HP 264x series,
rmkx@, smkx@, use=hp2645,
# (hp2641a: removed unknown :gu: -- esr)
@@ -9091,13 +9692,13 @@ hp2648|hp2648a|HP 2648a graphics terminal,
# The HP 150 terminal is a fairly vanilla HP terminal, with the
# clreol standout problem. It also has graphics capabilities and
# a touch screen, which we don't describe here.
-hp150|hewlett packard Model 150,
+hp150|Hewlett Packard Model 150,
OTbs, use=hp2622,
# HP 2382a terminals, "the little ones." They don't have any
# alternate character set support and sending out ^N/^O will
# leave the screen blank.
-hp2382a|hp2382|hewlett packard 2382a,
+hp2382a|hp2382|Hewlett Packard 2382a,
da, db,
lh#1, lm#48,
acsc@,
@@ -9122,11 +9723,11 @@ newhpkeyboard|generic entry for HP extended keyboard,
kri=\ES, krmir=\ER, rmkx=\E&s0A, smkx=\E&s1A,
use=hp+pfk-cr,
-newhp|generic entry for new hewlett packard terminals,
+newhp|generic entry for new Hewlett Packard terminals,
am, bw, mir, xhp, xon,
cols#80, lines#24, pb#4800,
- acsc=2[3@4>5I9(\:'JSKWLQMAO#P$Q;R!S"T1U2V4W3X\:Y+Z*dHjGkTlRm
- Fn/q\,t5u6v8w7x.,
+ acsc=2[3@4>5I9(:'JSKWLQMAO#P$Q;R!S"T1U2V4W3X:Y+Z*dHjGkTlRmFn
+ /q\,t5u6v8w7x.,
bel=^G, blink=\E&dA, bold=\E&dF, cbt=\Ei, cr=\r, cub1=^H,
cud1=\n, cuf1=\EC, cuu1=\EA, dch1=\EP$<2>, dim=\E&dH,
dl1=\EM, ed=\EJ, el=\EK, ht=\011$<2>, hts=\E1, il1=\EL, ind=\n,
@@ -9172,7 +9773,7 @@ hp+printer|"standard" printer info for HP ttys,
# new 262x series of machines. It has dip-switched options.
# The firmware has a bug in it such that if you give it a null
# length label, the following character is eaten!
-hp2621b|hp 2621b with old style keyboard,
+hp2621b|HP 2621b with old style keyboard,
lh#1, lm#48, lw#8, nlab#8,
kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
kind=\ET, kll=\EF, kri=\ES,
@@ -9180,15 +9781,15 @@ hp2621b|hp 2621b with old style keyboard,
%;%p2%s\E%{111}%p1%+%c\r,
smln=\E&jB, use=hp2621,
-hp2621b-p|hp 2621b with printer,
+hp2621b-p|HP 2621b with printer,
use=hp+printer, use=hp2621b,
# hp2621b - new 2621b with new extended keyboard
# these are closer to the new 26xx series than the other 2621b
-hp2621b-kx|hp 2621b with extended keyboard,
+hp2621b-kx|HP 2621b with extended keyboard,
use=newhpkeyboard, use=hp2621b,
-hp2621b-kx-p|hp 2621b with new keyboard & printer,
+hp2621b-kx-p|HP 2621b with new keyboard & printer,
use=hp+printer, use=hp2621b-kx,
# Some assumptions are made in the following entries.
@@ -9204,27 +9805,27 @@ hp2621b-kx-p|hp 2621b with new keyboard & printer,
#
# Hp 2622a & hp2623a display and graphics terminals
#
-hp2622|hp2622a|hp 2622,
+hp2622|hp2622a|HP 2622,
da, db,
lm#0, pb#19200,
is2=\E&dj@\r, use=hp+pfk-cr, use=hp+labels, use=scrhp,
# The 2623 is a 2622 with extra graphics hardware.
-hp2623|hp2623a|hp 2623,
+hp2623|hp2623a|HP 2623,
use=hp2622,
-hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer,
+hp2624b-p|hp2624b-4p-p|Hewlett Packard 2624 B with printer,
use=hp+printer, use=hp2624,
# The hewlett packard B can have an optional extra 6 pages of memory.
-hp2624-10p|hp2624a-10p|hp2624b-10p|hewlett packard 2624 B w/ 10 pages of memory,
+hp2624-10p|hp2624a-10p|hp2624b-10p|Hewlett Packard 2624 B w/ 10 pages of memory,
lm#240, use=hp2624,
-hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer,
+hp2624b-10p-p|Hewlett Packard 2624 B w/ extra memory & printer,
lm#240, use=hp2624b-p,
# Color manipulations for HP terminals
-hp+color|hp with colors,
+hp+color|HP with colors,
ccc,
colors#16, ncv#17, pairs#7,
initp=\E&v%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.
@@ -9236,7 +9837,7 @@ hp+color|hp with colors,
op=\E&v0S, scp=\E&v%p1%dS,
# <is2> sets the screen to be 80 columns wide
-hp2397a|hp2397|hewlett packard 2397A color terminal,
+hp2397a|hp2397|Hewlett Packard 2397A color terminal,
is2=\E&w6f80X, use=memhp, use=hp+labels, use=hp+color,
# HP 700/44 Setup parameters:
@@ -9252,16 +9853,15 @@ hp2397a|hp2397|hewlett packard 2397A color terminal,
# <is2> sets pcterm; autowrap; 25 lines; pc char set; prog DEL key;
# \E\\? does not turn off keycode mode
# <smsc> sets alternate start/stop; keycode on
-hpansi|hp700|hewlett packard 700/44 in HP-PCterm mode,
+hpansi|hp700|Hewlett Packard 700/44 in HP-PCterm mode,
am, eo, xenl, xon,
cols#80, lines#25,
acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x
\263,
- bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[2J\E[H,
- cnorm=\E[?25h, cr=\r, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
- ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L,
- ind=\n,
+ bel=^G, cbt=\E[Z, clear=\E[2J\E[H, cr=\r, cub1=\E[D,
+ cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
+ dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
+ ich1=\E[@, il1=\E[L, ind=\n,
is2=\E[44"p\E[?7h\E[>10h\E[>12h\EP1;1|3/7F\E\\,
kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
kcuu1=\E[A, kend=\E[4~, kf1=\E[17~, kf10=\E[28~,
@@ -9271,7 +9871,7 @@ hpansi|hp700|hewlett packard 700/44 in HP-PCterm mode,
rmsc=\E[>11l\EP1**x0/11;1/13\E[m\E\\, rmso=\E[m,
rmul=\E[m, sgr0=\E[m, smam=\E[?7h,
smsc=\E[>11h\EPO**x0/65;1/67\E\\$<250>, smso=\E[7m,
- smul=\E[4m, xoffc=g, xonc=e,
+ smul=\E[4m, xoffc=g, xonc=e, use=vt220+cvis,
#
# (hp2392: copied <rmir> here from hpex -- esr)
hp2392|239x series,
@@ -9282,7 +9882,7 @@ hp2392|239x series,
rmir=\ER, rmul=\E&d@, smir=\EQ, smul=\E&dD, vpa=\E&a%p1%dY,
use=hpsub,
-hpsub|hp terminals -- capability subset,
+hpsub|HP terminals -- capability subset,
am, da, db, mir, xhp, xon,
lines#24,
bel=^G, clear=\EH\EJ, cr=\r, cub1=^H, cud1=\EB, cuf1=\EC,
@@ -9302,24 +9902,21 @@ hpsub|hp terminals -- capability subset,
#
# (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:",
# moved <rmir> here from hpsub -- esr)
-hpex|hp extended capabilities,
+hpex|HP extended capabilities,
cr=\r, cud1=\n, cup=\E&a%p1%dy%p2%dC, ht=^I, ind=\n, kbs=^H,
kcub1=^H, kcud1=\n, nel=\r\n, rmir=\ER, rmul=\E&d@, smir=\EQ,
smul=\E&dD, vpa=\E&a%p1%dY, use=hpsub,
# From: Ville Sulko <Ville.Sulko@bip.atk.tpo.fi>, 05 Aug 1996
-hp2|hpex2|hewlett-packard extended capabilities newer version,
+hp2|hpex2|Hewlett-Packard extended capabilities newer version,
am, da, db, mir, xhp,
cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, xmc#0,
bel=^G, clear=\E&a0y0C\EJ, cr=\r, cub1=^H, cud1=\EB,
cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP,
dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1,
- il1=\EL, ind=\n, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED,
- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM,
- ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et,
- kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ,
- kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET,
- krmir=\ER, ktbc=\E3, meml=\El, memu=\Em,
+ il1=\EL, ind=\n, kbs=^H, kclr=\EJ, kctab=\E2, kdch1=\EP,
+ kdl1=\EM, ked=\EJ, kel=\EK, khts=\E1, kich1=\EQ, kil1=\EL,
+ knp=\EU, kpp=\EV, krmir=\ER, ktbc=\E3, meml=\El, memu=\Em,
pfkey=\E&f%p1%dk%p2%l%dL%p2%s,
pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s,
pfx=\E&f2a%p1%dk%p2%l%dL%p2%s,
@@ -9329,6 +9926,7 @@ hp2|hpex2|hewlett-packard extended capabilities newer version,
%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
sgr0=\E&d@\017, smir=\EQ, smkx=\E&s1A, smln=\E&jB,
smso=\E&dB, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
+ use=hp+pfk-cr, use=hp+arrows,
# HP 236 console
# From: <ddavis@ic.berkeley.edu>
@@ -9386,14 +9984,48 @@ hp98550|hp98550a|HP 9000 Series 300 color console,
cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, dim=\E&dH,
dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1,
if=/usr/share/tabset/std, il1=\EL, ind=\n, invis=\E&ds,
- kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep,
- kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew,
- khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF,
- knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, rev=\E&dJ,
- rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@,
- sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smso=\E&dJ,
- smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
+ kbs=^H, kclr=\EJ, kctab=\E2, kdch1=\EP, kdl1=\EM, ked=\EJ,
+ kel=\EK, khts=\E1, kich1=\EQ, kil1=\EL, kll=\EF, knp=\EU,
+ kpp=\EV, krmir=\ER, ktbc=\E3, rev=\E&dJ, rmacs=^O, rmir=\ER,
+ rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, smacs=^N,
+ smir=\EQ, smkx=\E&s1A, smso=\E&dJ, smul=\E&dD, tbc=\E3,
+ vpa=\E&a%p1%dY, use=hp+pfk-cr, use=hp+arrows,
+
+# From: Martin Trusler
+hp98550-color|hp98550a-color|HP 9000 Series 300 color console,
+ OTbs, am, ccc, da, db, km, mir, xhp,
+ colors#8, cols#128, it#8, lh#2, lines#49, lm#0, lw#8, nlab#8,
+ pairs#8, xmc#0,
+ acsc=+>\,<-\^.v0\374``a\374f\372g\376h\374j+k+l+m+n+o-q-s-t+
+ u+v+w+x|y<z>{*|!}\273~\362,
+ bel=^G, bold=\E&dD, cbt=\Ei, clear=\EH\EJ, cr=\r, cub1=^H,
+ cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA,
+ dch1=\EP, dl1=\EM, ed=\EJ, el=\EK, home=\E&a0y0C,
+ hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, ind=\ES,
+ initp=\E&v0m%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.
+ %p3%d%;b%?%p4%{1000}%=%t1%e.%p4%d%;c%?%p5%{1000}%=%t1
+ %e.%p5%d%;x%?%p6%{1000}%=%t1%e.%p6%d%;y%?%p7%{1000}%=
+ %t1%e.%p7%d%;z%p1%dI,
+ is1=\EH\EJ, kbs=^H, kctab=\E2, kdch1=\EP, kdl1=\EM, ked=\EJ,
+ kel=\EK, khts=\E1, kich1=\EQ, kil1=\EL, kll=\EF, knp=\EU,
+ kpp=\EV, krmir=\ER, ktbc=\E3, meml=\El, memu=\Em,
+ oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5
+ I\E&v1b1c6I\E&v1x1y7I,
+ op=\E&v0S, pfkey=\E&f%p1%dk%p2%l%dL%p2%s,
+ pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s,
+ pfx=\E&f2a%p1%dk%p2%l%dL%p2%s,
+ pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET,
+ rmacs=^O, rmam=\E&s1C, rmcup=\E&s0A, rmir=\ER, rmkx=\E&s0A,
+ rmln=\E&j@, rmm=\E&k0I, rmso=\E&d@, rmul=\E&d@, rs1=\EE,
+ scp=\E&v%p1%dS,
+ sgr=\E&d%p1%p3%|%{2}%*%p2%p6%|%{4}%*%+%{64}%+%c%?%p9%t%'
+ \016'%c%e%'\017'%c%;,
+ sgr0=\E&d@\017, smacs=^N, smam=\E&s0C, smcup=\E&s1A,
+ smir=\EQ, smkx=\E&s1A, smln=\E&jB, smm=\E&k1I, smso=\E&dB,
+ smul=\E&dD, tbc=\E3, u6=\Ea%dc%dR\r, u7=\Ea,
+ u8=\E%[0123456789/], u9=\E*s1\^, vpa=\E&a%p1%dY,
+ use=hp+pfk-cr, use=hp+arrows,
+
# From: Victor Duchovni <vic@fine.princeton.edu>
# (hp700-wy: removed obsolete ":nl=^J:";
# replaced /usr/share/tabset/hp700-wy with std because <it#8>,<hts=\E1> -- esr)
@@ -9417,15 +10049,13 @@ hp70092|hp70092a|hp70092A|HP 700/92,
bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=\r, cub1=^H,
cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA,
dch1=\EP, dim=\E&dH, dl1=\EM, el=\EK, hpa=\E&a%p1%dC, ht=^I,
- hts=\E1, il1=\EL, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED,
- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM,
- ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et,
- kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ,
- kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET,
- krmir=\ER, ktbc=\E3, rev=\E&dB, ri=\ET, rmacs=^O, rmir=\ER,
- rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@, rmul=\E&d@,
- sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB,
- smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
+ hts=\E1, il1=\EL, kbs=^H, kclr=\EJ, kctab=\E2, kdch1=\EP,
+ kdl1=\EM, ked=\EJ, kel=\EK, khts=\E1, kich1=\EQ, kil1=\EL,
+ kll=\EF, knp=\EU, kpp=\EV, krmir=\ER, ktbc=\E3, rev=\E&dB,
+ ri=\ET, rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmln=\E&j@,
+ rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, smacs=^N, smir=\EQ,
+ smkx=\E&s1A, smln=\E&jB, smso=\E&dJ, smul=\E&dD, tbc=\E3,
+ vpa=\E&a%p1%dY, use=hp+pfk-cr, use=hp+arrows,
bobcat|sbobcat|HP 9000 model 300 console,
am, da, db, mir, xhp,
@@ -9451,7 +10081,7 @@ gator|HP 9000 model 237 emulating AAA,
rep=%p1%c\E[%p2%db$<1*/>, rev=\E[7m, rmso=\E[m,
rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
gator-52|HP 9000 model 237 emulating VT52,
- cols#128, lines#47, use=vt52,
+ cols#128, lines#47, use=vt52-basic,
gator-52t|HP 9000 model 237 emulating extra-tall VT52,
lines#94, use=gator-52,
@@ -9477,7 +10107,7 @@ dku7003|Honeywell Bull DKU 7003 all features described,
rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
use=dku7003-dumb,
-#### Lear-Siegler (adm)
+#### Lear-Siegler (LSI adm)
#
# These guys are long since out of the terminals business, but
# in 1995 many current terminals still have an adm type as one of their
@@ -9491,13 +10121,13 @@ dku7003|Honeywell Bull DKU 7003 all features described,
# hanging in the air. (Thanks to Eric Fischer, <eric@fudge.uchicago.edu>,
# for clearing up this point.)
-adm1a|adm1|lsi adm1a,
+adm1a|adm1|LSI adm1a,
am,
cols#80, lines#24,
bel=^G, clear=\E;$<1>, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, home=^^,
ind=\n,
-adm2|lsi adm2,
+adm2|LSI adm2,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\E;, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -9505,7 +10135,7 @@ adm2|lsi adm2,
dl1=\ER, ed=\EY, el=\ET, home=^^, ich1=\EQ, il1=\EE, ind=\n,
kcub1=^H, kcud1=\n, kcuf1=^L, kcuu1=^K, khome=^^,
# (adm3: removed obsolete ":ma=^K^P:" -- esr)
-adm3|lsi adm3,
+adm3|LSI adm3,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=^Z, cr=\r, cub1=^H, cud1=\n, ind=\n,
@@ -9521,7 +10151,7 @@ adm3|lsi adm3,
# socket, you may be out of luck.
#
# (adm3a: some capabilities merged in from BRl entry -- esr)
-adm3a|lsi adm3a,
+adm3a|LSI adm3a,
OTbs, am,
cols#80, lines#24,
OTma=^K^P, OTnl=\n, bel=^G, clear=\032$<1/>, cr=\r, cub1=^H,
@@ -9531,7 +10161,7 @@ adm3a|lsi adm3a,
adm3a+|adm3a plus,
kbs=^H, use=adm3a,
# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr)
-adm5|lsi adm5,
+adm5|LSI adm5,
xmc#1,
bel=^G, cr=\r, cud1=\n, ed=\EY, el=\ET, kbs=^H, khome=^^,
rmso=\EG, smso=\EG, use=adm3a+,
@@ -9604,7 +10234,7 @@ adm11|LSI ADM-11,
# 7 - 7
# 20 - 6,8
#
-adm12|lsi adm12,
+adm12|LSI adm12,
OTbs, OTpt, am, mir,
OTug#1, cols#80, it#8, lines#24,
bel=^G, clear=^Z, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -9618,7 +10248,7 @@ adm12|lsi adm12,
kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, smir=\Eq, tbc=\E0,
use=adm+sgr,
# (adm20: removed obsolete ":kn#7:" -- esr)
-adm20|lear siegler adm20,
+adm20|Lear Siegler adm20,
OTbs, am,
cols#80, it#8, lines#24,
bel=^G, cbt=\EI, clear=^Z, cr=\r, cub1=^H, cuf1=^L,
@@ -9626,7 +10256,7 @@ adm20|lear siegler adm20,
dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, ich1=\EQ, il1=\EE,
kf1=^A, kf2=^B, kf3=^W, kf4=^D, kf5=^E, kf6=^X, kf7=^Z, rmso=\E(,
sgr0=\E(, smso=\E),
-adm21|lear siegler adm21,
+adm21|Lear Siegler adm21,
xmc#1,
bel=^G, cr=\r, cud1=\n, dch1=\EW, dl1=\ER$<30*>, ed=\EY,
el=\ET, ich1=\EQ, il1=\EE$<30*>, ind=\n, invis@, kbs=^H,
@@ -9635,7 +10265,7 @@ adm21|lear siegler adm21,
# (adm22: ":em=:" was an obvious typo for ":ei=:"; also,
# removed obsolete ":kn#7:ma=j^Jk^P^K^Pl ^R^L^L :";
# removed bogus-looking \200 from before <cup>. -- esr)
-adm22|lsi adm22,
+adm22|LSI adm22,
OTbs, am,
cols#80, lines#24,
bel=^G, cbt=\EI, clear=\E+, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -9790,7 +10420,7 @@ adm22|lsi adm22,
# position 6, bank @c11, 25% from back end of the circuit board. Should be
# OFF. If there is no such switch, you have an old adm31 and must use oadm31.
# (adm31: removed obsolete ":ma=j^Jk^P^K^Pl ^R^L^L :" -- esr)
-adm31|lsi adm31 with sw6 set for underline mode,
+adm31|LSI adm31 with sw6 set for underline mode,
OTbs, am, mir,
cols#80, lines#24,
bel=^G, clear=\E*, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -9809,7 +10439,7 @@ adm36|LSI ADM36,
if=/usr/share/tabset/vt100,
is2=\E<\E>\E[6;?2;?7;?8h\E[4;20;?1;?3;?4;?5;?6;?18;?19l, use=vt100+4bsd,
# (adm42: removed obsolete ":ma=^K^P:" -- esr)
-adm42|lsi adm42,
+adm42|LSI adm42,
OTbs, am,
cols#80, lines#24,
bel=^G, cbt=\EI, clear=\E;, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -9821,7 +10451,7 @@ adm42|lsi adm42,
# The following termcap for the Lear Siegler ADM-42 leaves the
# "system line" at the bottom of the screen blank (for those who
# find it distracting otherwise)
-adm42-ns|lsi adm-42 with no system line,
+adm42-ns|LSI adm-42 with no system line,
cbt=\EI\EF \011, clear=\E;\EF \011,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<6>\EF \011,
dch1=\EW\EF \011, dl1=\ER\EF \011, ed=\EY\EF \011,
@@ -9832,7 +10462,7 @@ adm42-ns|lsi adm-42 with no system line,
# purposes in that it will shift the position of every character on the page,
# not just the cursor line!
# From: Michael Driscoll <fenris@lightspeed.net> 10 July 1996
-adm1178|1178|lsi adm1178,
+adm1178|1178|LSI adm1178,
am,
cols#80, lines#24, xmc#1,
bel=^G, bold=\E(, cbt=\EI, clear=\E+, cr=\r, cub1=^H, cud1=\n,
@@ -9854,7 +10484,7 @@ adm1178|1178|lsi adm1178,
#
# Standout mode is dim reverse-video.
-pt100|pt200|wren|fenix|prime pt100/pt200,
+pt100|pt200|wren|fenix|Prime pt100/pt200,
am, bw, mir, msgr,
cols#80, it#8, lines#24,
cbt=\E[Z, clear=\E?, cr=\r, cub=\E[%p1%dD, cub1=^H,
@@ -9869,7 +10499,7 @@ pt100|pt200|wren|fenix|prime pt100/pt200,
smcup=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12
l\E[1Q,
smir=\E[4h, smkx=\E[>13h, smso=\E[2;7m, smul=\E[4m,
-pt100w|pt200w|wrenw|fenixw|prime pt100/pt200 in 132-column mode,
+pt100w|pt200w|wrenw|fenixw|Prime pt100/pt200 in 132-column mode,
cols#132,
cup=\E[%i%p1%d;%p2%dH, use=pt100,
pt250|Prime PT250,
@@ -9911,7 +10541,7 @@ pt250w|Prime PT250 in 132-column mode,
# If you inherit a Qume without docs, try Ctrl-Shift-Setup to enter its
# setup mode. Shift-s should be a configuration save to NVRAM.
-qvt101|qvt108|qume qvt 101 and QVT 108,
+qvt101|qvt108|Qume qvt 101 and QVT 108,
xmc#1, use=qvt101+,
# This used to have <cvvis=\E.2> but no <cnorm> or <civis>. The BSD termcap
@@ -9923,7 +10553,7 @@ qvt101|qvt108|qume qvt 101 and QVT 108,
#
# Added kdch1, kil1, kdl1 based on screenshot -TD:
# http://www.vintagecomputer.net/qume/qvt-108/qume_qvt-108_keyboard.jpg
-qvt101+|qvt101p|qume qvt 101 PLUS product,
+qvt101+|qvt101p|Qume qvt 101 PLUS product,
am, bw, hs, ul,
cols#80, lines#24, xmc#0,
bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=\r, cub1=^H, cud1=\n,
@@ -9936,10 +10566,10 @@ qvt101+|qvt101p|qume qvt 101 PLUS product,
kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r,
kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, mc4=\EA, mc5=\E@,
rmso=\E(, smso=\E0P\E), tbc=\E3, tsl=\Eg\Ef, use=adm+sgr,
-qvt102|qume qvt 102,
+qvt102|Qume qvt 102,
cnorm=\E., use=qvt101,
# (qvt103: added <rmam>/<smam> based on init string -- esr)
-qvt103|qume qvt 103,
+qvt103|Qume qvt 103,
am, xenl, xon,
cols#80, it#8, lines#24, vt#3,
bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
@@ -9957,10 +10587,10 @@ qvt103|qume qvt 103,
%;m$<2>,
sgr0=\E[m$<2>, smam=\E[?7h, smkx=\E[?1h\E=,
smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g,
-qvt103-w|qume qvt103 132 cols,
+qvt103-w|Qume qvt103 132 cols,
cols#132, lines#24,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt103,
-qvt119+|qvt119p|qvt119|qume qvt 119 and 119PLUS terminals,
+qvt119+|qvt119p|qvt119|Qume qvt 119 and 119PLUS terminals,
am, hs, mir, msgr,
cols#80, lines#24, xmc#0,
bel=^G, cbt=\EI, clear=\E*1, cnorm=\E.4, cr=\r, cub1=^H,
@@ -9980,12 +10610,12 @@ qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode,
is2=\EDF\EC\EG0\Er\E(\E%\EX\En4, use=qvt119+,
qvt119+-25-w|qvt119p-25-w|qvt119-25-w|QVT 119 and 119 PLUS 132 by 25,
lines#25, use=qvt119+,
-qvt203|qvt203+|qume qvt 203 Plus,
+qvt203|qvt203+|Qume qvt 203 Plus,
dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>,
ip=$<7>, kf0=\E[29~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~,
kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~,
kf9=\E[28~, rmir=\E[4l, smir=\E[4h, use=qvt103,
-qvt203-w|qvt203-w-am|qume qvt 203 PLUS in 132 cols (w/advanced video),
+qvt203-w|qvt203-w-am|Qume qvt 203 PLUS in 132 cols (w/advanced video),
cols#132, lines#24,
rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt203,
#
@@ -10001,7 +10631,7 @@ qvt203-25-w|QVT 203 PLUS with 25 by 132 columns,
cols#132, lines#25,
rs2=\E[?3h\E[=40h, use=qvt203,
-#### Televideo (tvi)
+#### TeleVideo (tvi)
#
# TeleVideo
# 550 East Brokaw Road
@@ -10014,9 +10644,9 @@ qvt203-25-w|QVT 203 PLUS with 25 by 132 columns,
# These require incredible amounts of padding.
#
# All of these terminals (912 to 970 and the tvipt) are discontinued. Newer
-# Televideo terminals are ANSI and PC-ANSI compatible.
+# TeleVideo terminals are ANSI and PC-ANSI compatible.
-tvi803|televideo 803,
+tvi803|TeleVideo 803,
clear=\E*$<10>, use=tvi950,
# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86
@@ -10101,7 +10731,7 @@ tvi803|televideo 803,
# D duplex
# (tvi910: removed obsolete ":ma=^Kk^Ll^R^L:"; added <khome>, <cub1>, <cud1>,
# <ind>, <hpa>, <vpa>, <am>, <msgr> from SCO entry -- esr)
-tvi910|televideo model 910,
+tvi910|TeleVideo model 910,
OTbs, am, msgr,
cols#80, it#8, lines#24, xmc#1,
bel=^G, cbt=\EI, clear=^Z, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -10142,7 +10772,7 @@ tvi910|televideo model 910,
# S2 9 DCD status (pin 8) (U = disconnected, D = connected)
# S2 10 DTR status (pin 20) (U = disconnected, D = connected)
#
-tvi910+|televideo 910+,
+tvi910+|TeleVideo 910+,
dch1=\EW, dl1=\ER$<33*>, home=^^, ich1=\EQ, il1=\EE$<33*>,
kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r,
kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r,
@@ -10150,7 +10780,7 @@ tvi910+|televideo 910+,
# (tvi912: removed obsolete ":ma=^K^P^L :", added <flash> and
# <khome> from BRL entry -- esr)
-tvi912|tvi914|tvi920|old televideo 912/914/920,
+tvi912|tvi914|tvi920|old TeleVideo 912/914/920,
OTbs, OTpt, am, msgr,
cols#80, it#8, lines#24, xmc#1,
bel=^G, clear=^Z, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -10165,7 +10795,7 @@ tvi912|tvi914|tvi920|old televideo 912/914/920,
# We got some new tvi912c terminals that act really weird on the regular
# termcap, so one of our gurus worked this up. Seems that cursor
# addressing is broken.
-tvi912cc|tvi912 at cowell college,
+tvi912cc|tvi912 at Cowell College,
cup@, use=tvi912c,
# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C
@@ -10173,6 +10803,7 @@ tvi912cc|tvi912 at cowell college,
#
# Someone has put a scanned copy of the manual online at:
# http://vt100.net/televideo/912b-om/
+# (https://vt100.net/manx/details/6,5484)
#
# These terminals were produced ca. 1979, and had a 12" monochrome
# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit
@@ -10558,11 +11189,11 @@ tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute),
tvi920b-mc|tvi920c-mc|TeleVideo TVI-920B or TVI-920C (magic cookies),
use=tvi920b+fn, use=tvi912b+mc, use=tvi912b-unk,
-# Televideo 921 and variants
+# TeleVideo 921 and variants
# From: Tim Theisen <tim@cs.wisc.edu> 22 Sept 1995
# (tvi921: removed :ko=bt: before translation, I see no backtab cap;
# also added empty <acsc> to suppress tic warning -- esr)
-tvi921|televideo model 921 with sysline same as page & real vi function,
+tvi921|TeleVideo model 921 with sysline same as page & real vi function,
OTbs, OTpt, am, hs, xenl, xhp,
cols#80, lines#24, xmc#0,
acsc=, clear=^Z, cnorm=\E.3, cr=\r, cub1=^H, cud1=^V, cuf1=^L,
@@ -10577,7 +11208,7 @@ tvi921|televideo model 921 with sysline same as page & real vi function,
# without the beeper
# (tvi92B: removed :ko=bt: before translation, I see no backtab cap;
# also added empty <acsc> to suppress tic warning -- esr)
-tvi92B|televideo model 921 with sysline same as page & real vi function & no beeper,
+tvi92B|TeleVideo model 921 with sysline same as page & real vi function & no beeper,
am, hs, xenl, xhp,
cols#80, lines#24, xmc#0,
acsc=, clear=^Z, cnorm=\E.3, cr=\r, cub1=^H, cud1=^V, cuf1=^L,
@@ -10598,7 +11229,7 @@ tvi92D|tvi92B with DTR instead of XON/XOFF & better padding,
# (tvi924: This used to have <dsl=\Es0>, <fsl=\031>. I put the new strings
# in from a BSD termcap file because it looks like they do something the
# old ones skip -- esr)
-tvi924|televideo tvi924,
+tvi924|TeleVideo tvi924,
am, bw, hs, in, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, wsl#80, xmc#0,
bel=^G, blink=\EG2, cbt=\EI, civis=\E.0, clear=\E*0,
@@ -10752,7 +11383,7 @@ tvi924|televideo tvi924,
# --------------------------------------------
#
# (tvi925: BSD has <clear=\E*>. I got <is2> and <ri> from there -- esr)
-tvi925|televideo 925,
+tvi925|TeleVideo 925,
OTbs, am, bw, hs, ul,
cols#80, lines#24, xmc#1,
bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=\r, cub1=^H, cud1=^V,
@@ -10870,7 +11501,7 @@ tvi925-hi|TeleVideo Model 925 with half intensity standout mode,
# Finally, note that BSD has cud1=^V. -- esr)
#
# TVI 950 has 11 function-keys -TD
-tvi950|televideo 950,
+tvi950|TeleVideo 950,
OTbs, am, hs, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, xmc#1,
acsc=jHkGlFmEnIqKtMuLvOwNxJ, bel=^G, cbt=\EI, clear=\E*,
@@ -10904,7 +11535,7 @@ tvi950|televideo 950,
# set duplex (send) edit keys (\El) when entering vi
# set local (no send) edit keys (\Ek) when exiting vi
#
-tvi950-2p|televideo950 w/2 pages,
+tvi950-2p|TeleVideo 950 w/2 pages,
is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee\s\017\011\Ek
\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0
\E\\2\E-07\s\011,
@@ -10920,7 +11551,7 @@ tvi950-2p|televideo950 w/2 pages,
# when exiting ex, reset 96 line page (\E\\3)
# place cursor at 0,24,1 (\E-07 )
#
-tvi950-4p|televideo950 w/4 pages,
+tvi950-4p|TeleVideo 950 w/4 pages,
is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee\s\017\011\Ek
\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0
\E\\3\E-07\s\011,
@@ -10932,7 +11563,7 @@ tvi950-4p|televideo950 w/4 pages,
#
# set vb accordingly (\Ed ...delay... \Eb)
#
-tvi950-rv|televideo950 rev video,
+tvi950-rv|TeleVideo 950 rev video,
flash=\Ed$<200/>\Eb,
is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee\s\017\011\El
\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r
@@ -10940,7 +11571,7 @@ tvi950-rv|televideo950 rev video,
use=tvi950,
# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv
-tvi950-rv-2p|televideo950 rev video w/2 pages,
+tvi950-rv-2p|TeleVideo 950 rev video w/2 pages,
flash=\Ed$<200/>\Eb,
is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee\s\017\011\Ek
\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0
@@ -10949,7 +11580,7 @@ tvi950-rv-2p|televideo950 rev video w/2 pages,
smkx=\El, use=tvi950,
# tvi950-rv uses the appropriate entries from 950-4p and 950-rv
-tvi950-rv-4p|televideo950 rev video w/4 pages,
+tvi950-rv-4p|TeleVideo 950 rev video w/4 pages,
flash=\Ed$<200/>\Eb,
is2=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee\s\017\011\Ek
\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0
@@ -10966,7 +11597,7 @@ tvi950-rv-4p|televideo950 rev video w/4 pages,
# ko implies -- esr)
# If the BSD termcap file was right, <cup=\E=%p1%{32}%+%c%p2%{32}%+%c> would
# also work.
-tvi955|televideo 955,
+tvi955|TeleVideo 955,
OTbs, mc5i, msgr@,
it#8, xmc@,
acsc=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ, blink=\EG2,
@@ -10979,11 +11610,11 @@ tvi955|televideo 955,
\Ef\r,
sgr0=\EG0\E[=5l, smacs=\E$, smam=\E[=7h, smxon=^O,
use=tvi950,
-tvi955-w|955-w|televideo955 w/132 cols,
+tvi955-w|955-w|TeleVideo 955 w/132 cols,
cols#132,
is2=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El, use=tvi955,
# use half-intensity as normal mode, full intensity as <bold>
-tvi955-hb|955-hb|televideo955 half-bright,
+tvi955-hb|955-hb|TeleVideo 955 half-bright,
bold=\E[=5l, dim@, is2=\E[=3l\EF1\Ed\EG0\E[=5h\E%\El,
sgr0=\EG0\E[=5h, use=tvi955,
# From: Humberto Appleton <beto@cs.utexas.edu>, 880521 UT Austin
@@ -10992,7 +11623,7 @@ tvi955-hb|955-hb|televideo955 half-bright,
# According to BRL we could have <rmkx>=\E>, <smkx>=\E= but I'm not sure what
# it does to the function keys. I deduced <rmam>/<smam>.
# also added empty <acsc> to suppress tic warning, -- esr)
-tvi970|televideo 970,
+tvi970|TeleVideo 970,
OTbs, OTpt, am, da, db, mir, msgr,
cols#80, it#8, lines#24,
acsc=, cbt=\E[Z, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr,
@@ -11008,10 +11639,10 @@ tvi970|televideo 970,
sgr0=\E[m, smacs=\E(B, smam=\E[?7l,
smcup=\E[?20l\E[?7h\E[1Q, smir=\E[4h, smso=\E[7m,
smul=\E[4m, vpa=\E[%i%p1%dd,
-tvi970-vb|televideo 970 with visual bell,
+tvi970-vb|TeleVideo 970 with visual bell,
flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l,
use=tvi970,
-tvi970-2p|televideo 970 with using 2 pages of memory,
+tvi970-2p|TeleVideo 970 with using 2 pages of memory,
rmcup=\E[H\E[J\E[V, smcup=\E[U\E[?20l\E[?7h\E[1Q,
use=tvi970,
# Works with vi and rogue. NOTE: Esc v sets autowrap on, Esc u sets 80 chars
@@ -11023,7 +11654,7 @@ tvi970-2p|televideo 970 with using 2 pages of memory,
# From: Gene Rochlin <armsis@amber.berkeley.edu> 9/19/84.
# The <ed>/<kf0>/<kf1>/<khome>/<mc4>, and <mc5> caps are from BRL, which says:
# F1 and F2 should be programmed as ^A and ^B; required for UNIFY.
-tvipt|televideo personal terminal,
+tvipt|TeleVideo personal terminal,
OTbs, am,
cols#80, lines#24,
cbt=\EI, clear=^Z, cub1=^H, cuf1=^L,
@@ -11033,7 +11664,7 @@ tvipt|televideo personal terminal,
kcuf1=^L, kcuu1=^K, kf0=^A, kf1=^B, khome=^^, mc4=^T, mc5=^R,
rmso=\EF, rmul=\EF, smso=\EG1@A\EH, smul=\EG1B@\EH,
# From: Nathan Peterson <nathan@sco.com>, 03 Sep 1996
-tvi9065|televideo 9065,
+tvi9065|TeleVideo 9065,
am, bw, chts, hs, mc5i, mir, msgr, xenl, xon,
cols#80, it#8, lh#1, lines#25, lm#0, lw#9, ma#4, nlab#8, vt#0,
wnum#0, wsl#30,
@@ -11099,7 +11730,7 @@ tvi9065|televideo 9065,
# Beau's entry is combined with the vi50 entry from University of Wisconsin.
# Note especially the <il1> function. <kf4>-<kf6> are really l4-l6 in
# disguise; <kf7>-<kf9> are really l1-l3.
-vi50|visual 50,
+vi50|Visual 50,
OTbs, OTpt, am, da, db, msgr,
cols#80, it#8, lines#24,
OTnl=\n, bel=^G, cbt=\Ez$<4/>, clear=\EH\EJ, cr=\r, cub1=^H,
@@ -11110,7 +11741,7 @@ vi50|visual 50,
kf5=\EE, kf6=\E], kf7=\EL, kf8=\Ev, kf9=\EM, khome=\EH,
nel=\r\n, ri=\EI, rmso=\ET, rmul=\EW, smso=\EU, smul=\ES,
# this one was BSD & SCO's vi50
-vi50adm|visual 50 in adm3a mode,
+vi50adm|Visual 50 in adm3a mode,
am, msgr,
cols#80, it#8, lines#24,
bel=^G, clear=^Z, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -11139,7 +11770,7 @@ vi55|Visual 55,
# (This cap is commented out because <smir>/<rmir> is more efficient -- esr)
# Supposedly "4*" delays should be used for <il1>, <ed>, <clear>, <dch1>,
# and <dl1> strings, but we seem to get along fine without them.
-vi200|visual 200,
+vi200|Visual 200,
OTbs, OTpt, am, mir, msgr,
OTkn#10, cols#80, it#8, lines#24,
acsc=+h.kffggjmkllsmenbq`tnuovcwdxa}r, bel=^G, cbt=\Ez,
@@ -11158,12 +11789,12 @@ vi200|visual 200,
# <smkx> and <rmkx> so that the keypad keys can be used as function keys.
# If your version of vi doesn't support function keys you may want
# to use vi200-f.
-vi200-f|visual 200 no function keys,
+vi200-f|Visual 200 no function keys,
is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, kf0=\E?p, kf1=\E?q,
kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, kf7=\E?w,
kf8=\E?x, kf9=\E?y, rmkx=\E>, rmso@, smkx=\E=, smso@,
use=vi200,
-vi200-rv|visual 200 reverse video,
+vi200-rv|Visual 200 reverse video,
cnorm@, cvvis@, ri@, rmso=\E3, smso=\E4, use=vi200,
# the function keys are programmable but we don't reprogram them to their
@@ -11171,7 +11802,7 @@ vi200-rv|visual 200 reverse video,
# an initialization file should be made for the 300 and they could be stuck
# in it.
# (vi300: added <rmam>/<smam> based on init string -- esr)
-vi300|visual 300 ansi x3.64,
+vi300|Visual 300 ansi x3.64,
am, bw, mir, xenl,
cols#80, lines#24,
bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=\r, cub1=^H, cud1=\E[B,
@@ -11187,7 +11818,7 @@ vi300|visual 300 ansi x3.64,
smso=\E[1m, smul=\E[4m,
# some of the vi300s have older firmware that has the command
# sequence for setting editing extent reversed.
-vi300-old|visual 300 with old firmware (set edit extent reversed),
+vi300-old|Visual 300 with old firmware (set edit extent reversed),
is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[2Q\E[0;1(D\E[8s, use=vi300,
# Visual 500 prototype entry from University of Wisconsin.
@@ -11199,7 +11830,7 @@ vi300-old|visual 300 with old firmware (set edit extent reversed),
# of this slow terminal. :xp: is 10 time the padding factor.
# (vi500: removed unknown :xp#4: termcap;
# also added empty <acsc> to suppress tic warning -- esr)
-vi500|visual 500,
+vi500|Visual 500,
am, mir, msgr,
cols#80, it#8, lines#33,
acsc=, cbt=\Ez$<4/>, clear=\Ev$<6*/>, cr=\r,
@@ -11213,14 +11844,14 @@ vi500|visual 500,
khome=\EH, nel=\r\n, rmacs=^O, rmir=\Ej, rmso=\E^G,
rmul=\E^C, smacs=^N, smir=\Ei, smso=\E^H, smul=\E^D,
-# The visual 550 is a visual 300 with tektronix graphics,
+# The visual 550 is a visual 300 with Tektronix graphics,
# and with 33 lines. clear screen is modified here to
# also clear the graphics.
-vi550|visual 550 ansi x3.64,
+vi550|Visual 550 ansi x3.64,
lines#33,
clear=\030\E[H\E[2J, use=vi300,
-vi603|visual603|visual 603,
+vi603|visual603|Visual 603,
hs, mir,
bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J,
csr=\E[%i%p1%d;%p2%dr, cuf1=\E[C,
@@ -11291,7 +11922,7 @@ wy30|wyse30|Wyse 30,
# (with magic cookie).
#
# (wy30-mc: added <smcup> to suppress tic warning --esr)
-wy30-mc|wyse30-mc|wyse 30 with magic cookies,
+wy30-mc|wyse30-mc|Wyse 30 with magic cookies,
msgr@,
ma@, xmc#1,
blink=\EG2, dim=\EGp, prot=\EG0\E), rmacs=\EG0\EH\003,
@@ -11305,7 +11936,7 @@ wy30-mc|wyse30-mc|wyse 30 with magic cookies,
# older versions of terminfo. If you see this effect then
# unset xon and delete the / from the delay.
# i.e. change $<100/> to $<100>
-wy30-vb|wyse30-vb|wyse 30 visible bell,
+wy30-vb|wyse30-vb|Wyse 30 visible bell,
bel@, use=wy30,
#
# The Wyse 50 can support one attribute (e.g. Dim, Inverse,
@@ -11320,13 +11951,13 @@ wy30-vb|wyse30-vb|wyse 30 visible bell,
wy50|wyse50|Wyse 50,
am, bw, hs, mc5i, mir, msgr, xon,
cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45,
- acsc=a;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, cbt=\EI,
+ acsc=a;j5k3l2m1n8q:t4u9v=w0x6, bel=^G, cbt=\EI,
civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=\r, cub1=^H,
cud1=\n, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
cuu1=^K, dch1=\EW$<1>, dim=\E`7\E), dl1=\ER, dsl=\EF\r,
ed=\EY$<20>, el=\ET, flash=\E`8$<100/>\E`9, fsl=\r,
home=^^, ht=^I, hts=\E1, il1=\EE, ind=\n$<2>, ip=$<1>,
- is1=\E`\:\E`9$<30>, is2=\016\024\E'\E(, kHOM=\E{, kbs=^H,
+ is1=\E`:\E`9$<30>, is2=\016\024\E'\E(, kHOM=\E{, kbs=^H,
kcbt=\EI, kcub1=^H, kcud1=\n, kcuf1=^L, kcuu1=^K, kdch1=\EW,
kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r,
kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r,
@@ -11353,7 +11984,7 @@ wy50|wyse50|Wyse 50,
# unset <xon> and delete the / from the delay.
# i.e. change $<100/> to $<100>
# (wy50-mc: added <smcup> to suppress tic warning --esr)
-wy50-mc|wyse50-mc|wyse 50 with magic cookies,
+wy50-mc|wyse50-mc|Wyse 50 with magic cookies,
msgr@,
ma@, xmc#1,
blink=\EG2, dim=\EGp, prot=\EG0\E), rev=\EG4,
@@ -11363,13 +11994,13 @@ wy50-mc|wyse50-mc|wyse 50 with magic cookies,
%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;,
sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=,
smso=\EGt, use=wy50, use=adm+sgr,
-wy50-vb|wyse50-vb|wyse 50 visible bell,
+wy50-vb|wyse50-vb|Wyse 50 visible bell,
bel@, use=wy50,
-wy50-w|wyse50-w|wyse 50 132-column,
+wy50-w|wyse50-w|Wyse 50 132-column,
cols#132, lw#7, nlab#16, wsl#97,
cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>,
use=wy50,
-wy50-wvb|wyse50-wvb|wyse 50 132-column visible bell,
+wy50-wvb|wyse50-wvb|Wyse 50 132-column visible bell,
bel@, use=wy50-w,
#
@@ -11405,7 +12036,7 @@ wy350|wyse350|Wyse 350,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<1>,
dim=\EGp, dl1=\ER, dsl=\EF\r, ed=\EY$<20>, el=\ET,
flash=\E`8$<100/>\E`9, fsl=\r, home=^^, ht=^I, hts=\E1,
- il1=\EE, ind=\n$<2>, ip=$<1>, is1=\E`\:\E`9$<30>,
+ il1=\EE, ind=\n$<2>, ip=$<1>, is1=\E`:\E`9$<30>,
is2=\016\024\E'\E(, is3=\E%?, kHOM=\E{, kbs=^H, kcbt=\EI,
kcub1=^H, kcud1=\n, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER,
ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r,
@@ -11427,19 +12058,19 @@ wy350|wyse350|Wyse 350,
\002%e\EH\003%;,
sgr0=\EG0\E(\EH\003%{0}%PA%{0}%PC, smacs=\EG0\EH\002,
smir=\Eq, smln=\EA10, tbc=\E0, tsl=\EF, use=adm+sgr,
-wy350-vb|wyse350-vb|wyse 350 visible bell,
+wy350-vb|wyse350-vb|Wyse 350 visible bell,
bel@, use=wy350,
-wy350-w|wyse350-w|wyse 350 132-column,
+wy350-w|wyse350-w|Wyse 350 132-column,
cols#132, lw#7, nlab#16, wsl#97,
cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>,
use=wy350,
-wy350-wvb|wyse350-wvb|wyse 350 132-column visible bell,
+wy350-wvb|wyse350-wvb|Wyse 350 132-column visible bell,
bel@, use=wy350-w,
#
# This terminfo description is untested.
# The wyse100 emulates an adm31, so the adm31 entry should work.
#
-wy100|wyse 100,
+wy100|Wyse 100,
hs, mir,
cols#80, lines#24, xmc#1,
bel=^G, clear=\E;, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -11480,7 +12111,7 @@ wy120|wyse120|wy150|wyse150|Wyse 120/150,
pfx=\EZ1%p1%{63}%+%c%p2%s\177,
pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>,
rmacs=\EcD, rmam=\Ed., rmcup=\Ew1, rmir=\Er, rmln=\EA11,
- rmxon=\Ec20, rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>,
+ rmxon=\Ec20, rs1=\E~!\E~4$<30>, rs2=\EeF\E`:$<70>,
rs3=\EwG\Ee($<100>,
sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}
%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t
@@ -11489,16 +12120,16 @@ wy120|wyse120|wy150|wyse150|Wyse 120/150,
smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21,
tbc=\E0, tsl=\EF, use=adm+sgr,
#
-wy120-w|wyse120-w|wy150-w|wyse150-w|wyse 120/150 132-column,
+wy120-w|wyse120-w|wy150-w|wyse150-w|Wyse 120/150 132-column,
cols#132, lw#7, nlab#16, wsl#97,
cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>,
rs2=\E`;$<70>, use=wy120,
#
-wy120-25|wyse120-25|wy150-25|wyse150-25|wyse 120/150 80-column 25-lines,
+wy120-25|wyse120-25|wy150-25|wyse150-25|Wyse 120/150 80-column 25-lines,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<100>, use=wy120,
#
-wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|wyse 120/150 132-column 25-lines,
+wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|Wyse 120/150 132-column 25-lines,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<100>, use=wy120-w,
#
@@ -11575,34 +12206,34 @@ wy60|wyse60|Wyse 60,
kF2=^Aa\r, kF3=^Ab\r, kF4=^Ac\r, kF5=^Ad\r, kF6=^Ae\r,
kF7=^Af\r, kF8=^Ag\r, kF9=^Ah\r, use=adm+sgr,
#
-wy60-w|wyse60-w|wyse 60 132-column,
+wy60-w|wyse60-w|Wyse 60 132-column,
cols#132, lw#7, nlab#16, wsl#97,
cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<16>, ip=$<5>,
rs2=\EeF$<150>\E`;$<150>, use=wy60,
#
-wy60-25|wyse60-25|wyse 60 80-column 25-lines,
+wy60-25|wyse60-25|Wyse 60 80-column 25-lines,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<200>, use=wy60,
-wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines,
+wy60-25-w|wyse60-25-w|Wyse 60 132-column 25-lines,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<200>, use=wy60-w,
#
-wy60-42|wyse60-42|wyse 60 80-column 42-lines,
+wy60-42|wyse60-42|Wyse 60 80-column 42-lines,
lines#42,
clear=\E+$<260>, cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<2>,
dch1=\EW$<16>, dl1=\ER$<11>, ed=\Ey$<260>, il1=\EE$<11>,
ind=\n$<9>, ip=$<5>, is1=\EcB2\EcC3, nel=\r\n$<6>,
ri=\Ej$<10>, rs3=\Ee*$<150>, use=wy60,
-wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines,
+wy60-42-w|wyse60-42-w|Wyse 60 132-column 42-lines,
cols#132, lw#7, nlab#16, wsl#97,
clear=\E+$<260>, cup=\Ea%i%p1%dR%p2%dC$<2>,
dch1=\EW$<19>, ed=\Ey$<260>, home=\036$<2>, ip=$<6>,
nel=\r\n$<11>, rs2=\EeF$<150>\E`;$<150>, use=wy60-42,
#
-wy60-43|wyse60-43|wyse 60 80-column 43-lines,
+wy60-43|wyse60-43|Wyse 60 80-column 43-lines,
lh@, lines#43, lw@, nlab@,
pln@, rs3=\Ee+$<150>, use=wy60-42,
-wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines,
+wy60-43-w|wyse60-43-w|Wyse 60 132-column 43-lines,
lh@, lines#43, lw@, nlab@,
pln@, rs3=\Ee+$<150>, use=wy60-42-w,
#
@@ -11631,20 +12262,20 @@ wy99gt|wyse99gt|Wyse 99gt,
clear=\E+$<130>, dch1=\EW$<7>, dl1=\ER$<4>, ed=\Ey$<130>,
el=\Et$<5>, flash=\E`8$<100/>\E`9, ht=\011$<1>,
il1=\EE$<4>, ind=\n$<4>, ip=$<2>, is3=\Ew0$<20>, nel@,
- ri=\Ej$<3>, rmcup=\Ew0, rs2=\E`\:$<150>, smcup=\Ew1,
+ ri=\Ej$<3>, rmcup=\Ew0, rs2=\E`:$<150>, smcup=\Ew1,
u0=\E~>\E8, u1=\E[42h, use=wy60,
#
-wy99gt-w|wyse99gt-w|wyse 99gt 132-column,
+wy99gt-w|wyse99gt-w|Wyse 99gt 132-column,
cols#132, lw#7, nlab#16, wsl#97,
clear=\E+$<160>, cup=\Ea%i%p1%dR%p2%dC$<2>,
dch1=\EW$<9>, ed=\Ey$<160>, ip=$<4>, rs2=\E`;$<150>,
use=wy99gt,
#
-wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines,
+wy99gt-25|wyse99gt-25|Wyse 99gt 80-column 25-lines,
lh@, lines#25, lw@, nlab@,
- pln@, rs2=\E`\:$<150>, rs3=\EwG\Ee)$<200>, use=wy99gt,
+ pln@, rs2=\E`:$<150>, rs3=\EwG\Ee)$<200>, use=wy99gt,
#
-wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines,
+wy99gt-25-w|wyse99gt-25-w|Wyse 99gt 132-column 25-lines,
lh@, lines#25, lw@, nlab@,
pln@, rs2=\E`;$<150>, use=wy99gt-w,
#
@@ -11729,8 +12360,8 @@ wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard),
flash=\E\^1$<30/>\E\^0, fsl=\r, home=^^, ht=^I, il1=\EE,
ind=\n, invis=\EG3,
is2=\Eu\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E
- \^0\E`1\E`4\Ee.\E`\:\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er
- \Ee"\EcD\024,
+ \^0\E`1\E`4\Ee.\E`:\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"
+ \EcD\024,
ka1=^^, ka3=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H,
kcud1=\n, kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r,
kf11=^AJ\r, kf12=^AK\r, kf13=^A`\r, kf14=^Aa\r, kf15=^Ab\r,
@@ -11741,7 +12372,7 @@ wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard),
nel=^_, prot=\E), rev=\EG4, ri=\Ej, rmacs=\EcD, rmam=\Ed.,
rmcup=\Ec21\Ec31, rmir=\Er, rmso=\EG0, rmxon=\Ec20\Ec30,
rs2=\Eu\E~4\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`
- 9\E\^0\E`1\E`4\Ee.\E`\:\Ee)\Ew\EwG\Ew0\Ee1\EG0\E(\Ed/
+ 9\E\^0\E`1\E`4\Ee.\E`:\Ee)\Ew\EwG\Ew0\Ee1\EG0\E(\Ed/
\Ee4\Ed*\EO\E`I\Er\Ee"\Ec@0B\EcD\024,
sgr=\E(\EG%{48}%?%p1%p3%O%t%{4}%+%;%?%p2%t%{8}%+%;%?%p4%t
%{2}%+%;%?%p5%t%{64}%+%;%?%p7%t%{1}%+%;%c%?%p8%t\E)%;%?
@@ -11800,7 +12431,7 @@ wy160|wyse160|Wyse 160,
pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<1>,
rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew0, rmir=\Er,
rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<70>,
- rs2=\E`\:$<100>, rs3=\EwG\Ee($<140>,
+ rs2=\E`:$<100>, rs3=\EwG\Ee($<140>,
sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}
%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t
%{64}%|%;%?%p7%t%{1}%|%;%c,
@@ -11808,32 +12439,32 @@ wy160|wyse160|Wyse 160,
smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21,
tbc=\E0, tsl=\EF, use=adm+sgr,
#
-wy160-w|wyse160-w|wyse 160 132-column,
+wy160-w|wyse160-w|Wyse 160 132-column,
cols#132, lw#7, nlab#16, wsl#90,
cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<9>,
rs2=\EeF$<150>\E`;$<150>, use=wy160,
#
-wy160-25|wyse160-25|wyse 160 80-column 25-lines,
+wy160-25|wyse160-25|Wyse 160 80-column 25-lines,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<200>, use=wy160,
-wy160-25-w|wyse160-25-w|wyse 160 132-column 25-lines,
+wy160-25-w|wyse160-25-w|Wyse 160 132-column 25-lines,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<200>, use=wy160-w,
#
-wy160-42|wyse160-42|wyse 160 80-column 42-lines,
+wy160-42|wyse160-42|Wyse 160 80-column 42-lines,
lines#42,
clear=\E+$<50>, dl1=\ER$<2>, ed=\Ey$<50>, il1=\EE$<2>,
ind=\n$<2>, is1=\EcB2\EcC3, nel=\r\n$<2>, ri=\Ej$<2>,
rs3=\Ee*$<150>, use=wy160,
-wy160-42-w|wyse160-42-w|wyse 160 132-column 42-lines,
+wy160-42-w|wyse160-42-w|Wyse 160 132-column 42-lines,
cols#132, lw#7, nlab#16, wsl#90,
cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<8>, ip=$<3>,
rs2=\EeF$<150>\E`;$<150>, use=wy160-42,
#
-wy160-43|wyse160-43|wyse 160 80-column 43-lines,
+wy160-43|wyse160-43|Wyse 160 80-column 43-lines,
lh@, lines#43, lw@, nlab@,
pln@, rs3=\Ee+$<150>, use=wy160-42,
-wy160-43-w|wyse160-43-w|wyse 160 132-column 43-lines,
+wy160-43-w|wyse160-43-w|Wyse 160 132-column 43-lines,
lh@, lines#43, lw@, nlab@,
pln@, rs3=\Ee+$<150>, use=wy160-42-w,
#
@@ -11853,22 +12484,21 @@ wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell,
# cookies. The wy75-mc terminal description uses magic cookies
# to correctly handle multiple attributes on a screen.
#
-wy75|wyse75|wyse 75,
+wy75|wyse75|Wyse 75,
am, hs, mc5i, mir, msgr, xenl, xon,
cols#80, lines#24, ma#1, pb#1201, wsl#78,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[J$<30>,
- cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr$<2>,
- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP$<3*>,
- dch1=\E[P$<3>, dim=\E[0t\E[2m, dl=\E[%p1%dM$<1*>,
- dl1=\E[M, dsl=\E[>\,\001\001\E[>-\001\001,
- ech=\E[%p1%dX, ed=\E[J$<30>, el=\E[K$<3>, el1=\E[1K$<3>,
- enacs=\E)0, flash=\E[30h\E\,$<250/>\E[30l, fsl=^A,
- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
- ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>,
- ind=\n$<2>, ip=$<1>,
+ bel=^G, cbt=\E[Z, clear=\E[H\E[J$<30>, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr$<2>, cub=\E[%p1%dD, cub1=^H,
+ cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
+ dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[0t\E[2m,
+ dl=\E[%p1%dM$<1*>, dl1=\E[M,
+ dsl=\E[>\,\001\001\E[>-\001\001, ech=\E[%p1%dX,
+ ed=\E[J$<30>, el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E)0,
+ flash=\E[30h\E\,$<250/>\E[30l, fsl=^A, home=\E[H,
+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@$<1*>,
+ il=\E[%p1%dL$<2*>, il1=\E[L$<2>, ind=\n$<2>, ip=$<1>,
is1=\E[2;4;20;30l\E[?1;10l\E[12h\E[?7;8;25h,
is2=\E>\E(B\E)0\017, is3=\E[m, kbs=^H, kcub1=\E[D,
kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\E[M, kel=\E[K,
@@ -11888,12 +12518,13 @@ wy75|wyse75|wyse 75,
\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1l\E[?7h\E=, smso=\E[1t\E[7m, smul=\E[2t\E[4m,
- tbc=\E[3g, tsl=\E[>\,\001, use=vt220+keypad,
+ tbc=\E[3g, tsl=\E[>\,\001, use=vt220+cvis,
+ use=vt220+keypad,
#
# This terminal description uses the non-hidden attribute mode
# (with magic cookie).
#
-wy75-mc|wyse75-mc|wyse 75 with magic cookies,
+wy75-mc|wyse75-mc|Wyse 75 with magic cookies,
msgr@,
ma@, xmc#1,
blink=\E[2p, dim=\E[1p, invis=\E[4p, is3=\E[m\E[p,
@@ -11903,13 +12534,13 @@ wy75-mc|wyse75-mc|wyse 75 with magic cookies,
%t\016%e\017%;,
sgr0=\E[0p\017, smacs=\E[0p\016, smso=\E[17p, smul=\E[8p,
use=wy75,
-wy75-vb|wyse75-vb|wyse 75 with visible bell,
+wy75-vb|wyse75-vb|Wyse 75 with visible bell,
pb@,
bel@, use=wy75,
-wy75-w|wyse75-w|wyse 75 in 132 column mode,
+wy75-w|wyse75-w|Wyse 75 in 132 column mode,
cols#132, wsl#130,
rs2=\E[35h\E[?3h$<80>, use=wy75,
-wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns,
+wy75-wvb|wyse75-wvb|Wyse 75 with visible bell 132 columns,
pb@,
bel@, use=wy75-w,
#
@@ -11925,52 +12556,51 @@ wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns,
# <dch> and <ich> work best when XON/XOFF is set. <ich> and
# <dch> leave trash on the screen when used without XON/XOFF.
#
-wy85|wyse85|wyse 85,
+wy85|wyse85|Wyse 85,
am, hs, mc5i, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A,
- dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m,
- dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l,
- ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K,
- enacs=\E)0, flash=\E[30h\E\,$<300/>\E[30l,
- fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH,
- ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>,
- ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
+ clear=\E[H\E[J$<110>, cr=\r, csr=\E[%i%p1%d;%p2%dr,
+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH$<1>,
+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP$<3*>,
+ dch1=\E[P$<3>, dim=\E[2m, dl=\E[%p1%dM$<3*>,
+ dl1=\E[M$<3>, dsl=\E[40l, ech=\E[%p1%dX, ed=\E[J$<110>,
+ el=\E[K$<1>, el1=\E[1K, enacs=\E)0,
+ flash=\E[30h\E\,$<300/>\E[30l, fsl=\E[1;24r\E8,
+ home=\E[H, ht=\011$<1>, hts=\EH, ich=\E[%p1%d@$<4*>,
+ il=\E[%p1%dL$<5*>, il1=\E[L$<5>, ind=\n$<3>, invis=\E[8m,
+ ip=$<3>, is1=\E[62;1"p\E[?5W,
is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>,
is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
- kf19=\E[33~, kf20=\E[34~, kf6=\E[17~, kf7=\E[18~,
- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~,
- khome=\E[26~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
- kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i,
- mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>,
- rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m,
- rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>,
- rs3=\E[?5l, sc=\E7,
+ kcuf1=\E[C, kcuu1=\E[A, kf10=\E[21~, kf11=\E[23~,
+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
+ kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
+ kf9=\E[20~, khlp=\E[28~, khome=\E[26~, lf1=PF1, lf2=PF2,
+ lf3=PF3, lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8,
+ rev=\E[7m, ri=\EM$<3>, rmacs=^O, rmam=\E[?7l, rmir=\E[4l,
+ rmkx=\E>, rmso=\E[m, rmul=\E[m, rs1=\E[13l\E[3l\E!p,
+ rs2=\E[35h\E[?3l$<70>, rs3=\E[?5l, sc=\E7,
sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?
%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- tsl=\E[40h\E7\E[25;%i%p1%dH, use=vt220+keypad,
+ tsl=\E[40h\E7\E[25;%i%p1%dH, use=vt220+vtedit,
+ use=vt220+cvis, use=vt220+keypad,
#
# Wyse 85 with visual bell.
-wy85-vb|wyse85-vb|wyse 85 with visible bell,
+wy85-vb|wyse85-vb|Wyse 85 with visible bell,
bel@, flash=\E[30h\E\,$<300/>\E[30l, use=wy85,
#
# Wyse 85 in 132-column mode.
-wy85-w|wyse85-w|wyse 85 in 132-column mode,
+wy85-w|wyse85-w|Wyse 85 in 132-column mode,
cols#132, wsl#132,
rs2=\E[35h$<70/>\E[?3h, use=wy85,
#
# Wyse 85 in 132-column mode with visual bell.
-wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns,
+wy85-wvb|wyse85-wvb|Wyse 85 with visible bell 132-columns,
bel@, use=wy85-w,
# From: Kevin Turner <kevint@aracnet.com>, 12 Jul 1998
@@ -11983,22 +12613,22 @@ wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns,
# Technical" isn't responding. So there's the question of whether the wy85
# terminfo should reflect the manufacturer's intended behaviour of the terminal
# or the actual."
-wy85-8bit|wyse85-8bit|wyse 85 in 8-bit mode,
+wy85-8bit|wyse85-8bit|Wyse 85 in 8-bit mode,
am, hs, mc5i, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A,
- dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m,
- dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l,
- ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K,
- enacs=\E)0, flash=\E[30h\E\,$<300/>\E[30l,
- fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH,
- ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>,
- ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
+ clear=\E[H\E[J$<110>, cr=\r, csr=\E[%i%p1%d;%p2%dr,
+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH$<1>,
+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP$<3*>,
+ dch1=\E[P$<3>, dim=\E[2m, dl=\E[%p1%dM$<3*>,
+ dl1=\E[M$<3>, dsl=\E[40l, ech=\E[%p1%dX, ed=\E[J$<110>,
+ el=\E[K$<1>, el1=\E[1K, enacs=\E)0,
+ flash=\E[30h\E\,$<300/>\E[30l, fsl=\E[1;24r\E8,
+ home=\E[H, ht=\011$<1>, hts=\EH, ich=\E[%p1%d@$<4*>,
+ il=\E[%p1%dL$<5*>, il1=\E[L$<5>, ind=\n$<3>, invis=\E[8m,
+ ip=$<3>, is1=\E[62;1"p\E[?5W,
is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>,
is3=\E>\E(B\E)0\017\E[m, ka1=\EOw, ka3=\EOy, kb2=\EOu,
kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\233D, kcud1=\233B,
@@ -12018,7 +12648,7 @@ wy85-8bit|wyse85-8bit|wyse 85 in 8-bit mode,
%p6%t;1%;%?%p7%t;8%;+m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- tsl=\E[40h\E7\E[25;%i%p1%dH,
+ tsl=\E[40h\E7\E[25;%i%p1%dH, use=vt220+cvis,
#
# Wyse 185 emulating a vt320 7 bit mode.
#
@@ -12030,7 +12660,7 @@ wy85-8bit|wyse85-8bit|wyse 85 in 8-bit mode,
# The Compose Character key can be used as a meta key if changed
# by set-up.
#
-wy185|wyse185|wyse 185,
+wy185|wyse185|Wyse 185,
am, hs, km, mc5i, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -12049,13 +12679,12 @@ wy185|wyse185|wyse 185,
ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W,
is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h,
is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP,
- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
- kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR,
- kf4=\EOS, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, kich1=\E[2~,
- knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf10=\E[21~,
+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
+ kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS,
+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ khlp=\E[28~, khome=\E[26~, lf1=PF1, lf2=PF2, lf3=PF3,
lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m,
ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l,
rmkx=\E>, rmso=\E[27m, rmul=\E[24m,
@@ -12066,26 +12695,26 @@ wy185|wyse185|wyse 185,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q,
smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m,
tbc=\E[3g, tsl=\E7\E[99;%i%p1%dH, vpa=\E[%i%p1%dd,
- use=vt220+keypad,
+ use=vt220+vtedit, use=vt220+keypad,
#
# Wyse 185 with 24 data lines and top status (terminal status)
-wy185-24|wyse185-24|wyse 185 with 24 data lines,
+wy185-24|wyse185-24|Wyse 185 with 24 data lines,
hs@,
dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@,
use=wy185,
#
# Wyse 185 with visual bell.
-wy185-vb|wyse185-vb|wyse 185+flash,
+wy185-vb|wyse185-vb|Wyse 185+flash,
bel@, use=wy185,
#
# Wyse 185 in 132-column mode.
-wy185-w|wyse185-w|wyse 185 in 132-column mode,
+wy185-w|wyse185-w|Wyse 185 in 132-column mode,
cols#132, wsl#132,
dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>,
ip=$<7>, rs2=\E[35h\E[?3h, use=wy185,
#
# Wyse 185 in 132-column mode with visual bell.
-wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols,
+wy185-wvb|wyse185-wvb|Wyse 185+flash+132 cols,
bel@, use=wy185-w,
# wy325 terminfo entries
@@ -12117,7 +12746,7 @@ wy325|wyse325|Wyse epc,
pfx=\EZ1%p1%{63}%+%c%p2%s\177,
pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>,
rmacs=\EcD, rmam=\Ed., rmcup=\Ew0, rmir=\Er, rmln=\EA11,
- rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>,
+ rs1=\E~!\E~4$<30>, rs2=\EeF\E`:$<70>,
rs3=\EwG\Ee($<100>,
sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}
%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t
@@ -12129,67 +12758,67 @@ wy325|wyse325|Wyse epc,
#
# lines 24 columns 80 vb
#
-wy325-vb|wyse325-vb|wyse-325 with visual bell,
+wy325-vb|wyse325-vb|Wyse-325 with visual bell,
bel@, use=wy325,
#
# lines 24 columns 132
#
-wy325-w|wyse325-w|wy325w-24|wyse-325 in wide mode,
+wy325-w|wyse325-w|wy325w-24|Wyse-325 in wide mode,
cols#132, lw#7, nlab#16, wsl#97,
cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>,
rs2=\E`;$<70>, use=wy325,
#
# lines 25 columns 80
#
-wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines,
+wy325-25|wyse325-25|wy325-80|wyse-325|Wyse-325 25 lines,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<100>, use=wy325,
#
# lines 25 columns 132
#
-wy325-25w|wyse325-25w|wy325 132 columns,
+wy325-25w|wyse325-25w|Wyse-325 132 columns,
lh@, lines#25, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<100>, use=wy325-w,
#
# lines 25 columns 132 vb
#
-wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video,
+wy325-w-vb|wy325-wvb|wyse325-wvb|Wyse-325 wide mode reverse video,
bel@, use=wy325-w,
#
# lines 42 columns 80
#
-wy325-42|wyse325-42|wyse-325 42 lines,
+wy325-42|wyse325-42|Wyse-325 42 lines,
lh@, lines#42, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<100>, use=wy325,
#
# lines 42 columns 132
#
-wy325-42w|wyse325-42w|wyse-325 42 lines wide mode,
+wy325-42w|wyse325-42w|Wyse-325 42 lines wide mode,
lh@, lines#42, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<100>, use=wy325-w,
#
# lines 42 columns 132 vb
#
-wy325-42w-vb|wy325-42wvb|wyse-325 42 lines wide mode visual bell,
+wy325-42w-vb|wy325-42wvb|Wyse-325 42 lines wide mode visual bell,
bel@, use=wy325-w,
#
# lines 43 columns 80
#
-wy325-43|wyse325-43|wyse-325 43 lines,
+wy325-43|wyse325-43|Wyse-325 43 lines,
lh@, lines#43, lw@, nlab@,
pln@, use=wy325,
#
# lines 43 columns 132
#
-wy325-43w|wyse325-43w|wyse-325 43 lines wide mode,
+wy325-43w|wyse325-43w|Wyse-325 43 lines wide mode,
lh@, lines#43, lw@, nlab@,
pln@, rs3=\EwG\Ee)$<100>, use=wy325-w,
#
# lines 43 columns 132 vb
#
-wy325-43w-vb|wy325-43wvb|wyse-325 43 lines wide mode visual bell,
+wy325-43w-vb|wy325-43wvb|Wyse-325 43 lines wide mode visual bell,
bel@, use=wy325-w,
# Wyse 370 -- 24 line screen with status line.
@@ -12210,7 +12839,7 @@ wy325-43w-vb|wy325-43wvb|wyse-325 43 lines wide mode visual bell,
# <u5> -> exit Tek 4207 mode (goto native ANSI mode)
#
# Bug: The <op> capability resets attributes.
-wy370-nk|wyse 370 without function keys,
+wy370-nk|Wyse 370 without function keys,
am, ccc, hs, mc5i, mir, msgr, xenl, xon,
colors#64, cols#80, it#8, lines#24, ncv#48, pairs#64, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -12267,13 +12896,13 @@ wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard,
#
wy370-105k|Wyse 370 with 105 key keyboard,
kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
- kdch1=\E[3~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
- kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
- khlp=\E[28~, khome=\E[26~, kich1=\E[2~, knp=\E[6~,
- kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4,
- use=wy370-nk, use=vt220+keypad,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
+ kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, kf6=\E[17~,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
+ khlp=\E[28~, khome=\E[26~, lf1=PF1, lf2=PF2, lf3=PF3,
+ lf4=PF4, use=vt220+vtedit, use=wy370-nk,
+ use=vt220+keypad,
#
# Function key set for the PC compatible keyboard
#
@@ -12373,7 +13002,7 @@ wy370-tek|Wyse 370 Tektronix 4010/4014 emulator,
# keypad in Dec application mode which doesn't seem to work
# with SCO applications.
#
-wy520|wyse520|wyse 520,
+wy520|wyse520|Wyse 520,
am, hs, km, mc5i, mir, xenl, xon,
cols#80, it#8, lines#24, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -12390,16 +13019,15 @@ wy520|wyse520|wyse 520,
il1=\E[L$<3>, ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W,
is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h,
is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, ked=\E[1~,
- kel=\E[4~, kent=\EOM, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
- kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
- kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, khome=\E[26~,
- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1,
- lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
- rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, rmam=\E[?7l,
- rmcup=\E[ R, rmir=\E[4l, rmso=\E[m, rmul=\E[24m,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, ked=\E[1~, kel=\E[4~,
+ kent=\EOM, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ khlp=\E[28~, khome=\E[26~, lf1=PF1, lf2=PF2, lf3=PF3,
+ lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m,
+ ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l,
+ rmso=\E[m, rmul=\E[24m,
rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l,
rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7,
sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?
@@ -12407,26 +13035,26 @@ wy520|wyse520|wyse 520,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h,
smcup=\E[ Q\E[?67;8h, smir=\E[4h, smso=\E[7m, smul=\E[4m,
tbc=\E[3g, tsl=\E[2$~\E[1$}\E[%i%p1%d`,
- vpa=\E[%i%p1%dd, use=vt220+keypad,
+ vpa=\E[%i%p1%dd, use=vt220+vtedit, use=vt220+keypad,
#
# Wyse 520 with 24 data lines and status (terminal status)
-wy520-24|wyse520-24|wyse 520 with 24 data lines,
+wy520-24|wyse520-24|Wyse 520 with 24 data lines,
hs@,
dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@,
use=wy520,
#
# Wyse 520 with visual bell.
-wy520-vb|wyse520-vb|wyse 520 with visible bell,
+wy520-vb|wyse520-vb|Wyse 520 with visible bell,
flash=\E[30h\E\,$<100/>\E[30l, use=wy520,
#
# Wyse 520 in 132-column mode.
-wy520-w|wyse520-w|wyse 520 in 132-column mode,
+wy520-w|wyse520-w|Wyse 520 in 132-column mode,
cols#132, wsl#132,
dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>,
ip=$<7>, rs2=\E[35h\E[?3h, use=wy520,
#
# Wyse 520 in 132-column mode with visual bell.
-wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns,
+wy520-wvb|wyse520-wvb|Wyse 520 with visible bell 132-columns,
flash=\E[30h\E\,$<100/>\E[30l, use=wy520-w,
#
#
@@ -12439,55 +13067,55 @@ wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns,
# - Delete : delete a character (have to change interrupt character
# to CTRL-C: stty intr '^c') for it to work since the
# Delete key sends 7FH.
-wy520-epc|wyse520-epc|wyse 520 with EPC keyboard,
+wy520-epc|wyse520-epc|Wyse 520 with EPC keyboard,
kdch1=^?, kel=\E[4~, kend=\E[4~, kf0=\E[21~, kf1=\E[11~,
kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, khome=\E[H,
use=wy520,
#
# Wyse 520 with 24 data lines and status (terminal status)
# with EPC keyboard.
-wy520-epc-24|wyse520-pc-24|wyse 520 with 24 data lines and EPC keyboard,
+wy520-epc-24|wyse520-pc-24|Wyse 520 with 24 data lines and EPC keyboard,
hs@,
dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@,
use=wy520-epc,
#
# Wyse 520 with visual bell.
-wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard,
+wy520-epc-vb|wyse520-pc-vb|Wyse 520 with visible bell and EPC keyboard,
flash=\E[30h\E\,$<100/>\E[30l, use=wy520-epc,
#
# Wyse 520 in 132-column mode.
-wy520-epc-w|wyse520-epc-w|wyse 520 in 132-column mode with EPC keyboard,
+wy520-epc-w|wyse520-epc-w|Wyse 520 in 132-column mode with EPC keyboard,
cols#132, wsl#132,
dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>,
ip=$<7>, rs2=\E[35h\E[?3h, use=wy520-epc,
#
# Wyse 520 in 132-column mode with visual bell.
-wy520-epc-wvb|wyse520-p-wvb|wyse 520 with visible bell 132-columns and EPC keyboard,
+wy520-epc-wvb|wyse520-p-wvb|Wyse 520 with visible bell 132-columns and EPC keyboard,
flash=\E[30h\E\,$<100/>\E[30l, use=wy520-epc-w,
#
# Wyse 520 in 80-column, 36 lines
-wy520-36|wyse520-36|wyse 520 with 36 data lines,
+wy520-36|wyse520-36|Wyse 520 with 36 data lines,
hs@,
lines#36,
dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@,
use=wy520,
#
# Wyse 520 in 80-column, 48 lines
-wy520-48|wyse520-48|wyse 520 with 48 data lines,
+wy520-48|wyse520-48|Wyse 520 with 48 data lines,
hs@,
lines#48,
dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@,
use=wy520,
#
# Wyse 520 in 132-column, 36 lines
-wy520-36w|wyse520-36w|wyse 520 with 132 columns and 36 data lines,
+wy520-36w|wyse520-36w|Wyse 520 with 132 columns and 36 data lines,
cols#132, wsl#132,
rs2=\E[?3h,
rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|,
use=wy520-36,
#
# Wyse 520 in 132-column, 48 lines
-wy520-48w|wyse520-48w|wyse 520 with 48 data lines,
+wy520-48w|wyse520-48w|Wyse 520 with 48 data lines,
cols#132, wsl#132,
rs2=\E[?3h,
rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|,
@@ -12495,28 +13123,28 @@ wy520-48w|wyse520-48w|wyse 520 with 48 data lines,
#
#
# Wyse 520 in 80-column, 36 lines with EPC keyboard
-wy520-36pc|wyse520-36pc|wyse 520 with 36 data lines and EPC keyboard,
+wy520-36pc|wyse520-36pc|Wyse 520 with 36 data lines and EPC keyboard,
hs@,
lines#36,
dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@,
use=wy520-epc,
#
# Wyse 520 in 80-column, 48 lines with EPC keyboard
-wy520-48pc|wyse520-48pc|wyse 520 with 48 data lines and EPC keyboard,
+wy520-48pc|wyse520-48pc|Wyse 520 with 48 data lines and EPC keyboard,
hs@,
lines#48,
dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@,
use=wy520-epc,
#
# Wyse 520 in 132-column, 36 lines with EPC keyboard
-wy520-36wpc|wyse520-36wpc|wyse 520 with 36 data lines and EPC keyboard,
+wy520-36wpc|wyse520-36wpc|Wyse 520 with 36 data lines and EPC keyboard,
cols#132, wsl#132,
rs2=\E[?3h,
rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|,
use=wy520-36pc,
#
# Wyse 520 in 132-column, 48 lines with EPC keyboard
-wy520-48wpc|wyse520-48wpc|wyse 520 with 48 data lines and EPC keyboard,
+wy520-48wpc|wyse520-48wpc|Wyse 520 with 48 data lines and EPC keyboard,
cols#132, wsl#132,
rs2=\E[?3h,
rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|,
@@ -12531,9 +13159,9 @@ wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n, cuf1=^F,
cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EW,
dl1=\El, ed=\Ek, el=\EK, home=^A, ht=^I, il1=\EM, ind=\n,
- is2=\E`\:\E`9\017\Er, kbs=^H, kcub1=^U, kcud1=\n, kcuf1=^F,
+ is2=\E`:\E`9\017\Er, kbs=^H, kcub1=^U, kcud1=\n, kcuf1=^F,
kcuu1=^Z, khome=^A, ll=^A^Z, nel=\r\n, rmir=\Er, rmso=^O,
- rmul=^O, rs1=\E`\:\E`9\017\Er, sgr0=^O, smir=\Eq, smso=^N,
+ rmul=^O, rs1=\E`:\E`9\017\Er, sgr0=^O, smir=\Eq, smso=^N,
smul=^N,
wy75ap|wyse75ap|wy-75ap|wyse-75ap|Wyse WY-75 Applications and Cursor keypad,
@@ -12549,7 +13177,7 @@ wy100q|Wyse 100 for Quotron,
cbt=\EI, clear=^Z, cub1=^H, cud1=\n, cuf1=^L,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, invis@,
- is2=\E`\:\0\EC\EDF\E0\E'\E(\EA21, kcub1=^H, kcud1=\n,
+ is2=\E`:\0\EC\EDF\E0\E'\E(\EA21, kcub1=^H, kcud1=\n,
kcuf1=^L, kcuu1=^K, ri=\Ej, rmir=\Er, smir=\Eq, use=adm+sgr,
#### Kermit terminal emulations
@@ -12644,9 +13272,8 @@ vt320-k3|MS-Kermit 3.00's vt320 emulation,
am, eslok, hs, km, mir, msgr, xenl,
cols#80, it#8, lines#49, pb#9600, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cmdch=\E, cnorm=\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cmdch=\E,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
@@ -12666,16 +13293,16 @@ vt320-k3|MS-Kermit 3.00's vt320 emulation,
\E[4i\E[?4i\E[m\E[r\E[2$~,
sc=\E7, sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- tsl=\E[1$}\r\E[K, vpa=\E[%i%p1%dd,
+ tsl=\E[1$}\r\E[K, vpa=\E[%i%p1%dd, use=vt220+cvis,
+
# From: Joseph Gil <yogi@cs.ubc.ca> 13 Dec 1991
# ACS capabilities from Philippe De Muyter <phdm@info.ucl.ac.be> 30 May 1996
# (I removed a bogus boolean :mo: and added <msgr>, <smam>, <rmam> -- esr)
-vt320-k311|dec vt320 series as defined by kermit 3.11,
+vt320-k311|DEC vt320 series as defined by kermit 3.11,
am, eslok, hs, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[;H\E[2J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -12694,6 +13321,7 @@ vt320-k311|dec vt320 series as defined by kermit 3.11,
rmul=\E[24m, rs1=\E[?3l, sc=\E7, sgr0=\E[m, smacs=^N,
smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m,
smul=\E[4m, tbc=\E[3g, tsl=\E[2$~\E[1$}\E[1;%dH,
+ use=vt220+cvis,
######## NON-ANSI TERMINAL EMULATIONS
#
@@ -12787,9 +13415,8 @@ avatar|avatar1|avatar terminal emulator level 1,
rbcomm|IBM PC with RBcomm and EMACS keybindings,
am, bw, mir, msgr, xenl,
cols#80, it#8, lines#25,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=^L, cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr,
- cub1=^H, cud1=^C, cuf1=^B,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=^L, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^C, cuf1=^B,
cup=\037%p2%{32}%+%c%p1%{32}%+%c, cuu1=^^, dch1=^W,
dl=\E[%p1%dM, dl1=^Z, ech=\E[%p1%dX, ed=^F5, el=^P^P, ht=^I,
il=\E[%p1%dL, il1=^K, ind=\ED, invis=\E[8m,
@@ -12799,6 +13426,7 @@ rbcomm|IBM PC with RBcomm and EMACS keybindings,
rmir=^], rmkx=\E>, rmso=^U, rmul=^U,
rs1=\017\E(B\E)0\025\E[?3l\E[>8g, sc=\E7, sgr0=\E[m,
smcup=, smdc=, smir=^\, smkx=\E=, smso=^R, smul=^T,
+ use=vt220+cvis,
rbcomm-nam|IBM PC with RBcomm without autowrap,
am@,
bel=^G, cr=\r, cud1=\n, ht=^I, ind=\n,
@@ -12837,7 +13465,7 @@ rbcomm-w|IBM PC with RBcomm in 132 column mode,
# NOTE: calling 'beep' turns on the backlight (bell)
# NOTE: calling 'flash' turns it on and back off (visual bell)
#
-MtxOrb|Generic Matrix Orbital LCD display,
+MtxOrb|generic Matrix Orbital LCD display,
bel=\376B\001, clear=\376X\376C\376R\376K\376T,
cnorm=\376K\376T, cub1=\376L, cuf1=\376M,
flash=\376B\001$<200>\376F, home=\376H,
@@ -13131,7 +13759,7 @@ att4418-w|att5418-w|AT&T 5418 132 cols,
cols#132,
is1=\E[?3h, use=att5418,
-att4420|tty4420|teletype 4420,
+att4420|tty4420|Teletype 4420,
OTbs, da, db, eo, msgr, ul, xon,
cols#80, lines#24, lm#72,
bel=^G, clear=\EH\EJ, cr=\EG, cub1=\ED, cud1=\EB, cuf1=\EC,
@@ -13158,7 +13786,7 @@ att4420|tty4420|teletype 4420,
# The terminal has either bold or blink, depending on options
#
# (att4424: commented out <smcup>=\E[1m, we don't need bright locked on -- esr)
-att4424|tty4424|teletype 4424,
+att4424|tty4424|Teletype 4424,
OTbs, am, xon,
cols#80, lines#24,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -13178,7 +13806,7 @@ att4424|tty4424|teletype 4424,
sgr0=\EX\E~\EZ\E4\E(B, smacs=\E(0, smso=\E}, smul=\E\\,
tbc=\EF,
-att4424-1|tty4424-1|teletype 4424 in display function group I,
+att4424-1|tty4424-1|Teletype 4424 in display function group I,
kclr@, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome@,
use=att4424,
@@ -13188,7 +13816,7 @@ att4424-1|tty4424-1|teletype 4424 in display function group I,
# The following two lines are the comment originally attached to the entry:
# This entry appears to avoid the top line - I have no idea why.
# From: jwb Wed Mar 31 13:25:09 1982 remote from ihuxp
-att4424m|tty4424m|teletype 4424M,
+att4424m|tty4424m|Teletype 4424M,
am, da, db, mir,
cols#80, it#8, lines#23,
bel=^G, clear=\E[2;H\E[J, cr=\r, cub1=^H, cud1=\n, cuf1=\E[C,
@@ -13248,13 +13876,13 @@ att5425|tty5425|att4425|AT&T 4425/5425,
att5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 80 columns no labels,
smkx=\E[21;1j\E[25;4j\Eent, use=att4425,
-att5425-w|att4425-w|tty5425-w|teletype 4425/5425 in 132 column mode,
+att5425-w|att4425-w|tty5425-w|Teletype 4425/5425 in 132 column mode,
cols#132, lm#54, wsl#97,
is1=\E[?3h$<100>, use=tty5425,
# (att4426: his had bogus capabilities: :ri=\EM:, :ri=\E[1U:.
# I also added <rmam>/<smam> -- esr)
-att4426|tty4426|teletype 4426S,
+att4426|tty4426|Teletype 4426S,
am, da, db, xon,
cols#80, lines#24, lm#48,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -13335,7 +13963,7 @@ att510d|bct510d|AT&T 510D Personal Terminal,
kf12=\EOf, kf13=\EOg, kf14=\EOh, kf15=\EOi, kf16=\EOj,
kf2=\EOV, kf3=\EOu, kf4=\ENj, kf5=\ENe, kf6=\ENf, kf7=\ENh,
kf8=\E[H, kf9=\EOc, kind=\E[S, kri=\E[T, ll=\E#2, mc0=\E[0i,
- mc4=\E[?8i, mc5=\E[?4i, mgc=\E\:, nel=\EE,
+ mc4=\E[?8i, mc5=\E[?4i, mgc=\E:, nel=\EE,
pln=\E[%p1%dp%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM,
rmacs=^O, rmir=\E[4l, rmkx=\E[19;0|, rmln=\E<, rmso=\E[m,
rmul=\E[m, rmxon=\E[29;1|, rs2=\E[5;0|, sc=\E7,
@@ -13466,7 +14094,7 @@ att5620-1|tty5620-1|dmd1|Teletype 5620 with old ROMs,
# <msgr> is from an otherwise inferior BRL for this terminal. That entry
# also has <ll>=\E[70H commented out and marked unsafe.
# For more, see the 5620 FAQ maintained by David Breneman <daveb@dgtl.com>.
-att5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns,
+att5620|dmd|tty5620|ttydmd|5620|AT&T 5620 terminal 88 columns,
OTbs, am, msgr, npc, xon,
cols#88, it#8, lines#70,
bel=^G, bold=\E[2m, clear=\E[H\E[J, cr=\r, cub1=^H,
@@ -13479,12 +14107,12 @@ att5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns,
pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, rev=\E[7m, ri=\E[T,
rmso=\E[0m, rmul=\E[0m, rs1=\Ec, sc=\E7, sgr0=\E[0m,
smso=\E[7m, smul=\E[4m, use=ecma+index,
-att5620-24|tty5620-24|dmd-24|teletype dmd 5620 in a 24x80 layer,
+att5620-24|tty5620-24|dmd-24|Teletype dmd 5620 in a 24x80 layer,
lines#24, use=att5620,
-att5620-34|tty5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer,
+att5620-34|tty5620-34|dmd-34|Teletype dmd 5620 in a 34x80 layer,
lines#34, use=att5620,
# 5620 layer running the "S" system's downloaded graphics handler:
-att5620-s|tty5620-s|layer|vitty|5620 S layer,
+att5620-s|tty5620-s|layer|vitty|AT&T 5620 S layer,
OTbs, OTpt, am,
cols#80, it#8, lines#72,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n,
@@ -13528,7 +14156,7 @@ att605|AT&T 605 80 column 102key keyboard,
rs2=\Ec\E[?3l, sc=\E7, sgr0=\E[m\017, smacs=\E)0\016,
smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m,
tsl=\E7\E[25;%i%p1%dx,
-att605-pc|ATT 605 in pc term mode,
+att605-pc|AT&T 605 in pc term mode,
acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x
\263,
cbt=\E[Z, cub1=\E[D, cud1=\E[B, cuf1=\E[C, cuu1=\E[A,
@@ -13550,9 +14178,8 @@ att610|AT&T 610; 80 column; 98key keyboard,
am, eslok, hs, mir, msgr, xenl, xon,
cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
@@ -13576,7 +14203,7 @@ att610|AT&T 610; 80 column; 98key keyboard,
%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
smln=\E[p, smso=\E[7m, smul=\E[4m, tsl=\E7\E[25;%i%p1%dx,
- use=ecma+index,
+ use=ecma+index, use=att610+cvis0,
att610-w|AT&T 610; 132 column; 98key keyboard,
cols#132, wsl#132,
is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h,
@@ -13626,9 +14253,8 @@ att620|AT&T 620; 80 column; 98key keyboard,
am, eslok, hs, mir, msgr, xenl, xon,
cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
@@ -13659,6 +14285,7 @@ att620|AT&T 620; 80 column; 98key keyboard,
sgr0=\E[m\E(B\017, smacs=\E)0\016, smam=\E[?7h,
smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m,
tsl=\E7\E[25;%i%p1%dx, use=ecma+index,
+ use=att610+cvis0,
att620-w|AT&T 620; 132 column; 98key keyboard,
cols#132, wsl#132,
is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h,
@@ -13802,9 +14429,8 @@ att700|AT&T 700 24x80 column display w/102key keyboard,
am, eslok, hs, mir, msgr, xenl, xon,
cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
@@ -13838,7 +14464,7 @@ att700|AT&T 700 24x80 column display w/102key keyboard,
%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smir=\E[4h, smln=\E[p, smso=\E[7m,
smul=\E[4m, smxon=\E[53;0|, tbc=\E[3g,
- tsl=\E7\E[99;%i%p1%dx, use=ansi+rep,
+ tsl=\E7\E[99;%i%p1%dx, use=ansi+rep, use=att610+cvis0,
# This entry was modified 3/13/90 by JWE.
# fixes include additions of <enacs>, correcting <rep>, and modification
@@ -13857,9 +14483,8 @@ att730|AT&T 730 windowing terminal,
am, da, db, eslok, hs, mir, msgr, npc, xenl, xon,
cols#80, it#8, lh#2, lines#60, lm#0, lw#8, nlab#24, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
@@ -13894,6 +14519,7 @@ att730|AT&T 730 windowing terminal,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
smln=\E[?13l, smso=\E[7m, smul=\E[4m, smxon=\E[?21h,
swidm=\E#6, tsl=\E7\E[;%i%p1%dx, use=ansi+rep,
+ use=att610+cvis0,
att730-41|730MTG-41|AT&T 730-41 windowing terminal Version,
lines#41, use=att730,
att730-24|730MTG-24|AT&T 730-24 windowing terminal Version,
@@ -14113,7 +14739,7 @@ tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines,
# From: <cbosg!ucbvax!SRC:george> Fri Sep 11 22:38:32 1981
# (ampex80: some capabilities merged in from SCO's entry -- esr)
-ampex80|a80|d80|dialogue|dialogue80|ampex dialogue 80,
+ampex80|a80|d80|dialogue|dialogue80|Ampex dialogue 80,
OTbs, am, bw, ul,
cols#80, it#8, lines#24,
bel=^G, cbt=\EI, clear=\E*$<75>, cr=\r, cub1=^H, cud1=\n,
@@ -14122,7 +14748,7 @@ ampex80|a80|d80|dialogue|dialogue80|ampex dialogue 80,
ich1=\EQ, il1=\EE$<5*>, ind=\n, is2=\EA, rmso=\Ek, rmul=\Em,
smso=\Ej, smul=\El, tbc=\E3,
# This entry was from somebody anonymous, Tue Aug 9 20:11:37 1983, who wrote:
-ampex175|ampex d175,
+ampex175|Ampex d175,
am,
cols#80, lines#24,
bel=^G, clear=\E+, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -14137,11 +14763,11 @@ ampex175|ampex d175,
# mode), this key can be used as the erase key; I find I like this. Because
# some people and some systems may not, there is another termcap ("ampex175")
# that suppresses this little eccentricity by omitting the relevant capability.
-ampex175-b|ampex d175 using left arrow for erase,
+ampex175-b|Ampex d175 using left arrow for erase,
kbs=^_, use=ampex175,
# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu>
# (ampex210: removed obsolete ":kn#10:" -- esr)
-ampex210|a210|ampex a210,
+ampex210|a210|Ampex a210,
OTbs, am, hs, xenl,
cols#80, it#8, lines#24, xmc#1,
cbt=\EI, clear=\E*, cub1=^H, cuf1=^L,
@@ -14157,7 +14783,7 @@ ampex210|a210|ampex a210,
# (ampex219: I added <rmam>/<smam> based on the init string, added <cvvis>
# from ampex219w, added <cnorm>=\E[?3l, irresistibly suggested by <cvvis>,
# and moved the padding to be *after* the caps -- esr)
-ampex219|ampex-219|amp219|Ampex with Automargins,
+ampex219|ampex-219|amp219|Ampex with automargins,
hs, xenl,
cols#80, it#8, lines#24,
bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, cbt=\E[Z,
@@ -14322,7 +14948,7 @@ ampex232w|Ampex Model 232 / 132 columns,
# unused
#
-annarbor4080|aa4080|ann arbor 4080,
+annarbor4080|aa4080|Ann Arbor 4080,
OTbs, am,
cols#80, lines#40,
bel=^G, clear=\014$<2>, cr=\r, cub1=^H, cud1=\n, cuf1=^_,
@@ -14348,7 +14974,7 @@ aas1901|Ann Arbor K4080 w/S1901 mod,
# 3. Number of lines below (outside of) desired scroll region.
# 4. Total number of lines on the screen, the same as the first parameter.
# The generic Ann Arbor entry is the only one that uses this.
-aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly),
+aaa+unk|aaa-unk|Ann Arbor Ambassador (internal - don't use this directly),
OTbs, am, km, mc5i, mir, xon,
cols#80, it#8,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
@@ -14379,55 +15005,55 @@ aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly),
smm=\E[>52h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
vpa=\E[%p1%{1}%+%dd, use=ansi+rep,
-aaa+rv|ann arbor ambassador in reverse video,
+aaa+rv|Ann Arbor Ambassador in reverse video,
blink=\E[5;7m, bold=\E[1;7m, invis=\E[7;8m,
is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m,
rs1=\E[H\E[7m\E[J$<156>,
- sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p2%|%p3%!%t7;
- %;%?%p7%t8;%;m\016,
+ sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p2%|%p3%!%|%t7
+ ;%;%?%p7%t8;%;m\016,
sgr0=\E[7m\016, smso=\E[m, smul=\E[4;7m,
# Ambassador with the DEC option, for partial vt100 compatibility.
-aaa+dec|ann arbor ambassador in dec vt100 mode,
+aaa+dec|Ann Arbor Ambassador in DEC vt100 mode,
acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}},
- csr=\E[%i%p1%d;%p2%dr, enacs=\E(0, rmacs=^N,
+ csr=\E[%i%p1%d;%p2%dr, enacs=\E(B\E)0, rmacs=^O,
sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p3%|%!%t7;%;%?
- %p7%t8;%;m%?%p9%t\017%e\016%;,
- smacs=^O,
-aaa-18|ann arbor ambassador/18 lines,
+ %p7%t8;%;m%?%p9%t\016%e\017%;,
+ smacs=^N,
+aaa-18|Ann Arbor Ambassador/18 lines,
lines#18,
is2=\E7\E[60;0;0;18p\E8,
rmcup=\E[60;0;0;18p\E[60;1H\E[K, smcup=\E[18;0;0;18p,
use=aaa+unk,
-aaa-18-rv|ann arbor ambassador/18 lines+reverse video,
+aaa-18-rv|Ann Arbor Ambassador/18 lines+reverse video,
use=aaa+rv, use=aaa-18,
-aaa-20|ann arbor ambassador/20 lines,
+aaa-20|Ann Arbor Ambassador/20 lines,
lines#20,
is2=\E7\E[60;0;0;20p\E8,
rmcup=\E[60;0;0;20p\E[60;1H\E[K, smcup=\E[20;0;0;20p,
use=aaa+unk,
-aaa-22|ann arbor ambassador/22 lines,
+aaa-22|Ann Arbor Ambassador/22 lines,
lines#22,
is2=\E7\E[60;0;0;22p\E8,
rmcup=\E[60;0;0;22p\E[60;1H\E[K, smcup=\E[22;0;0;22p,
use=aaa+unk,
-aaa-24|ann arbor ambassador/24 lines,
+aaa-24|Ann Arbor Ambassador/24 lines,
lines#24,
is2=\E7\E[60;0;0;24p\E8,
rmcup=\E[60;0;0;24p\E[60;1H\E[K, smcup=\E[24;0;0;24p,
use=aaa+unk,
-aaa-24-rv|ann arbor ambassador/24 lines+reverse video,
+aaa-24-rv|Ann Arbor Ambassador/24 lines+reverse video,
use=aaa+rv, use=aaa-24,
-aaa-26|ann arbor ambassador/26 lines,
+aaa-26|Ann Arbor Ambassador/26 lines,
lines#26,
is2=\E7\E[60;0;0;26p\E8,
rmcup=\E[60;0;0;26p\E[26;1H\E[K,
smcup=\E[H\E[J$<156>\E[26;0;0;26p, use=aaa+unk,
-aaa-28|ann arbor ambassador/28 lines,
+aaa-28|Ann Arbor Ambassador/28 lines,
lines#28,
is2=\E7\E[60;0;0;28p\E8,
rmcup=\E[60;0;0;28p\E[28;1H\E[K,
smcup=\E[H\E[J$<156>\E[28;0;0;28p, use=aaa+unk,
-aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status,
+aaa-30-s|aaa-s|Ann Arbor Ambassador/30 lines w/status,
eslok, hs,
lines#29,
dsl=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K,
@@ -14435,76 +15061,76 @@ aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status,
rmcup=\E[60;1;0;30p\E[29;1H\E[K,
smcup=\E[H\E[J$<156>\E[30;1;0;30p\E[30;1H\E[K,
tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk,
-aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status+reverse video,
+aaa-30-s-rv|aaa-s-rv|Ann Arbor Ambassador/30 lines+status+reverse video,
use=aaa+rv, use=aaa-30-s,
-aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines+status+save context,
+aaa-s-ctxt|aaa-30-s-ctxt|Ann Arbor Ambassador/30 lines+status+save context,
rmcup=\E[60;1;0;30p\E[59;1H\E[K,
smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s,
-aaa-s-rv-ctxt|aaa-30-s-rv-ct|ann arbor ambassador/30 lines+status+save context+reverse video,
+aaa-s-rv-ctxt|aaa-30-s-rv-ct|Ann Arbor Ambassador/30 lines+status+save context+reverse video,
rmcup=\E[60;1;0;30p\E[59;1H\E[K,
smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s-rv,
-aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines,
+aaa|aaa-30|ambas|ambassador|Ann Arbor Ambassador/30 lines,
lines#30,
is2=\E7\E[60;0;0;30p\E8,
rmcup=\E[60;0;0;30p\E[30;1H\E[K,
smcup=\E[H\E[J$<156>\E[30;0;0;30p, use=aaa+unk,
-aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video,
+aaa-30-rv|aaa-rv|Ann Arbor Ambassador/30 lines in reverse video,
use=aaa+rv, use=aaa-30,
-aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context,
+aaa-30-ctxt|aaa-ctxt|Ann Arbor Ambassador/30 lines; saving context,
rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p,
use=aaa-30,
-aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines reverse video; saving context,
+aaa-30-rv-ctxt|aaa-rv-ctxt|Ann Arbor Ambassador/30 lines reverse video; saving context,
rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p,
use=aaa+rv, use=aaa-30,
-aaa-36|ann arbor ambassador/36 lines,
+aaa-36|Ann Arbor Ambassador/36 lines,
lines#36,
is2=\E7\E[60;0;0;36p\E8,
rmcup=\E[60;0;0;36p\E[36;1H\E[K,
smcup=\E[H\E[J$<156>\E[36;0;0;36p, use=aaa+unk,
-aaa-36-rv|ann arbor ambassador/36 lines+reverse video,
+aaa-36-rv|Ann Arbor Ambassador/36 lines+reverse video,
use=aaa+rv, use=aaa-36,
-aaa-40|ann arbor ambassador/40 lines,
+aaa-40|Ann Arbor Ambassador/40 lines,
lines#40,
is2=\E7\E[60;0;0;40p\E8,
rmcup=\E[60;0;0;40p\E[40;1H\E[K,
smcup=\E[H\E[J$<156>\E[40;0;0;40p, use=aaa+unk,
-aaa-40-rv|ann arbor ambassador/40 lines+reverse video,
+aaa-40-rv|Ann Arbor Ambassador/40 lines+reverse video,
use=aaa+rv, use=aaa-40,
-aaa-48|ann arbor ambassador/48 lines,
+aaa-48|Ann Arbor Ambassador/48 lines,
lines#48,
is2=\E7\E[60;0;0;48p\E8,
rmcup=\E[60;0;0;48p\E[48;1H\E[K,
smcup=\E[H\E[J$<156>\E[48;0;0;48p, use=aaa+unk,
-aaa-48-rv|ann arbor ambassador/48 lines+reverse video,
+aaa-48-rv|Ann Arbor Ambassador/48 lines+reverse video,
use=aaa+rv, use=aaa-48,
-aaa-60-s|ann arbor ambassador/59 lines+status,
+aaa-60-s|Ann Arbor Ambassador/59 lines+status,
eslok, hs,
lines#59,
dsl=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K,
fsl=\E[>51l, is2=\r\n\E[A\E7\E[60;1;0;60p\E8,
tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk,
-aaa-60-s-rv|ann arbor ambassador/59 lines+status+reverse video,
+aaa-60-s-rv|Ann Arbor Ambassador/59 lines+status+reverse video,
use=aaa+rv, use=aaa-60-s,
-aaa-60-dec-rv|ann arbor ambassador/dec mode+59 lines+status+rev video,
+aaa-60-dec-rv|Ann Arbor Ambassador/DEC mode+59 lines+status+rev video,
use=aaa+dec, use=aaa+rv, use=aaa-60-s,
-aaa-60|ann arbor ambassador/60 lines,
+aaa-60|Ann Arbor Ambassador/60 lines,
lines#60,
is2=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8,
use=aaa+unk,
-aaa-60-rv|ann arbor ambassador/60 lines+reverse video,
+aaa-60-rv|Ann Arbor Ambassador/60 lines+reverse video,
use=aaa+rv, use=aaa-60,
-aaa-db|ann arbor ambassador 30/destructive backspace,
+aaa-db|Ann Arbor Ambassador 30/destructive backspace,
OTbs@,
cub1=\E[D, is3=\E[1Q\E[m\E[>20l\E[>30h, use=aaa-30,
-guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols,
+guru|guru-33|guru+unk|Ann Arbor guru/33 lines 80 cols,
lines#33,
flash=\E[>59h$<100>\E[>59l,
is2=\E7\E[255;0;0;33;80;80p\E8\E[J, is3=\E[>59l,
rmcup=\E[255p\E[255;1H\E[K, smcup=\E[33p, use=aaa+unk,
guru+rv|guru changes for reverse video,
flash=\E[>59l$<100>\E[>59h, is3=\E[>59h,
-guru-rv|guru-33-rv|ann arbor guru/33 lines+reverse video,
+guru-rv|guru-33-rv|Ann Arbor guru/33 lines+reverse video,
use=guru+rv, use=guru-33,
guru+s|guru status line,
eslok, hs,
@@ -14513,19 +15139,19 @@ guru+s|guru status line,
tsl=\E[>51h\E[1;%p1%dH\E[2K,
guru-nctxt|guru with no saved context,
smcup=\E[H\E[J$<156>\E[33p\E[255;1H\E[K, use=guru,
-guru-s|guru-33-s|ann arbor guru/33 lines+status,
+guru-s|guru-33-s|Ann Arbor guru/33 lines+status,
lines#32,
is2=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J,
smcup=\E[33;1p\E[255;1H\E[K, use=guru+s, use=guru+unk,
-guru-24|ann arbor guru 24 lines,
+guru-24|Ann Arbor guru 24 lines,
cols#80, lines#24,
is2=\E7\E[255;0;0;24;80;80p\E8\E[J, smcup=\E[24p,
use=guru+unk,
-guru-44|ann arbor guru 44 lines,
+guru-44|Ann Arbor guru 44 lines,
cols#97, lines#44,
is2=\E7\E[255;0;0;44;97;100p\E8\E[J, smcup=\E[44p,
use=guru+unk,
-guru-44-s|ann arbor guru/44 lines+status,
+guru-44-s|Ann Arbor guru/44 lines+status,
lines#43,
is2=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J,
smcup=\E[44;1p\E[255;1H\E[K, use=guru+s, use=guru+unk,
@@ -14533,7 +15159,7 @@ guru-76|guru with 76 lines by 89 cols,
cols#89, lines#76,
is2=\E7\E[255;0;0;76;89;100p\E8\E[J, smcup=\E[76p,
use=guru+unk,
-guru-76-s|ann arbor guru/76 lines+status,
+guru-76-s|Ann Arbor guru/76 lines+status,
cols#89, lines#75,
is2=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J,
smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk,
@@ -14545,7 +15171,7 @@ guru-76-w|guru 76 lines by 178 cols,
cols#178, lines#76,
is2=\E7\E[255;0;0;76;178;178p\E8\E[J, smcup=\E[76p,
use=guru+unk,
-guru-76-w-s|ann arbor guru/76 lines+status+wide,
+guru-76-w-s|Ann Arbor guru/76 lines+status+wide,
cols#178, lines#75,
is2=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J,
smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk,
@@ -14553,7 +15179,7 @@ guru-76-wm|guru 76 lines by 178 cols with 255 cols memory,
cols#178, lines#76,
is2=\E7\E[255;0;0;76;178;255p\E8\E[J, smcup=\E[76p,
use=guru+unk,
-aaa-rv-unk|ann arbor unknown type,
+aaa-rv-unk|Ann Arbor unknown type,
lh#0, lw#0, nlab#0,
blink=\E[5;7m, bold=\E[1;7m, home=\E[H, invis=\E[7;8m,
is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m,
@@ -14624,7 +15250,7 @@ regent60|regent200|adds200|Adds Regent 60,
use=regent40+,
# From: <edward@onyx.berkeley.edu> Thu Jul 9 09:27:33 1981
# (viewpoint: added <kcuf1>, function key, and <dl1> capabilities -- esr)
-viewpoint|addsviewpoint|adds viewpoint,
+viewpoint|addsviewpoint|ADDS Viewpoint,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=^L, cnorm=\017\E0`, cr=\r, cub1=^H, cud1=\n,
@@ -14634,7 +15260,7 @@ viewpoint|addsviewpoint|adds viewpoint,
kf0=^B1, kf2=^B2, kf3=^B!, kf4=^B", kf5=^B#, khome=^A, ll=^A,
rmso=^O, rmul=^O, sgr0=^O, smso=^N, smul=^N,
# Some viewpoints have bad ROMs that foo up on ^O
-screwpoint|adds viewpoint with ^O bug,
+screwpoint|ADDS Viewpoint with ^O bug,
cvvis@, rmso@, rmul@, smso@, smul@, use=viewpoint,
# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92
@@ -14692,7 +15318,7 @@ screwpoint|adds viewpoint with ^O bug,
# Underlined Half Intensity
# Blinking c 0143
# Video suppress D 0104
-vp3a+|viewpoint3a+|adds viewpoint 3a+,
+vp3a+|viewpoint3a+|ADDS Viewpoint 3a+,
am, bw,
cols#80, it#8, lines#24,
blink=\E0B\E), civis=^W, clear=\E*$<80>, cnorm=^X, cr=\r,
@@ -14705,7 +15331,7 @@ vp3a+|viewpoint3a+|adds viewpoint 3a+,
%?%p2%t%{32}%|%;%?%p3%t%{16}%|%;%?%p4%t%{2}%|%;%?%p5%t
%{1}%|%;%c%?%p7%tD%;\E)%e\E(%;,
sgr0=\E(, smso=\E0Q\E), smul=\E0`\E),
-vp60|viewpoint60|addsvp60|adds viewpoint60,
+vp60|viewpoint60|addsvp60|ADDS Viewpoint60,
use=regent40,
#
# adds viewpoint 90 - from cornell
@@ -14718,7 +15344,7 @@ vp60|viewpoint60|addsvp60|adds viewpoint60,
# - <clear=\EG\Ek>: clears screen and visual attributes without affecting
# the status line
# Function key and label capabilities merged in from SCO.
-vp90|viewpoint90|adds viewpoint 90,
+vp90|viewpoint90|ADDS Viewpoint 90,
OTbs, bw, msgr, xhp,
cols#80, lines#24,
clear=\EG\Ek, cub1=^H, cud1=\n, cuf1=^F,
@@ -14727,13 +15353,13 @@ vp90|viewpoint90|adds viewpoint 90,
ich1=\EF \EF\025, ind=\n, kbs=^H, kcub1=^U, kcud1=\n,
kcuf1=^F, kcuu1=^Z, kf0=^B1\r, kf1=^B2\r, kf10=^B;\r,
kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r,
- kf7=^B8\r, kf8=^B9\r, kf9=\002\:\r, khome=^A, lf0=F1, lf1=F2,
+ kf7=^B8\r, kf8=^B9\r, kf9=^B:\r, khome=^A, lf0=F1, lf1=F2,
lf10=F11, lf2=F3, lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9,
lf9=F10, ll=^A, rmso=\ER\E0@\EV, rmul=\ER\E0@\EV,
sgr0=\ER\E0@\EV, smso=\ER\E0Q\EV, smul=\ER\E0`\EV,
# Note: if return acts weird on a980, check internal switch #2
# on the top chip on the CONTROL pc board.
-adds980|a980|adds consul 980,
+adds980|a980|ADDS Consul 980,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\014$<1>\013@, cr=\r, cub1=^H, cud1=\n,
@@ -14809,7 +15435,7 @@ cit101e|C. Itoh CIT-101e,
# on. I also set up mine for parity (but you may not need it). Then
# save the setup with ^S.
# (cit101e-rv: added empty <rmcup> to suppress a tic warning. --esr)
-cit101e-rv|Citoh CIT-101e (sets reverse video),
+cit101e-rv|C.Itoh CIT-101e (sets reverse video),
am, eo, mir, msgr, xenl, xon,
cols#80, it#8, lines#24,
OTnl=\EM, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
@@ -14876,7 +15502,7 @@ cit500|CIE Terminals CIT-500,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
# C. Itoh printers begin here
-citoh|ci8510|8510|c.itoh 8510a,
+citoh|ci8510|8510|C.Itoh 8510a,
cols#80, it#8,
bold=\E!, cub1@,
is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073.,
@@ -14909,7 +15535,7 @@ citoh-8lpi|citoh in 8 lines per inch mode,
#### Control Data (cdc)
#
-cdc456|cdc 456 terminal,
+cdc456|CDC 456 terminal,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=^Y^X, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -15006,7 +15632,7 @@ cdc721-esc|Control Data 721,
# non-conformant (but more featureful) ANSI mode.
#
# From: Stephen Peterson <stv@utrecht.ow.nl>, 27 May 1995
-visa50|geveke visa 50 terminal in ansi 80 character mode,
+visa50|Geveke VISA 50 terminal in ANSI 80 character mode,
bw, mir, msgr,
cols#80, lines#25,
acsc=0_aaffggh jjkkllmmnnooqqssttuuvvwwxx, bel=^G,
@@ -15080,11 +15706,11 @@ visa50|geveke visa 50 terminal in ansi 80 character mode,
#
# No delays needed on c108 because of ^S/^Q handshaking
#
-c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages,
+c108|concept108|c108-8p|concept108-8p|Concept 108 w/8 pages,
is3=\EU\E\sz"\Ev\001\177\s!p\E\s;"\E\sz\s\Ev\s\s\001\177p
\Ep\n,
rmcup=\Ev \001\177p\Ep\r\n, use=c108-4p,
-c108-4p|concept108-4p|concept 108 w/4 pages,
+c108-4p|concept108-4p|Concept 108 w/4 pages,
OTbs, eslok, hs, xon,
pb@,
acsc=jEkTl\\mMqLxU, cnorm=\Ew, cr=\r,
@@ -15096,13 +15722,13 @@ c108-4p|concept108-4p|concept 108 w/4 pages,
rmacs=\Ej\s, rmcup=\Ev \001 p\Ep\r\n, smacs=\Ej!,
smcup=\EU\Ev 8p\Ep\r\E\025,
tsl=\E z"\E?\E\005\EE\Ea %+\s, use=c100,
-c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video,
+c108-rv|c108-rv-8p|Concept 108 w/8 pages in reverse video,
rmcup=\Ev \002 p\Ep\r\n, smcup=\EU\Ev 8p\Ep\r,
use=c108-rv-4p,
-c108-rv-4p|concept108rv4p|concept 108 w/4 pages in reverse video,
+c108-rv-4p|concept108rv4p|Concept 108 w/4 pages in reverse video,
flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee, smso=\EE,
use=c108-4p,
-c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode,
+c108-w|c108-w-8p|concept108-w-8|concept108-w8p|Concept 108 w/8 pages in wide mode,
cols#132,
is1=\E F\E", rmcup=\Ev ^A0\001D\Ep\r\n,
smcup=\EU\Ev 8\001D\Ep\r, use=c108-8p,
@@ -15145,7 +15771,7 @@ c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mod
# \EQ"\EY(^W (send anything from printer to host, for xon/xoff)
# cannot be # in is2 because it will hang a c100 with no printer
# if sent twice.
-c100|concept100|concept|c104|c100-4p|hds concept 100,
+c100|concept100|concept|c104|c100-4p|HDS Concept 100,
OTbs, am, eo, mir, ul, xenl,
cols#80, lines#24, pb#9600, vt#8,
bel=^G, blink=\EC, clear=\E?\E\005$<2*>, cr=$<9>\r,
@@ -15156,11 +15782,11 @@ c100|concept100|concept|c104|c100-4p|hds concept 100,
ht=\011$<8>, il1=\E\022$<3*>, ind=\n, invis=\EH, ip=$<16*>,
is1=\EK,
is2=\EU\Ef\E7\E5\E8\El\ENH\E\0\Eo&\0\Eo'\E\Eo!\0\E\007!\E
- \010A@\s\E4#\:"\E\:a\E4#;"\E\:b\E4#<"\E\:c,
+ \010A@\s\E4#:"\E:a\E4#;"\E:b\E4#<"\E:c,
is3=\Ev $<6>\Ep\n, kbs=^H, kcbt=\E', kctab=\E_,
kcub1=\E>, kcud1=\E<, kcuf1=\E=, kcuu1=\E;, kdch1=\E^Q,
kdl1=\E^B, ked=\E^C, kel=\E^S, kf1=\E5, kf2=\E6, kf3=\E7,
- kf4=\E8, kf5=\E9, kf6=\E\:a, kf7=\E\:b, kf8=\E\:c, khome=\E?,
+ kf4=\E8, kf5=\E9, kf6=\E:a, kf7=\E:b, kf8=\E:c, khome=\E?,
khts=\E], kich1=\E^P, kil1=\E^R, kind=\E[, knp=\E-, kpp=\E.,
kri=\E\\, krmir=\E\0, mc4=\036o \E\EQ!\EYP\027,
mc5=\EQ"\EY(\027\EYD\Eo \036, prot=\EI,
@@ -15169,10 +15795,10 @@ c100|concept100|concept|c104|c100-4p|hds concept 100,
rmso=\Ed, rmul=\Eg, sgr0=\EN@,
smcup=\EU\Ev 8p\Ep\r\E\025$<16>, smir=\E^P, smkx=\EX,
smso=\ED, smul=\EG,
-c100-rv|c100-rv-4p|concept100-rv|c100 rev video,
+c100-rv|c100-rv-4p|concept100-rv|Concept 100 reverse video,
cnorm@, cvvis@, flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee,
smso=\EE, use=c100,
-oc100|oconcept|c100-1p|old 1 page concept 100,
+oc100|oconcept|c100-1p|old 1-page Concept 100,
in,
is3@, use=c100,
@@ -15460,7 +16086,7 @@ hds200|Human Designed Systems HDS200,
# <ht> through <el> included to specify padding needed in raw mode.
# (avt-ns: added empty <acsc> to suppress a tic warning --esr)
-avt-ns|concept avt no status line,
+avt-ns|Concept AVT no status line,
OTbs, am, eo, mir, ul, xenl, xon,
cols#80, it#8, lines#24, lm#192,
acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
@@ -15474,8 +16100,8 @@ avt-ns|concept avt no status line,
ich1=\E[@, il=\E[%p1%dL$<4*>, il1=\E[L$<4>, ind=\n$<8>,
invis=\E[8m, ip=$<4>, is1=\E[=103l\E[=205l,
is2=\E[1*q\E[2!t\E[7!t\E[=4;101;119;122l\E[=107;118;207h\E)1
- \E[1Q\EW\E[!y\E[!z\E>\E[0\:0\:32!r\E[0*w\E[w\E2\r\n\E[2;
- 27!t,
+ \E[1Q\EW\E[!y\E[!z\E>\E[0:0:32!r\E[0*w\E[w\E2\r\n\E[2;27
+ !t,
kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
kdch1=\E\002\r, ked=\E\004\r, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
kf4=\EOS, khome=\E[H, kich1=\E\001\r, kil1=\E\003\r,
@@ -15491,13 +16117,13 @@ avt-ns|concept avt no status line,
smcup=\E[=4l\E[1;24w\E2\r, smir=\E[4h,
smkx=\E[1!z\E[0;3u, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
vpa=\E[%p1%{1}%+%dd, use=ansi+rep,
-avt-rv-ns|concept avt in reverse video mode/no status line,
+avt-rv-ns|Concept AVT in reverse video mode/no status line,
flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h,
use=avt-ns,
-avt-w-ns|concept avt in 132 column mode/no status line,
+avt-w-ns|Concept AVT in 132 column mode/no status line,
is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w,
use=avt-ns,
-avt-w-rv-ns|concept avt in 132 column mode/no status line/reverse video,
+avt-w-rv-ns|Concept AVT in 132 column mode/no status line/reverse video,
flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h,
smcup=\E[H\E[1;24;1;132w, use=avt-ns,
@@ -15509,22 +16135,22 @@ avt-w-rv-ns|concept avt in 132 column mode/no status line/reverse video,
# on both 4 and 8 page AVTs. (Note the lm#191 or 192 - this
# assumes an 8 page AVT but lm isn't currently used anywhere.)
#
-avt+s|concept avt status line changes,
+avt+s|Concept AVT status line changes,
eslok, hs,
lm#191,
dsl=\E[0*w, fsl=\E[1;1!w,
is3=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n,
rmcup=\E[2w\E2\r\n, smcup=\E[2;25w\E2\r,
tsl=\E[2;1!w\E[;%p1%dH\E[2K,
-avt|avt-s|concept-avt|avt w/80 columns,
+avt|avt-s|concept-avt|Concept AVT w/80 columns,
use=avt+s, use=avt-ns,
-avt-rv|avt-rv-s|avt reverse video w/sl,
+avt-rv|avt-rv-s|Concept AVT reverse video w/sl,
flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h,
use=avt+s, use=avt-ns,
-avt-w|avt-w-s|concept avt 132 cols+status,
+avt-w|avt-w-s|Concept AVT 132 cols+status,
is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w,
use=avt+s, use=avt-ns,
-avt-w-rv|avt-w-rv-s|avt wide+status+rv,
+avt-w-rv|avt-w-rv-s|Concept AVT wide+status+rv,
flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h,
smcup=\E[H\E[1;24;1;132w, use=avt+s, use=avt-ns,
@@ -15623,7 +16249,7 @@ dgkeys+11|Private entry describing 11 minimal-subset DG mode special keys,
kf15=^^d, kf16=^^e, kf17=^^f, kf18=^^g, kf19=^^h, kf2=^^r,
kf20=^^i, kf21=^^j, kf22=^^k, kf23=^^1, kf24=^^2, kf25=^^3,
kf26=^^4, kf27=^^5, kf28=^^6, kf29=^^7, kf3=^^s, kf30=^^8,
- kf31=^^9, kf32=^^\:, kf33=^^;, kf34=^^!, kf35=^^", kf36=^^#,
+ kf31=^^9, kf32=^^:, kf33=^^;, kf34=^^!, kf35=^^", kf36=^^#,
kf37=^^$, kf38=^^%%, kf39=^^&, kf4=^^t, kf40=^^', kf41=^^(,
kf42=^^), kf43=^^*, kf44=^^+, kf5=^^u, kf6=^^v, kf7=^^w,
kf8=^^x, kf9=^^y, khome=^H,
@@ -15635,7 +16261,7 @@ dgkeys+15|Private entry describing 15 DG mode special keys,
kf2=^^r, kf20=^^e, kf21=^^f, kf22=^^g, kf23=^^h, kf24=^^i,
kf25=^^j, kf26=^^k, kf27=^^l, kf28=^^m, kf29=^^n, kf3=^^s,
kf30=^^`, kf31=^^1, kf32=^^2, kf33=^^3, kf34=^^4, kf35=^^5,
- kf36=^^6, kf37=^^7, kf38=^^8, kf39=^^9, kf4=^^t, kf40=^^\:,
+ kf36=^^6, kf37=^^7, kf38=^^8, kf39=^^9, kf4=^^t, kf40=^^:,
kf41=^^;, kf42=^^<, kf43=^^=, kf44=^^>, kf45=^^0, kf46=^^!,
kf47=^^", kf48=^^#, kf49=^^$, kf5=^^u, kf50=^^%%, kf51=^^&,
kf52=^^', kf53=^^(, kf54=^^), kf55=^^*, kf56=^^+, kf57=^^\,,
@@ -15737,16 +16363,16 @@ dg+ccc|Configurable color info for DG D430C terminals in DG mode,
%+%c%ga%{16}%m%{48}%+%c%p6%{255}%*%{1000}%/%Pa%ga%{16}
%/%{48}%+%c%ga%{16}%m%{48}%+%c%p7%{255}%*%{1000}%/%Pa
%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c,
- oc=\036RG01\:00??00000000\036RG01;00000000??00\036RG01<007?0
- 0000000\036RG01=000000007?00,
- op=\036RF4831\:\036RF2>31;\036RF1=31<\036RF3?31=,
+ oc=\036RG01:00??00000000\036RG01;00000000??00\036RG01<007?00
+ 000000\036RG01=000000007?00,
+ op=\036RF4831:\036RF2>31;\036RF1=31<\036RF3?31=,
scp=\036RG2%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c,
# The generic DG terminal type (an 8-bit-clean subset of the 6053)
# Initialization string 1 sets:
# ^R - vertical scrolling enabled
# ^C - blinking enabled
-dg-generic|Generic Data General terminal in DG mode,
+dg-generic|generic Data General terminal in DG mode,
am, bw, msgr, xon,
cols#80, lines#24,
bel=^G, blink=^N, clear=^L, cr=\r, cub1=^Y, cud1=^Z, cuf1=^X,
@@ -15759,7 +16385,7 @@ dg-generic|Generic Data General terminal in DG mode,
# notation that's "^P%r%+\200%+\200"). Those \200s are suspicious,
# maybe they were originally nuls (which would fit).
-dg200|data general dasher 200,
+dg200|Data General DASHER 200,
OTbs, am, bw,
cols#80, lines#24,
bel=^G, clear=^L, cr=\r, cub1=^Y, cud1=^Z, cuf1=^X,
@@ -15788,7 +16414,7 @@ dg211|Data General d211,
rmso=\036E$<0/>, smcup=^L^R, smso=\036D$<5/>, use=dg200,
# dg450 from Cornell (not official)
-dg450|dg6134|data general 6134,
+dg450|dg6134|Data General 6134,
cub1@, cuf1=^X, use=dg200,
# Not official...
@@ -15810,9 +16436,9 @@ dg460-ansi|Data General Dasher 460 in ANSI-mode,
kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
kf0=\E[001z, kf1=\E[002z, kf2=\E[003z, kf3=\E[004z,
kf4=\E[005z, kf5=\E[006z, kf6=\E[007z, kf7=\E[008z,
- kf8=\E[009z, kf9=\E[00\:z, khome=\E[H, lf0=f1, lf1=f2,
- lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf9=f10,
- mc0=\E[i, rev=\E[7m, ri=\E[T, rmso=\E[m, rmul=\E[05,
+ kf8=\E[009z, kf9=\E[00:z, khome=\E[H, lf0=f1, lf1=f2, lf2=f3,
+ lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf9=f10, mc0=\E[i,
+ rev=\E[7m, ri=\E[T, rmso=\E[m, rmul=\E[05,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;
%?%p1%p3%|%t;7%;m,
sgr0=\E(B\E[m, smso=\E[7m, smul=\E[4m, u6=\E[%d;%dR,
@@ -15824,7 +16450,7 @@ dg460-ansi|Data General Dasher 460 in ANSI-mode,
# This also matches a posted description of something called a `Dasher 100'
# so there's a dg100 alias here.
# (dg6053: the 4.4BSD file had <cub1=^H>, <cud1=^J>, <cuf1=^S>. -- esr)
-dg6053-old|dg100|data general 6053,
+dg6053-old|dg100|Data General 6053,
OTbs, am, bw, ul,
cols#80, lines#24,
OTbc=^Y, bel=^G, clear=^L, cnorm=^L, cr=\r, cub1=^Y, cud1=^Z,
@@ -15982,9 +16608,9 @@ d220-dg|Data General DASHER D220 color terminal in DG mode,
d230c|d230|Data General DASHER D230C,
blink=\E[5;50m, bold=\E[4;7;50m, dim=\E[2;50m, nel=\r\n,
rev=\E[7;50m, rmkx=\E[2;1v, rmso=\E[50m, rmul=\E[50m,
- sgr=\E[50%?%p1%p3%|%p6%|%t;7%{1}%e%{0}%;%PR%?%p4%t;5%{1}%e
- %{0}%;%PB%?%p2%p6%|%t;4%{1}%e%{0}%;%PU%?%p1%p5%|%t;2%{1}
- %e%{0}%;%PDm\E)%?%p9%t6\016%e4\017%;,
+ sgr=\E[%?%p1%p3%|%p6%|%t7;%{1}%e%{0}%;%PR%?%p4%t5;%{1}%e%{0}
+ %;%PB%?%p2%p6%|%t4;%{1}%e%{0}%;%PU%?%p1%p5%|%t2;%{1}%e
+ %{0}%;%PD50m\E)%?%p9%t6\016%e4\017%;,
sgr0=\E[50m\E)4\017, smkx=\E[2;0v, smso=\E[2;7;50m,
smul=\E[4;50m, use=dgkeys+7b, use=d220,
@@ -16346,7 +16972,7 @@ cs10-w|Datamedia Color Scan 10 with 132 columns,
cup=\E[%i%p1%02d;%p2%03dH, use=cs10,
# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:" -- esr)
-dm1520|dm1521|datamedia 1520,
+dm1520|dm1521|Datamedia 1520,
OTbs, am, xenl,
cols#80, it#8, lines#24,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n, cuf1=^\,
@@ -16355,7 +16981,7 @@ dm1520|dm1521|datamedia 1520,
khome=^Y,
# dm2500: this terminal has both <ich> and <smir>. Applications using
# termcap/terminfo directly (rather than through ncurses) might be confused.
-dm2500|datamedia2500|datamedia 2500,
+dm2500|datamedia2500|Datamedia 2500,
OTbs, OTnc,
cols#80, lines#24,
bel=^G, clear=^^^^^?, cub1=^H, cud1=\n, cuf1=^\,
@@ -16370,12 +16996,12 @@ dm2500|datamedia2500|datamedia 2500,
# also, has a meta-key.
# From: <goldberger@su-csli.arpa>
# (dmchat: ":MT:" changed to ":km:" -- esr)
-dmchat|dmchat version of datamedia 2500,
+dmchat|dmchat version of Datamedia 2500,
km,
dl1=\020\032\030\035$<2/>,
il1=\020\n\030\035\030\035$<1*/>, use=dm2500,
# (dm3025: ":MT:" changed to ":km:" -- esr)
-dm3025|datamedia 3025a,
+dm3025|Datamedia 3025a,
OTbs, km,
cols#80, it#8, lines#24,
bel=^G, clear=\EM$<2>, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
@@ -16384,7 +17010,7 @@ dm3025|datamedia 3025a,
home=\EH, ht=^I, il1=\EP\n\EQ$<130>, ind=\n, ip=$<6>,
is2=\EQ\EU\EV, rmdc=\EQ, rmir=\EQ, rmso=\EO0, smdc=\EP,
smir=\EP, smso=\EO1,
-dm3045|datamedia 3045a,
+dm3045|Datamedia 3045a,
OTbs, am, eo, km@, ul, xenl,
dch1=\EB$<6>, dl1@, il1@, is2=\EU\EV, kcuf1=\EC, kcuu1=\EA,
kf0=\Ey\r, kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r,
@@ -16422,7 +17048,7 @@ dm3045|datamedia 3045a,
# Aux Bits/Char 0=7 1=8
# CRT Saver 0=Off 1=On
# dm80/1 is a vt100 lookalike, but it doesn't seem to need any padding.
-dm80|dmdt80|dt80|datamedia dt80/1,
+dm80|dmdt80|dt80|Datamedia dt80/1,
clear=\E[2J\E[H, cud1=\n, cuf1=\E[C,
cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
home=\E[H, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, ri=\EM,
@@ -16432,7 +17058,7 @@ dm80|dmdt80|dt80|datamedia dt80/1,
# This is still less padding than the vt100, and you can always turn on
# the ^S/^Q handshaking, so you can use vt100 flavors for things like
# reverse video.
-dm80w|dmdt80w|dt80w|datamedia dt80/1 in 132 char mode,
+dm80w|dmdt80w|dt80w|Datamedia dt80/1 in 132 char mode,
cols#132,
clear=\E[H\E[2J$<50/>, cud1=\n,
cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<5/>,
@@ -16460,15 +17086,15 @@ dt80-sas|Datamedia DT803/DTX for SAS usage,
# from the other Datamedias in use here, and yet to associate a model of
# the Excel terminals with the regular datamedia terminals that share
# major characteristics.
-excel62|excel64|datamedia Excel 62,
+excel62|excel64|Datamedia Excel 62,
dch1=\E[P, kbs=^H, kcub1=^H, kcud1=\n, kf5=\EOu, kf6=\EOv,
kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h,
use=dt80,
-excel62-w|excel64-w|datamedia Excel 62 in 132 char mode,
+excel62-w|excel64-w|Datamedia Excel 62 in 132 char mode,
dch1=\E[P, kbs=^H, kcub1=^H, kcud1=\n, kf5=\EOu, kf6=\EOv,
kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h,
use=dt80w,
-excel62-rv|excel64-rv|datamedia Excel 62 in reverse video mode,
+excel62-rv|excel64-rv|Datamedia Excel 62 in reverse video mode,
dch1=\E[P, flash=\E[?5l\E[?5h, kbs=^H, kcub1=^H, kcud1=\n,
kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l,
smir=\E[4h, use=dt80,
@@ -16483,13 +17109,13 @@ excel62-rv|excel64-rv|datamedia Excel 62 in reverse video mode,
# Net: techsup@charm.sys.falco.com
#
# Current Falco models as of 1995 are generally ANSI-compatible and support
-# emulations of DEC VT-series, Wyse, and Televideo types.
+# emulations of DEC VT-series, Wyse, and TeleVideo types.
#
# Test version for Falco ts-1. See <arpavax.hickman@ucb> for info
# This terminal was released around 1983 and was discontinued long ago.
# The standout and underline highlights are the same.
-falco|ts1|ts-1|falco ts-1,
+falco|ts1|ts-1|Falco ts-1,
OTbs, am,
cols#80, it#8, lines#24,
bel=^G, clear=\E*, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -16498,7 +17124,7 @@ falco|ts1|ts-1|falco ts-1,
ind=\n, is2=\Eu\E3, kcub1=^H, kcud1=\n, kcuf1=^L, kcuu1=^K,
kf0=^A0\r, rmir=\Er, rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0,
smir=\Eq, smso=\Eg1, smul=\Eg1,
-falco-p|ts1p|ts-1p|falco ts-1 with paging option,
+falco-p|ts1p|ts-1p|Falco ts-1 with paging option,
OTbs, am, da, db, mir, msgr, ul,
cols#80, it#8, lines#24,
bel=^G, cbt=\EI, clear=\E*, cr=\r, cub1=^H, cud1=\E[B,
@@ -16509,7 +17135,7 @@ falco-p|ts1p|ts-1p|falco ts-1 with paging option,
rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0, smcup=\E_d, smir=\Eq,
smso=\Eg4, smul=\Eg1,
# (ts100: I added <rmam>/<smam> based on the init string -- esr)
-ts100|ts100-sp|falco ts100-sp,
+ts100|ts100-sp|Falco ts100-sp,
am, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -16530,7 +17156,7 @@ ts100|ts100-sp|falco ts100-sp,
sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=,
smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g,
use=vt100+fnkeys,
-ts100-ctxt|falco ts-100 saving context,
+ts100-ctxt|Falco ts-100 saving context,
rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100,
#### Florida Computer Graphics
@@ -16771,7 +17397,7 @@ go225|go-225|Graphon 225,
# NOTE WELL that the rear panel switch should be set to CR/LF,
# not AEP!
#
-sb1|beehive superbee,
+sb1|Beehive SuperBee,
OTbs, am, bw, da, db, mir, ul, xsb,
cols#80, lines#25, xmc#1,
bel=^G, cbt=\E`$<650>, clear=\EH$<1>\EJ$<3>, cr=$<1>\r,
@@ -16784,12 +17410,11 @@ sb1|beehive superbee,
\s\s\s\s\s\EP$<3>\s\EO\ER\EA$<3>,
ind=\n, is2=\EE$<3>\EX\EZ\EO\Eb\Eg\ER, kbs=^_, kcub1=\ED,
kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdl1=\EM, ked=\EJ, kel=\EK,
- kf0=\E2, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu,
- kf7=\Ev, kf8=\Ew, kf9=\E1, khome=\EH, kich1=\EQ\EO,
- krmir=\ER, lf0=TAB CLEAR, lf9=TAB SET, rmcup=, rmir=\ER,
- rmso=\E_3, rmul=\E_3, sgr0=\E_3, smcup=\EO, smir=\EQ\EO,
- smso=\E_1, smul=\E_0, tbc=\E3,
-sbi|superbee|beehive superbee at Indiana U.,
+ kf0=\E2, kf9=\E1, khome=\EH, kich1=\EQ\EO, krmir=\ER,
+ lf0=TAB CLEAR, lf9=TAB SET, rmcup=, rmir=\ER, rmso=\E_3,
+ rmul=\E_3, sgr0=\E_3, smcup=\EO, smir=\EQ\EO, smso=\E_1,
+ smul=\E_0, tbc=\E3, use=hp+pfk-cr,
+sbi|superbee|Beehive SuperBee at Indiana U.,
xsb,
cr=\r$<1>, il1=\EN$<1>\EL$<9>\EQ \EP$<9> \EO\ER\EA,
use=sb1,
@@ -16803,7 +17428,7 @@ sbi|superbee|beehive superbee at Indiana U.,
# the other two if you want to try to hit that tiny escape key.
# This description is tricky: being able to use cup depends on there being
# 2048 bytes of memory and the hairy <nl> string.
-superbee-xsb|beehive super bee,
+superbee-xsb|Beehive SuperBee,
am, da, db, xsb,
cols#80, it#8, lines#25,
clear=\EH\EJ$<3>, cnorm=\n, cr=\r$<1000>, cub1=^H, cud1=\n,
@@ -16811,13 +17436,12 @@ superbee-xsb|beehive super bee,
dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>, el=\EK$<3>,
home=\EH, ht=^I, hts=\E1,
ind=\n\0\0\0\n\0\0\0\EA\EK\0\0\0\ET\ET, is2=\EH\EJ,
- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\Ep, kf2=\Eq,
- kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew,
- khome=\EH, rmso=\E_3, sgr0=\E_3, smso=\E_1, tbc=\E3,
+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH,
+ rmso=\E_3, sgr0=\E_3, smso=\E_1, tbc=\E3, use=hp+pfk-cr,
# This loses on lines > 80 chars long, use at your own risk
-superbeeic|super bee with insert char,
+superbeeic|SuperBee with insert char,
ich1=, rmir=\ER, smir=\EQ, use=superbee-xsb,
-sb2|sb3|fixed superbee,
+sb2|sb3|fixed SuperBee,
xsb@, use=superbee,
#### Beehive Medical Electronics
@@ -16827,14 +17451,14 @@ sb2|sb3|fixed superbee,
# They were made by Beehive Medical Electronics in Utah. They went out of
# business in the early '80s.
#
-# (OK, then, I don't know why a couple of these say "harris beehive".)
+# (OK, then, I don't know why a couple of these say "Harris Beehive".)
#
# Reports are that most of these Beehive entries (except superbee) have not
# been tested and do not work right. <rmso> is a trouble spot. Be warned.
# (bee: <ich1> was empty, which is obviously bogus -- esr)
-beehive|bee|harris beehive,
+beehive|bee|Harris Beehive,
OTbs, am, mir,
cols#80, lines#24,
cbt=\E>, clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC,
@@ -16849,13 +17473,13 @@ beehive|bee|harris beehive,
# look at those spaces in <rmso>/<smso>. Seems strange to me...
# (beehive: <if=/usr/share/tabset/beehive> removed, no such file. If you
# really care, cook up one using ^F -- esr)
-beehive3|bh3m|beehiveIIIm|harris beehive 3m,
+beehive3|bh3m|beehiveIIIm|Harris Beehive 3m,
OTbs, am,
cols#80, it#8, lines#20,
bel=^G, clear=^E^R, cr=\r, cub1=^H, cud1=\n, cuf1=^L, cuu1=^K,
dl1=\021$<350>, ed=^R, el=^P, home=^E, ht=^I, hts=^F,
il1=\023$<160>, ind=\n, ll=^E^K, rmso=\s^_, smso=^]\s,
-beehive4|bh4|beehive 4,
+beehive4|bh4|Beehive 4,
am,
cols#80, lines#24,
bel=^G, clear=\EE, cr=\r, cub1=\ED, cud1=\n, cuf1=\EC,
@@ -16863,26 +17487,25 @@ beehive4|bh4|beehive 4,
# There was an early Australian kit-built computer called a "Microbee".
# It's not clear whether this is for one of those or for a relative
# of the Beehive.
-microb|microbee|micro bee series,
+microb|microbee|Micro Bee series,
OTbs, am,
cols#80, it#8, lines#24,
bel=^G, clear=\EE, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
el=\EK, ht=^I, ind=\n, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
- kcuu1=\EA, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et,
- kf6=\Eu, kf7=\Ev, kf8=\Ew, kf9=\Ex, khome=\EH, rmso=\Ed@,
- rmul=\Ed@, sgr0=\Ed@, smso=\s\EdP, smul=\Ed`,
+ kcuu1=\EA, kf9=\Ex, khome=\EH, rmso=\Ed@, rmul=\Ed@,
+ sgr0=\Ed@, smso=\s\EdP, smul=\Ed`, use=hp+pfk-cr,
# 8675, 8686, and bee from Cyrus Rahman
# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr)
-ha8675|harris 8675,
+ha8675|Harris 8675,
is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU, kf1=^F,
kf10=\Ed, kf11=^W, kf12=\ER, kf13=\EE, kf14=\EI, kf15=\Ei,
kf16=\Eg, kf2=^P, kf3=^N, kf4=^V, kf5=\n, kf6=^T, kf7=^H, kf8=^?,
kf9=\Ee, use=bee,
# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation
# in :is: -- esr)
-ha8686|harris 8686,
+ha8686|Harris 8686,
is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU\E"*Z01\E"8F35021B7C83#
\E"8F45021B7D83#\E"8F55021B7E83#\E"8F65021B7F83#\E"8F750
21B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8
@@ -16921,13 +17544,13 @@ ha8686|harris 8686,
# redraw the screen. h1000 is untested. It doesn't work in
# vi - this terminal is too dumb for even vi. (The code is
# there but it isn't debugged for this case.)
-hz1000|hazeltine 1000,
+hz1000|Hazeltine 1000,
OTbs,
cols#80, lines#12,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n, cuf1=\s, home=^K,
ind=\n,
# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981
-hz1420|hazeltine 1420,
+hz1420|Hazeltine 1420,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\E^\, cr=\r, cub1=^H, cud1=\n, cuf1=^P,
@@ -16937,7 +17560,7 @@ hz1420|hazeltine 1420,
# New "safe" cursor movement (11/87) from <cgs@umd5.umd.edu>. Prevents
# freakout with out-of-range args and tn3270. No hz since it needs to
# receive tildes.
-hz1500|hazeltine 1500,
+hz1500|Hazeltine 1500,
OTbs, am, hz,
cols#80, lines#24,
bel=^G, clear=~^\, cr=\r, cub1=^H, cud1=~^K, cuf1=^P,
@@ -16949,7 +17572,7 @@ hz1500|hazeltine 1500,
# (h1510: early versions of this entry apparently had "<rmso=\E^_>,
# <smso=\E^Y>, but these caps were commented out in 8.3; also,
# removed incorrect and overridden ":do=^J:" -- esr)
-hz1510|hazeltine 1510,
+hz1510|Hazeltine 1510,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\E^\, cr=\r, cub1=^H, cud1=\E^K, cuf1=^P,
@@ -16972,7 +17595,7 @@ hz1520|Hazeltine 1520,
rmso=\E^Y, rs1=\E$\E\005\E?\E\031, sgr0=\E^Y, smso=\E^_,
# This version works with the escape switch off
# (h1520: removed incorrect and overridden ":do=^J:" -- esr)
-hz1520-noesc|hazeltine 1520,
+hz1520-noesc|Hazeltine 1520,
am, hz,
cols#80, lines#24,
bel=^G, clear=~^\, cr=\r, cub1=^H, cud1=~^K, cuf1=^P,
@@ -16981,14 +17604,14 @@ hz1520-noesc|hazeltine 1520,
# Note: the h1552 appears to be the first Hazeltine terminal which
# is not braindamaged. It has tildes and backprimes and everything!
# Be sure the auto lf/cr switch is set to cr.
-hz1552|hazeltine 1552,
+hz1552|Hazeltine 1552,
OTbs,
- cud1=\n, dl1=\EO, il1=\EE, kf1=\EP, kf2=\EQ, kf3=\ER, lf1=blue,
- lf2=red, lf3=green, use=vt52,
-hz1552-rv|hazeltine 1552 reverse video,
+ cud1=\n, dl1=\EO, il1=\EE, lf1=blue, lf2=red, lf3=green,
+ use=vt52,
+hz1552-rv|Hazeltine 1552 reverse video,
cud1=\n, rmso=\ET, smso=\ES, use=hz1552,
# Note: h2000 won't work well because of a clash between upper case and ~'s.
-hz2000|hazeltine 2000,
+hz2000|Hazeltine 2000,
OTbs, OTnc, am,
cols#74, lines#27,
bel=^G, clear=~\034$<6>, cub1=^H, cud1=\n,
@@ -17013,7 +17636,7 @@ esprit|Hazeltine Esprit I,
kf6=^B6\n, kf7=^B7\n, kf8=^B8\n, kf9=^B9\n, khome=\E^R,
lf0=0, lf1=1, lf2=2, lf3=3, lf4=4, lf5=5, lf6=6, lf7=7, lf8=8, lf9=9,
rmkx=\E>, rmso=\E^Y, smkx=\E<, smso=\E^_,
-esprit-am|hazeltine esprit auto-margin,
+esprit-am|Hazeltine esprit auto-margin,
am, use=esprit,
# Hazeltine Modular-1 from Cliff Shackelton <ittvax!ittral!shackelt> via BRL
# Vi it seems always wants to send a control J for "do" and it turned out
@@ -17224,12 +17847,12 @@ ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display,
use=ibmega-c,
ibm6154|IBM 6154 Color displays,
blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m,
- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p7%t;8%;%?%p6%t;1
2%;m,
sgr0=\E[0;10m, use=ibm5154,
ibm6153|IBM 6153 Black & White display,
blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m,
- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p7%t;8%;%?%p6%t;1
2%;m,
sgr0=\E[0;10m, use=ibm5151,
ibm6153-90|IBM 6153 Black & White display,
@@ -17276,7 +17899,7 @@ hft-old|AIWS High Function Terminal,
kf9=\E[009q, khome=\E[H, knp=\E[153q, kpp=\E[159q,
ktbc=\E[010q, rev=\E[7m, rmir=\E6, rmso=\E[m, rmul=\E[m,
sgr0=\E[m, smir=\E6, smso=\E[7m, smul=\E[4m, use=ibm+color,
-ibm-system1|system1|ibm system/1 computer,
+ibm-system1|system1|IBM system/1 computer,
am, xt,
cols#80, lines#24,
bel=^G, clear=^Z, cub1=^H, cuf1=^\,
@@ -17392,21 +18015,28 @@ i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100),
cup=\Ef%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, dl1=\EM,
ed=\EJ, el=\EK, flash=\Eb$<200/>\Ea, home=\EH, il1=\EL,
ind=\n, rmso=\Ea, smso=\Eb,
-i400|infoton 400,
+
+i400|Infoton 400,
OTbs, am,
cols#80, lines#25,
bel=^G, clear=\E[2J, cr=\r, cub1=^H, cud1=\n, cuf1=\E[C,
cup=\E[%i%p1%3d;%p2%3dH, cuu1=\E[A,
dch1=\E[4h\E[2Q\E[P\E[4l\E[0Q, dl1=\E[M, el=\E[N,
il1=\E[L, ind=\n, rmir=\E[4l\E[0Q, smir=\E[4h\E[2Q,
+
# (addrinfo: removed obsolete ":bc=^Z:" -- esr)
-addrinfo,
- am,
- cols#80, lines#24,
- bel=^G, clear=^L, cr=\r, cub1=^Z, cud1=\n, cuf1=^Y,
- cup=\037%p1%c%p2%c, cuu1=^\, ed=^K, home=^H, ind=\n, ll=^H^\,
+addrinfo|cursor-addressable Infoton,
+ cup=\037%p1%c%p2%c, home=^H, use=infoton,
+
+# "VISTAR II/HZ Technical Users Manual" (May 1975).
+#
+infoton2|cursor-addressable Infoton VISTAR II,
+ cup=~\021%p2%c%p1%c, home=^H, use=infoton,
+
+# "VISTAR Technical User's Manual" (October 1972).
+#
# (infoton: used to have the no-ops <lh#0>, <lw#0>, <nlab#0> -- esr)
-infoton,
+infoton|Infoton VISTAR,
am,
cols#80, lines#24,
bel=^G, clear=^L, cr=\r, cub1=^Z, cud1=\n, cuf1=^Y, cuu1=^\,
@@ -17666,7 +18296,7 @@ infoton,
# Codes and info from Peter Disdale <pete@pdlmail.demon.co.uk> 12 May 1997
#
# Entry is by esr going solely on above information and is UNTESTED.
-# This actually looks a lot like a Televideo 9xx.
+# This actually looks a lot like a TeleVideo 9xx.
# This entry uses page 0 and is monochrome; I'm not brave enough to try
# to make color work without a test terminal. The <am> capability is a guess.
# The initialization string sets conversation mode, blinking underline cursor,
@@ -17677,8 +18307,8 @@ icl6404|kds7372|icl6402|kds6402|ICL 6404 aka Kokusai Display Systems 7372,
OTbs, am, hs,
cols#80, lines#24,
bel=^G, blink=\E[2ZZ, cbt=\EI, civis=\E.0, clear=\E*,
- cnorm=\E.3, cr=\r, csr=\E!%+%p1%{32}%+%p2%{32}, cub1=^H,
- cud1=^V, cuf1=^L,
+ cnorm=\E.3, cr=\r, csr=\E!%p1%{32}%+%c%p2%{32}%+%c,
+ cub1=^H, cud1=^V, cuf1=^L,
cup=\E=%p1%{32}%+%c%p2%{80}%m%{32}%+%c%p2%{80}%>%{32}%+%c,
cuu1=^K, cvvis=\E.1, dch1=\EW, dl1=\ER, home=^^, ht=^I,
hts=\E1, il1=\EE, invis=\E[1ZZ,
@@ -17711,7 +18341,7 @@ intext|Interactive Systems Corporation modified owl 1200,
kcub1=^_, kcud1=\n, kcuf1=^^, kcuu1=^\, kf0=^VJ\r, kf1=^VA\r,
kf2=^VB\r, kf3=^VC\r, kf4=^VD\r, kf5=^VE\r, kf6=^VF\r,
kf7=^VG\r, kf8=^VH\r, kf9=^VI\r, khome=^Z, rmir=^V<,
- rmkx=^V9, rmso=^V#\s, smir=^V;, smkx=\036\:\264\026%%,
+ rmkx=^V9, rmso=^V#\s, smir=^V;, smkx=\036:\264\026%%,
smso=^V$\,,
intext2|intextii|INTERACTIVE modified owl 1251,
am, bw, ul,
@@ -18010,7 +18640,7 @@ prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode,
# . Padding values (sets xon)
# (esr: commented out <smacs>/<rmacs> because there's no <acsc>)
#
-prism9|p9|P9|MDC Prism-9 in ANSII mode,
+prism9|p9|P9|MDC Prism-9 in ANSI mode,
am, bw, hs, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3, wsl#72,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[<4l,
@@ -18103,12 +18733,12 @@ prism12-m|p12-m|P12-M|MDC Prism-12 in MDC emulation mode,
prism12-m-w|p12-m-w|P12-M-W|MDC Prism-12 in MDC emulation and 132 column mode,
use=p9-8-w,
-# p14: Prism-14 in ANSII mode
+# p14: Prism-14 in ANSI mode
# ---------------------------
#
# See p9 definition.
#
-prism14|p14|P14|MDC Prism-14 in ANSII mode,
+prism14|p14|P14|MDC Prism-14 in ANSI mode,
use=p9,
# p14-w: Prism-14 in 132 column mode
@@ -18201,7 +18831,7 @@ mime|mime1|mime2|mimei|mimeii|microterm mime1,
kcuf1=^X, kcuu1=^Z, ri=\022$<3>, uc=^U,
# These termcaps (for mime2a) put the terminal in low intensity mode
# since high intensity mode is so obnoxious.
-mime2a-s|microterm mime2a (emulating an enhanced soroc iq120),
+mime2a-s|microterm mime2a (emulating an enhanced Soroc iq120),
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\EL, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -18209,7 +18839,7 @@ mime2a-s|microterm mime2a (emulating an enhanced soroc iq120),
dl1=\027$<20*>, ed=\EJ$<20*>, el=\EK, home=^^,
il1=\001$<20*>, ind=\n, ip=$<2>, is2=\E), kcub1=^H, kcud1=\n,
kcuf1=^L, kcuu1=^K, ri=\EI, rmir=^Z, rmso=\E;, rmul=\E7,
- smir=\EE, smso=\E\:, smul=\E6,
+ smir=\EE, smso=\E:, smul=\E6,
# This is the preferred mode (but ^X can't be used as a kill character)
mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52),
OTbs,
@@ -18346,18 +18976,18 @@ ncr260intwpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard in 132
ncr260vppp|NCR 2900_260 viewpoint,
am, bw, hs, km, mc5i, mir, msgr, xon,
cols#80, lines#24, nlab#32, xmc#1,
- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2,
+ acsc=07a?h;j5k3l2m1n8q:t4u9v=w0x6, bel=^G, blink=\EG2,
cbt=\EI, civis=\E`0, clear=\014$<40>, cnorm=\E`5,
cr=\r$<2>, cub1=\010$<2>, cud1=\n$<2>, cuf1=\006$<2>,
cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<5>, cuu1=\032$<2>,
dch1=\EW$<2>, dim=\EGp, dl1=\El$<2>, dsl=\E`c, ed=\Ek$<2>,
el=\EK$<2>, fsl=\r, home=\036$<2>, ht=^I, hts=\E1,
il1=\EM$<2>, ind=\n$<2>, invis=\EG1,
- is2=\Ee6\E~%$<100>\E+\E`\:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0
+ is2=\Ee6\E~%$<100>\E+\E`:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0
\EcC1\Ee7$<100>,
kDC=\El, kEND=\Ek, kHOM=^A, kPRT=\E7, kRIT=^F, ka1=^A, ka3=\EJ,
kbs=^H, kc1=\ET, kc3=\EJ, kcub1=^U, kcud1=\n, kcuf1=^F,
- kcuu1=^Z, kdch1=\EW, kend=\EK, kf1=^B1\r, kf10=\002\:\r,
+ kcuu1=^Z, kdch1=\EW, kend=\EK, kf1=^B1\r, kf10=^B:\r,
kf11=^B;\r, kf12=^B<\r, kf13=^B=\r, kf14=^B>\r, kf15=^B?\r,
kf16=^B@\r, kf17=^B!\r, kf18=^B"\r, kf19=^B#\r, kf2=^B2\r,
kf20=^B$\r, kf21=^B%^M, kf22=^B&\r, kf23=^B'\r, kf24=^B(\r,
@@ -18369,7 +18999,7 @@ ncr260vppp|NCR 2900_260 viewpoint,
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<5>,
nel=\037$<2>, rev=\EG4, ri=\Ej$<2>, rmacs=\EcB0\EH\003,
rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
- rs2=\Ee6\E~%$<100>\E+\E`\:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0
+ rs2=\Ee6\E~%$<100>\E+\E`:\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0
\EcC1\Ee7$<100>,
sgr0=\EG0\EH\003, smacs=\EcB1\EH\002, smir=\Eq,
smso=\EG4, smul=\EG8, smxon=\Ec21, tsl=\EF,
@@ -18385,9 +19015,8 @@ ncr260vt100an|NCR 2900_260 vt100 with ansi kybd,
am, hs, mir, msgr, xenl, xon,
cols#80, lines#24, nlab#32,
acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G,
- blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<5>,
+ blink=\E[5m, bold=\E[1m, clear=\E[2J\E[1;1H$<20>,
+ cr=\r$<1>, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<5>,
cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>,
cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>,
cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>,
@@ -18401,9 +19030,8 @@ ncr260vt100an|NCR 2900_260 vt100 with ansi kybd,
is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<
200>,
kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~,
- knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, nel=\EE$<5>,
- rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=^O, rmir=\E[4l,
+ khlp=\E[28~, kich1=\E[2~, krdo=\E[29~, nel=\EE$<5>, rc=\E8,
+ rev=\E[7m, ri=\EM$<5>, rmacs=^O, rmir=\E[4l,
rmkx=\E[?1l\E>, rmso=\E[0m, rmul=\E[0m,
rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<
200>,
@@ -18412,7 +19040,8 @@ ncr260vt100an|NCR 2900_260 vt100 with ansi kybd,
%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<20>,
sgr0=\E[0m\017$<20>, smacs=^N, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[1;7m, smul=\E[4m, tbc=\E[3g,
- tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, use=vt220+keypad,
+ tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, use=vt220+vtedit,
+ use=vt220+cvis, use=vt220+keypad,
ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd,
cols#132,
cup=\E[%i%p1%d;%p2%dH$<30>,
@@ -18443,11 +19072,10 @@ ncr260vt200an|NCR 2900_260 vt200 with ansi kybd,
am, hs, mir, msgr, xenl, xon,
cols#80, lines#24, nlab#32,
acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G,
- blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>,
- csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>,
- cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>,
- cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>,
+ blink=\E[5m, bold=\E[1m, clear=\E[2J\E[1;1H$<20>,
+ cr=\r$<1>, csr=\E[%i%p1%d;%p2%dr$<5>,
+ cub=\E[%p1%dD$<5>, cub1=\E[D$<5>, cud=\E[%p1%dB$<5>,
+ cud1=\E[B$<5>, cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>,
cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>,
cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>,
dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~,
@@ -18458,19 +19086,18 @@ ncr260vt200an|NCR 2900_260 vt200 with ansi kybd,
is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<
200>,
kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
- kf2=\EOQ, kf20=\E[34~, kf21=\E[31~, kf22=\E[32~,
- kf23=\E[33~, kf24=\E[34~, kf25=\E[35~, kf26=\E[1~,
- kf27=\E[2~, kf28=\E[3~, kf29=\E[4~, kf3=\EOR, kf30=\E[5~,
- kf31=\E[6~, kf32=\E[7~, kf33=\E[8~, kf34=\E[9~,
- kf35=\E[10~, kf4=\EOS, kf5=\E[M, kf6=\E[17~, kf7=\E[18~,
- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~,
- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~,
- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m,
- ri=\EM$<5>, rmacs=\017$<20>, rmam=\E[?7l, rmir=\E[4l,
- rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
+ kf0=\EOy, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ,
+ kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, kf23=\E[33~,
+ kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, kf27=\E[2~,
+ kf28=\E[3~, kf29=\E[4~, kf3=\EOR, kf30=\E[5~, kf31=\E[6~,
+ kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, kf35=\E[10~, kf4=\EOS,
+ kf5=\E[M, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ khlp=\E[28~, krdo=\E[29~, mc0=\E[i, mc4=\E[4i, mc5=\E[5i,
+ nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=\017$<20>,
+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
+ rmul=\E[24m,
rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<
200>,
sc=\E7,
@@ -18479,7 +19106,7 @@ ncr260vt200an|NCR 2900_260 vt200 with ansi kybd,
sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>,
- use=vt220+keypad,
+ use=vt220+vtedit, use=vt220+cvis, use=vt220+keypad,
ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd,
cols#132,
cup=\E[%i%p1%d;%p2%dH$<30>,
@@ -18503,11 +19130,10 @@ ncr260vt300an|NCR 2900_260 vt300 with ansi kybd,
am, hs, mir, msgr, xenl, xon,
cols#80, lines#24, nlab#32,
acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G,
- blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>,
- csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>,
- cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>,
- cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>,
+ blink=\E[5m, bold=\E[1m, clear=\E[2J\E[1;1H$<20>,
+ cr=\r$<1>, csr=\E[%i%p1%d;%p2%dr$<5>,
+ cub=\E[%p1%dD$<5>, cub1=\E[D$<5>, cud=\E[%p1%dB$<5>,
+ cud1=\E[B$<5>, cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>,
cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>,
cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>,
dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~,
@@ -18518,19 +19144,17 @@ ncr260vt300an|NCR 2900_260 vt300 with ansi kybd,
is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1
;1H\E>$<200>,
kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
- kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~,
- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
- kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, kf23=\E[33~,
- kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, kf27=\E[2~,
- kf28=\E[3~, kf29=\E[4~, kf30=\E[5~, kf31=\E[6~, kf32=\E[7~,
- kf33=\E[8~, kf34=\E[9~, kf35=\E[10~, kf5=\E[M, kf6=\E[17~,
- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
- khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
- krdo=\E[29~, kslt=\E[4~, mc0=\E[i, mc4=\E[4i, mc5=\E[5i,
- nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=\017$<20>,
- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
- rmul=\E[24m,
+ kf0=\EOy, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
+ kf21=\E[31~, kf22=\E[32~, kf23=\E[33~, kf24=\E[34~,
+ kf25=\E[35~, kf26=\E[1~, kf27=\E[2~, kf28=\E[3~,
+ kf29=\E[4~, kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, kf33=\E[8~,
+ kf34=\E[9~, kf35=\E[10~, kf5=\E[M, kf6=\E[17~, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, khlp=\E[28~, krdo=\E[29~, mc0=\E[i,
+ mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>,
+ rmacs=\017$<20>, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>,
+ rmso=\E[27m, rmul=\E[24m,
rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1
;1H\E>$<200>,
sc=\E7,
@@ -18539,7 +19163,7 @@ ncr260vt300an|NCR 2900_260 vt300 with ansi kybd,
sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>,
- use=vt220+keypad,
+ use=vt220+vtedit, use=vt220+cvis, use=vt220+keypad,
ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd,
cols#132,
cup=\E[%i%p1%d;%p2%dH$<30>,
@@ -18576,17 +19200,17 @@ NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd,
# if the 'pairs' capability is defined. Un-Comment the 'pairs'
# capability and recompile if you wish to have it included.
#
-ncr260wy325pp|NCR 2900_260 wyse 325,
+ncr260wy325pp|NCR 2900_260 Wyse 325,
am, bw, hs, km, mc5i, mir, msgr, xon,
colors#16, cols#80, lines#24, ncv#33, nlab#32,
- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2,
+ acsc=07a?h;j5k3l2m1n8q:t4u9v=w0x6, bel=^G, blink=\EG2,
cbt=\EI, civis=\E`0, clear=\E*$<10>, cnorm=\E`1, cr=\r,
cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>,
cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, dsl=\E`c,
ed=\Ey$<5>, el=\Et$<5>, fsl=\r, home=\036$<5>, ht=^I,
hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1,
- is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9
+ is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"\Ee4\Ex@\E`9
\Ee7$<100>,
kDC=\ER, kEND=\EY, kHOM=\E{, kNXT=\EK, kPRT=\E7, kPRV=\EJ,
kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI,
@@ -18602,7 +19226,7 @@ ncr260wy325pp|NCR 2900_260 wyse 325,
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>,
nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0,
rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9
+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"\Ee4\Ex@\E`9
\Ee7$<100>,
setb=\s,
setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}
@@ -18614,7 +19238,7 @@ ncr260wy325pp|NCR 2900_260 wyse 325,
sgr0=\EG0\EcB0\EcD$<15>, smacs=\EH\002\EcB1, smam=\Ed/,
smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0,
tsl=\EF,
-ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode,
+ncr260wy325wpp|NCR 2900_260 Wyse 325 wide mode,
cols#132,
cup=\Ea%i%p1%dR%p2%dC$<30>,
is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9
@@ -18638,17 +19262,17 @@ ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode,
# with the 'pairs' capability defined as below. If you wish to
# have it included, Un-comment it and recompile (using 'tic').
#
-ncr260wy350pp|NCR 2900_260 wyse 350,
+ncr260wy350pp|NCR 2900_260 Wyse 350,
am, bw, hs, km, mc5i, mir, msgr, xon,
colors#16, cols#80, lines#24, ncv#33, nlab#32, pairs#16, xmc#1,
- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2,
+ acsc=07a?h;j5k3l2m1n8q:t4u9v=w0x6, bel=^G, blink=\EG2,
cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=\r,
cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<40>, cuu1=\013$<5>,
cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c,
ed=\Ey$<5>, el=\Et$<5>, fsl=\r, home=\036$<10>, ht=^I,
hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1,
- is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9
+ is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"\Ee4\Ex@\E`9
\Ee7$<100>,
kDC=\ER, kEND=\EY, kHOM=\E{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H,
kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=\n, kcuf1=^L,
@@ -18664,7 +19288,7 @@ ncr260wy350pp|NCR 2900_260 wyse 350,
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<20>,
nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0,
rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9
+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"\Ee4\Ex@\E`9
\Ee7$<100>,
setb=\s,
setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}
@@ -18676,7 +19300,7 @@ ncr260wy350pp|NCR 2900_260 wyse 350,
sgr0=\EG0\EH\003\EcD, smacs=\EH\002\EcB1, smam=\Ed/,
smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0,
tsl=\EF,
-ncr260wy350wpp|NCR 2900_260 wyse 350 wide mode,
+ncr260wy350wpp|NCR 2900_260 Wyse 350 wide mode,
cols#132,
cup=\Ea%i%p1%dR%p2%dC$<30>,
is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9
@@ -18694,7 +19318,7 @@ ncr260wy350wpp|NCR 2900_260 wyse 350 wide mode,
# restored if needed.
# (ncr260wy50+pp: originally contained commented-out
# <acsc=j5k3l2m1n8q:t4u9v=w0x6>, as well as the commented-out one there -- esr)
-ncr260wy50+pp|NCR 2900_260 wyse 50+,
+ncr260wy50+pp|NCR 2900_260 Wyse 50+,
am, bw, hs, km, mc5i, mir, msgr, xon,
cols#80, lines#24, nlab#32, xmc#1,
acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2,
@@ -18705,7 +19329,7 @@ ncr260wy50+pp|NCR 2900_260 wyse 50+,
ed=\EY$<5>, el=\ET$<5>, fsl=\r, home=\036$<10>,
ht=\011$<5>, hts=\E1$<5>, il1=\EE$<5>, ind=\n$<5>,
invis=\EG1,
- is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"
+ is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
\Ee4\Ex@\E`9\Ee7$<100>,
kDC=\ER, kEND=\EY, kHOM=\E{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H,
kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=\n, kcuf1=^L,
@@ -18721,11 +19345,11 @@ ncr260wy50+pp|NCR 2900_260 wyse 50+,
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<10>,
nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed.,
rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
- rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"
+ rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
\Ee4\Ex@\E`9\Ee7$<100>,
sgr0=\EG0\EH\003$<15>, smacs=\EH^B, smam=\Ed/, smir=\Eq,
smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0$<5>, tsl=\EF,
-ncr260wy50+wpp|NCR 2900_260 wyse 50+ wide mode,
+ncr260wy50+wpp|NCR 2900_260 Wyse 50+ wide mode,
cols#132,
cup=\Ea%i%p1%dR%p2%dC$<30>,
is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"
@@ -18733,10 +19357,10 @@ ncr260wy50+wpp|NCR 2900_260 wyse 50+ wide mode,
rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"
\Ee4\Ex@\E`9\Ee7$<200>,
use=ncr260wy50+pp,
-ncr260wy60pp|NCR 2900_260 wyse 60,
+ncr260wy60pp|NCR 2900_260 Wyse 60,
am, bw, hs, km, mc5i, mir, msgr, xon,
cols#80, lines#24, nlab#32,
- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2,
+ acsc=07a?h;j5k3l2m1n8q:t4u9v=w0x6, bel=^G, blink=\EG2,
cbt=\EI$<15>, civis=\E`0, clear=\E*$<100>, cnorm=\E`1,
cr=\r, cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>,
cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>,
@@ -18744,7 +19368,7 @@ ncr260wy60pp|NCR 2900_260 wyse 60,
ed=\Ey$<5>, el=\Et$<5>, fsl=\r, home=\036$<25>,
ht=\011$<15>, hts=\E1$<15>, il1=\EE$<5>, ind=\n$<5>,
invis=\EG1,
- is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"
+ is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
\Ee4\Ex@\E`9\Ee7$<100>,
kDC=\ER, kEND=\EY, kHOM=\E{, kNXT=\EK, kPRT=\E7, kPRV=\EJ,
kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK,
@@ -18760,12 +19384,12 @@ ncr260wy60pp|NCR 2900_260 wyse 60,
mrcup=\Ew@%p1%{48}%+%c%p2%{32}%+%c%p3%{32}%+%c$<30>,
nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH^C, rmam=\Ed.,
rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20,
- rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"
+ rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`:\E`@\E~!\E"
\Ee4\Ex@\E`9\Ee7$<100>,
sgr0=\EG0\EcB0\EcD$<15>, smacs=\EH^B, smam=\Ed/,
smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0$<15>,
tsl=\EF,
-ncr260wy60wpp|NCR 2900_260 wyse 60 wide mode,
+ncr260wy60wpp|NCR 2900_260 Wyse 60 wide mode,
cols#132,
cup=\Ea%i%p1%dR%p2%dC$<30>,
is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"
@@ -18801,13 +19425,13 @@ ncr160vt300wan|NCR 2900_160 vt300 wide mode ansi kybd,
use=ncr260vt300wan,
ncr160vt300wpp|NCR 2900_160 vt300 wide mode pc+ kybd,
use=ncr260vt300wpp,
-ncr160wy50+pp|NCR 2900_160 wyse 50+,
+ncr160wy50+pp|NCR 2900_160 Wyse 50+,
use=ncr260wy50+pp,
-ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode,
+ncr160wy50+wpp|NCR 2900_160 Wyse 50+ wide mode,
use=ncr260wy50+wpp,
-ncr160wy60pp|NCR 2900_160 wyse 60,
+ncr160wy60pp|NCR 2900_160 Wyse 60,
use=ncr260wy60pp,
-ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode,
+ncr160wy60wpp|NCR 2900_160 Wyse 60 wide mode,
use=ncr260wy60wpp,
ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal,
am, hs, mc5i, mir, msgr, xon,
@@ -18835,7 +19459,7 @@ ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal,
B\E)0\E%/0n\E[P\031$<200>,
sc=\E7,
sgr=%?%p9%t\016%e\017%;\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1
- %p3%|%t;7%;%?%p4%t;5%;m$<100>,
+ %p3%|%t;7%;%?%p4%t;5%;m$<120>,
sgr0=\017\E[0m$<120>, smacs=\016$<90>, smir=\E[4h$<80>,
smso=\E[7m$<30>, smul=\E[4m$<30>, tbc=\E[3g$<40>,
tsl=\E[>+1$<70>,
@@ -18901,7 +19525,7 @@ ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal,
# P4 <==> Blink attribute parameter
# P5 <==> Dim attribute parameter
# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO.
-ncr7900i|ncr7900|n7900|ncr 7900 model 1,
+ncr7900i|ncr7900|n7900|NCR 7900 model 1,
am, bw, ul,
cols#80, lines#24, xmc#1,
bel=^G, blink=\E0B, clear=^L, cr=\r, cub1=^H, cud1=\n, cuf1=^F,
@@ -18912,7 +19536,7 @@ ncr7900i|ncr7900|n7900|ncr 7900 model 1,
sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}
%*%+%c,
sgr0=\E0@, smso=\E0Q, smul=\E0`,
-ncr7900iv|ncr 7900 model 4,
+ncr7900iv|NCR 7900 model 4,
am, bw, eslok, hs,
cols#80, lines#24,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n,
@@ -18926,7 +19550,7 @@ ncr7900iv|ncr 7900 model 4,
# The user can enter a CTRL-B to get out of this locked state.
# In <hpa>, we want to output the character given by the formula:
# ((col / 10) * 16) + (col % 10) where "col" is "p1"
-ncr7901|ncr 7901 model,
+ncr7901|NCR 7901 model,
am, bw, ul,
cols#80, lines#24,
bel=^G, blink=\E0B, civis=^W, clear=^L, cnorm=^X, cr=\r,
@@ -18958,7 +19582,7 @@ ncr7901|ncr 7901 model,
# NDR 9500
# Manufactured in the early/mid eighties, behaves almost the same as a
-# Televideo 950. Take a 950, change its cabinet for a more 80s-ish one (but
+# TeleVideo 950. Take a 950, change its cabinet for a more 80s-ish one (but
# keep the same keyboard layout), add an optional 25-line mode, replace the DIP
# switches with a menu and remove the "lock line" feature (ESC ! 1 and ESC !
# 2), here is the NDR 9500. Even the line-lock, albeit disabled, is
@@ -18981,8 +19605,8 @@ ndr9500|nd9500|Newbury Data 9500,
kf21=^Ai\r, kf22=^Aj\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r,
kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
kich1=\EQ, kil1=\EE, kprt=\EP, mc4=\Ea, mc5=\E`, nel=^_,
- pfloc=\E|%{48}%p1%+%c2%p2\031,
- pfx=\E|%{48}%p1%+%c1%p2\031, prot=\E), ri=\Ej,
+ pfloc=\E|%{48}%p1%+%c2%p2%s\031,
+ pfx=\E|%{48}%p1%+%c1%p2%s\031, prot=\E), ri=\Ej,
rmacs=\E%%, rmir=\Er, rmso=\E(, rmxon=^N,
sgr=\EG0\E%%%%\E(%?%p1%p5%p8%|%|%t\E)%;%?%p9%t\E$%;,
sgr0=\EG0\E%%\E(, smacs=\E$, smir=\Eq, smso=\E), smxon=^O,
@@ -19023,20 +19647,20 @@ ndr9500-25-mc-nl|NDR 9500 with 25 lines and magic cookies and no status line,
# These are official terminfo entries from within Perkin-Elmer.
#
-bantam|pe550|pe6100|perkin elmer 550,
+bantam|pe550|pe6100|Perkin Elmer 550,
OTbs,
cols#80, lines#24,
bel=^G, clear=\EK$<20>, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
el=\EI$<20>, home=\EH, ind=\n, ll=\EH\EA,
-fox|pe1100|perkin elmer 1100,
+fox|pe1100|Perkin Elmer 1100,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\EH\EJ$<132>, cr=\r, cub1=^H, cud1=\n,
cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
ed=\EJ$<5.5*>, el=\EI, flash=\020\002$<200/>\020\003,
home=\EH, hts=\E1, ind=\n, ll=\EH\EA, tbc=\E3,
-owl|pe1200|perkin elmer 1200,
+owl|pe1200|Perkin Elmer 1200,
OTbs, am, in,
cols#80, lines#24,
bel=^G, clear=\EH\EJ$<132>, cr=\r, cub1=^H, cud1=\n,
@@ -19047,7 +19671,7 @@ owl|pe1200|perkin elmer 1200,
kbs=^H, kf0=\ERJ, kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD,
kf5=\ERE, kf6=\ERF, kf7=\ERG, kf8=\ERH, kf9=\ERI, ll=\EH\EA,
rmso=\E!\0, sgr0=\E!\0, smso=\E!^H, tbc=\E3,
-pe1251|pe6300|pe6312|perkin elmer 1251,
+pe1251|pe6300|pe6312|Perkin Elmer 1251,
am,
cols#80, it#8, lines#24, pb#300, vt#8, xmc#1,
bel=^G, clear=\EK$<332>, cr=\r, cub1=\ED, cud1=\EB, cuf1=\EC,
@@ -19058,7 +19682,7 @@ pe1251|pe6300|pe6312|perkin elmer 1251,
# (pe7000m: this had
# rmul=\E!\0, smul=\E!\040,
# which is probably wrong, it collides with kf0
-pe7000m|perkin elmer 7000 series monochrome monitor,
+pe7000m|Perkin Elmer 7000 series monochrome monitor,
am,
cols#80, lines#24,
bel=^G, cbt=\E!Y, clear=\EK, cr=\r, cub1=\ED, cud1=\EB,
@@ -19069,7 +19693,7 @@ pe7000m|perkin elmer 7000 series monochrome monitor,
kf10=\E!\n, kf2=\E!^B, kf3=\E!^C, kf4=\E!^D, kf5=\E!^E,
kf6=\E!^F, kf7=\E!^G, kf8=\E!^H, kf9=\E!^I, khome=\E!S,
ll=\ES7\s, ri=\ER,
-pe7000c|perkin elmer 7000 series colour monitor,
+pe7000c|Perkin Elmer 7000 series colour monitor,
is1=\E!\0\EW 7o\Egf\Eb0\Ec7\ES7\s, rmso=\Eb0,
rmul=\E!\0, smso=\Eb2, smul=\E!\s, use=pe7000m,
@@ -19082,7 +19706,7 @@ pe7000c|perkin elmer 7000 series colour monitor,
# utility under control of CP/M Plus 1R1. The functionality
# provided is comparable to the DEC vt100.
# (uts30: I added <rmam>/<smam> based on the init string -- esr)
-uts30|sperry uts30 with cp/m@1R1,
+uts30|Sperry UTS30 with cp/m@1R1,
am, bw, hs,
cols#80, lines#24, wsl#40,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -19145,36 +19769,36 @@ dmterm|deskmate terminal,
dt100|dt-100|Tandy DT-100 terminal,
xon,
cols#80, lines#24, xmc#1,
- acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
- csr=\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B, cuf1=\E[C,
- cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P,
- dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@,
- il1=\E[L, ind=\n, is2=\E[?3l\E)0\E(B, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[?3i,
+ acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, clear=\E[H\E[2J,
+ cr=\r, csr=\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B,
+ cuf1=\E[C, cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A,
+ dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
+ ich1=\E[@, il1=\E[L, ind=\n, is2=\E[?3l\E)0\E(B,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[?3i,
kf10=\E[?5i, kf2=\E[2i, kf3=\E[@, kf4=\E[M, kf5=\E[17~,
kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, khome=\E[H,
knp=\E[29~, kpp=\E[28~, lf1=f1, lf2=f2, lf3=f3, lf4=f4, lf5=f5,
lf6=f6, lf7=f7, lf8=f8, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m,
sgr0=\E[m, smacs=^N, smso=\E[7m, smul=\E[4m,
+ use=vt220+cvis,
dt100w|dt-100w|Tandy DT-100 terminal (wide mode),
cols#132, use=dt100,
dt110|Tandy DT-110 emulating ansi,
xon,
cols#80, lines#24,
- acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l,
- clear=\E[H\E[2J, cnorm=\E[?25h, cr=\r,
- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C,
- cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[0P,
- dl1=\E[0M, ed=\E[0J, el=\E[0K, enacs=\E(B\E)0, home=\E[H,
- ht=^I, ich1=\E[0@, il1=\E[0L, ind=\n, is2=\E[?3l\E)0\E(B,
- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[K,
- kf1=\E[1~, kf10=\E[10~, kf2=\E[2~, kf3=\E[3~, kf4=\E[4~,
- kf5=\E[5~, kf6=\E[6~, kf7=\E[7~, kf8=\E[8~, kf9=\E[9~,
- khome=\E[G, kich1=\E[@, knp=\E[26~, kpp=\E[25~, lf0=f1,
- lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf8=f9,
- lf9=f10, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m, sgr0=\E[m,
- smacs=^N, smso=\E[7m, smul=\E[4m,
+ acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, clear=\E[H\E[2J,
+ cr=\r, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B,
+ cuf1=\E[C, cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A,
+ dch1=\E[0P, dl1=\E[0M, ed=\E[0J, el=\E[0K, enacs=\E(B\E)0,
+ home=\E[H, ht=^I, ich1=\E[0@, il1=\E[0L, ind=\n,
+ is2=\E[?3l\E)0\E(B, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
+ kcuu1=\E[A, kend=\E[K, kf1=\E[1~, kf10=\E[10~, kf2=\E[2~,
+ kf3=\E[3~, kf4=\E[4~, kf5=\E[5~, kf6=\E[6~, kf7=\E[7~,
+ kf8=\E[8~, kf9=\E[9~, khome=\E[G, kich1=\E[@, knp=\E[26~,
+ kpp=\E[25~, lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6,
+ lf6=f7, lf7=f8, lf8=f9, lf9=f10, ri=\EM, rmacs=^O, rmso=\E[m,
+ rmul=\E[m, sgr0=\E[m, smacs=^N, smso=\E[7m, smul=\E[4m,
+ use=vt220+cvis,
pt210|TRS-80 PT-210 printing terminal,
hc, os,
cols#80,
@@ -19188,25 +19812,25 @@ pt210|TRS-80 PT-210 printing terminal,
# area" for interactive text.
#
-tek|tek4012|tektronix 4012,
+tek|tek4012|Tektronix 4012,
OTbs, os,
cols#75, lines#35,
bel=^G, clear=\E\014$<1000>, cr=\r, cub1=^H, cud1=\n,
ff=\014$<1000>, is2=\E^O,
# (tek4013: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr)
-tek4013|tektronix 4013,
+tek4013|Tektronix 4013,
acsc=, rmacs=\E^O, smacs=\E^N, use=tek4012,
-tek4014|tektronix 4014,
+tek4014|Tektronix 4014,
cols#81, lines#38,
is2=\E\017\E9, use=tek4012,
# (tek4015: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr)
-tek4015|tektronix 4015,
+tek4015|Tektronix 4015,
acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014,
-tek4014-sm|tektronix 4014 in small font,
+tek4014-sm|Tektronix 4014 in small font,
cols#121, lines#58,
- is2=\E\017\E\:, use=tek4014,
+ is2=\E\017\E:, use=tek4014,
# (tek4015-sm: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr)
-tek4015-sm|tektronix 4015 in small font,
+tek4015-sm|Tektronix 4015 in small font,
acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014-sm,
# Tektronix 4023 from Andrew Klossner <orca!andrew.tektronix@csnet-relay>
#
@@ -19217,7 +19841,7 @@ tek4015-sm|tektronix 4015 in small font,
# live with Magic Cookie, remove the :so: and :se: fields and do without
# reverse video. If you like reverse video stand-out mode but don't want
# it to flash, change the letter 'H' to 'P' in the :so: field.
-tek4023|tektronix 4023,
+tek4023|Tektronix 4023,
OTbs, am,
OTdN#4, cols#80, lines#24, vt#4, xmc#1,
OTnl=\n, bel=^G, clear=\E\014$<4/>, cr=\r, cub1=^H, cud1=\n,
@@ -19238,7 +19862,7 @@ tek4023|tektronix 4023,
# <il1> and <il> had 145ms of padding, but that slowed down vi's ^U
# and didn't seem necessary.
#
-tek4024|tek4025|tek4027|tektronix 4024/4025/4027,
+tek4024|tek4025|tek4027|Tektronix 4024/4025/4027,
OTbs, am, da, db,
cols#80, it#8, lines#34, lm#0,
bel=^G, clear=\037era\r\n\n, cmdch=^_, cr=\r,
@@ -19254,14 +19878,14 @@ tek4024|tek4025|tek4027|tektronix 4024/4025/4027,
\037lea\sf5\r,
smkx=\037lea\sp4\s/h/\r\037lea\sp8\s/k/\r\037lea\sp6\s/\s/
\r\037lea\sp2\s/j/\r\037lea\sf5\s/H/\r,
-tek4025-17|tek 4025 17 line window,
+tek4025-17|Tektronix 4025 17 line window,
lines#17, use=tek4025,
-tek4025-17-ws|tek 4025 17 line window in workspace,
+tek4025-17-ws|Tektronix 4025 17 line window in workspace,
is2=!com\s31\r\n\037sto\s9\s17\s25\s33\s41\s49\s57\s65\s73
\r\037wor\s17\r\037mon\s17\r,
rmcup=\037mon h\r, rmso=\037att s\r, smcup=\037wor h\r,
smso=\037att e\r, use=tek4025-17,
-tek4025-ex|tek4027-ex|tek 4025/4027 w/!,
+tek4025-ex|tek4027-ex|Tektronix 4025/4027 w/!,
is2=\037com 33\r\n!sto 9 17 25 33 41 49 57 65 73\r,
rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025,
# Tektronix 4025a
@@ -19305,7 +19929,7 @@ tek4025a|Tektronix 4025A,
# not try to scroll, or cursor addressing won't work. Also, you can't
# see the cursor.)
# (This "learns" the arrow keys for rogue. I have adapted it for termcap - mrh)
-tek4025-cr|tek 4025 for curses and rogue,
+tek4025-cr|Tektronix 4025 for curses and rogue,
OTbs, am,
cols#80, it#8, lines#33,
clear=\037era;, cub1=^H, cud1=^F\n, cuf1=\037rig;,
@@ -19315,11 +19939,11 @@ tek4025-cr|tek 4025 for curses and rogue,
# next two lines commented out since curses only allows 128 chars, sigh.
# :ti=\037lea p1/b/\037lea p2/j/\037lea p3/n/\037lea p4/h/\037lea p5/ /\037lea p6/l/\037lea p7/y/\037lea p8/k/\037lea p9/u/\037lea p./f/\037lea pt/`era w/13\037lea p0/s/\037wor 33h:\
# :te=\037lea p1\037lea p2\037lea p3\037lea p4\037lea pt\037lea p5\037lea p6\037lea p7\037lea p8\037lea p9/la/13\037lea p.\037lea p0\037wor 0:
-tek4025ex|4025ex|4027ex|tek 4025 w/!,
+tek4025ex|4025ex|4027ex|Tektronix 4025 w/!,
is2=\037com\s33\r\n!sto\s9\,17\,25\,33\,41\,49\,57\,65\,73
\r,
rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025,
-tek4105|tektronix 4105,
+tek4105|Tektronix 4105,
OTbs, am, mir, msgr, ul, xenl, xt,
cols#79, it#8, lines#29,
acsc=, bel=^G, blink=\E[=3;<7m, bold=\E[=7;<4m, cbt=\E[Z,
@@ -19335,7 +19959,7 @@ tek4105|tektronix 4105,
smul=\E[=5;<2m, tbc=\E[1g,
# (tek4105-30: I added <rmam>/<smam> based on the init string -- esr)
-tek4105-30|4015 emulating 30 line vt100,
+tek4105-30|Tektronix 4015 emulating 30 line vt100,
am, mir, msgr, xenl, xon,
cols#80, it#8, lines#30, vt#3,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -19449,6 +20073,13 @@ tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109,
smkx=\E[?1h\E=, smso=\E[7;42m, smul=\E[4m, tbc=\E[3g,
use=ecma+index,
+# Refer to:
+# TEK Programmer's Reference
+# Part No. 070-4893-00
+# Product Group 18
+# 4107/4109 Computer Display Terminal
+# November 1983
+#
# Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code:
# 0 selects Tek mode, i.e., \E%!0
# 1 selects ANSI mode
@@ -19457,8 +20088,10 @@ tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109,
#
# One odd thing about the description (which has been unchanged since the 90s)
# is that the cursor addressing is using VT52 mode, and a few others use the
-# VT52's non-CSI versions of ANSI, e.g., \EJ.
-tek4107|tek4109|tektronix terminals 4107 4109,
+# VT52's non-CSI versions of ANSI, e.g., \EJ. A possible explanation is that
+# the developer used Emacs, which misuses cvvis (this description sets VT52
+# mode in that capability).
+tek4107|tek4109|Tektronix terminals 4107 4109,
OTbs, am, mir, msgr, ul, xenl, xt,
cols#79, it#8, lines#29,
bel=^G, blink=\E%!1\E[5m$<2>\E%!0,
@@ -19497,13 +20130,13 @@ tek4207-s|Tektronix 4207 with sysline but no memory,
#
# 'vi' works reasonably well with this entry.
#
-otek4112|o4112-nd|otek4113|otek4114|old tektronix 4110 series,
+otek4112|o4112-nd|otek4113|otek4114|old Tektronix 4110 series,
am,
cols#80, lines#34,
bel=^G, clear=\E^L, cr=\r, cub1=^H, cud1=\n, cuu1=^K, ind=\n,
rmcup=\EKA1\ELV1, smcup=\EKA0\ELV0\EMG0,
# The 4112 with the ANSI compatibility enhancement
-tek4112|tek4114|tektronix 4110 series,
+tek4112|tek4114|Tektronix 4110 series,
OTbs, am, db,
cols#80, lines#34,
cbt=\E[Z, clear=\E[2J\E[0;0H, cub1=^H, cud1=\E[B,
@@ -19511,30 +20144,30 @@ tek4112|tek4114|tektronix 4110 series,
dl1=\E[M, ed=\E[0J, el=\E[0K, ich1=\E[@, il1=\E[L,
ind=\E7\E[0;0H\E[M\E8, is2=\E3!1, ri=\E7\E[0;0H\E[L\E8,
rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-tek4112-nd|4112 not in dialog area,
+tek4112-nd|Tektronix 4112 not in dialog area,
OTns,
cuu1=^K, use=tek4112,
-tek4112-5|4112 in 5 line dialog area,
+tek4112-5|Tektronix 4112 in 5 line dialog area,
lines#5, use=tek4112,
# (tek4113: this used to have "<cuf1=\LM1\s\LM0>", someone's mistake;
# removed "<smacs=\E^N>, <rmacs=\E^O>", which had been commented out in 8.3.
# Note, the !0 and !1 sequences in <rmcup>/<smcup>/<cnorm>/<civis> were
# previously \0410 and \0411 sequences...I don't *think* they were supposed
# to be 4-digit octal -- esr)
-tek4113|tektronix 4113 color graphics with 5 line dialog area,
+tek4113|Tektronix 4113 color graphics with 5 line dialog area,
OTbs, am, da, eo,
cols#80, lines#5,
clear=\ELZ, cub1=^H, cud1=\n, cuf1=\ELM1 \ELM0,
flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4
\ERBA4\ERBA4\ERB0,
is2=\EKA1\ELL5\ELV0\ELV1, uc=\010\ELM1_\ELM0,
-tek4113-34|tektronix 4113 color graphics with 34 line dialog area,
+tek4113-34|Tektronix 4113 color graphics with 34 line dialog area,
lines#34,
is2=\EKA1\ELLB2\ELV0\ELV1, use=tek4113,
# :ns: left off to allow vi visual mode. APL font (:as=\E^N:/:ae=\E^O:) not
# supported here. :uc: is slow, but looks nice. Suggest setenv MORE -up .
# :vb: needs enough delay to let you see the background color being toggled.
-tek4113-nd|tektronix 4113 color graphics with no dialog area,
+tek4113-nd|Tektronix 4113 color graphics with no dialog area,
OTbs, am, eo,
cols#80, it#8, lines#34,
clear=\E^L, cub1=^H, cud1=\n, cuf1=^I, cuu1=^K,
@@ -19561,7 +20194,7 @@ otek4115|Tektronix 4115,
rmkx=\E>, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h,
smcup=\E%!0\ELBB2\E%!1, smir=\E[4h, smkx=\E=, smso=\E[7m,
smul=\E[4m,
-tek4115|newer tektronix 4115 entry with more ANSI capabilities,
+tek4115|newer Tektronix 4115 entry with more ANSI capabilities,
am, xon,
cols#80, lines#34,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
@@ -19580,12 +20213,12 @@ tek4115|newer tektronix 4115 entry with more ANSI capabilities,
# The tek4125 emulates a vt100 incorrectly - the scrolling region
# command is ignored. The following entry replaces <csr> with the needed
# <il>, <il>, and <smir>; removes some cursor pad commands that the tek4125
-# chokes on; and adds a lot of initialization for the tek dialog area.
+# chokes on; and adds a lot of initialization for the Tektronix dialog area.
# Note that this entry uses all 34 lines and sets the cursor color to green.
# Steve Jacobson 8/85
# (tek4125: there were two "\!"s in the is that I replaced with "\E!";
# commented out, <smir>=\E1 because there's no <rmir> -- esr)
-tek4125|tektronix 4125,
+tek4125|Tektronix 4125,
lines#34,
csr@, dl1=\E[1M, il1=\E[1L,
is2=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2
@@ -19617,7 +20250,7 @@ tek4207|Tektronix 4207 graphics terminal with memory,
# From: <carolyn@dali.berkeley.edu> Thu Oct 31 12:54:27 1985
# (tek4404: There was a "\!" in <smcup> that I replaced with "\E!".
# Tab had been given as \E2I,that must be the tab-set capability -- esr)
-tek4404|tektronix 4404,
+tek4404|Tektronix 4404,
OTbs,
cols#80, it#8, lines#32,
blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J,
@@ -19634,7 +20267,7 @@ tek4404|tektronix 4404,
# string which sets a ct8500 into monitor mode (aka 4025 snoopy
# mode). The is string here cleans up a few things (but not
# everything).
-ct8500|tektronix ct8500,
+ct8500|Tektronix ct8500,
am, bw, da, db,
cols#80, lines#25,
bel=^G, cbt=\E^I, clear=\E^E, cr=\r, cub1=^H, cud1=\n,
@@ -19651,12 +20284,12 @@ ct8500|tektronix ct8500,
# version of xenl, perhaps am + xenl would work!)
#
# Bold, dim, and standout are simulated by colors and thus not allowed
-# with colors. The tektronix color table is mapped into the RGB color
+# with colors. The Tektronix color table is mapped into the RGB color
# table by setf/setb. All colors are reset to factory specifications by oc.
# The <initc> cap uses RGB notation to define colors. for arguments 1-3 the
# interval (0-1000) is broken into 8 smaller sub-intervals (125). Each sub-
# interval then maps into pre-defined value.
-tek4205|tektronix 4205,
+tek4205|Tektronix 4205,
ccc, mir, msgr,
colors#8, cols#80, it#8, lines#30, ncv#49, pairs#63,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -19672,12 +20305,12 @@ tek4205|tektronix 4205,
%e%p1%{3}%=%t5%e%p1%{4}%=%t2%e%p1%{5}%=%t6%e%p1%{6}%=
%t7%e1%;%?%p2%{125}%<%t0%e%p2%{250}%<%tA2%e%p2%{375}%<
%tA?%e%p2%{500}%<%tC8%e%p2%{625}%<%tD4%e%p2%{750}%<%tE
- 1%e%p2%{875}%<%tE\:%eF4%;%?%p3%{125}%<%t0%e%p3%{250}%<
+ 1%e%p2%{875}%<%tE:%eF4%;%?%p3%{125}%<%t0%e%p3%{250}%<
%tA2%e%p3%{375}%<%tA?%e%p3%{500}%<%tC8%e%p3%{625}%<%tD
- 4%e%p3%{750}%<%tE1%e%p3%{875}%<%tE\:%eF4%;%?%p4%{125}
- %<%t0%e%p4%{250}%<%tA2%e%p4%{375}%<%tA?%e%p4%{500}%<%t
- C8%e%p4%{625}%<%tD4%e%p4%{750}%<%tE1%e%p4%{875}%<%tE\:
- %eF4%;\E%%!1,
+ 4%e%p3%{750}%<%tE1%e%p3%{875}%<%tE:%eF4%;%?%p4%{125}%<
+ %t0%e%p4%{250}%<%tA2%e%p4%{375}%<%tA?%e%p4%{500}%<%tC8
+ %e%p4%{625}%<%tD4%e%p4%{750}%<%tE1%e%p4%{875}%<%tE:%eF
+ 4%;\E%%!1,
invis=\E[=6;<5, is1=\E%!0\ETM1\E%!1\E[m, kbs=^H,
kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOA,
kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EP, kf5=\EQ, kf6=\ER,
@@ -19727,7 +20360,7 @@ tty37|model 37 teletype,
# a "newline" style terminal (-crmode) vi figures all it needs is nl
# to get crlf, even if <cr> is not ^M.)
# (tty40: removed obsolete ":nl=\EG\EB:", it's just do+cr -- esr)
-tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2,
+tty40|ds40|ds40-2|dataspeed40|Teletype dataspeed 40/2,
OTbs, xon,
cols#80, lines#24,
clear=\EH$<20>\EJ$<80>, cr=\EG, cub1=^H, cud1=\EB,
@@ -19765,24 +20398,24 @@ scanset|sc410|sc415|Tymshare Scan Set,
# Missing in vc303a and vc303 descriptions: they scroll 2 lines at a time
# every other linefeed.
-vc303|vc103|vc203|volker-craig 303,
+vc303|vc103|vc203|Volker-Craig 303,
OTbs, OTns, am,
cols#80, lines#24,
bel=^G, clear=\014$<40>, cr=\r, cub1=^H, cud1=\n, cuf1=^I,
cuu1=^N, home=\013$<40>, kcub1=^H, kcud1=\n, kcuf1=^I,
kcuu1=^N, ll=\017$<1>W,
-vc303a|vc403a|volker-craig 303a,
+vc303a|vc403a|Volker-Craig 303a,
clear=\030$<40>, cuf1=^U, cuu1=^Z, el=\026$<20>,
home=\031$<40>, kcuf1=^U, kcuu1=^Z, ll=^P, use=vc303,
# (vc404: removed obsolete ":ma=^Z^P^U :" -- esr)
-vc404|volker-craig 404,
+vc404|Volker-Craig 404,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\030$<40>, cr=\r, cub1=^H, cud1=\n, cuf1=^U,
cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z,
ed=\027$<40>, el=\026$<20>, home=\031$<40>, ind=\n,
kcub1=^H, kcud1=\n, kcuf1=^U, kcuu1=^Z,
-vc404-s|volker-craig 404 w/standout mode,
+vc404-s|Volker-Craig 404 w/standout mode,
cud1=\n, rmso=^O, smso=^N, use=vc404,
# From: <wolfgang@cs.sfu.ca>
# (vc414: merged in cup/dl1/home from an old vc414h-noxon)
@@ -19792,12 +20425,12 @@ vc414|vc414h|Volker-Craig 414H in sane escape mode.,
clear=\E\034$<40>, cud1=\E^K, cuf1=^P,
cup=\E\021%p2%c%p1%c$<40>, cuu1=\E^L, dch1=\E3,
dl1=\E\023$<40>, ed=\E^X, el=\E\017$<10/>, home=\E^R,
- ich1=\E\:, il1=\E\032$<40>, kcub1=^H, kcud1=\E^K, kcuf1=^P,
+ ich1=\E:, il1=\E\032$<40>, kcub1=^H, kcud1=\E^K, kcuf1=^P,
kcuu1=\E^L, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED, kf4=\EE,
kf5=\EF, kf6=\EG, kf7=\EH, khome=\E^R, lf0=PF1, lf1=PF2,
lf2=PF3, lf3=PF4, lf4=PF5, lf5=PF6, lf6=PF7, lf7=PF8,
rmso=\E^_, smso=\E^Y,
-vc415|volker-craig 415,
+vc415|Volker-Craig 415,
clear=^L, use=vc404,
######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS
@@ -19908,7 +20541,7 @@ apple-ae|ASCII Express,
home=^Y, ind=^W, is2=^R^N, kclr=^X, kcub1=^H, kcud1=\n,
kcuf1=^U, kcuu1=^K, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N,
smso=^O,
-appleII|apple ii plus,
+appleII|Apple II plus,
OTbs, am,
cols#80, it#8, lines#24,
clear=^L, cnorm=^TC2, cub1=^H, cud1=\n, cuf1=^\,
@@ -19917,13 +20550,13 @@ appleII|apple ii plus,
is2=^TT1^N, kcud1=\n, kcuf1=^U, rmso=^N, sgr0=^N, smso=^O,
# Originally by Gary Ford 21NOV83
# From: <ee178aci%sdcc7@SDCSVAX.ARPA> Fri Oct 11 21:27:00 1985
-apple-80|apple II with smarterm 80 col,
+apple-80|Apple II with smarterm 80 col,
OTbs, am, bw,
cols#80, lines#24,
cbt=^R, clear=\014$<10*/>, cr=\r$<10*/>, cub1=^H, cud1=\n,
cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_,
ed=\013$<10*/>, el=\035$<10/>, home=^Y,
-apple-soroc|apple emulating soroc 120,
+apple-soroc|Apple emulating Soroc 120,
am,
cols#80, lines#24,
bel=^G, clear=\E*$<300>, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -19973,9 +20606,8 @@ apple-uterm|Ultraterm for Apple micros,
apple80p|80-column apple with Pascal card,
am, bw,
cols#80, lines#24,
- clear=^Y^L, cuf1=^\\:,
- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
- home=^Y, kcub1=^H,
+ clear=^Y^L, cuf1=^\:, cup=\036%p2%{32}%+%c%p1%{32}%+%c,
+ cuu1=^_, ed=^K, el=^], home=^Y, kcub1=^H,
#
# Apple II+ equipped with Videx 80 column card
#
@@ -20014,10 +20646,10 @@ aepro|Apple II+ running ASCII Express Pro--vt52,
cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
el=\EK, home=\EH,
# UCSD addition: Yet another termcap from Brian Kantor's Micro Munger Factory
-apple-vm80|ap-vm80|apple with viewmax-80,
+apple-vm80|ap-vm80|Apple with viewmax-80,
OTbs,
cols#80, lines#24,
- clear=\014$<300/>, cuf1=^\\:,
+ clear=\014$<300/>, cuf1=^\:,
cup=\036%p1%{32}%+%c%p2%{32}%+%c$<100/>, cuu1=^_,
ed=\013$<300/>, el=^], home=\031$<200/>,
@@ -20025,7 +20657,7 @@ apple-vm80|ap-vm80|apple with viewmax-80,
#
# (lisa: changed <cvvis> to <cnorm> -- esr)
-lisa|apple lisa console display (black on white),
+lisa|Apple Lisa console display (black on white),
OTbs, am, eo, msgr,
cols#88, it#8, lines#32,
acsc=jdkclfmenbqattuvvuwsx`, civis=\E[5h, clear=^L,
@@ -20035,7 +20667,7 @@ lisa|apple lisa console display (black on white),
is2=\E>\E[m\014, kbs=^H, kcub1=\E[D, kcud1=\E[B,
kcuf1=\E[C, kcuu1=\E[A, rmacs=\E[10m, rmso=\E[m, rmul=\E[m,
sgr0=\E[m, smacs=\E[11m, smso=\E[7m, smul=\E[4m,
-liswb|apple lisa console display (white on black),
+liswb|Apple Lisa console display (white on black),
is2=\E>\E[0;7m\014, rmso=\E[0;7m, rmul=\E[0;7m,
smso=\E[m, smul=\E[4m, use=lisa,
@@ -20091,12 +20723,12 @@ mac-w|macterminal-w|Apple Macintosh with MacTerminal in 132 column mode,
coco3|os9LII|Tandy CoCo3 24*80 OS9 Level II,
OTbs, am,
cols#80, it#8, lines#24,
- bel=^G, blink=^_", bold=\E\:\001, civis=^E\s,
+ bel=^G, blink=^_", bold=\E:^A, civis=^E\s,
clear=\014$<5*/>, cnorm=^E!, cub1=^H, cud1=\n, cuf1=^F,
cup=\002%p2%{32}%+%c%p1%{32}%+%c$<2/>, cuu1=^I,
dl1=^_1, ed=^K, el=^D, home=^A, il1=^_0, kcub1=^H, kcud1=\n,
kcuf1=^I, kcuu1=^L, rev=^_\s, rmso=^_!, rmul=^_#,
- sgr0=\037!\E\:\0, smso=^_\s, smul=^_",
+ sgr0=\037!\E:\0, smso=^_\s, smul=^_",
# (trs2: removed obsolete ":nl=^_:" -- esr)
trs2|trsII|trs80II|Radio Shack Model II using P&T CP/M,
OTbs, am, msgr,
@@ -20284,7 +20916,7 @@ northstar|North Star Advantage,
# with most systems.
#
# The tab is destructive on the Ozzie; make sure to 'stty -tabs'.
-osborne-w|osborne1-w|osborne I in 104-column mode,
+osborne-w|osborne1-w|Osborne I in 104-column mode,
msgr, ul, xt,
cols#104, lines#24,
bel=^G, clear=^Z, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -20292,7 +20924,7 @@ osborne-w|osborne1-w|osborne I in 104-column mode,
dl1=\ER, el=\ET, ich1=\EQ, il1=\EE, ind=\n, kcub1=^H, kcud1=\n,
kcuf1=^L, kcuu1=^K, rmso=\E(, rmul=\Em, smso=\E), smul=\El,
# Osborne I from ptsfa!rhc (Robert Cohen) via BRL
-osborne|osborne1|osborne I in 80-column mode,
+osborne|osborne1|Osborne I in 80-column mode,
OTbs, am, mir, msgr, ul, xhp,
OTdB#4, cols#80, lines#24,
clear=^Z, cub1=\010$<4>, cud1=\n, cuf1=^L,
@@ -20504,7 +21136,7 @@ m2-nam|minitel|minitel-2|minitel-2-nam|France Telecom Minitel 2 mode te'le'infor
cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, flash=^G, fsl=\n,
home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=\n, ip=$<7/>,
- is1=\E\:1}\Ec\E[?4l\E[12h, is2=\Ec\E[12h\E)0,
+ is1=\E:1}\Ec\E[?4l\E[12h, is2=\Ec\E[12h\E)0,
is3=\E[?3l, kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B,
kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kf0=\EOp,
kf1=\EOq, kf10=\EOp, kf2=\EOr, kf3=\EOs, kf4=\EOt, kf5=\EOu,
@@ -20526,7 +21158,7 @@ minitel1|minitel 1,
cup=\037%p1%'A'%+%c%p2%'A'%+%c, cuu1=^K,
dsl=\037@A\030\n, el=^X,
flash=\037@A\EW \177\022\177\022P\r\030\n, fsl=\n,
- home=^^, ind=\n, is2=\E;`ZQ\E\:iC\E\:iE\021, kbs=^SG,
+ home=^^, ind=\n, is2=\E;`ZQ\E:iC\E:iE\021, kbs=^SG,
kcan=^SE, kend=^SI, kent=^SA, khlp=^SD, knp=^SH, kpp=^SB,
krfr=^SC, nel=\r\n, op=\EG, rep=%p1%c\022%p2%'?'%+%c,
rev=\E], ri=^K, rmso=\E\\,
@@ -20573,9 +21205,9 @@ minitel1b|minitel 1-bistandard (in 40cols mode),
kich1=\E[4h, kil1=\E[L, krfr@, lf1=Guide, lf2=Repetition,
lf3=Sommaire, lf4=Envoi, lf5=Correction, lf6=Annulation,
rmir=\E[4l, smir=\E[4h,
- u8=\001%[ABCPtuvwxyz0123456789\:;<=>?]\004,
+ u8=\001%[ABCPtuvwxyz0123456789:;<=>?]\004,
.ich=\E[%p1%d@, .ich1=\E[@, .kLFT=\E[P, .kRIT=\E[4h,
- .kb2=^Y{g, .kcbt=^Y{i, .kel=^X, .mc0=\E\:|k, .rmkx=\E;jYA,
+ .kb2=^Y{g, .kcbt=^Y{i, .kel=^X, .mc0=\E:|k, .rmkx=\E;jYA,
.rs1=\E[4l\E[2l, .smkx=\E;iYA\E;jYC, .u8=^ACu<^D,
use=minitel1,
# rmkx posait des problemes (logout en sortant de vi).
@@ -20761,8 +21393,7 @@ linux-m1|Linux Minitel 1 "like" Couleurs,
colors#8, it#8, ncv#16, pairs#64,
acsc=a\261f\370g\361h\260j\274k\273l\311m\310n\316q\315t
\314u\271v\312w\313x\272y\363z\362{\343|\252~\372,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\n, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP,
dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M,
@@ -20773,23 +21404,20 @@ linux-m1|Linux Minitel 1 "like" Couleurs,
%{255}%&%02X,
is2=\E]R\E]P3FFFF80\E[?8c, ka1=\EOw, ka3=\EOy, kb2=\E[G,
kbs=^?, kc1=\EOq, kc3=\EOs, kcbt=\E^I, kclr=\E\r, kcub1=\E[D,
- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~,
- kdl1=\E\E[A, kend=\E[4~, kent=\EOM, kf1=\E[[A, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
- kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D,
- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- khome=\E[1~, kich1=\E[2~, kil1=\E\E[B, kmous=\E[M,
- knp=\E[6~, kpp=\E[5~, nel=\EE, oc=\E]R\E]P3FFFF80,
- op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
- rmam=\E[?7l, rmir=\E[4l, rmpch=\E[10m, rmso=\E[27m,
- rs1=\Ec, rs3=\E[37;40m\E[8], sc=\E7, setab=\E[4%p1%dm,
- setaf=\E[3%p1%dm, sgr0=\E[m, smacs=^N, smam=\E[?7h,
- smir=\E[4h, smpch=\E[11m, smso=\E[7m, tbc=\E[3g,
- u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?6c, u9=\EZ,
- vpa=\E[%i%p1%dd, .VN=\E[?5l, .VR=\E[?5h, .am@,
- .ich=\E[%p1%d@, .ich1=\E[@, .ll=\E[99H, .rmcup=,
- .rmul=\E[24m, .smcup=\E]R\E]P3FFFF80\E[?8c,
+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\E\E[A, kent=\EOM,
+ kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[[B,
+ kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kil1=\E\E[B,
+ kmous=\E[M, nel=\EE, oc=\E]R\E]P3FFFF80, op=\E[39;49m,
+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l,
+ rmpch=\E[10m, rmso=\E[27m, rs1=\Ec, rs3=\E[37;40m\E[8],
+ sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[m,
+ smacs=^N, smam=\E[?7h, smir=\E[4h, smpch=\E[11m,
+ smso=\E[7m, tbc=\E[3g, vpa=\E[%i%p1%dd, .VN=\E[?5l,
+ .VR=\E[?5h, .am@, .ich=\E[%p1%d@, .ich1=\E[@, .ll=\E[99H,
+ .rmcup=, .rmul=\E[24m, .smcup=\E]R\E]P3FFFF80\E[?8c,
.smul=\E[4m,
E3=\E[99H\E[2J\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
@@ -20799,6 +21427,7 @@ linux-m1|Linux Minitel 1 "like" Couleurs,
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\n\n\n\n\n\n\n\n\n,
+ use=vt220+pcedit, use=vt220+cvis, use=linux+decid,
# 1. Using double-shapes for vt100 graphical chars (eg: mc).
# 2. Native brown color corrected to good yellow color.
@@ -20841,6 +21470,17 @@ linux-m2|Linux Minitel 2 "like" Couleurs (Vert/Blanc/Noir+Bleu),
\E]PFFFFFFF\E[;37m,
use=linux-m1,
+# From: Alexandre Montaron, 27 May 2020
+linux-s|Linux console with added status line at bottom,
+ hs,
+ clear=\E[255;255H\E[A\E[1J\E[H, csr@,
+ dsl=\E7\E[255H\E[K\E8, ed@, fsl=\E8,
+ iprog=\sbash\s-c\s'echo\s-ne\s"\E[?6l\E[255H\E[A\E[6n"\s;
+ \sread\s-d\sR\sTMP\s;\sLINES=`echo\s$TMP\s|\scut\s-f1
+ \s-d\s";"\s|\scut\s-f2\s-d\s"["`\s;\sstty\srows\s$LINE
+ S\s;\secho\s-ne\s"\E[;"$LINES"r\E[J"',
+ rs1=\E]R, tsl=\E7\E[255;%p1%dH, .rc@, .sc@, use=linux,
+
# Screen entries counterpart :
screen.linux-m1|Linux m1 specific for screen,
@@ -20875,16 +21515,16 @@ putty-m1|Putty Minitel 1 "like" Couleurs,
dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
kf5=\E[15~, rmcup=\E[2J\E[?47l\E8, rmul=\E[24m,
smcup=\E7\E[?47h, smul=\E[4m, .E3=\E[300S,
- .WS=\E[8;%d;%dt, Z0=\E[?3h, Z1=\E[?3l, use=xterm+sl-twm,
- use=ecma+index, use=linux-m1,
+ use=putty+screen, use=xterm+sl-twm, use=ecma+index,
+ use=linux-m1,
putty-m1b|Putty Minitel 1B "like" Monochrome (Gris/Blanc/Noir),
hs,
dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
kf5=\E[15~, rmcup=\E[2J\E[?47l\E8, rmul=\E[24m,
smcup=\E7\E[?47h, smul=\E[4m, .E3=\E[300S,
- .WS=\E[8;%d;%dt, Z0=\E[?3h, Z1=\E[?3l, use=xterm+sl-twm,
- use=ecma+index, use=linux-m1b,
+ use=putty+screen, use=xterm+sl-twm, use=ecma+index,
+ use=linux-m1b,
putty-m2|Putty Minitel 2 "like" Couleurs (Vert/Blanc/Noir),
hs,
@@ -20893,8 +21533,14 @@ putty-m2|Putty Minitel 2 "like" Couleurs (Vert/Blanc/Noir),
dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
kf5=\E[15~, rmcup=\E[2J\E[?47l\E8, rmul=\E[24m,
smcup=\E7\E[?47h, smul=\E[4m, .E3=\E[300S,
- .WS=\E[8;%d;%dt, Z0=\E[?3h, Z1=\E[?3l, use=xterm+sl-twm,
- use=ecma+index, use=linux-m2,
+ use=putty+screen, use=xterm+sl-twm, use=ecma+index,
+ use=linux-m2,
+
+putty+screen|PuTTY with screen resizing extensions,
+ .WS=\E[8;%p1%d;%p2%dt, Z0=\E[?3h, Z1=\E[?3l,
+
+putty-screen|PuTTY with screen resizing extensions,
+ WS=\E[8;%p1%d;%p2%dt, Z0=\E[?3h, Z1=\E[?3l, use=putty,
screen.putty-m1|Putty m1 specific for screen,
dim@, rmul=\E[24m, smul=\E[4m, E3@, use=screen.linux-m1,
@@ -20912,7 +21558,7 @@ screen.putty-m2|Putty m2 specific for screen,
# He comments:
# viewdata lacks a true cup capability,
# so I achieved it with home and cud1/cuf1 sequences only !
-viewdata|prestel/viewdata terminals,
+viewdata|Prestel/Viewdata terminals,
am, bw, eslok, hz,
cols#40, lines#24,
bel=^G, civis=^T, clear=^L, cnorm=^Q, cr=\r, cub1=^H, cud1=\n,
@@ -20928,7 +21574,7 @@ viewdata|prestel/viewdata terminals,
cuu1=^K, home=^^, nel=\r\n, rs2=^L, .el=^X, .ind=\n,
.rep=%p1%c\022%p2%'?'%+%c, .ri=^K,
-viewdata-o|optimized version of viewdata prestel/viewdata terminals,
+viewdata-o|optimized version of Viewdata Prestel/Viewdata terminals,
cup=\036%p1%?%p2%{20}%>%t%?%p1%{23}%=%t%Pa%{1}%e%{1}%+%;%;
%Pa%?%ga%{13}%<%t%?%ga%{07}%>%t\n\n\n\n\n\n\n\n%;%?%ga
%{4}%&%t\n\n\n\n%;%?%ga%{2}%&%t\n\n%;%?%ga%{1}%&%t\n%;%e
@@ -20946,7 +21592,7 @@ viewdata-o|optimized version of viewdata prestel/viewdata terminals,
# Samples with TERM=viewdata and TERM=viewdata-rv: http://canal.chez.com/blog/
-viewdata-rv|prestel/viewdata terminals with reverse capabilitie (as green),
+viewdata-rv|Prestel/Viewdata terminals with reverse capabilitie (as green),
xmc#1,
rmso=\EG, smso=\EB, use=viewdata-o,
@@ -21047,13 +21693,13 @@ oblit|ojerq|first version of blit rom,
# paints lines in on the bottom line of the screen, so you get
# this big white gap.
-bitgraph|bg2.0nv|bg3.10nv|bbn bitgraph 2.0 or later (normal video),
+bitgraph|bg2.0nv|bg3.10nv|BBN BitGraph 2.0 or later (normal video),
flash=\E[?5h$<200/>\E[?5l, is2=\E>\E[?5l\E[?7h,
use=bg2.0,
-bg2.0rv|bg3.10rv|bbn bitgraph 2.0 (reverse video),
+bg2.0rv|bg3.10rv|BBn BitGraph 2.0 (reverse video),
flash=\E[?5l$<200/>\E[?5h, is2=\E>\E[?5h\E[?7h,
use=bg2.0,
-bg2.0|bg3.10|bbn bitgraph 2.0 or later (no init),
+bg2.0|bg3.10|BBN BitGraph 2.0 or later (no init),
OTbs, xenl,
cols#85, lines#64,
bel=^G, clear=\E[H\E[J$<150>, cr=\r,
@@ -21065,14 +21711,14 @@ bg2.0|bg3.10|bbn bitgraph 2.0 or later (no init),
lf2=PF2, lf3=PF3, lf4=PF4, rc=\E8, rmkx=\E>, rmso=\E[m, sc=\E7,
sgr0=\E[m, smkx=\E=, smso=\E[7m,
-bg1.25rv|bbn bitgraph 1.25 (reverse video),
+bg1.25rv|BBN BitGraph 1.25 (reverse video),
flash=\E[?5l$<200/>\E[?5h, is2=\E>\E[?5h\E[?7h,
use=bg1.25,
-bg1.25nv|bbn bitgraph 1.25 (normal video),
+bg1.25nv|BBN BitGraph 1.25 (normal video),
flash=\E[?5h$<200/>\E[?5l, is2=\E>\E[?5l\E[?7h,
use=bg1.25,
# (bg1.25: I added <rmam>/<smam> based on the init string -- esr)
-bg1.25|bbn bitgraph 1.25,
+bg1.25|BBN BitGraph 1.25,
cols#85, lines#64,
bel=^G, clear=\E[H\E[J$<150>, cr=\r, cub1=^H, cud1=\E[B,
cuf1=\E[C, cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A,
@@ -21159,10 +21805,10 @@ tws-generic|dku7102|Bull Questar tws terminals,
cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%df,
cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
dim=\E[0;2m, dl=\E[%p1%dM, dl1=\E[M,
- dsl=\EPY99\:98\E\\\E[0;98v\E[2J\E[v, ed=\E[J, el=\E[K,
+ dsl=\EPY99:98\E\\\E[0;98v\E[2J\E[v, ed=\E[J, el=\E[K,
fsl=\E[v, home=\E[H, ht=\E[I, hts=\EH, il=\E[%p1%dL,
il1=\E[L, ind=\n, invis=\E[0;8m,
- is1=\E[?=h\Ec\E`\E[?>h\EPY99\:98\E\\,
+ is1=\E[?=h\Ec\E`\E[?>h\EPY99:98\E\\,
is2=\E[5;>;12;18;?<l\E[=h\EP1s\E\\\E[\027p,
is3=\Eb\E[?<h, kbs=^H, kcbt=\E[Z, kctab=\E[g, kcub1=\E[D,
kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M,
@@ -21175,22 +21821,22 @@ tws-generic|dku7102|Bull Questar tws terminals,
rmul=\E[m, rs2=\E[?=h\Ec, s0ds=^O, s1ds=^N,
sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?
%p7%t;8%;m%?%p9%t\016%e\017%;,
- sgr0=\E[m\017, smacs=^N, smcup=\E[?>h\EPY99\:98\E\\,
+ sgr0=\E[m\017, smacs=^N, smcup=\E[?>h\EPY99:98\E\\,
smir=\E[4h, smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g,
- tsl=\EPY99\:98\E\\\E[0;98v\E[2;7m,
-tws2102-sna|dku7102-sna|BULL Questar tws2102 for SNA,
+ tsl=\EPY99:98\E\\\E[0;98v\E[2;7m,
+tws2102-sna|dku7102-sna|Bull Questar tws2102 for SNA,
dsl=\E[0;98v\E[2J\E[v, fsl=\E[v, is3=\Eb, tsl=\E[0;98v,
use=tws-generic,
-tws2103|xdku|BULL Questar tws2103,
+tws2103|xdku|Bull Questar tws2103,
ht=^I, use=tws-generic,
-tws2103-sna|dku7103-sna|BULL Questar tws2103 for SNA,
+tws2103-sna|dku7103-sna|Bull Questar tws2103 for SNA,
ht=^I, use=tws2102-sna,
-dku7102-old|BULL Questar 200 DKU7102 (microcode version < 6),
+dku7102-old|Bull Questar 200 DKU7102 (microcode version < 6),
clear=\E[2J\E[H, cup@, dl@, dl1@,
- dsl=\EPY99\:98\E\\\E[0;98v\E[2J\E[H\E[v, el=\E[K\E[m,
- il@, il1@, tsl=\EPY99\:98\E\\\E[0;98v\E[H\E[2;7m,
+ dsl=\EPY99:98\E\\\E[0;98v\E[2J\E[H\E[v, el=\E[K\E[m,
+ il@, il1@, tsl=\EPY99:98\E\\\E[0;98v\E[H\E[2;7m,
use=tws-generic,
-dku7202|BULL Questar 200 DKU7202 (colour/character attributes),
+dku7202|Bull Questar 200 DKU7202 (colour/character attributes),
blink=\E[0;2;4m, dim=\E[0;5m, ht=^I, is3=\E[?3h\Eb,
sgr=\E[0%?%p1%t;2;4;5;7%;%?%p3%t;7%;%?%p2%t;2%;%?%p4%t;2;4%;
%?%p5%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
@@ -21276,8 +21922,7 @@ bq300|Bull vt320 ISO Latin 1 80 columns terminal,
am, eo, eslok, hs, km, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -21291,14 +21936,13 @@ bq300|Bull vt320 ISO Latin 1 80 columns terminal,
l,
is3=\E[0$}\E[?25h\E[2l\E[H\E[J, ka1=\EOw, ka3=\EOy,
kb2=\EOu, kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, kf10=\E[21~,
- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
- kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS,
- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
- khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
- krdo=\E[29~, kslt=\E[4~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4,
- nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l,
+ kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
+ kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khlp=\E[28~,
+ krdo=\E[29~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, nel=\EE,
+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l,
rmcup=\E[?7h, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
rmul=\E[24m, rs1=\E[!p, rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0,
sc=\E7,
@@ -21306,7 +21950,8 @@ bq300|Bull vt320 ISO Latin 1 80 columns terminal,
%;m%?%p9%t\E(0%e\E(B%;,
sgr0=\E[0m\E(B, smacs=\E(0, smam=\E[?7h,
smcup=\E[?7l\E[?1l\E(B, smir=\E[4h, smso=\E[7m,
- smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~, use=ansi+pp,
+ smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~,
+ use=vt220+vtedit, use=ansi+pp, use=vt220+cvis,
bq300-rv|Bull vt320 reverse 80 columns,
flash=\E[?5l$<50>\E[?5h,
is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E\sF\E[?42l\E[?4
@@ -21382,8 +22027,7 @@ bq300-8|Bull vt320 full 8 bits 80 columns,
am, eo, eslok, hs, km, mc5i, mir, msgr, xenl, xon,
cols#80, it#8, lines#24, vt#3, wsl#80,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\2335m, bold=\2331m, civis=\233?25l,
- clear=\233H\233J, cnorm=\233?25h, cr=\r,
+ bel=^G, blink=\2335m, bold=\2331m, clear=\233H\233J, cr=\r,
csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=\2331D,
cud=\233%p1%dB, cud1=\2331B, cuf=\233%p1%dC, cuf1=\2331C,
cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\2331A,
@@ -21415,6 +22059,7 @@ bq300-8|Bull vt320 full 8 bits 80 columns,
sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h,
smcup=\233?7l\233?1l\E(B, smir=\2334h, smso=\2337m,
smul=\2334m, tbc=\2333g, tsl=\2331$}\2332$~,
+ use=vt220+cvis8,
bq300-8rv|Bull vt320 8-bit reverse mode 80 columns,
flash=\233?5l$<50>\233?5h,
is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E\sG\E[?42l\E[?4
@@ -21438,12 +22083,11 @@ bq300-w-8rv|Bull vt320 8-bit reverse mode 132 columns,
# 7 bit Control Characters,
# 80 columns screen.
bq300-pc|Questar 303 with PC keyboard ISO Latin 1 80 columns,
- kbs=^H, kdch1=\E[3~, kend=\E[4~, kf1=\E[17~, kf10=\E[28~,
- kf11=\E[29~, kf12=\E[31~, kf13@, kf14@, kf15@, kf16@, kf17@,
- kf18@, kf19@, kf2=\E[18~, kf20@, kf3=\E[19~, kf4=\E[20~,
- kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~,
- kfnd@, khlp@, khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
- krdo@, kslt@, lf1@, lf2@, lf3@, lf4@, use=bq300,
+ kbs=^H, kf1=\E[17~, kf10=\E[28~, kf11=\E[29~, kf12=\E[31~,
+ kf13@, kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\E[18~, kf20@,
+ kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~,
+ kf8=\E[25~, kf9=\E[26~, kfnd@, khlp@, krdo@, kslt@, lf1@, lf2@,
+ lf3@, lf4@, use=vt220+pcedit, use=bq300,
bq300-pc-rv|Questar 303 with PC keyboard reverse mode 80 columns,
flash=\E[?5l$<50>\E[?5h,
is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E\sF\E[?42l\E[?4
@@ -21493,52 +22137,52 @@ bq300-8-pc-w-rv|Questar 303 with PC keyboard full 8 bits reverse 132 columns,
#======================================================#
# normal mode, 8 bits, 80 columns terminal.
-# RES reset : ^[e
-# RIS reset initial state: ^[c
-# BLE bell enable ^[h
-# BLD bell disable ^[g
-# CAMS char. attr. mode set ^[[D
-# CAMR char. attr. mode reset ^[[G
-# CLR clear ^[`
-# KBU keyboard unlock (set) ^[[W
-# KBL keyboard lock (reset) ^[[X
-# CM character mode (async.) ^[k
-# NEP non echoplex mode (by host) ^[l
-# EP echoplex mode (by host) ^[m
-# IM insert mode set ^[[I
-# IM insert mode reset ^[[J
-# RMS roll mode set ^[r
-# RMR roll mode reset ^[q
-# SM78 set mode vip7800 ^[[1q
-# SD scroll up (72 lines) ^[[0s
-# SD scroll down (72 lines) ^[[1s
-# RBM block mode reset ^[[E
-# SLS status line set ^[w
-# SLR status line reset ^[v
-# SLL status line lock ^[O
-# LGS Line-graphic mode set ^[G
-# LGR Line-graphic mode reset ^[F
-# TBC tab clear (at cursor pos.) ^[[g
-# TBI tab initialize ^[[N
-# TBS tab set (at cursor pos.) ^[p
-# PDS print data space ^[[0p
-# PHD print host data ^[[3p
-# PDT print data terminator ^[[<p
-# PRES print adapter reset ^[[2p
-# SSPR multi-part. reset ^[[<>u
-# SSP0 partition 0 set ^[[00u
-# SSP1 partition n format 1 ^[[PnPnSTRINGu
-# SSP2 partition n format 2 ^[[PnPnSTRINGu
-# SSP3 partition n format 3 ^[[PnPnu
+# BLD bell disable ^[g
+# BLE bell enable ^[h
+# CAMR char. attr. mode reset ^[[G
+# CAMS char. attr. mode set ^[[D
+# CLR clear ^[`
+# CM character mode (async.) ^[k
+# EP echoplex mode (by host) ^[m
+# IM insert mode set ^[[I
+# IMR insert mode reset ^[[J
+# KBL keyboard lock (reset) ^[[X
+# KBU keyboard unlock (set) ^[[W
+# LGR Line-graphic mode reset ^[F
+# LGS Line-graphic mode set ^[G
+# NEP non echoplex mode (by host) ^[l
+# PDS print data space ^[[0p
+# PDT print data terminator ^[[<p
+# PHD print host data ^[[3p
+# PRES print adapter reset ^[[2p
+# RBM block mode reset ^[[E
+# RES reset : ^[e
+# RIS reset initial state: ^[c
+# RMR roll mode reset ^[q
+# RMS roll mode set ^[r
+# SCD scroll down (72 lines) ^[[1s
+# SCU scroll up (72 lines) ^[[0s
+# SLL status line lock ^[O
+# SLR status line reset ^[v
+# SLS status line set ^[w
+# SM78 set mode vip7800 ^[[1q
+# SSP0 partition 0 set ^[[00u
+# SSP1 partition n format 1 ^[[PnPnSTRINGu
+# SSP2 partition n format 2 ^[[PnPnSTRINGu
+# SSP3 partition n format 3 ^[[PnPnu
+# SSPR multi-part. reset ^[[<>u
+# TBC tab clear (at cursor pos.) ^[[g
+# TBI tab initialize ^[[N
+# TBS tab set (at cursor pos.) ^[p
+#
# ATR attribute (visual)
-# blink : ^[sB
-# dim : ^[sL
-# hide (blank) : ^[sH
-# restore : ^[sR
-# inverse video : ^[sI
-# prot. : ^[sP
-# underline : ^[s_
-# reset : ^{
+# blink : ^[sB
+# dim : ^[sL
+# hide (blank) : ^[sH
+# inverse video : ^[sI
+# protected : ^[sP
+# reset : ^[sR
+# underline : ^[s_
#
# This covers the vip7800 and BQ3155-vip7800
vip|Bull Questar 3155-7800,
@@ -21558,7 +22202,7 @@ vip|Bull Questar 3155-7800,
kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\E2, kf20@, kf21=\E1,
kf22=\E5, kf23=\E7, kf24=\E9, kf25=\E;, kf26=\E=, kf27=\E?,
kf28=\EQ, kf29=\ES, kf3=\E6, kf30=\EV, kf31=\E], kf32=\E_,
- kf4=\E8, kf5=\E\:, kf6=\E<, kf7=\E>, kf8=\EP, kf9=\ER,
+ kf4=\E8, kf5=\E:, kf6=\E<, kf7=\E>, kf8=\EP, kf9=\ER,
khome=\EH, khts=\Ep, kich1=\E[I, kil1=\E[L, kind=\E[0s,
kll=\EH\EA, kri=\E[1s, krmir=\E[J, ktbc=\E[N, lf1=pf1,
lf2=pf2, lf3=pf3, lf4=pf4, ll=\EH\EA, mc0=\E[0p, mc4=\E[<p,
@@ -21605,7 +22249,7 @@ cg7900|chromatics|chromatics 7900,
#### Computer Automation
#
-ca22851|computer automation 22851,
+ca22851|Computer Automation 22851,
am,
cols#80, lines#24,
bel=^G, clear=\014$<8>, cr=\r, cub1=^U, cud1=\n, cuf1=^I,
@@ -21616,7 +22260,7 @@ ca22851|computer automation 22851,
#
# This entry has correct padding and the undocumented "ri" capability
-cyb83|xl83|cybernex xl-83,
+cyb83|xl83|Cybernex xl-83,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\014$<62>, cr=\r, cub1=^H, cud1=\n, cuf1=^I,
@@ -21624,7 +22268,7 @@ cyb83|xl83|cybernex xl-83,
ed=\020$<62>, el=\017$<3>, home=^K, ind=\n, kcub1=^H,
kcud1=\n, kcuf1=^I, kcuu1=^N, ri=^N,
# (mdl110: removed obsolete ":ma=^Z^P:" and overridden ":cd=145^NA^W:" -- esr)
-cyb110|mdl110|cybernex mdl-110,
+cyb110|mdl110|Cybernex mdl-110,
OTbs, am,
cols#80, lines#24,
bel=^G, clear=\030$<70>, cr=\r, cub1=^H, cud1=\n, cuf1=^U,
@@ -21642,7 +22286,7 @@ cyb110|mdl110|cybernex mdl-110,
# side of Datapoint still lives (1995) in the form of Intelogic Trace.
#
-dp3360|datapoint|datapoint 3360,
+dp3360|datapoint|Datapoint 3360,
OTbs, am,
cols#82, lines#25,
bel=^G, clear=^]^_, cr=\r, cub1=^H, cud1=\n, cuf1=^X, cuu1=^Z,
@@ -21675,7 +22319,7 @@ dp3360|datapoint|datapoint 3360,
# ctrl-O vertical line
# Unfortunately this cannot be fitted into the termcap/terminfo
# description scheme.
-dp8242|datapoint 8242,
+dp8242|Datapoint 8242,
msgr,
cols#80, lines#25,
bel=^G, civis=^Y, clear=^U\E^D^W^X, cnorm=^X, cr=\r, cub1=^H,
@@ -21693,33 +22337,63 @@ dp8242|datapoint 8242,
#### DEC terminals (Obsolete types: DECwriter and vt40/42/50)
#
-# These entries are DEC's official terminfos for its older terminals.
-# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support
-# Engineering for more information. Updated terminfos and termcaps
-# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
+# These entries came from DEC's official terminfos for its older terminals
+# (which happen to be identical to the AT&T/SCO terminal descriptions),
+# Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support Engineering
+# may have had more information. Updated terminfos and termcaps were available
+# at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
+
+# DEC's terminfos did not describe the auxiliary keypad.
#
+# DECScope of course had no "function keys", but this building block assigns
+# the three blank keys at the top of the auxiliary (numeric) keypad, using
+# the same analogy as vt100 (also lacking function-keys).
+#
+# These assignments use the same layout for 0-9 as vt100+keypad; the vt52
+# keypad had its cursor-keys on the right-column as shown -TD
+# _______________________________________
+# | PF1 | PF2 | PF3 | c-up |
+# | \EP | \EQ | \ER | \EA |
+# |_kf1__k1_|_kf2__k2_|_kf3__k3_|kcuu1_k4_|
+# | 7 8 9 c-down |
+# | \E?w | \E?x | \E?y | \EB |
+# |_kf9__k9_|_kf10_k;_|_kf0__k0_|kcud1____|
+# | 4 | 5 | 6 | c-right |
+# | \E?t | \E?u | \E?v | \EC |
+# |_kf5__k5_|_kf6__k6_|_kf7__k7_|kcuf1_k8_|
+# | 1 | 2 | 3 | c-left |
+# | \E?q | \E?r | \E?s | \ED |
+# |_ka1__K1_|_kb2__K2_|_ka3__K3_|kcub1____|
+# | 0 | . | enter |
+# | \E?p | \E?n | \E?M |
+# |___kc1_______K4____|_kc3__K5_|_kent_@8_|
+#
+vt52+keypad|DECScope auxiliary keypad,
+ ka1=\E?q, ka3=\E?s, kb2=\E?r, kc1=\E?p, kc3=\E?n, kf0=\E?y,
+ kf1=\EP, kf2=\EQ, kf3=\ER, kf5=\E?t, kf6=\E?u, kf7=\E?v,
+ kf8=\E?w, kf9=\E?x,
-gt40|dec gt40,
+gt40|DEC gt40,
OTbs, os,
cols#72, lines#30,
bel=^G, cr=\r, cub1=^H, cud1=\n,
-gt42|dec gt42,
+gt42|DEC gt42,
OTbs, os,
cols#72, lines#40,
bel=^G, cr=\r, cub1=^H, cud1=\n,
-vt50|dec vt50,
- OTbs,
- cols#80, lines#12,
- bel=^G, clear=\EH\EJ, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
- cuu1=\EA, ed=\EJ, el=\EK, ht=^I, ind=\n,
-vt50h|dec vt50h,
+
+vt50|DEC vt50,
OTbs,
cols#80, lines#12,
bel=^G, clear=\EH\EJ, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
- el=\EK, ht=^I, ind=\n, ri=\EI,
+ cuu1=\EA, ed=\EJ, el=\EK, ht=^I, ind=\n, u8=\E/A, u9=\EZ,
+vt50h|DEC vt50h,
+ cub1=\ED, cud1=\EB, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, u8=\E/[HJ],
+ use=vt52+keypad, use=vt50,
+
# (vt61: there's a BSD termcap that claims <dl1=\EPd>, <il1=\EPf.> <kbs=^H>)
-vt61|vt-61|vt61.5|dec vt61,
+vt61|vt-61|vt61.5|DEC vt61,
cols#80, lines#24,
bel=^G, clear=\EH\EJ$<120>, cr=\r$<20>, cub1=^H, cud1=\n,
cuf1=\EC$<20>, cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<20>,
@@ -21729,7 +22403,7 @@ vt61|vt-61|vt61.5|dec vt61,
# The gigi does standout with red!
# (gigi: I added <rmam>/<smam> based on the init string, corrected cub1 -- esr)
-gigi|vk100|dec gigi graphics terminal,
+gigi|vk100|DEC gigi graphics terminal,
OTbs, am, xenl,
cols#84, lines#24,
bel=^G, clear=\E[H\E[2J, cr=\r, cub=\E[%p1%dD, cub1=^H,
@@ -21748,7 +22422,7 @@ gigi|vk100|dec gigi graphics terminal,
# grossly-overpriced failure (among other things, DEC's OS didn't include
# a format program, so you had to buy pre-formatted floppies from DEC at
# a hefty premium!).
-pro350|decpro|dec pro console,
+pro350|decpro|DEC pro console,
OTbs,
cols#80, it#8, lines#24,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -21759,11 +22433,11 @@ pro350|decpro|dec pro console,
kf5=\EJ, kf6=\Ei, kf7=\Ej, khome=\EH, ri=\EI, rmacs=\EG,
rmso=\E^N, rmul=\E^C, smacs=\EF, smso=\E^H, smul=\E^D,
-dw1|decwriter I,
+dw1|DECwriter I,
OTbs, hc, os,
cols#72,
bel=^G, cr=\r, cub1=^H, cud1=\n, ind=\n,
-dw2|decwriter|dw|decwriter II,
+dw2|decwriter|dw|DECwriter II,
OTbs, hc, os,
cols#132,
bel=^G, cr=\r, cub1=^H, cud1=\n, ind=\n, kbs=^H,
@@ -21783,7 +22457,7 @@ dw2|decwriter|dw|decwriter II,
#
# The dw3 does standout with wide characters.
#
-dw3|la120|decwriter III,
+dw3|la120|DECwriter III,
OTbs, hc, os,
cols#132,
bel=^G, cr=\r, cub1=^H, cud1=\n, ht=^I, ind=\n,
@@ -21791,20 +22465,20 @@ dw3|la120|decwriter III,
is2=\E[9;17;25;33;41;49;57;65;73;81;89;97;105;113;121;129u
\r,
kbs=^H, rmso=\E[w, sgr0=\E[w, smso=\E[6w,
-dw4|decwriter IV,
+dw4|DECwriter IV,
OTbs, am, hc, os,
cols#132,
bel=^G, cr=\r, cub1=^H, cud1=\n, ht=^I, ind=\n, is2=\Ec, kbs=^H,
kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS,
# These aren't official
-ln03|dec ln03 laser printer,
+ln03|DEC ln03 laser printer,
hc,
cols#80, lines#66,
bel=^G, cr=\r, cud1=\n, hd=\EK, ht=^I, hu=\EL, ind=\n, nel=\r\n,
rmso=\E[22m, rmul=\E[24m, sgr0=\E[m, smso=\E[1m,
smul=\E[4m,
-ln03-w|dec ln03 laser printer 132 cols,
+ln03-w|DEC ln03 laser printer 132 cols,
cols#132,
bel=^G, cr=\r, cud1=\n, ht=^I, ind=\n, kbs=^H, kcub1=^H,
kcud1=\n, nel=\r\n, use=ln03,
@@ -21909,7 +22583,7 @@ terminet1200|terminet300|tn1200|tn300|terminet|GE terminet 1200,
# S402 0 0 0 0 0 0 0 0
# (h19: I added <rmam>/<smam> based on the init string;
# also added empty <acsc> to suppress a tic warning -- esr)
-h19-a|h19a|heath-ansi|heathkit-a|heathkit h19 ansi mode,
+h19-a|h19a|heath-ansi|heathkit-a|Heathkit h19 ansi mode,
OTbs, am, mir, msgr,
cols#80, it#8, lines#24,
acsc=, bel=^G, clear=\E[2J, cnorm=\E[>4l, cr=\r, cub1=^H,
@@ -21922,9 +22596,9 @@ h19-a|h19a|heath-ansi|heathkit-a|heathkit h19 ansi mode,
kf7=\EOQ, kf8=\EOR, khome=\E[H, lf6=blue, lf7=red, lf8=white,
ri=\EM, rmacs=\E[11m, rmam=\E[?7l, rmir=\E[4l, rmso=\E[m,
smacs=\E[10m, smam=\E[?7h, smir=\E[4h, smso=\E[7m,
-h19-bs|heathkit w/keypad shifted,
+h19-bs|Heathkit w/keypad shifted,
rmkx=\Eu, smkx=\Et, use=h19-b,
-h19-us|h19us|h19-smul|heathkit w/keypad shifted/underscore cursor,
+h19-us|h19us|h19-smul|Heathkit w/keypad shifted/underscore cursor,
rmkx=\Eu, smkx=\Et, use=h19-u,
# (h19: merged in <ip> from BSDI hp19-e entry>;
# also added empty <acsc> to suppress a tic warning --esr)
@@ -21941,7 +22615,7 @@ h19-us|h19us|h19-smul|heathkit w/keypad shifted/underscore cursor,
# help (I have tried up to 20000). Removing <il1=\EL$> and <dl1=\EM$>
# makes Emacs a little slower, but it remains in the land of the living.
# Big win.
-h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19,
+h19|heath|h19-b|heathkit|heath-19|z19|zenith|Heathkit h19,
OTbs, am, eslok, hs, mir, msgr,
cols#80, it#8, lines#24,
acsc=+h.kaiggjdkclfmenbozqas{tvutvuwsx`~\^, bel=^G,
@@ -21953,11 +22627,11 @@ h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19,
kf6=\EP, kf7=\EQ, kf8=\ER, khome=\EH, lf6=blue, lf7=red,
lf8=white, ri=\EI, rmacs=\EG, rmir=\EO, rmso=\Eq, smacs=\EF,
smir=\E@, smso=\Ep, tsl=\Ej\Ex5\EY8%p1%{32}%+%c\Eo\Eo,
-h19-u|heathkit with underscore cursor,
+h19-u|Heathkit with underscore cursor,
cnorm@, cvvis@, use=h19-b,
-h19-g|h19g|heathkit w/block cursor,
+h19-g|h19g|Heathkit w/block cursor,
cnorm=\Ex4, cvvis@, use=h19-b,
-alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19,
+alto-h19|altoh19|altoheath|alto-heath|alto emulating Heathkit h19,
lines#60,
dl1=\EM, il1=\EL, use=h19,
@@ -22001,7 +22675,7 @@ alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19,
# but I haven't checked it out).
# (z29: added empty <acsc> to suppress a tic warning, merged in
# status line capabilities from BRL entry --esr)
-z29|zenith29|z29b|zenith z29b,
+z29|zenith29|z29b|Zenith z29b,
OTbs, OTpt, am, eslok, hs, mir, msgr,
OTkn#10, cols#80, lines#24,
OTbc=\ED, acsc=, bel=^G, cbt=\E-, clear=\EE$<14>, cnorm=\Ey4,
@@ -22023,7 +22697,7 @@ z29|zenith29|z29b|zenith z29b,
# From: Mike Meyers
# (z29a: replaced nonexistent <if=/usr/share/tabset/zenith29> because <hts>
# looks vt100-compatible -- esr)
-z29a|z29a-kc-bc|h29a-kc-bc|heath/zenith 29 in ansi mode,
+z29a|z29a-kc-bc|h29a-kc-bc|Heath/Zenith 29 in ansi mode,
OTbs, OTpt, am, eslok, hs, mir, msgr,
OTkn#10, cols#80, it#8, lines#24,
OTbc=\ED, bel=^G, blink=\E[5m, bold=\E[2m, clear=\E[2J,
@@ -22043,15 +22717,15 @@ z29a|z29a-kc-bc|h29a-kc-bc|heath/zenith 29 in ansi mode,
\E[11m,
sc=\E[s, sgr0=\E[m, smcup=\E[?7l, smso=\E[7;2m, smul=\E[4m,
tbc=\E[3g, tsl=\E[s\E[>5;1h\E[25;%i%dH\E[1K,
-z29a-kc-uc|h29a-kc-uc|z29 ansi mode with keyclick and underscore cursor,
+z29a-kc-uc|h29a-kc-uc|Zenith z29 ansi mode with keyclick and underscore cursor,
rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>1;2;3;4;5;6;7;8;9l\E[m\E[11
m,
use=z29a,
-z29a-nkc-bc|h29a-nkc-bc|z29 ansi mode with block cursor and no keyclick,
+z29a-nkc-bc|h29a-nkc-bc|Zenith z29 ansi mode with block cursor and no keyclick,
rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>2;4h\E[>1;3;5;6;7;8;9l\E[m
\E[11m,
use=z29a,
-z29a-nkc-uc|h29a-nkc-uc|z29 ansi mode with underscore cursor and no keyclick,
+z29a-nkc-uc|h29a-nkc-uc|Zenith z29 ansi mode with underscore cursor and no keyclick,
rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>2h\E[>1;3;4;5;6;7;8;9l\E[m
\E[11m,
use=z29a,
@@ -22080,10 +22754,10 @@ z39-a|z39a|zenith39-a|zenith39-ansi|Zenith 39 in ANSI mode,
tsl=\E[s\E[>1h\E[25;%i%p1%dH,
# From: Brad Brahms <Brahms@USC-ECLC>
-z100|h100|z110|z-100|h-100|heath/zenith z-100 pc with color monitor,
+z100|h100|z110|z-100|h-100|Heath/Zenith z-100 pc with color monitor,
cnorm=\Ey4\Em70, cvvis=\Ex4\Em71, use=z100bw,
# (z100bw: removed obsolete ":kn#10:", added empty <acsc> -- esr)
-z100bw|h100bw|z110bw|z-100bw|h-100bw|heath/zenith z-100 pc,
+z100bw|h100bw|z110bw|z-100bw|h-100bw|Heath/Zenith z-100 pc,
OTbs, OTpt, mir, msgr,
OTkn#10, cols#80, it#8, lines#24,
acsc=+h.kaiggjdkclfmenbozqas{tvutvuwsx`~\^,
@@ -22099,7 +22773,7 @@ p19|h19-b with il1/dl1,
dl1=\EM$<2*/>, il1=\EL$<2*/>, use=h19-b,
# From: <ucscc!B.fiatlux@ucbvax.berkeley.edu>
# (ztx: removed duplicate :sr: -- esr)
-ztx|ztx11|zt-1|htx11|ztx-1-a|ztx-10 or 11,
+ztx|ztx11|zt-1|htx11|ztx-1-a|Heath/Zenith ztx-10 or 11,
OTbs, am, eslok, hs,
cols#80, it#8, lines#24,
clear=\EE, cub1=^H, cud1=\n, cuf1=\EC,
@@ -22122,12 +22796,12 @@ ztx|ztx11|zt-1|htx11|ztx-1-a|ztx-10 or 11,
ims950-b|bare ims950 no init string,
is2@, use=ims950,
# (ims950: removed obsolete ":ko@:" -- esr)
-ims950|ims televideo 950 emulation,
+ims950|IMS TeleVideo 950 emulation,
xenl@,
flash@, kbs@, kcub1@, kcud1@, kcuf1@, kcuu1@, kf0@, kf1@, kf2@, kf3@,
kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, khome@, use=tvi950,
# (ims950-rv: removed obsolete ":ko@:" -- esr)
-ims950-rv|ims tvi950 rev video,
+ims950-rv|IMS tvi950 rev video,
xenl@,
flash@, kbs@, kcub1@, kcud1@, kcuf1@, kcuu1@, kf0@, kf1@, kf2@, kf3@,
kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, khome@, use=tvi950-rv,
@@ -22149,7 +22823,7 @@ ims-ansi|ultima2|ultimaII|IMS Ultima II,
# then sank out of sight.
#
-superbrain|intertec superbrain,
+superbrain|Intertec Superbrain,
OTbs, am, bw,
cols#80, lines#24,
OTbc=^U, bel=^G, clear=\014$<5*>, cr=\r, cub1=^H, cud1=\n,
@@ -22165,10 +22839,10 @@ intertube|intertec|Intertec InterTube,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n, cuf1=^F,
cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<50>, cuu1=^Z, home=^A,
ind=\n, rmso=\E0@, smso=\E0P,
-# The intertube 2 has the "full duplex" problem like the tek 4025: if you
+# The intertube 2 has the "full duplex" problem like the Tektronix 4025: if you
# are typing and a command comes in, the keystrokes you type get interspersed
# with the command and it messes up
-intertube2|intertec data systems intertube 2,
+intertube2|Intertec data systems InterTube 2,
OTbs,
cup=\016%p1%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%c,
el=\EK, hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%c,
@@ -22385,7 +23059,7 @@ rt6221-w|Ramtek 6221 160x48,
#
# RCA VP3301 or VP3501
-rca|rca vp3301/vp3501,
+rca|RCA vp3301/vp3501,
OTbs,
cols#40, lines#24,
clear=^L, cuf1=^U, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
@@ -22462,10 +23136,10 @@ vsc|Signetics Vsc Video driver by RMC,
#
# (soroc120: removed obsolete ":ma=^K^P^R^L^L :" -- esr)
-soroc120|iq120|soroc|soroc iq120,
+soroc120|iq120|soroc|Soroc iq120,
clear=\E*$<2>, cud1=\n, ed=\EY, el=\ET, kcub1=^H, kcud1=\n,
kcuf1=^L, kcuu1=^K, use=adm3a,
-soroc140|iq140|soroc iq140,
+soroc140|iq140|Soroc iq140,
OTbs, am, mir,
cols#80, lines#24,
bel=^G, cbt=\EI, clear=\E+, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -22483,7 +23157,7 @@ soroc140|iq140|soroc iq140,
#
# (swtp: removed obsolete ":bc=^D:" -- esr)
-swtp|ct82|southwest technical products ct82,
+swtp|ct82|Southwest Technical Products ct82,
am,
cols#82, lines#20,
bel=^G, clear=^L, cr=\r, cub1=^D, cud1=\n, cuf1=^S,
@@ -22535,7 +23209,7 @@ swtp|ct82|southwest technical products ct82,
#
# Tested, seems to work fine with vi.
-synertek|ktm|synertek380|synertek ktm 3/80 tubeless terminal,
+synertek|ktm|synertek380|Synertek KTM 3/80 tubeless terminal,
am,
cols#80, lines#24,
clear=^Z, cub1=^H, cuf1=^L,
@@ -22586,21 +23260,21 @@ tab132-w-rv|tab132 in reverse-video/wide mode,
# Model 100) that were ANSI-compatible.
#
# Note two things called "teleray". Reorder should move the common one
-# to the front if you have either. A dumb teleray with the cursor stuck
+# to the front if you have either. A dumb Teleray with the cursor stuck
# on the bottom and no obvious model number is probably a 3700.
#
-t3700|dumb teleray 3700,
+t3700|dumb Teleray 3700,
OTbs,
cols#80, lines#24,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n, ind=\n,
-t3800|teleray 3800 series,
+t3800|Teleray 3800 series,
OTbs,
cols#80, it#8, lines#24,
bel=^G, clear=^L, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EJ, el=\EK,
home=\EH, ht=^I, ind=\n, ll=\EY7\s,
-t1061|teleray|teleray 1061,
+t1061|teleray|Teleray 1061,
OTbs, am, km, xhp, xt,
cols#80, it#8, lines#24, xmc#1,
bel=^G, clear=\014$<1>, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
@@ -22612,7 +23286,7 @@ t1061|teleray|teleray 1061,
kf1=^Z1, kf2=^Z2, kf3=^Z3, kf4=^Z4, kf5=^Z5, kf6=^Z6, kf7=^Z7,
kf8=^Z8, rmso=\ER@, rmul=\ER@, smso=\s\ERD, smul=\ERH,
tbc=\EG,
-t1061f|teleray 1061 with fast PROMs,
+t1061f|Teleray 1061 with fast PROMs,
dl1=\EM, il1=\EL, ip@, use=t1061,
# "Teleray Arpa Special", officially designated as
# "Teleray Arpa network model 10" with "Special feature 720".
@@ -22624,7 +23298,7 @@ t1061f|teleray 1061 with fast PROMs,
# Note: this is NOT the old termcap's "t1061f with fast proms."
# From: J. Lepreau <lepreau@utah-cs> Tue Feb 1 06:39:37 1983, Univ of Utah
# (t10: removed overridden ":so@:se@:us@:ue@:" -- esr)
-t10|teleray 10 special,
+t10|Teleray 10 special,
OTbs, km, xhp, xt,
cols#80, it#8, lines#24, xmc#2,
clear=\Ej$<30/>, cub1=^H, cud1=\EB, cuf1=\EC,
@@ -22632,12 +23306,12 @@ t10|teleray 10 special,
dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\EP, il1=\EL,
ind=\Eq, pad=\0, ri=\Ep, rmso=\ER@, rmul=\ER@, smso=\ERD,
smul=\ERH,
-# teleray 16 - map the arrow keys for vi/rogue, shifted to up/down page, and
+# Teleray 16 - map the arrow keys for vi/rogue, shifted to up/down page, and
# back/forth words. Put the function keys (f1-f10) where they can be
# found, and turn off the other magic keys along the top row, except
# for line/local. Do the magic appropriate to make the page shifts work.
# Also toggle ^S/^Q for those of us who use Emacs.
-t16|teleray 16,
+t16|Teleray 16,
am, da, db, mir, xhp, xt,
cols#80, lines#24,
bel=^G, clear=\E[H\E[2J, cr=\r, cub1=^H, cud1=\E[B,
@@ -22655,7 +23329,7 @@ t16|teleray 16,
# The Silent 700 was so called because it was built around a quiet thermal
# printer. It was portable, equipped with an acoustic coupler, and pretty
# neat for its day.
-ti700|ti733|ti735|ti745|ti800|ti silent 700/733/735/745 or omni 800,
+ti700|ti733|ti735|ti745|ti800|Texas Instruments Silent 700/733/735/745 or OMNI 800,
OTbs, hc, os,
cols#80,
bel=^G, cr=\r$<162>, cub1=^H, cud1=\n, ind=\n,
@@ -22666,16 +23340,16 @@ ti700|ti733|ti735|ti745|ti800|ti silent 700/733/735/745 or omni 800,
# http://www.bitsavers.org/pdf/ti/terminal/silent_700/
# Refer to:
# Model 707 Data Terminal User's Manual
+# http://www.bitsavers.org/pdf/ti/terminal/silent_700/2310451-0001_Silent_700_Model_707_Users_Manual_Nov1983.pdf
#
# pages 2-7 and 2-8 say that the model 707 prints 10.2 characters per inch
# (cpi) (80 characters per line) by default, and can be switched to/from 17.0
# cpi using an escape sequence. There is no 80/132-column capability in
# terminfo (only the more general cpi which allows any value).
ti703|ti707|Texas Instruments Silent 703/707,
- am, hc, os, xenl,
- cols#80, it#8,
- bel=^G, cr=\r$<162>, cub1=^H, cud1=\n, cuf1=\s, ind=\n,
- is2=\EPC\\, nel=\r\n,
+ am, xenl,
+ it#8,
+ cuf1=\s, is2=\EPC\\, nel=\r\n, use=ti700,
ti703-w|ti707-w|Texas Instruments Silent 703/707,
cols#132,
is2=\EPD\\, use=ti703,
@@ -22685,12 +23359,11 @@ ti703-w|ti707-w|Texas Instruments Silent 703/707,
#
ti916|ti916-220-7|Texas Instruments 916 VDT 8859/1 vt220 mode 7 bit CTRL,
da, db, in, msgr,
- cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[2J$<6>,
- cnorm=\E[?25h, cub=\E[%p1%dD, cud=\E[%p1%dB,
- cuf=\E[%p1%dC, cup=\E[%p1%i%p1%d;%p2%dH, cuu=\E[%p1%dA,
- dch=\E[%p1%dP$<250>, dch1=\E[P, dl=\E[%p1%dM,
- ech=\E[%p1%dX$<20>, ed=\E[J$<6>, el=\E[0K, el1=\E[1K,
- enacs=\E(B\E)0, ff=^L, flash=\E[?5h\E[?5l$<6>,
+ cbt=\E[Z, clear=\E[H\E[2J$<6>, cub=\E[%p1%dD,
+ cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dH,
+ cuu=\E[%p1%dA, dch=\E[%p1%dP$<250>, dch1=\E[P,
+ dl=\E[%p1%dM, ech=\E[%p1%dX$<20>, ed=\E[J$<6>, el=\E[0K,
+ el1=\E[1K, enacs=\E(B\E)0, ff=^L, flash=\E[?5h\E[?5l$<6>,
hpa=\E[%p1%{1}%+%dG, hts=\E[0W, ich=\E[%p1%d@$<250>,
il=\E[%p1%dL$<36>, ip=$<10>, is2=\E[1;24r\E[24;1H,
kcmd=\E[29~, kdch1=\E[P, kent=\n, kf1=\E[17~, kf10=\E[28~,
@@ -22723,8 +23396,7 @@ ti916-8-132|Texas Instruments 916 VDT 8-bit vt220 132 column,
ti924|Texas Instruments 924 VDT 8859/1 7 bit CTRL,
OTbs, am, xon,
cols#80, it#8, lines#24,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[2J\E[H, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, cr=\r,
csr=%i\E[%p1%d;%p2%dr, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, cvvis=\E[?31h,
dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH,
@@ -22733,12 +23405,11 @@ ti924|Texas Instruments 924 VDT 8859/1 7 bit CTRL,
kf3=\EOR, kf4=\EOS, kf5=\E[16~, kf6=\E[17~, kf7=\E[18~,
kf8=\E[19~, kf9=\E[20~, kich1=\E[@, rc=\E8, rev=\E[7m,
ri=\EM, rmso=\E[m, rmul=\E[m, sc=\E7, sgr0=\E[m, smso=\E[7m,
- smul=\E[4m, tbc=\E[3g,
+ smul=\E[4m, tbc=\E[3g, use=vt220+cvis,
ti924-8|Texas Instruments 924 VDT 8859/1 8 bit CTRL,
am, xon,
cols#80, it#8, lines#24,
- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
- clear=\E[2J\E[H, cnorm=\E[?25h, cr=\r,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, cr=\r,
csr=%i\E[%p1%d;%p2%dr, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, cvvis=\E[?31h,
dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH,
@@ -22747,7 +23418,7 @@ ti924-8|Texas Instruments 924 VDT 8859/1 8 bit CTRL,
kf3=\217R, kf4=\217S, kf5=\23316~, kf6=\23317~,
kf7=\23318~, kf8=\23319~, kf9=\23320~, kich1=\233@, rc=\E8,
rev=\E[7m, ri=\EM, rmso=\E[m, rmul=\E[m, sc=\E7, sgr0=\E[m,
- smso=\E[7m, smul=\E[4m, tbc=\E[3g,
+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt220+cvis,
ti924w|Texas Instruments 924 VDT 7 bit - 132 column mode,
cols#132, use=ti924,
ti924-8w|Texas Instruments 924 VDT 8 bit - 132 column mode,
@@ -22810,7 +23481,7 @@ ti928-8|Texas Instruments 928 VDT 8859/1 8 bit CTRL,
# had just <smso>=\EG6 which I think means standout was supposed to be
# dim-reverse using ADM12-style attributes. ADM12 <smul>/<rmul> and
# <invis> might work-- esr)
-zen30|z30|zentec 30,
+zen30|z30|Zentec 30,
OTbs, am, mir, ul,
cols#80, lines#24,
bel=^G, clear=\E*, cr=\r, cub1=^H, cud1=\n, cuf1=^L,
@@ -22823,7 +23494,7 @@ zen30|z30|zentec 30,
# UK/DK/RK/LK/HM were someone's aliases for ku/kd/kl/kr/kh,
# which were also in the original entry -- esr)
# (zen50: removed obsolete ":ma=^Hh^Ll^Jj^Kk:" -- esr)
-zen50|z50|zentec zephyr,
+zen50|z50|Zentec Zephyr,
OTbs, am,
cols#80, lines#24, xmc#1,
clear=\E+, cub1=^H, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
@@ -22854,7 +23525,7 @@ cci|cci1|z8001|zen8001|CCI Custom Zentec 8001,
#
# From: Gary Darland <goodmanc@garnet.berkeley.edu>
-apollo|apollo console,
+apollo|Apollo console,
OTbs, am, mir,
cols#88, lines#53,
clear=^L, cub1=^H, cud1=\EB, cuf1=\EC,
@@ -22866,11 +23537,11 @@ apollo|apollo console,
# We don't know whether or not the apollo guys replicated DEC's firmware bug
# in the VT132 that reversed <rmir>/<smir>. To be on the safe side, disable
# both these capabilities.
-apollo_15P|apollo 15 inch display,
+apollo_15P|Apollo 15 inch display,
rmir@, smir@, use=vt132,
-apollo_19L|apollo 19 inch display,
+apollo_19L|Apollo 19 inch display,
rmir@, smir@, use=vt132,
-apollo_color|apollo color display,
+apollo_color|Apollo color display,
rmir@, smir@, use=vt132,
#### AT&T consoles
@@ -23135,15 +23806,14 @@ fos|fortune|Fortune system,
acsc=j*k(l m"q&v%w#x-, bel=^G, blink=\EN, civis=\E],
clear=\014$<20>, cnorm=\E\\, cr=\r, cub1=^H, cud1=\n$<3>,
cup=\034C%p1%{32}%+%c%p2%{32}%+%c, cuu1=\013$<3>,
- cvvis=\E\:, dch1=\034W$<5>, dl1=\034R$<15>,
- ed=\034Y$<3*>, el=^\Z, home=\036$<10>, ht=^Z,
- ich1=\034Q$<5>, il1=\034E$<15>, ind=\n, is2=^_.., kbs=^H,
- kcub1=^Aw\r, kcud1=^Ay\r, kcuf1=^Az\r, kcuu1=^Ax\r,
- kend=^Ak\r, kent=^Aq, kf1=^Aa\r, kf2=^Ab\r, kf3=^Ac\r,
- kf4=^Ad\r, kf5=^Ae\r, kf6=^Af\r, kf7=^Ag\r, kf8=^Ah\r,
- khome=^A?\r, knp=^Ao\r, kpp=^An\r, nel=\r\n, rev=\EH,
- rmacs=^O, rmso=^\I`, rmul=^\IP, sgr0=\EI, smacs=\Eo,
- smso=^\H`, smul=^\HP,
+ cvvis=\E:, dch1=\034W$<5>, dl1=\034R$<15>, ed=\034Y$<3*>,
+ el=^\Z, home=\036$<10>, ht=^Z, ich1=\034Q$<5>,
+ il1=\034E$<15>, ind=\n, is2=^_.., kbs=^H, kcub1=^Aw\r,
+ kcud1=^Ay\r, kcuf1=^Az\r, kcuu1=^Ax\r, kend=^Ak\r,
+ kent=^Aq, kf1=^Aa\r, kf2=^Ab\r, kf3=^Ac\r, kf4=^Ad\r,
+ kf5=^Ae\r, kf6=^Af\r, kf7=^Ag\r, kf8=^Ah\r, khome=^A?\r,
+ knp=^Ao\r, kpp=^An\r, nel=\r\n, rev=\EH, rmacs=^O, rmso=^\I`,
+ rmul=^\IP, sgr0=\EI, smacs=\Eo, smso=^\H`, smul=^\HP,
#### Masscomp consoles
#
@@ -23306,16 +23976,16 @@ gs6300|emots|AT&T PC6300 with EMOTS terminal emulator,
# From: <earle@smeagol.UUCP> 29 Oct 85 05:40:18 GMT
# MS-Kermit with Heath-19 emulation mode enabled
# (h19k: changed ":pt@:" to ":it@"
-h19k|h19kermit|heathkit emulation provided by Kermit (no auto margin),
+h19k|h19kermit|Heathkit emulation provided by Kermit (no auto margin),
am@, da, db, xt,
it@,
ht@, use=h19-u,
-# Apple Macintosh with Versaterm, a terminal emulator distributed by Synergy
+# Apple Macintosh with VersaTerm, a terminal emulator distributed by Synergy
# Software (formerly Peripherals Computers & Supplies, Inc) of
# 2457 Perkiomen Ave., Reading, PA 19606, 1-800-876-8376. They can
# also be reached at support@synergy.com.
-versaterm|versaterm vt100 emulator for the Macintosh,
+versaterm|VersaTerm vt100 emulator for the Macintosh,
am, xenl,
cols#80, it#8, lines#24,
bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
@@ -23367,24 +24037,24 @@ simterm|attpc running simterm,
#
# (diablo1620: removed <if=/usr/share/tabset/xerox1720>, no such file -- esr)
-diablo1620|diablo1720|diablo450|ipsi|diablo 1620,
+diablo1620|diablo1720|diablo450|ipsi|Diablo 1620,
hc, os,
cols#132, it#8,
cub1=^H, cud1=\n, cuu1=\E\n, hd=\ED, hpa=\E\011%i%p1%c,
ht=^I, hts=\E1, hu=\EU, kbs=^H, tbc=\E2,
-diablo1620-m8|diablo1640-m8|diablo 1620 w/8 column left margin,
+diablo1620-m8|diablo1640-m8|Diablo 1620 w/8 column left margin,
cols#124,
is2=\r \E9, use=diablo1620,
# (diablo1640: removed <if=/usr/share/tabset/xerox1730>, no such file -- esr)
-diablo1640|diablo1730|diablo1740|diablo630|x1700|diablo|xerox|diablo 1640,
+diablo1640|diablo1730|diablo1740|diablo630|x1700|diablo|xerox|Diablo 1640,
bel=^G, rmso=\E&, rmul=\ER, smso=\EW, smul=\EE,
use=diablo1620,
# (diablo1640-lm: removed <if=/usr/share/tabset/xerox1730-lm>, no such
# file -- esr)
-diablo1640-lm|diablo-lm|xerox-lm|diablo 1640 with indented left margin,
+diablo1640-lm|diablo-lm|xerox-lm|Diablo 1640 with indented left margin,
cols#124,
rmso=\E&, rmul=\ER, smso=\EW, smul=\EE, use=diablo1620,
-diablo1740-lm|630-lm|1730-lm|x1700-lm|diablo 1740 printer,
+diablo1740-lm|630-lm|1730-lm|x1700-lm|Diablo 1740 printer,
use=diablo1640-lm,
# DTC 382 with VDU. Has no <ed> so we fake it with <el>. Standout
# <smso=^P\s\002^PF> works but won't go away without dynamite <rmso=^P\s\0>.
@@ -23417,7 +24087,7 @@ gsi|mystery gsi terminal,
cols#132,
bel=^G, cr=\r, cub1=^H, cud1=\n, cuu1=^Z, hd=\Eh, ht=^I, hu=\EH,
ind=\n,
-aj830|aj832|aj|anderson jacobson,
+aj830|aj832|aj|Anderson Jacobson,
hc, os,
bel=^G, cr=\r, cub1=^H, cud1=\n, cuu1=\E7, hd=\E9, hu=\E8,
ind=\n,
@@ -23434,7 +24104,7 @@ aj510|Anderson-Jacobson model 510,
smul=\E"U,
# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981
# This is incomplete, but it's a start.
-nec5520|nec|spinwriter|nec 5520,
+nec5520|nec|spinwriter|NEC 5520,
hc, os,
cols#132, it#8,
bel=^G, cr=\r, cub1=^H, cud1=\n, cuu1=\E9, ff=^L,
@@ -23445,8 +24115,8 @@ qume5|qume|Qume Sprint 5,
cols#80, it#8,
bel=^G, cr=\r, cub1=^H, cud1=\n, cuu1=^Z, ff=^L, hd=\Eh, ht=^I,
hts=\E1, hu=\EH, ind=\n, kbs=^H, tbc=\E3,
-# I suspect the xerox 1720 is the same as the diablo 1620.
-xerox1720|x1720|x1750|xerox 1720,
+# I suspect the Xerox 1720 is the same as the Diablo 1620.
+xerox1720|x1720|x1750|Xerox 1720,
hc, os,
cols#132, it#8,
bel=^G, cr=\r, cub1=^H, cud1=\n, ff=^L, ht=^I, hts=\E1, ind=\n,
@@ -23474,9 +24144,16 @@ cops10|cops|cops-10|cops 10,
cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=^W, el=^V,
ind=\n, kbs=^H, kcub1=^H, kcud1=\n, kcuf1=^L, kcuu1=^K,
khome=^Y,
+
+# http://www.bitsavers.org/pdf/datapro/alphanumeric_terminals/Datapro_C25_Datagraphix.pdf
+#
+# DatagraphiX, Inc.
+# (a subsidiary of General Dynamics),
+# P.O. Box 82449, San Diego, California 92138.
+#
# (d132: removed duplicate :ic=\E5:,
# merged in capabilities from a BRL entry -- esr)
-d132|datagraphix|datagraphix 132a,
+d132|datagraphix|DatagraphiX 132a,
da, db, in,
cols#80, lines#30,
bel=^G, clear=^L, cnorm=\Em\En, cr=\r, cub1=^H, cud1=\n,
@@ -23507,8 +24184,8 @@ digilog|digilog 333,
dwk|dwk-vt|dwk terminal,
am,
cols#80, it#8, lines#24,
- acsc=+\^\,Q-S.M0\177`+a\:f'g#h#i#jXkClJmFnNo~qUs_tEuPv
- \\wKxW~_,
+ acsc=+\^\,Q-S.M0\177`+a:f'g#h#i#jXkClJmFnNo~qUs_tEuPv\\wKxW~
+ _,
bel=^G, clear=\EH\EJ, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP,
ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\EQ, ind=\n, kbs=^?,
@@ -23562,7 +24239,7 @@ opus3n1+|Esprit Opus3n1+ in wy60 mode with ANSI arrow keys,
ed=\EY$<100>, el=\ET, fsl=\r, home=\036$<2>, ht=\011$<5>,
hts=\E1, if=/usr/share/tabset/std, il1=\EE$<4>, ind=\n,
ip=$<3>,
- is2=\E`\:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Ed/\Ezz&\E[A\177\Ezz'\E[B
+ is2=\E`:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Ed/\Ezz&\E[A\177\Ezz'\E[B
\177\Ezz(\E[D\177\Ezz)\E[C\177\Ezz<\E[Q\177\Ezz`\E[F
\177\EA1*\EZH12,
kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=\E[D, kcud1=\E[B,
@@ -24502,6 +25179,8 @@ v3220|LANPAR Vision II model 3220/3221/3222,
# This was implemented for the Hurd.
# rmxx/smxx describes the ECMA-48 strikeout/crossed-out attributes, as an
# experimental feature of tmux.
+# CO gives the number of indexed ("ANSI") colors which overlay an RGB color
+# space.
# E3 clears the terminal's scrollback buffer. This was implemented in the
# Linux 3.0 kernel as a security feature. It matches a feature which was
# added in xterm patch #107.
@@ -24585,7 +25264,7 @@ v3220|LANPAR Vision II model 3220/3221/3222,
# * Replaced the translated BBN BitGraph entries with purpose-built
# ones from AT&T's SVr3.
# * Replaced the AT&T entries with AT&T's official terminfos.
-# * Added teleray 16, vc415, cops10.
+# * Added Teleray 16, vc415, cops10.
# * Merged in many individual capabilities from SCO terminfo files.
# 9.4.3 (Mon Mar 13 02:37:53 EST 1995):
# * Typo fixes.
@@ -24621,7 +25300,7 @@ v3220|LANPAR Vision II model 3220/3221/3222,
# * Added synertek, apple-soroc, ibmpc, pc-venix, pc-coherent, xtalk,
# adm42-nl, pc52, gs6300, xerox820, uts30.
# * Pull SCO's padding into vi200 entry.
-# * Improved capabilities for tvi4107 and other Televideo and Viewpoint
+# * Improved capabilities for tvi4107 and other TeleVideo and Viewpoint
# entries merged in from SCO's descriptions.
# * Fixed old-style prefix padding on zen50, h1500.
# * Moved old superbee entry to superbee-xsb, pulled in new superbee
@@ -26349,7 +27028,7 @@ v3220|LANPAR Vision II model 3220/3221/3222,
# 2018-09-29
# + corrected acsc for tvi950 -TD
# + remove bogus kf0 from tvi950 -TD
-# + added function-key definitions to agree with Televideo 950 manual -TD
+# + added function-key definitions to agree with TeleVideo 950 manual -TD
# + add bel to tvi950 -TD
# + add shifted function-keys to regent60 -TD
# + renumber regent40 function-keys to match manual -TD
@@ -26429,10 +27108,169 @@ v3220|LANPAR Vision II model 3220/3221/3222,
#
# 2020-01-12
# + update alacritty entries for 0.4.0 (prompted by patch by
-# Christian Durr) -TD
+# Christian Duerr) -TD
#
# 2020-01-18
# + spelling fixes per codespell -TD
# + improve xm example for xterm+x11mouse, xterm+sm+1006 -TD
#
+# 2020-02-22
+# + improve vt50h and vt52 based on DECScope manual -TD
+# + add/use vt52+keypad and vt52-basic -TD
+#
+# 2020-04-18
+# + use vt52+keypad in xterm-vt52, from xterm #354 -TD
+#
+# 2020-04-25
+# + use vt100+fnkeys in putty -TD
+#
+# 2020-05-02
+# + add details on the change to Linux SGR 21 in 2018 -TD
+# + add xterm-direct16 and xterm-direct256 -TD
+#
+# 2020-05-03
+# + fix some dead URLs -TD
+#
+# 2020-05-16
+# + update notes on vscode / xterm.js -TD
+#
+# 2020-05-30
+# + re-enable "bel" in konsole-base (report by Nia Huang)
+# + add linux-s entry (patch by Alexandre Montaron).
+#
+# 2020-06-06
+# + add xterm+256color2, xterm+88color2, to deprecate nonstandard usage
+# in xterm+256color, xterm+88color -TD
+# + add shifted Linux console keys in linux+sfkeys entry for
+# screen.linux (report by Alexandre Montaron).
+# + use vt100+enq in screen (report by Alexandre Montaron).
+# + add screen.linux-s alias (suggested by Alexandre Montaron).
+#
+# 2020-07-11
+# + fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
+# Bruckl).
+#
+# 2020-08-28
+# + correct icl6404 csr (report by Florian Weimer).
+# + correct ti916 cup (report by Florian Weimer).
+# + improve ndr9500 (report by Florian Weimer).
+#
+# 2020-09-05
+# + correct description of vt330/vt340 (Ross Combs).
+#
+# 2020-09-19
+# + update mlterm3 for 3.9.0 (report by Premysl Eric Janouch).
+#
+# 2020-09-29
+# + add tmux-direct (tmux #2370)
+# + simplify mlterm initialization with DECSTR -TD
+# + change tmux's kbs to ^? (report by Premysl Eric Janouch)
+#
+# 2020-10-10
+# + correct sgr in aaa+rv (report by Florian Weimer) -TD
+# + fix some sgr inconsistencies in d230c, ibm6153, ibm6154,
+# ncrvt100an -TD
+#
+# 2020-10-17
+# + expanded notes about tek4107 -TD
+#
+# 2020-11-07
+# + update kitty+common -TD
+# + add putty+screen and putty-screen (suggested by Alexandre Montaron).
+#
+# 2020-11-28
+# + add Smulx to alacritty (Christian Duerr).
+# + add rep to PuTTY -TD
+# + add putty+keypad -TD
+#
+# 2020-12-05
+# + correct mlterm3 kf1-kf4 (Debian #975322) -TD
+# + add flash to mlterm3 -TD
+#
+# 2020-12-27
+# + update terminology to 1.8.1 -TD
+#
+# 2021-01-16
+# + add comment for linux2.6 regarding CONFIG_CONSOLE_TRANSLATIONS
+# (report by Patrick McDermott) -TD
+#
+# 2021-01-25
+# + split-out att610+cvis, vt220+cvis, vt220+cvis8 -TD
+# + add vt220-base, for terminal emulators which generally have not
+# supported att610's blinking cursor control -TD
+# + use vt220+cvis in vt220, etc -TD
+# + use att610+cvis, xterm+tmux and ansi+enq in kitty -TD
+# + use vt220+cvis in st, terminology, termite since they ignore
+# blinking-cursor detail in att610+cvis -TD
+#
+# 2021-02-20
+# + add/use vt220+pcedit and vt220+vtedit -TD
+# + add scrt/securecrt and absolute -TD
+# + add nel to xterm-new, though supported since X11R5 -TD
+# + add/use xterm+nofkeys -TD
+# + move use of ecma+italics from xterm-basic to xterm+nofkeys -TD
+#
+# 2021-02-27
+# + remove a duplicate "use" in xterm-vt220 -TD
+#
+# 2021-03-14
+# + correct use-ordering in some xterm-direct flavors -TD
+#
+# 2021-03-20
+# + add hterm, hterm-256color (Mike Frysinger)
+#
+# 2021-06-26
+# + use default colors in pccon "op" -TD
+# + correct rmacs/smacs in aaa+dec, aaa+rv -TD
+# + add hpterm-color2 and hp98550-color (Martin Trusler)
+#
+# 2021-07-17
+# + correct typo in "vip" comments (report by Nick Black), reviewed this
+# against Glink manual -TD
+# + fill in some missing pieces for pccon, to make it comparable to the
+# vt220 entry -TD
+#
+# 2021-07-24
+# + trim "flash" from pccon+base -TD
+# + revert change for aaa+rv -TD
+# + add workaround for Windows Terminal's problems with CR/LF mapping to
+# ms-terminal (patch by Juergen Pfeifer).
+# + review/update current Windows Terminal vs ms-terminal -TD
+#
+# 2021-07-31
+# + add extensions in xterm+tmux and ecma+strikeout to ms-terminal,
+# but cancel the non-working Cr and Ms capabilities -TD
+# + add foot and foot-direct -TD
+#
+# 2021-08-15
+# + fix missing "%d" for setaf/setab code 8-15 in xterm+direct16 (report
+# by Florian Weimer) -TD
+#
+# 2021-08-16
+# + corrected tsl capability for terminator -TD
+#
+# 2021-09-04
+# + modify linux3.0 entry to reflect default mapping of shift-tab by
+# kbd 1.14 (report by Jan Engelhardt) -TD
+#
+# 2021-09-11
+# + add testing note for xterm-{hp|sco|sun} -TD
+# + corrected description for ansi.sys-old -TD
+# + add xterm+nopcfkeys, to fill in keys for xterm-hp, xterm-sun -TD
+# + use hp+arrows in a few places -TD
+# + use hp+pfk-cr in a few places -TD
+#
+# 2021-09-21
+# + add kbeg to xterm+keypad to accommodate termcap applications -TD
+# + add smglp and smgrp to vt420+lrmm, to provide useful data for the
+# "tabs" +m option -TD
+#
+# 2021-10-09
+# + fill in some details for infoton -TD
+# + fix spelling/consistency in several descriptions -TD
+# + use vt420+lrmm in vt420 -TD
+#
+# 2021-10-13
+# + trim some redundant definitions -TD
+#
######## SHANTIH! SHANTIH! SHANTIH!
diff --git a/mk-0th.awk b/mk-0th.awk
index f97549e..3662243 100644
--- a/mk-0th.awk
+++ b/mk-0th.awk
@@ -1,6 +1,6 @@
-# $Id: mk-0th.awk,v 1.23 2020/02/02 23:34:34 tom Exp $
+# $Id: mk-0th.awk,v 1.24 2021/03/20 11:44:48 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2010,2012 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -129,8 +129,10 @@ BEGIN {
printf "C_SRC ="
if ( $2 == "lib" )
found = 1
- else
+ else if ( $2 == "c++" )
found = 2
+ else
+ found = 3
}
if ( libname == "c++" || libname == "c++w" ) {
srcname = sprintf("%s/%s.cc", $3, $1);
@@ -159,6 +161,10 @@ END {
show_list(ticlib, count_ticlib, list_ticlib);
show_list(termlib, count_termlib, list_termlib);
}
+ else if ( found == 2 )
+ {
+ make_lintlib(libname, "$(C_SRC)");
+ }
else
{
print ""
diff --git a/mk-1st.awk b/mk-1st.awk
index 480baad..30638c3 100644
--- a/mk-1st.awk
+++ b/mk-1st.awk
@@ -1,6 +1,6 @@
-# $Id: mk-1st.awk,v 1.106 2020/02/02 23:34:34 tom Exp $
+# $Id: mk-1st.awk,v 1.124 2021/10/15 00:50:05 tom Exp $
##############################################################################
-# Copyright 2018,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2016,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -36,6 +36,8 @@
# traces ("all" or "DEBUG", to control whether tracing is compiled in)
# MODEL (e.g., "DEBUG", uppercase; toupper is not portable)
# CXX_MODEL (e.g., "DEBUG", uppercase)
+# LIB_SUFFIX (e.g., "", "w", "t", "tw")
+# USE_LIB_SUFFIX (e.g., "", "w", "t", "tw")
# model (directory into which we compile, e.g., "obj")
# prefix (e.g., "lib", for Unix-style libraries)
# suffix (e.g., "_g.a", for debug libraries)
@@ -51,6 +53,7 @@
# DoLinks ("yes", "reverse" or "no", flag to add symbolic links)
# rmSoLocs ("yes" or "no", flag to add extra clean target)
# ldconfig (path for this tool, if used)
+# make_phony ("yes" if the make-program accepts ".PHONY" directive.
# overwrite ("yes" or "no", flag to add link to libcurses.a
# depend (optional dependencies for all objects, e.g, ncurses_cfg.h)
# host (cross-compile host, if any)
@@ -59,7 +62,7 @@
# Notes:
# CLIXs nawk does not like underscores in command-line variable names.
# Mixed-case variable names are ok.
-# HP/UX requires shared libraries to have executable permissions.
+# HP-UX requires shared libraries to have executable permissions.
#
function is_ticlib() {
return ( subset ~ /^ticlib$/ );
@@ -75,7 +78,9 @@ function lib_name_of(a_name) {
function imp_name_of(a_name) {
if (ShlibVerInfix == "cygdll" || ShlibVerInfix == "msysdll" || ShlibVerInfix == "mingw") {
result = sprintf("%s%s%s.a", prefix, a_name, suffix);
- } else {
+ } else if (ShlibVerInfix == "msvcdll") {
+ result = sprintf("%s%s%s.lib", prefix, a_name, suffix);
+ } else{
result = "";
}
return result;
@@ -86,7 +91,7 @@ function abi_name_of(a_name) {
result = sprintf("%s%s$(ABI_VERSION)%s", "cyg", a_name, suffix);
} else if (ShlibVerInfix == "msysdll") {
result = sprintf("%s%s$(ABI_VERSION)%s", "msys-", a_name, suffix);
- } else if (ShlibVerInfix == "mingw") {
+ } else if (ShlibVerInfix == "mingw" || ShlibVerInfix == "msvcdll") {
result = sprintf("%s%s$(ABI_VERSION)%s", prefix, a_name, suffix);
} else if (ShlibVerInfix == "yes") {
result = sprintf("%s%s.$(ABI_VERSION)%s", prefix, a_name, suffix);
@@ -101,7 +106,7 @@ function rel_name_of(a_name) {
result = sprintf("%s%s$(REL_VERSION)%s", "cyg", a_name, suffix);
} else if (ShlibVerInfix == "msysdll") {
result = sprintf("%s%s$(ABI_VERSION)%s", "msys-", a_name, suffix);
- } else if (ShlibVerInfix == "mingw") {
+ } else if (ShlibVerInfix == "mingw" || ShlibVerInfix == "msvcdll") {
result = sprintf("%s%s$(REL_VERSION)%s", prefix, a_name, suffix);
} else if (ShlibVerInfix == "yes") {
result = sprintf("%s%s.$(REL_VERSION)%s", prefix, a_name, suffix);
@@ -119,7 +124,7 @@ function end_name_of(a_name) {
} else {
if ( ShlibVer == "rel" ) {
result = rel_name_of(a_name);
- } else if ( ShlibVer == "abi" || ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw" ) {
+ } else if ( ShlibVer == "abi" || ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw" || ShlibVer == "msvcdll" ) {
result = abi_name_of(a_name);
} else {
result = lib_name_of(a_name);
@@ -175,7 +180,7 @@ function make_shlib(objs, shlib_list) {
printf "\t$(MK_SHARED_LIB) $(%s_OBJS) $(%s)\n", objs, shlib_list
}
function sharedlinks(directory) {
- if ( ShlibVer != "auto" && ShlibVer != "cygdll" && ShlibVer != "msysdll" && ShlibVer != "mingw" ) {
+ if ( ShlibVer != "auto" && ShlibVer != "cygdll" && ShlibVer != "msysdll" && ShlibVer != "mingw" && ShlibVer != "msvcdll" ) {
printf "\tcd %s && (", directory
if ( DoLinks == "reverse" ) {
if ( ShlibVer == "rel" ) {
@@ -257,6 +262,22 @@ function install_dll(directory,filename) {
}
printf "\t%s %s %s\n", program, src_name, dst_name
}
+function in_subset(value) {
+ value = " " value " ";
+ check = subset;
+ gsub("[+]", " ", check);
+ check = " " check " ";
+ return index(check,value);
+ }
+function trim_suffix(value) {
+ if (USE_LIB_SUFFIX != "" && length(value) > length(USE_LIB_SUFFIX)) {
+ check = substr(value, 1 + length(value) - length(USE_LIB_SUFFIX));
+ if (check == USE_LIB_SUFFIX) {
+ value = substr(value, 1, length(value) - length(USE_LIB_SUFFIX));
+ }
+ }
+ return value;
+}
BEGIN {
TOOL_PREFIX = "";
found = 0;
@@ -266,7 +287,9 @@ BEGIN {
using = 0
if (subset == "none") {
using = 1
- } else if (index(subset,$2) > 0) {
+ print ""
+ print "# generated by mk-1st.awk"
+ } else if (in_subset($2) > 0) {
if (using == 0) {
if (found == 0) {
if ( name ~ /^.*\+\+.*/ ) {
@@ -280,28 +303,32 @@ BEGIN {
}
print ""
printf "# generated by mk-1st.awk (subset=%s)\n", subset
- printf "# name: %s\n", name
- printf "# traces: %s\n", traces
- printf "# MODEL: %s\n", MODEL
- printf "# CXX_MODEL: %s\n", CXX_MODEL
- printf "# model: %s\n", model
- printf "# prefix: %s\n", prefix
- printf "# suffix: %s\n", suffix
- printf "# subset: %s\n", subset
- printf "# driver: %s\n", driver
- printf "# ShlibVer: %s\n", ShlibVer
- printf "# ShlibVerInfix: %s\n", ShlibVerInfix
- printf "# SymLink: %s\n", SymLink
- printf "# TermlibRoot: %s\n", TermlibRoot
- printf "# TermlibSuffix: %s\n", TermlibSuffix
- printf "# ReLink: %s\n", ReLink
- printf "# ReRanlib: %s\n", ReRanlib
- printf "# DoLinks: %s\n", DoLinks
- printf "# rmSoLocs: %s\n", rmSoLocs
- printf "# ldconfig: %s\n", ldconfig
- printf "# overwrite: %s\n", overwrite
- printf "# depend: %s\n", depend
- printf "# host: %s\n", host
+ printf "# name: %s\n", name
+ printf "# traces: %s\n", traces
+ printf "# MODEL: %s\n", MODEL
+ printf "# CXX_MODEL: %s\n", CXX_MODEL
+ printf "# LIB_SUFFIX: %s\n", LIB_SUFFIX
+ printf "# USE_LIB_SUFFIX: %s\n", USE_LIB_SUFFIX
+ printf "# model: %s\n", model
+ printf "# prefix: %s\n", prefix
+ printf "# suffix: %s\n", suffix
+ printf "# subset: %s\n", subset
+ printf "# driver: %s\n", driver
+ printf "# ShlibVer: %s\n", ShlibVer
+ printf "# ShlibVerInfix: %s\n", ShlibVerInfix
+ printf "# SymLink: %s\n", SymLink
+ printf "# TermlibRoot: %s\n", TermlibRoot
+ printf "# TermlibSuffix: %s\n", TermlibSuffix
+ printf "# ReLink: %s\n", ReLink
+ printf "# ReRanlib: %s\n", ReRanlib
+ printf "# DoLinks: %s\n", DoLinks
+ printf "# rmSoLocs: %s\n", rmSoLocs
+ printf "# ldconfig: %s\n", ldconfig
+ printf "# make_phony: %s\n", make_phony
+ printf "# overwrite: %s\n", overwrite
+ printf "# depend: %s\n", depend
+ printf "# host: %s\n", host
+ printf "# libtool_version: %s\n", libtool_version
print ""
}
using = 1
@@ -375,7 +402,7 @@ END {
print "install \\"
print "install.libs \\"
- if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") {
+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw" || ShlibVer == "msvcdll") {
dst_dirs = "$(DESTDIR)$(bindir) $(DESTDIR)$(libdir)";
printf "install.%s :: %s $(LIBRARIES)\n", name, dst_dirs
@@ -396,8 +423,13 @@ END {
if ( overwrite == "yes" && name == "ncurses" )
{
- if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") {
- ovr_name = sprintf("libcurses%s.a", suffix)
+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw" || SlibVer == "msvcdll") {
+ if (ShlibVer == "msvcdll") {
+ curses_prefix = ""
+ } else {
+ curses_prefix = "lib"
+ }
+ ovr_name = sprintf("%scurses%s.a", curses_prefix, suffix)
printf "\t@echo linking %s to %s\n", imp_name, ovr_name
printf "\tcd $(DESTDIR)$(libdir) && ("
symlink(imp_name, ovr_name)
@@ -417,7 +449,7 @@ END {
print "uninstall \\"
print "uninstall.libs \\"
printf "uninstall.%s ::\n", name
- if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") {
+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw" || ShlibVer == "msvcdll") {
printf "\t@echo uninstalling $(DESTDIR)$(bindir)/%s\n", end_name
printf "\t-@rm -f $(DESTDIR)$(bindir)/%s\n", end_name
@@ -444,7 +476,15 @@ END {
else if ( MODEL == "LIBTOOL" )
{
end_name = lib_name;
- printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS
+ use_name = trim_suffix(TermlibRoot) USE_LIB_SUFFIX
+ printf "../lib/%s : \\\n", lib_name
+ if ( (name != use_name ) && ( index(name, "++") == 0 ) && ( index(name, "tic") == 1 || index(name, "ncurses") == 1 ) ) {
+ printf "\t\t../lib/lib%s.la \\\n", use_name;
+ if ( index(name, "tic") == 1 && index(TermlibRoot, "ncurses") != 1 ) {
+ printf "\t\t../lib/lib%s%s.la \\\n", "ncurses", USE_LIB_SUFFIX;
+ }
+ }
+ printf "\t\t$(%s_OBJS)\n", OBJS
if ( is_ticlib() ) {
which_list = "TICS_LIST";
} else if ( is_termlib() ) {
@@ -456,16 +496,31 @@ END {
printf "\t\t-o %s $(%s_OBJS:$o=.lo) \\\n", lib_name, OBJS;
printf "\t\t-rpath $(libdir) \\\n";
printf "\t\t%s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(%s) $(LDFLAGS)\n", libtool_version, which_list;
+ if ( make_phony == "yes" ) {
+ print ""
+ printf ".PHONY :\tinstall.%s\n", trim_suffix(name);
+ }
print ""
print "install \\"
print "install.libs \\"
- printf "install.%s :: $(DESTDIR)$(libdir) ../lib/%s\n", name, lib_name
+ printf "install.%s :: \\\n", trim_suffix(name);
+ printf "\t\t$(DESTDIR)$(libdir) \\\n";
+ use_name = TermlibRoot USE_LIB_SUFFIX
+ if ( (name != use_name ) && ( index(name, "++") == 0 ) && ( index(name, "tic") == 1 || index(name, "ncurses") == 1 ) ) {
+ if ( trim_suffix(TermlibRoot) != trim_suffix(name) ) {
+ printf "\t\tinstall.%s \\\n", trim_suffix(TermlibRoot);
+ }
+ if ( index(name, "tic") == 1 && index(TermlibRoot, "ncurses") != 1 && trim_suffix(name) != "ncurses" ) {
+ printf "\t\tinstall.%s \\\n", "ncurses";
+ }
+ }
+ printf "\t\t../lib/%s\n", lib_name
printf "\t@echo installing ../lib/%s as $(DESTDIR)$(libdir)/%s\n", lib_name, lib_name
printf "\tcd ../lib; $(LIBTOOL_INSTALL) $(INSTALL) %s $(DESTDIR)$(libdir)\n", lib_name
print ""
print "uninstall \\"
print "uninstall.libs \\"
- printf "uninstall.%s ::\n", name
+ printf "uninstall.%s ::\n", trim_suffix(name)
printf "\t@echo uninstalling $(DESTDIR)$(libdir)/%s\n", lib_name
printf "\t-@$(LIBTOOL_UNINSTALL) rm -f $(DESTDIR)$(libdir)/%s\n", lib_name
}
diff --git a/mk-2nd.awk b/mk-2nd.awk
index 41b0f92..4493bcf 100644
--- a/mk-2nd.awk
+++ b/mk-2nd.awk
@@ -1,6 +1,6 @@
-# $Id: mk-2nd.awk,v 1.20 2020/02/02 23:34:34 tom Exp $
+# $Id: mk-2nd.awk,v 1.23 2021/06/17 21:20:30 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2004,2005 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -53,6 +53,13 @@
#
# Fields in src/modules past $3 are dependencies
#
+function in_subset(value) {
+ value = " " value " ";
+ check = subset;
+ gsub("[+]", " ", check);
+ check = " " check " ";
+ return index(check,value);
+ }
BEGIN {
found = 0
using = 0
@@ -61,14 +68,14 @@ BEGIN {
using = 0
if (subset == "none") {
using = 1
- } else if (index(subset,$2) > 0) {
+ } else if (in_subset($2) > 0) {
if (using == 0) {
if (found == 0) {
print ""
print "# generated by mk-2nd.awk"
printf "# model: %s\n", model
printf "# MODEL: %s\n", MODEL
- printf "# echo: %s\n", echo
+ printf "# echo: %s\n", echo
printf "# subset: %s\n", subset
printf "# crenames: %s\n", crenames
printf "# cxxrenames: %s\n", cxxrenames
diff --git a/mk-hdr.awk b/mk-hdr.awk
index 377b1c3..7608afe 100644
--- a/mk-hdr.awk
+++ b/mk-hdr.awk
@@ -1,6 +1,6 @@
-# $Id: mk-hdr.awk,v 1.5 2020/02/02 23:34:34 tom Exp $
+# $Id: mk-hdr.awk,v 1.8 2021/06/17 21:20:30 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2007-2010,2013 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -39,6 +39,13 @@ function basename(path) {
sub(/^.*\//,"",path)
return path;
}
+function in_subset(value) {
+ value = " " value " ";
+ check = subset;
+ gsub("[+]", " ", check);
+ check = " " check " ";
+ return index(check,value);
+}
BEGIN {
found = 0
using = 1
@@ -48,7 +55,7 @@ BEGIN {
using = 0
if (subset == "none") {
using = 1
- } else if (index(subset,$2) > 0) {
+ } else if (in_subset($2) > 0) {
using = 1
} else {
using = 0
@@ -62,8 +69,8 @@ BEGIN {
if (found == 0) {
print ""
print "# generated by mk-hdr.awk"
- printf "# subset: %s\n", subset
- printf "# compat: %s\n", compat
+ printf "# subset: %s\n", subset
+ printf "# compat: %s\n", compat
print ""
found = 1
}
diff --git a/ncurses/Makefile.in b/ncurses/Makefile.in
index b242078..aba25fd 100644
--- a/ncurses/Makefile.in
+++ b/ncurses/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.168 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.182 2021/08/19 23:43:40 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2017,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -50,7 +50,7 @@ SHELL = @SHELL@
VPATH = @srcdir@
THIS = Makefile
-CF_MFLAGS = @cf_cv_makeflags@
+TOP_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)" RPATH_LIST="$(RPATH_LIST)"
@SET_MAKE@
x = @EXEEXT@
@@ -99,14 +99,15 @@ ETAGS = @ETAGS@
CC = @CC@
CPP = @CPP@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
+LIBS = @LIBS@
INCDIR = $(srcdir)/../include
-CPPFLAGS = -DHAVE_CONFIG_H -I../ncurses @CPPFLAGS@
+CPPFLAGS = -DHAVE_CONFIG_H -DBUILDING_NCURSES -I../ncurses @CPPFLAGS@
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-BUILD_CPPFLAGS = -DHAVE_CONFIG_H -DUSE_BUILD_CC -I../ncurses -I$(srcdir) -I../include -I$(INCDIR) @BUILD_CPPFLAGS@
+BUILD_CPPFLAGS = -DHAVE_CONFIG_H -DUSE_BUILD_CC -I../ncurses -I$(srcdir) -I../include -I$(INCDIR) @BUILD_CPPFLAGS@
BUILD_CC = @BUILD_CC@
BUILD_CCFLAGS = @BUILD_CFLAGS@
BUILD_LDFLAGS = @BUILD_LDFLAGS@
@@ -119,9 +120,9 @@ BUILD_EXEEXT = @BUILD_EXEEXT@
x = @EXEEXT@
CFLAGS_LIBTOOL = $(CCFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -177,20 +178,26 @@ AUTO_SRC = \
init_keytry.h \
keys.list
-HEADER_DEPS = \
- $(srcdir)/curses.priv.h \
- ../include/ncurses_dll.h \
+HEADER_DEPS = @INTERNALS_HDR@ \
../include/ncurses_cfg.h \
+ ../include/ncurses_def.h \
+ ../include/ncurses_dll.h \
../include/curses.h \
- $(INCDIR)/nc_panel.h \
../include/term.h \
- $(INCDIR)/term_entry.h \
- $(INCDIR)/nc_tparm.h \
+ ../include/unctrl.h \
$(INCDIR)/nc_alloc.h \
- $(INCDIR)/nc_mingw.h
+ $(INCDIR)/nc_panel.h \
+ $(INCDIR)/nc_string.h \
+ $(INCDIR)/nc_termios.h \
+ $(INCDIR)/nc_tparm.h \
+ $(INCDIR)/nc_win32.h \
+ $(INCDIR)/term_entry.h \
+ $(srcdir)/curses.priv.h \
+ $(srcdir)/new_pair.h \
+ $(srcdir)/term.priv.h
TEST_DEPS = ../lib/@LIB_PREFIX@ncurses@DFT_DEP_SUFFIX@
-TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
+TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
TEST_LDFLAGS = @LD_MODEL@ $(TEST_ARGS) @LIBS@ @LOCAL_LDFLAGS@ @LDFLAGS@
TEST_PROGS = \
@@ -211,9 +218,20 @@ wide = $(srcdir)/widechar
win32con = $(srcdir)/win32con
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : test_progs
+
all libs :: $(AUTO_SRC) ../lib $(LIBRARIES)
-@CHECK_BUILD@all libs :: report_offsets$(BUILD_EXEEXT)
+@CHECK_BUILD@all libs :: report_offsets$(BUILD_EXEEXT)
sources: $(AUTO_SRC)
@@ -224,12 +242,12 @@ $(DESTDIR)$(libdir) :
../lib : ; mkdir $@
./fallback.c : $(tinfo)/MKfallback.sh
- $(SHELL) -e $(tinfo)/MKfallback.sh $(TERMINFO) $(TERMINFO_SRC) $(TIC_PATH) $(INFOCMP_PATH) $(FALLBACK_LIST) >$@
+ $(SHELL) -e $(tinfo)/MKfallback.sh $(TERMINFO) $(TERMINFO_SRC) "$(TIC_PATH)" "$(INFOCMP_PATH)" $(FALLBACK_LIST) >$@
./lib_gen.c : $(base)/MKlib_gen.sh ../include/curses.h
$(SHELL) -e $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" generated <../include/curses.h >$@
-init_keytry.h: make_keys$(BUILD_EXEEXT) keys.list
+init_keytry.h : make_keys$(BUILD_EXEEXT) keys.list
./make_keys$(BUILD_EXEEXT) keys.list > $@
keys.list : $(tinfo)/MKkeys_list.sh
@@ -238,7 +256,7 @@ keys.list : $(tinfo)/MKkeys_list.sh
make_keys$(BUILD_EXEEXT) : \
build.priv.h \
$(tinfo)/make_keys.c \
- names.c
+ ./names.c
$(BUILD_CC) -o $@ $(BUILD_CPPFLAGS) $(BUILD_CCFLAGS) $(tinfo)/make_keys.c $(BUILD_LDFLAGS) $(BUILD_LIBS)
make_hash$(BUILD_EXEEXT) : \
@@ -308,9 +326,10 @@ realclean :: distclean
../include/hashsize.h \
../include/parametrized.h \
../include/term.h :
- cd ../include; $(MAKE) $(CF_MFLAGS)
+ ( cd ../include && $(MAKE) $(TOP_MFLAGS) )
# These rules build test-programs for the modules that have test-drivers
+@MAKE_PHONY@.PHONY : test_progs
test_progs : $(TEST_PROGS)
./link_test.c : $(base)/MKlib_gen.sh ../include/curses.h
@@ -334,13 +353,30 @@ link_test$x : ./link_test.c $(TEST_DEPS) \
@ECHO_LD@ $(CC) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test$o $(TEST_LDFLAGS)
../@DFT_OBJ_SUBDIR@/dump_entry$o:
- cd ../progs && $(MAKE) ../@DFT_OBJ_SUBDIR@/dump_entry$o
+ ( cd ../progs && $(MAKE) ../@DFT_OBJ_SUBDIR@/dump_entry$o )
report_hashing$x : \
$(srcdir)/curses.priv.h \
$(srcdir)/report_hashing.c $(TEST_DEPS)
@ECHO_LD@ $(CC) -o $@ $(CFLAGS_DEFAULT) report_hashing.c $(TEST_LDFLAGS)
+# Verify that each header-file can be compiled without including another.
+@MAKE_PHONY@.PHONY : check_headers
+check_headers:
+ @$(SHELL) -c "for header in *.h;\
+ do \
+ echo \"** testing \$${header}\" ; \
+ echo \"#include <\$${header}>\" >headers.c; \
+ echo \"int main(void) { return 0; }\" >>headers.c; \
+ $(CC) -c $(CFLAGS) $(CPPFLAGS) headers.c; \
+ done"
+ -@rm -f headers.*
+
+@MAKE_PHONY@.PHONY : check_objects
+check_objects: test_progs
+
+check :: check_headers check_objects
+
###############################################################################
# The remainder of this file is automatically generated during configuration
###############################################################################
diff --git a/ncurses/README.IZ b/ncurses/README.IZ
index 25058a9..a9e52ea 100644
--- a/ncurses/README.IZ
+++ b/ncurses/README.IZ
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2020 Thomas E. Dickey --
+-- Copyright 2020,2021 Thomas E. Dickey --
-- Copyright 2002,2006 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README.IZ,v 1.4 2020/02/02 23:34:34 tom Exp $
+-- $Id: README.IZ,v 1.5 2021/06/17 21:20:30 tom Exp $
---------------------------------------------------------------------
Here is the patch. I did no testing whatsoever with event watching
@@ -35,7 +35,7 @@ this, probably lynx ;-), but the code looks working "the normal way".
I had no way to test that the poll() branch compiles/works...
-Here is the API:
+Here is the API:
*) two new functions wgetch_events() wgetstrn_event() are introduced,
which allow an event-watch specification given as the last argument;
diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh
index 5a3770e..9dc0855 100755
--- a/ncurses/base/MKlib_gen.sh
+++ b/ncurses/base/MKlib_gen.sh
@@ -2,10 +2,10 @@
#
# MKlib_gen.sh -- generate sources from curses.h macro definitions
#
-# ($Id: MKlib_gen.sh,v 1.63 2020/02/02 23:34:34 tom Exp $)
+# ($Id: MKlib_gen.sh,v 1.71 2021/09/26 22:08:53 tom Exp $)
#
##############################################################################
-# Copyright 2018,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2016,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -69,16 +69,25 @@ USE="$3"
# A patch discussed here:
# https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
+#
# introduces spurious #line markers into the preprocessor output. The result
# appears in gcc 5.0 and (with modification) in 5.1, making it necessary to
# determine if we are using gcc, and if so, what version because the proposed
# solution uses a nonstandard option.
-PRG=`echo "$1" | $AWK '{ sub(/^[ ]*/,""); sub(/[ ].*$/, ""); print; }' || exit 0`
-FSF=`"$PRG" --version 2>/dev/null || exit 0 | fgrep "Free Software Foundation" | head -n 1`
+#
+# As illustrated in
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60723
+#
+# gcc developers chose to ignore the problems with this, and summarized those
+# as "intriguing problems" in
+# https://gcc.gnu.org/gcc-5/porting_to.html
+
+PRG=`echo "$1" | "$AWK" '{ sub(/^[ ]*/,""); sub(/[ ].*$/, ""); print; }' || exit 0`
+FSF=`("$PRG" --version 2>/dev/null || exit 0) | fgrep "Free Software Foundation" | head -n 1`
ALL=`"$PRG" -dumpversion 2>/dev/null || exit 0`
-ONE=`echo "$ALL" | sed -e 's/\..*$//'`
+ONE=`echo "$ALL" | sed -e 's/[^0-9].*$//'`
if test -n "$FSF" && test -n "$ALL" && test -n "$ONE" ; then
- if test $ONE -ge 5 ; then
+ if test "$ONE" -ge 5 ; then
echo ".. adding -P option to work around $PRG $ALL" >&2
preprocessor="$preprocessor -P"
fi
@@ -96,7 +105,6 @@ trap "rm -f $ED1 $ED2 $ED3 $ED4 $AW1 $AW2 $TMP" 0 1 2 3 15
ALL=$USE
if test "$USE" = implemented ; then
- CALL="call_"
cat >$ED1 <<EOF1
/^extern.*implemented/{
h
@@ -119,7 +127,6 @@ if test "$USE" = implemented ; then
}
EOF1
else
- CALL=""
cat >$ED1 <<EOF1
/^extern.*${ALL}/{
h
@@ -178,7 +185,7 @@ EOF3
if test "$USE" = generated ; then
cat >$ED4 <<EOF
- s/^\(.*\) \(.*\) (\(.*\))\$/NCURSES_EXPORT(\1) (\2) (\3)/
+ s/^\(.*\) \(.*\) (\(.*\))\$/NCURSES_EXPORT(\1) \2 (\3)/
/attr_[sg]et.* z)/s,z),z GCC_UNUSED),
EOF
else
@@ -433,6 +440,7 @@ BEGIN {
print "#include <ncurses_cfg.h>"
print ""
print "#undef NCURSES_NOMACROS /* _this_ file uses macros */"
+ print "#define NCURSES_NOMACROS 1"
print ""
print "#include <curses.priv.h>"
print ""
@@ -462,8 +470,9 @@ END {
if ( value !~ /P_POUNDC/ ) {
gsub(/[ \t]+/," ",value);
sub(/^[0-9a-zA-Z_]+ /,"",value);
- sub(/^\* /,"",value);
- gsub(/[0-9a-zA-Z_]+ \* /,"",value);
+ sub(/^[*][ \t]*/,"",value);
+ gsub("struct[ \t]*[0-9a-zA-Z_]+[ \t]*[*]","",value);
+ gsub(/[0-9a-zA-Z_]+[ \t]*[*][ \t]*/,"",value);
gsub(/ (const) /," ",value);
gsub(/ (int|short|attr_t|chtype|wchar_t|NCURSES_BOOL|NCURSES_OUTC|NCURSES_OUTC_sp|va_list) /," ",value);
gsub(/ void /,"",value);
@@ -495,7 +504,7 @@ EOF
sed -n -f $ED1 \
| sed -e 's/NCURSES_EXPORT(\(.*\)) \(.*\) (\(.*\))/\1 \2(\3)/' \
| sed -f $ED2 \
-| $AWK -f $AW1 using=$USE \
+| "$AWK" -f $AW1 using="$USE" \
| sed \
-e 's/ [ ]*$//g' \
-e 's/^\([a-zA-Z_][a-zA-Z_]*[ *]*\)/\1 gen_/' \
@@ -507,7 +516,7 @@ $preprocessor $TMP 2>/dev/null \
-e 's/ / /g' \
-e 's/^ //' \
-e 's/_Bool/NCURSES_BOOL/g' \
-| $AWK -f $AW2 \
+| "$AWK" -f $AW2 \
| sed -f $ED3 \
| sed \
-e 's/^.*T_CALLED.*returnCode( \([a-z].*) \));/ return \1;/' \
diff --git a/ncurses/base/keyok.c b/ncurses/base/keyok.c
index 8e0b962..945228a 100644
--- a/ncurses/base/keyok.c
+++ b/ncurses/base/keyok.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -34,13 +34,13 @@
#include <curses.priv.h>
-MODULE_ID("$Id: keyok.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: keyok.c,v 1.17 2021/06/17 21:26:02 tom Exp $")
/*
* Enable (or disable) ncurses' interpretation of a keycode by adding (or
* removing) the corresponding 'tries' entry.
*
- * Do this by storing a second tree of tries, which records the disabled keys.
+ * Do this by storing a second tree of tries, which records the disabled keys.
* The simplest way to copy is to make a function that returns the string (with
* nulls set to 0200), then use that to reinsert the string into the
* corresponding tree.
diff --git a/ncurses/base/lib_addch.c b/ncurses/base/lib_addch.c
index 604b13b..a144328 100644
--- a/ncurses/base/lib_addch.c
+++ b/ncurses/base/lib_addch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -37,7 +37,7 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_addch.c,v 1.134 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_addch.c,v 1.138 2021/06/17 21:11:08 tom Exp $")
static const NCURSES_CH_T blankchar = NewChar(BLANK_TEXT);
@@ -140,7 +140,7 @@ newline_forces_scroll(WINDOW *win, NCURSES_SIZE_T *ypos)
* wrapped the cursor. We don't do anything with this flag except set it when
* wrapping, and clear it whenever we move the cursor. If we try to wrap at
* the lower-right corner of a window, we cannot move the cursor (since that
- * wouldn't be legal). So we return an error (which is what SVr4 does).
+ * wouldn't be legal). So we return an error (which is what SVr4 does).
* Unlike SVr4, we can successfully add a character to the lower-right corner
* (Solaris 2.6 does this also, however).
*/
@@ -208,6 +208,20 @@ _nc_build_wch(WINDOW *win, ARG_CH_T ch)
WINDOW_EXT(win, addch_x) = x;
WINDOW_EXT(win, addch_y) = y;
+ /*
+ * If the background character is a wide-character, that may interfere with
+ * processing multibyte characters in this function.
+ */
+ if (!is8bits(CharOf(CHDEREF(ch)))) {
+ if (WINDOW_EXT(win, addch_used) != 0) {
+ /* discard the incomplete multibyte character */
+ WINDOW_EXT(win, addch_used) = 0;
+ TR(TRACE_VIRTPUT,
+ ("Alert discarded incomplete multibyte"));
+ }
+ return 1;
+ }
+
init_mb(state);
buffer[WINDOW_EXT(win, addch_used)] = (char) CharOf(CHDEREF(ch));
WINDOW_EXT(win, addch_used) += 1;
diff --git a/ncurses/base/lib_addstr.c b/ncurses/base/lib_addstr.c
index 19ebfcd..a1e8829 100644
--- a/ncurses/base/lib_addstr.c
+++ b/ncurses/base/lib_addstr.c
@@ -45,7 +45,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_addstr.c,v 1.56 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_addstr.c,v 1.57 2020/12/05 20:06:19 tom Exp $")
NCURSES_EXPORT(int)
waddnstr(WINDOW *win, const char *astr, int n)
@@ -60,10 +60,10 @@ waddnstr(WINDOW *win, const char *astr, int n)
("... current %s", _traceattr(WINDOW_ATTRS(win))));
code = OK;
if (n < 0)
- n = (int) strlen(astr);
+ n = INT_MAX;
TR(TRACE_VIRTPUT, ("str is not null, length = %d", n));
- while ((n-- > 0) && (*str != '\0')) {
+ while ((*str != '\0') && (n-- > 0)) {
NCURSES_CH_T ch;
TR(TRACE_VIRTPUT, ("*str = %#o", UChar(*str)));
SetChar(ch, UChar(*str++), A_NORMAL);
@@ -232,10 +232,10 @@ waddnwstr(WINDOW *win, const wchar_t *str, int n)
("... current %s", _traceattr(WINDOW_ATTRS(win))));
code = OK;
if (n < 0)
- n = (int) wcslen(str);
+ n = INT_MAX;
TR(TRACE_VIRTPUT, ("str is not null, length = %d", n));
- while ((n-- > 0) && (*str != L('\0'))) {
+ while ((*str != L('\0')) && (n-- > 0)) {
NCURSES_CH_T ch;
TR(TRACE_VIRTPUT, ("*str[0] = %#lx", (unsigned long) *str));
SetChar(ch, *str++, A_NORMAL);
diff --git a/ncurses/base/lib_bkgd.c b/ncurses/base/lib_bkgd.c
index 2030030..4f99080 100644
--- a/ncurses/base/lib_bkgd.c
+++ b/ncurses/base/lib_bkgd.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2014,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -37,7 +37,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_bkgd.c,v 1.54 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_bkgd.c,v 1.63 2021/05/08 14:58:12 tom Exp $")
+
+static const NCURSES_CH_T blank = NewChar(BLANK_TEXT);
/*
* Set the window's background information.
@@ -49,7 +51,7 @@ static NCURSES_INLINE void
#endif
wbkgrndset(WINDOW *win, const ARG_CH_T ch)
{
- T((T_CALLED("wbkgdset(%p,%s)"), (void *) win, _tracech_t(ch)));
+ T((T_CALLED("wbkgrndset(%p,%s)"), (void *) win, _tracech_t(ch)));
if (win) {
attr_t off = AttrOf(win->_nc_bkgd);
@@ -62,7 +64,7 @@ wbkgrndset(WINDOW *win, const ARG_CH_T ch)
{
int pair;
- if ((pair = GetPair(win->_nc_bkgd)) != 0)
+ if (GetPair(win->_nc_bkgd) != 0)
SET_WINDOW_PAIR(win, 0);
if ((pair = GetPair(CHDEREF(ch))) != 0)
SET_WINDOW_PAIR(win, pair);
@@ -103,26 +105,36 @@ NCURSES_EXPORT(void)
wbkgdset(WINDOW *win, chtype ch)
{
NCURSES_CH_T wch;
+ T((T_CALLED("wbkgdset(%p,%s)"), (void *) win, _tracechtype(ch)));
SetChar2(wch, ch);
wbkgrndset(win, CHREF(wch));
+ returnVoid;
}
/*
* Set the window's background information and apply it to each cell.
*/
-#if USE_WIDEC_SUPPORT
-NCURSES_EXPORT(int)
-#else
static NCURSES_INLINE int
-#undef wbkgrnd
-#endif
-wbkgrnd(WINDOW *win, const ARG_CH_T ch)
+_nc_background(WINDOW *win, const ARG_CH_T ch, bool narrow)
{
#undef SP_PARM
#define SP_PARM SP /* to use Charable() */
int code = ERR;
- T((T_CALLED("wbkgd(%p,%s)"), (void *) win, _tracech_t(ch)));
+#if USE_WIDEC_SUPPORT
+ T((T_CALLED("%s(%p,%s)"),
+ narrow ? "wbkgd" : "wbkgrnd",
+ (void *) win,
+ _tracecchar_t(ch)));
+#define TraceChar(c) _tracecchar_t2(1, &(c))
+#else
+ T((T_CALLED("%s(%p,%s)"),
+ "wbkgd",
+ (void *) win,
+ _tracech_t(ch)));
+ (void) narrow;
+#define TraceChar(c) _tracechar(CharOf(c))
+#endif
if (SP == 0) {
;
@@ -143,6 +155,14 @@ wbkgrnd(WINDOW *win, const ARG_CH_T ch)
SetPair(new_bkgd, 0);
}
+ /* avoid setting background-character to a null */
+ if (CharOf(new_bkgd) == 0) {
+ NCURSES_CH_T tmp_bkgd = blank;
+ SetAttr(tmp_bkgd, AttrOf(new_bkgd));
+ SetPair(tmp_bkgd, GetPair(new_bkgd));
+ new_bkgd = tmp_bkgd;
+ }
+
memset(&old_bkgd, 0, sizeof(old_bkgd));
(void) wgetbkgrnd(win, &old_bkgd);
@@ -160,7 +180,7 @@ wbkgrnd(WINDOW *win, const ARG_CH_T ch)
old_pair = 0;
}
T(("... old background char %s, attr %s, pair %d",
- _tracechar(CharOf(old_char)), _traceattr(old_attr), old_pair));
+ TraceChar(old_char), _traceattr(old_attr), old_pair));
new_char = new_bkgd;
RemAttr(new_char, ~A_CHARTEXT);
@@ -168,14 +188,18 @@ wbkgrnd(WINDOW *win, const ARG_CH_T ch)
new_pair = GetPair(new_bkgd);
/* SVr4 limits background character to printable 7-bits */
- if (!Charable(new_bkgd)) {
+ if (
+#if USE_WIDEC_SUPPORT
+ narrow &&
+#endif
+ !Charable(new_bkgd)) {
new_char = old_char;
}
if (!(new_attr & A_COLOR)) {
new_pair = 0;
}
T(("... new background char %s, attr %s, pair %d",
- _tracechar(CharOf(new_char)), _traceattr(new_attr), new_pair));
+ TraceChar(new_char), _traceattr(new_attr), new_pair));
(void) wbkgrndset(win, CHREF(new_bkgd));
@@ -196,7 +220,19 @@ wbkgrnd(WINDOW *win, const ARG_CH_T ch)
attr_t tmp_attr = AttrOf(*cp);
if (CharEq(*cp, old_bkgd)) {
- SetChar2(*cp, CharOf(new_char));
+#if USE_WIDEC_SUPPORT
+ if (!narrow) {
+ if (Charable(new_bkgd)) {
+ SetChar2(*cp, CharOf(new_char));
+ } else {
+ SetChar(*cp, L' ', AttrOf(new_char));
+ }
+ memcpy(cp->chars,
+ new_char.chars,
+ CCHARW_MAX * sizeof(cp->chars[0]));
+ } else
+#endif
+ SetChar2(*cp, CharOf(new_char));
}
if (tmp_pair != 0) {
if (tmp_pair == old_pair) {
@@ -220,10 +256,18 @@ wbkgrnd(WINDOW *win, const ARG_CH_T ch)
returnCode(code);
}
+#if USE_WIDEC_SUPPORT
+NCURSES_EXPORT(int)
+wbkgrnd(WINDOW *win, const ARG_CH_T ch)
+{
+ return _nc_background(win, ch, FALSE);
+}
+#endif
+
NCURSES_EXPORT(int)
wbkgd(WINDOW *win, chtype ch)
{
NCURSES_CH_T wch;
SetChar2(wch, ch);
- return wbkgrnd(win, CHREF(wch));
+ return _nc_background(win, CHREF(wch), TRUE);
}
diff --git a/ncurses/base/lib_color.c b/ncurses/base/lib_color.c
index 376ad4f..e4dc79b 100644
--- a/ncurses/base/lib_color.c
+++ b/ncurses/base/lib_color.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -49,7 +49,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_color.c,v 1.143 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_color.c,v 1.148 2021/10/02 22:55:48 tom Exp $")
#ifdef USE_TERM_DRIVER
#define CanChange InfoOf(SP_PARM).canchange
@@ -140,7 +140,6 @@ NCURSES_EXPORT_VAR(const color_t*) _nc_hls_palette = hls_palette;
#endif
/* *INDENT-ON* */
-
#if NCURSES_EXT_FUNCS
/*
* These are called from _nc_do_color(), which in turn is called from
@@ -190,12 +189,12 @@ set_background_color(NCURSES_SP_DCLx int bg, NCURSES_SP_OUTC outc)
if (set_a_background) {
TPUTS_TRACE("set_a_background");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_a_background, bg),
+ TIPARM_1(set_a_background, bg),
1, outc);
} else {
TPUTS_TRACE("set_background");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_background, toggled_colors(bg)),
+ TIPARM_1(set_background, toggled_colors(bg)),
1, outc);
}
#endif
@@ -210,12 +209,12 @@ set_foreground_color(NCURSES_SP_DCLx int fg, NCURSES_SP_OUTC outc)
if (set_a_foreground) {
TPUTS_TRACE("set_a_foreground");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_a_foreground, fg),
+ TIPARM_1(set_a_foreground, fg),
1, outc);
} else {
TPUTS_TRACE("set_foreground");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_foreground, toggled_colors(fg)),
+ TIPARM_1(set_foreground, toggled_colors(fg)),
1, outc);
}
#endif
@@ -253,20 +252,21 @@ init_direct_colors(NCURSES_SP_DCL0)
{
static NCURSES_CONST char name[] = "RGB";
- int n;
- const char *s;
- int width;
rgb_bits_t *result = &(SP_PARM->_direct_color);
result->value = 0;
if (COLORS >= 8) {
+ int n;
+ const char *s;
+ int width;
+
/* find the number of bits needed for the maximum color value */
for (width = 0; (1 << width) - 1 < (COLORS - 1); ++width) {
;
}
- if ((n = tigetflag(name)) > 0) {
+ if (tigetflag(name) > 0) {
n = (width + 2) / 3;
result->bits.red = UChar(n);
result->bits.green = UChar(n);
@@ -361,7 +361,6 @@ NCURSES_EXPORT(int)
NCURSES_SP_NAME(start_color) (NCURSES_SP_DCL0)
{
int result = ERR;
- int maxpairs = 0, maxcolors = 0;
T((T_CALLED("start_color(%p)"), (void *) SP_PARM));
@@ -370,8 +369,8 @@ NCURSES_SP_NAME(start_color) (NCURSES_SP_DCL0)
} else if (SP_PARM->_coloron) {
result = OK;
} else {
- maxpairs = MaxPairs;
- maxcolors = MaxColors;
+ int maxpairs = MaxPairs;
+ int maxcolors = MaxColors;
if (reset_color_pair(NCURSES_SP_ARG) != TRUE) {
set_foreground_color(NCURSES_SP_ARGx
default_fg(NCURSES_SP_ARG),
@@ -672,14 +671,14 @@ _nc_init_pair(SCREEN *sp, int pair, int f, int b)
(int) tp[b].red, (int) tp[b].green, (int) tp[b].blue));
NCURSES_PUTP2("initialize_pair",
- TPARM_7(initialize_pair,
- pair,
- (int) tp[f].red,
- (int) tp[f].green,
- (int) tp[f].blue,
- (int) tp[b].red,
- (int) tp[b].green,
- (int) tp[b].blue));
+ TIPARM_7(initialize_pair,
+ pair,
+ (int) tp[f].red,
+ (int) tp[f].green,
+ (int) tp[f].blue,
+ (int) tp[b].red,
+ (int) tp[b].green,
+ (int) tp[b].blue));
}
#endif
@@ -746,7 +745,7 @@ _nc_init_color(SCREEN *sp, int color, int r, int g, int b)
CallDriver_4(sp, td_initcolor, color, r, g, b);
#else
NCURSES_PUTP2("initialize_color",
- TPARM_4(initialize_color, color, r, g, b));
+ TIPARM_4(initialize_color, color, r, g, b));
#endif
sp->_color_defs = max(color + 1, sp->_color_defs);
@@ -832,7 +831,6 @@ static int
_nc_color_content(SCREEN *sp, int color, int *r, int *g, int *b)
{
int result = ERR;
- int maxcolors;
T((T_CALLED("color_content(%p,%d,%p,%p,%p)"),
(void *) sp,
@@ -841,52 +839,57 @@ _nc_color_content(SCREEN *sp, int color, int *r, int *g, int *b)
(void *) g,
(void *) b));
- if (sp == 0)
- returnCode(result);
-
- maxcolors = MaxColors;
+ if (sp != 0) {
+ int maxcolors = MaxColors;
- if (color < 0 || !OkColorHi(color) || !sp->_coloron) {
- result = ERR;
- } else {
- int c_r, c_g, c_b;
+ if (color >= 0 && OkColorHi(color) && sp->_coloron) {
+ int c_r, c_g, c_b;
- if (sp->_direct_color.value) {
- rgb_bits_t *work = &(sp->_direct_color);
+ if (sp->_direct_color.value) {
+ rgb_bits_t *work = &(sp->_direct_color);
#define max_direct_color(name) ((1 << work->bits.name) - 1)
#define value_direct_color(max) (1000 * ((color >> bitoff) & max)) / max
- int max_r = max_direct_color(red);
- int max_g = max_direct_color(green);
- int max_b = max_direct_color(blue);
+ int max_r = max_direct_color(red);
+ int max_g = max_direct_color(green);
+ int max_b = max_direct_color(blue);
- int bitoff = 0;
+ int bitoff = 0;
- c_b = value_direct_color(max_b);
- bitoff += work->bits.blue;
+ c_b = value_direct_color(max_b);
+ bitoff += work->bits.blue;
- c_g = value_direct_color(max_g);
- bitoff += work->bits.green;
+ c_g = value_direct_color(max_g);
+ bitoff += work->bits.green;
- c_r = value_direct_color(max_r);
+ c_r = value_direct_color(max_r);
- } else {
- c_r = sp->_color_table[color].red;
- c_g = sp->_color_table[color].green;
- c_b = sp->_color_table[color].blue;
- }
+ } else {
+ c_r = sp->_color_table[color].red;
+ c_g = sp->_color_table[color].green;
+ c_b = sp->_color_table[color].blue;
+ }
+ if (r)
+ *r = c_r;
+ if (g)
+ *g = c_g;
+ if (b)
+ *b = c_b;
+
+ TR(TRACE_ATTRS, ("...color_content(%d,%d,%d,%d)",
+ color, c_r, c_g, c_b));
+ result = OK;
+ }
+ }
+ if (result != OK) {
if (r)
- *r = c_r;
+ *r = 0;
if (g)
- *g = c_g;
+ *g = 0;
if (b)
- *b = c_b;
-
- TR(TRACE_ATTRS, ("...color_content(%d,%d,%d,%d)",
- color, c_r, c_g, c_b));
- result = OK;
+ *b = 0;
}
returnCode(result);
}
@@ -1004,7 +1007,7 @@ NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_DCLx
if (set_color_pair) {
TPUTS_TRACE("set_color_pair");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_color_pair, pair),
+ TIPARM_1(set_color_pair, pair),
1, outc);
return;
} else if (SP_PARM != 0) {
diff --git a/ncurses/base/lib_dft_fgbg.c b/ncurses/base/lib_dft_fgbg.c
index 95dc0c2..4dd43bb 100644
--- a/ncurses/base/lib_dft_fgbg.c
+++ b/ncurses/base/lib_dft_fgbg.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,7 +38,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_dft_fgbg.c,v 1.30 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_dft_fgbg.c,v 1.31 2021/04/03 22:27:18 tom Exp $")
/*
* Modify the behavior of color-pair 0 so that the library doesn't assume that
@@ -83,7 +83,9 @@ NCURSES_SP_NAME(assume_default_colors) (NCURSES_SP_DCLx int fg, int bg)
bool save = SP_PARM->_default_color;
SP_PARM->_assumed_color = TRUE;
SP_PARM->_default_color = TRUE;
- init_pair(0, (short) fg, (short) bg);
+ NCURSES_SP_NAME(init_pair) (NCURSES_SP_ARGx 0,
+ (short)fg,
+ (short)bg);
SP_PARM->_default_color = save;
}
code = OK;
diff --git a/ncurses/base/lib_driver.c b/ncurses/base/lib_driver.c
index 5467607..c53802f 100644
--- a/ncurses/base/lib_driver.c
+++ b/ncurses/base/lib_driver.c
@@ -34,8 +34,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_driver.c,v 1.8 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_driver.c,v 1.9 2020/08/29 19:53:35 tom Exp $")
+#ifndef EXP_WIN32_DRIVER
typedef struct DriverEntry {
const char *name;
TERM_DRIVER *driver;
@@ -77,6 +78,7 @@ _nc_get_driver(TERMINAL_CONTROL_BLOCK * TCB, const char *name, int *errret)
}
returnCode(code);
}
+#endif /* !EXP_WIN32_DRIVER */
NCURSES_EXPORT(int)
NCURSES_SP_NAME(has_key) (SCREEN *sp, int keycode)
diff --git a/ncurses/base/lib_freeall.c b/ncurses/base/lib_freeall.c
index 9133d08..c027151 100644
--- a/ncurses/base/lib_freeall.c
+++ b/ncurses/base/lib_freeall.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -40,7 +40,7 @@
extern int malloc_errfd; /* FIXME */
#endif
-MODULE_ID("$Id: lib_freeall.c,v 1.72 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_freeall.c,v 1.74 2021/03/20 22:57:53 tom Exp $")
/*
* Free all ncurses data. This is used for testing only (there's no practical
@@ -171,8 +171,6 @@ NCURSES_SP_NAME(_nc_free_and_exit) (NCURSES_SP_DCLx int code)
{
if (SP_PARM) {
delscreen(SP_PARM);
- if (SP_PARM->_term)
- NCURSES_SP_NAME(del_curterm) (NCURSES_SP_ARGx SP_PARM->_term);
}
exit(code);
}
diff --git a/ncurses/base/lib_getch.c b/ncurses/base/lib_getch.c
index bf2115d..bdb8a04 100644
--- a/ncurses/base/lib_getch.c
+++ b/ncurses/base/lib_getch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -41,9 +41,10 @@
**
*/
+#define NEED_KEY_EVENT
#include <curses.priv.h>
-MODULE_ID("$Id: lib_getch.c,v 1.139 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_getch.c,v 1.142 2021/09/04 10:52:55 tom Exp $")
#include <fifo_defs.h>
@@ -134,7 +135,7 @@ _nc_use_meta(WINDOW *win)
}
#ifdef USE_TERM_DRIVER
-# ifdef _WIN32
+# if defined(_NC_WINDOWS) && !defined(EXP_WIN32_DRIVER)
static HANDLE
_nc_get_handle(int fd)
{
@@ -155,7 +156,14 @@ check_mouse_activity(SCREEN *sp, int delay EVENTLIST_2nd(_nc_eventlist * evl))
#ifdef USE_TERM_DRIVER
TERMINAL_CONTROL_BLOCK *TCB = TCBOf(sp);
rc = TCBOf(sp)->drv->td_testmouse(TCBOf(sp), delay EVENTLIST_2nd(evl));
-# ifdef _WIN32
+# if defined(EXP_WIN32_DRIVER)
+ /* if we emulate terminfo on console, we have to use the console routine */
+ if (IsTermInfoOnConsole(sp)) {
+ rc = _nc_console_testmouse(sp,
+ _nc_console_handle(sp->_ifd),
+ delay EVENTLIST_2nd(evl));
+ } else
+# elif defined(_NC_WINDOWS)
/* if we emulate terminfo on console, we have to use the console routine */
if (IsTermInfoOnConsole(sp)) {
HANDLE fd = _nc_get_handle(sp->_ifd);
@@ -163,29 +171,36 @@ check_mouse_activity(SCREEN *sp, int delay EVENTLIST_2nd(_nc_eventlist * evl))
} else
# endif
rc = TCB->drv->td_testmouse(TCB, delay EVENTLIST_2nd(evl));
-#else
-#if USE_SYSMOUSE
+#else /* !USE_TERM_DRIVER */
+# if USE_SYSMOUSE
if ((sp->_mouse_type == M_SYSMOUSE)
&& (sp->_sysmouse_head < sp->_sysmouse_tail)) {
rc = TW_MOUSE;
} else
-#endif
+# endif
{
+# if defined(EXP_WIN32_DRIVER)
+ rc = _nc_console_testmouse(sp,
+ _nc_console_handle(sp->_ifd),
+ delay
+ EVENTLIST_2nd(evl));
+# else
rc = _nc_timed_wait(sp,
TWAIT_MASK,
delay,
(int *) 0
EVENTLIST_2nd(evl));
-#if USE_SYSMOUSE
+# endif
+# if USE_SYSMOUSE
if ((sp->_mouse_type == M_SYSMOUSE)
&& (sp->_sysmouse_head < sp->_sysmouse_tail)
&& (rc == 0)
&& (errno == EINTR)) {
rc |= TW_MOUSE;
}
-#endif
+# endif
}
-#endif
+#endif /* USE_TERM_DRIVER */
return rc;
}
@@ -290,31 +305,54 @@ fifo_push(SCREEN *sp EVENTLIST_2nd(_nc_eventlist * evl))
} else
#endif
{ /* Can block... */
-#ifdef USE_TERM_DRIVER
+#if defined(USE_TERM_DRIVER)
int buf;
-#ifdef _WIN32
+# if defined(EXP_WIN32_DRIVER)
+ if (NC_ISATTY(sp->_ifd) && IsTermInfoOnConsole(sp) && sp->_cbreak) {
+# if USE_PTHREADS_EINTR
+ if ((pthread_self) && (pthread_kill) && (pthread_equal))
+ _nc_globals.read_thread = pthread_self();
+# endif
+ n = _nc_console_read(sp,
+ _nc_console_handle(sp->_ifd),
+ &buf);
+# if USE_PTHREADS_EINTR
+ _nc_globals.read_thread = 0;
+# endif
+ } else
+# elif defined(_NC_WINDOWS)
if (NC_ISATTY(sp->_ifd) && IsTermInfoOnConsole(sp) && sp->_cbreak)
n = _nc_mingw_console_read(sp,
_nc_get_handle(sp->_ifd),
&buf);
else
-#endif
+# endif /* EXP_WIN32_DRIVER */
n = CallDriver_1(sp, td_read, &buf);
ch = buf;
-#else
+#else /* !USE_TERM_DRIVER */
+#if defined(EXP_WIN32_DRIVER)
+ int buf;
+#endif
unsigned char c2 = 0;
-# if USE_PTHREADS_EINTR
-# if USE_WEAK_SYMBOLS
+#if USE_PTHREADS_EINTR
+#if USE_WEAK_SYMBOLS
if ((pthread_self) && (pthread_kill) && (pthread_equal))
-# endif
+#endif
_nc_globals.read_thread = pthread_self();
-# endif
+#endif
+#if defined(EXP_WIN32_DRIVER)
+ n = _nc_console_read(sp,
+ _nc_console_handle(sp->_ifd),
+ &buf);
+ c2 = buf;
+#else
n = (int) read(sp->_ifd, &c2, (size_t) 1);
+#endif
#if USE_PTHREADS_EINTR
_nc_globals.read_thread = 0;
#endif
ch = c2;
-#endif
+#endif /* USE_TERM_DRIVER */
}
if ((n == -1) || (n == 0)) {
@@ -513,7 +551,7 @@ _nc_wgetch(WINDOW *win,
* This is tricky. We only want to get special-key
* events one at a time. But we want to accumulate
* mouse events until either (a) the mouse logic tells
- * us it's picked up a complete gesture, or (b)
+ * us it has picked up a complete gesture, or (b)
* there's a detectable time lapse after one.
*
* Note: if the mouse code starts failing to compose
diff --git a/ncurses/base/lib_getstr.c b/ncurses/base/lib_getstr.c
index d0b09a3..5feb351 100644
--- a/ncurses/base/lib_getstr.c
+++ b/ncurses/base/lib_getstr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2011,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -39,9 +39,10 @@
**
*/
+#define NEED_KEY_EVENT
#include <curses.priv.h>
-MODULE_ID("$Id: lib_getstr.c,v 1.34 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_getstr.c,v 1.37 2021/09/04 10:29:15 tom Exp $")
/*
* This wipes out the last character, no matter whether it was a tab, control
@@ -99,8 +100,7 @@ wgetnstr_events(WINDOW *win,
oldcbreak = sp->_cbreak;
NCURSES_SP_NAME(nl) (NCURSES_SP_ARG);
NCURSES_SP_NAME(noecho) (NCURSES_SP_ARG);
- NCURSES_SP_NAME(noraw) (NCURSES_SP_ARG);
- NCURSES_SP_NAME(cbreak) (NCURSES_SP_ARG);
+ NCURSES_SP_NAME(raw) (NCURSES_SP_ARG);
erasec = NCURSES_SP_NAME(erasechar) (NCURSES_SP_ARG);
killc = NCURSES_SP_NAME(killchar) (NCURSES_SP_ARG);
@@ -114,7 +114,7 @@ wgetnstr_events(WINDOW *win,
while ((ch = wgetch_events(win, evl)) != ERR) {
/*
* Some terminals (the Wyse-50 is the most common) generate
- * a \n from the down-arrow key. With this logic, it's the
+ * a \n from the down-arrow key. With this logic, it is the
* user's choice whether to set kcud=\n for wgetch();
* terminating *getstr() with \n should work either way.
*/
diff --git a/ncurses/base/lib_initscr.c b/ncurses/base/lib_initscr.c
index 2ace092..6b91491 100644
--- a/ncurses/base/lib_initscr.c
+++ b/ncurses/base/lib_initscr.c
@@ -46,7 +46,7 @@
#include <sys/termio.h> /* needed for ISC */
#endif
-MODULE_ID("$Id: lib_initscr.c,v 1.45 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_initscr.c,v 1.48 2020/09/07 14:26:48 tom Exp $")
NCURSES_EXPORT(WINDOW *)
initscr(void)
@@ -66,10 +66,9 @@ initscr(void)
_nc_globals.init_screen = TRUE;
- if ((env = getenv("TERM")) == 0
- || *env == '\0') {
- env = "unknown";
- }
+ env = getenv("TERM");
+ (void) VALID_TERM_ENV(env, "unknown");
+
if ((name = strdup(env)) == NULL) {
fprintf(stderr, "Error opening allocating $TERM.\n");
ExitProgram(EXIT_FAILURE);
diff --git a/ncurses/base/lib_instr.c b/ncurses/base/lib_instr.c
index 2aa0fc3..b9874b7 100644
--- a/ncurses/base/lib_instr.c
+++ b/ncurses/base/lib_instr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -42,7 +42,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_instr.c,v 1.24 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_instr.c,v 1.25 2021/04/03 22:24:18 tom Exp $")
NCURSES_EXPORT(int)
winnstr(WINDOW *win, char *str, int n)
@@ -66,7 +66,6 @@ winnstr(WINDOW *win, char *str, int n)
cchar_t *cell = &(text[col]);
attr_t attrs;
NCURSES_PAIRS_T pair;
- mbstate_t state;
char *tmp;
if (!isWidecExt(*cell)) {
@@ -79,6 +78,7 @@ winnstr(WINDOW *win, char *str, int n)
bool done = FALSE;
if (getcchar(cell, wch, &attrs, &pair, 0) == OK) {
+ mbstate_t state;
size_t n3;
init_mb(state);
diff --git a/ncurses/base/lib_mouse.c b/ncurses/base/lib_mouse.c
index 2530dec..2fb261d 100644
--- a/ncurses/base/lib_mouse.c
+++ b/ncurses/base/lib_mouse.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -85,7 +85,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_mouse.c,v 1.184 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_mouse.c,v 1.193 2021/03/20 12:56:32 tom Exp $")
#include <tic.h>
@@ -142,19 +142,29 @@ make an error
#define MASK_RESERVED_EVENT(x) (mmask_t) NCURSES_MOUSE_MASK(x, 040)
#if NCURSES_MOUSE_VERSION == 1
+
#define BUTTON_CLICKED (BUTTON1_CLICKED | BUTTON2_CLICKED | BUTTON3_CLICKED | BUTTON4_CLICKED)
#define BUTTON_PRESSED (BUTTON1_PRESSED | BUTTON2_PRESSED | BUTTON3_PRESSED | BUTTON4_PRESSED)
#define BUTTON_RELEASED (BUTTON1_RELEASED | BUTTON2_RELEASED | BUTTON3_RELEASED | BUTTON4_RELEASED)
#define BUTTON_DOUBLE_CLICKED (BUTTON1_DOUBLE_CLICKED | BUTTON2_DOUBLE_CLICKED | BUTTON3_DOUBLE_CLICKED | BUTTON4_DOUBLE_CLICKED)
#define BUTTON_TRIPLE_CLICKED (BUTTON1_TRIPLE_CLICKED | BUTTON2_TRIPLE_CLICKED | BUTTON3_TRIPLE_CLICKED | BUTTON4_TRIPLE_CLICKED)
+
#define MAX_BUTTONS 4
+
#else
+
#define BUTTON_CLICKED (BUTTON1_CLICKED | BUTTON2_CLICKED | BUTTON3_CLICKED | BUTTON4_CLICKED | BUTTON5_CLICKED)
#define BUTTON_PRESSED (BUTTON1_PRESSED | BUTTON2_PRESSED | BUTTON3_PRESSED | BUTTON4_PRESSED | BUTTON5_PRESSED)
#define BUTTON_RELEASED (BUTTON1_RELEASED | BUTTON2_RELEASED | BUTTON3_RELEASED | BUTTON4_RELEASED | BUTTON5_RELEASED)
#define BUTTON_DOUBLE_CLICKED (BUTTON1_DOUBLE_CLICKED | BUTTON2_DOUBLE_CLICKED | BUTTON3_DOUBLE_CLICKED | BUTTON4_DOUBLE_CLICKED | BUTTON5_DOUBLE_CLICKED)
#define BUTTON_TRIPLE_CLICKED (BUTTON1_TRIPLE_CLICKED | BUTTON2_TRIPLE_CLICKED | BUTTON3_TRIPLE_CLICKED | BUTTON4_TRIPLE_CLICKED | BUTTON5_TRIPLE_CLICKED)
+
+#if NCURSES_MOUSE_VERSION == 2
#define MAX_BUTTONS 5
+#else
+#define MAX_BUTTONS 11
+#endif
+
#endif
#define INVALID_EVENT -1
@@ -409,13 +419,22 @@ init_xterm_mouse(SCREEN *sp)
} else {
int code = tigetnum("XM");
switch (code) {
+#ifdef EXP_XTERM_1005
+ case 1005:
+ /* see "xterm+sm+1005" */
+ sp->_mouse_xtermcap = "\033[?1005;1000%?%p1%{1}%=%th%el%;";
+ sp->_mouse_format = MF_XTERM_1005;
+ break;
+#endif
case 1006:
+ /* see "xterm+sm+1006" */
+ sp->_mouse_xtermcap = "\033[?1006;1000%?%p1%{1}%=%th%el%;";
+ sp->_mouse_format = MF_SGR1006;
break;
default:
- code = 1000;
+ sp->_mouse_xtermcap = "\033[?1000%?%p1%{1}%=%th%el%;";
break;
}
- sp->_mouse_xtermcap = "\033[?1000%?%p1%{1}%=%th%el%;";
}
}
#endif
@@ -426,7 +445,7 @@ enable_xterm_mouse(SCREEN *sp, int enable)
#if USE_EMX_MOUSE
sp->_emxmouse_activated = enable;
#else
- NCURSES_PUTP2("xterm-mouse", TPARM_1(sp->_mouse_xtermcap, enable));
+ NCURSES_PUTP2("xterm-mouse", TIPARM_1(sp->_mouse_xtermcap, enable));
#endif
sp->_mouse_active = enable;
}
@@ -477,8 +496,6 @@ unload_gpm_library(SCREEN *sp)
T(("unload GPM library"));
sp->_mouse_gpm_loaded = FALSE;
sp->_mouse_fd = -1;
- dlclose(sp->_dlopen_gpm);
- sp->_dlopen_gpm = 0;
}
}
@@ -486,7 +503,14 @@ static void
load_gpm_library(SCREEN *sp)
{
sp->_mouse_gpm_found = FALSE;
- if ((sp->_dlopen_gpm = dlopen(LIBGPM_SONAME, my_RTLD)) != 0) {
+
+ /*
+ * If we already had a successful dlopen, reuse it.
+ */
+ if (sp->_dlopen_gpm != 0) {
+ sp->_mouse_gpm_found = TRUE;
+ sp->_mouse_gpm_loaded = TRUE;
+ } else if ((sp->_dlopen_gpm = dlopen(LIBGPM_SONAME, my_RTLD)) != 0) {
#if (defined(__GNUC__) && (__GNUC__ >= 5)) || defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wpedantic"
@@ -500,13 +524,15 @@ load_gpm_library(SCREEN *sp)
#endif
T(("GPM initialization failed: %s", dlerror()));
unload_gpm_library(sp);
+ dlclose(sp->_dlopen_gpm);
+ sp->_dlopen_gpm = 0;
} else {
sp->_mouse_gpm_found = TRUE;
sp->_mouse_gpm_loaded = TRUE;
}
}
}
-#endif
+#endif /* HAVE_LIBDL */
static bool
enable_gpm_mouse(SCREEN *sp, bool enable)
@@ -928,7 +954,7 @@ handle_wheel(SCREEN *sp, MEVENT * eventp, int button, int wheel)
break;
case 1:
if (wheel) {
-#if NCURSES_MOUSE_VERSION == 2
+#if NCURSES_MOUSE_VERSION >= 2
eventp->bstate = MASK_PRESS(5);
/* See comment above for button 4 */
#else
@@ -953,10 +979,24 @@ static bool
decode_X10_bstate(SCREEN *sp, MEVENT * eventp, unsigned intro)
{
bool result;
+ int button = 0;
+ int wheel = (intro & 96) == 96;
eventp->bstate = 0;
- if (!handle_wheel(sp, eventp, (int) intro, (intro & 96) == 96)) {
+ if (intro >= 96) {
+ if (intro >= 160) {
+ button = (int) (intro - 152); /* buttons 8-11 */
+ } else {
+ button = (int) (intro - 92); /* buttons 4-7 */
+ }
+ } else {
+ button = (intro & 3);
+ }
+
+ if (button > MAX_BUTTONS) {
+ eventp->bstate = REPORT_MOUSE_POSITION;
+ } else if (!handle_wheel(sp, eventp, (int) intro, wheel)) {
/*
* Release events aren't reported for individual buttons, just for
@@ -1261,10 +1301,21 @@ decode_xterm_SGR1006(SCREEN *sp, MEVENT * eventp)
if (read_SGR(sp, &data)) {
int b = data.params[0];
int b3 = 1 + (b & 3);
+ int wheel = ((b & 64) == 64);
+
+ if (b >= 132) {
+ b3 = MAX_BUTTONS + 1;
+ } else if (b >= 128) {
+ b3 = (b - 120); /* buttons 8-11 */
+ } else if (b >= 64) {
+ b3 = (b - 60); /* buttons 6-7 */
+ }
eventp->id = NORMAL_EVENT;
if (data.final == 'M') {
- (void) handle_wheel(sp, eventp, b, (b & 64) == 64);
+ (void) handle_wheel(sp, eventp, b, wheel);
+ } else if (b3 > MAX_BUTTONS) {
+ eventp->bstate = REPORT_MOUSE_POSITION;
} else {
mmask_t pressed = (mmask_t) NCURSES_MOUSE_MASK(b3, NCURSES_BUTTON_PRESSED);
mmask_t release = (mmask_t) NCURSES_MOUSE_MASK(b3, NCURSES_BUTTON_RELEASED);
diff --git a/ncurses/base/lib_newterm.c b/ncurses/base/lib_newterm.c
index ac89790..bba97ba 100644
--- a/ncurses/base/lib_newterm.c
+++ b/ncurses/base/lib_newterm.c
@@ -49,7 +49,7 @@
#include <tic.h>
-MODULE_ID("$Id: lib_newterm.c,v 1.102 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_newterm.c,v 1.103 2020/09/05 21:34:04 tom Exp $")
#ifdef USE_TERM_DRIVER
#define NumLabels InfoOf(SP_PARM).numlabels
@@ -88,6 +88,12 @@ _nc_initscr(NCURSES_SP_DCL0)
buf.c_oflag &= (unsigned) ~(ONLCR);
#elif HAVE_SGTTY_H
buf.sg_flags &= ~(ECHO | CRMOD);
+#elif defined(EXP_WIN32_DRIVER)
+ buf.dwFlagIn = CONMODE_IN_DEFAULT;
+ buf.dwFlagOut = CONMODE_OUT_DEFAULT | VT_FLAG_OUT;
+ if (WINCONSOLE.isTermInfoConsole) {
+ buf.dwFlagIn |= VT_FLAG_IN;
+ }
#else
memset(&buf, 0, sizeof(buf));
#endif
@@ -195,6 +201,11 @@ NCURSES_SP_NAME(newterm) (NCURSES_SP_DCLx
current = CURRENT_SCREEN;
its_term = (current ? current->_term : 0);
+#if defined(EXP_WIN32_DRIVER)
+ _setmode(fileno(_ifp), _O_BINARY);
+ _setmode(fileno(_ofp), _O_BINARY);
+#endif
+
INIT_TERM_DRIVER();
/* this loads the capability entry, then sets LINES and COLS */
if (
diff --git a/ncurses/base/lib_pad.c b/ncurses/base/lib_pad.c
index 73978fb..f49a5eb 100644
--- a/ncurses/base/lib_pad.c
+++ b/ncurses/base/lib_pad.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,7 +43,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_pad.c,v 1.48 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_pad.c,v 1.49 2021/09/04 10:52:55 tom Exp $")
NCURSES_EXPORT(WINDOW *)
NCURSES_SP_NAME(newpad) (NCURSES_SP_DCLx int l, int c)
@@ -296,7 +296,7 @@ pnoutrefresh(WINDOW *win,
/*
* Use the pad's current position, if it will be visible.
- * If not, don't do anything; it's not an error.
+ * If not, don't do anything; it is not an error.
*/
if (win->_leaveok == FALSE
&& win->_cury >= pminrow
diff --git a/ncurses/base/lib_screen.c b/ncurses/base/lib_screen.c
index 164356d..eacb03a 100644
--- a/ncurses/base/lib_screen.c
+++ b/ncurses/base/lib_screen.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -42,7 +42,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_screen.c,v 1.97 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_screen.c,v 1.103 2021/10/18 22:40:48 tom Exp $")
#define MAX_SIZE 0x3fff /* 16k is big enough for a window or pad */
@@ -58,7 +58,7 @@ MODULE_ID("$Id: lib_screen.c,v 1.97 2020/02/02 23:34:34 tom Exp $")
#define ARG_SLIMIT(name) /* nothing */
#endif
-#define CUR_SLIMIT _nc_SLIMIT(limit - (target - base))
+#define CUR_SLIMIT _nc_SLIMIT(limit - (size_t) (target - base))
#define TOP_SLIMIT _nc_SLIMIT(sizeof(buffer))
/*
@@ -67,7 +67,7 @@ MODULE_ID("$Id: lib_screen.c,v 1.97 2020/02/02 23:34:34 tom Exp $")
* format. It happens to be unused in the file 5.22 database (2015/03/07).
*/
static const char my_magic[] =
-{'\210', '\210', '\210', '\210'};
+{'\210', '\210', '\210', '\210', 0};
#if NCURSES_EXT_PUTWIN
typedef enum {
@@ -200,7 +200,7 @@ read_txt(FILE *fp)
if (ch == '\n') {
result[--used] = '\0';
- T(("READ:%s", result));
+ TR(TRACE_IEVENT, ("READ:%s", result));
} else if (used == 0) {
free(result);
result = 0;
@@ -214,7 +214,7 @@ decode_attr(char *source, attr_t *target, int *color)
{
bool found = FALSE;
- T(("decode_attr '%s'", source));
+ TR(TRACE_IEVENT, ("decode_attr '%s'", source));
while (*source) {
if (source[0] == MARKER && source[1] == L_CURL) {
@@ -272,7 +272,7 @@ decode_char(char *source, int *target)
int base = 16;
const char digits[] = "0123456789abcdef";
- T(("decode_char '%s'", source));
+ TR(TRACE_IEVENT, ("decode_char '%s'", source));
*target = ' ';
switch (*source) {
case MARKER:
@@ -329,7 +329,7 @@ decode_chtype(char *source, chtype fillin, chtype *target)
int color = PAIR_NUMBER((int) attr);
int value;
- T(("decode_chtype '%s'", source));
+ TR(TRACE_IEVENT, ("decode_chtype '%s'", source));
source = decode_attr(source, &attr, &color);
source = decode_char(source, &value);
*target = (ChCharOf(value) | attr | (chtype) COLOR_PAIR(color));
@@ -347,7 +347,7 @@ decode_cchar(char *source, cchar_t *fillin, cchar_t *target)
int append = 0;
int value = 0;
- T(("decode_cchar '%s'", source));
+ TR(TRACE_IEVENT, ("decode_cchar '%s'", source));
*target = blank;
#if NCURSES_EXT_COLORS
color = fillin->ext_color;
@@ -441,7 +441,7 @@ read_win(WINDOW *win, FILE *fp)
}
static int
-read_row(char *source, NCURSES_CH_T * prior, NCURSES_CH_T * target, int length)
+read_row(char *source, NCURSES_CH_T *prior, NCURSES_CH_T *target, int length)
{
while (*source != '\0' && length > 0) {
#if NCURSES_WIDECHAR
@@ -940,6 +940,31 @@ putwin(WINDOW *win, FILE *filep)
returnCode(code);
}
+/*
+ * Replace a window covering the whole screen, i.e., newscr or curscr.
+ */
+static WINDOW *
+replace_window(WINDOW *target, FILE *source)
+{
+ WINDOW *result = getwin(source);
+#if NCURSES_EXT_FUNCS
+ if (result != NULL) {
+ if (getmaxx(result) != getmaxx(target)
+ || getmaxy(result) != getmaxy(target)) {
+ int code = wresize(result,
+ 1 + getmaxy(target),
+ 1 + getmaxx(target));
+ if (code != OK) {
+ delwin(result);
+ result = NULL;
+ }
+ }
+ }
+#endif
+ delwin(target);
+ return result;
+}
+
NCURSES_EXPORT(int)
NCURSES_SP_NAME(scr_restore) (NCURSES_SP_DCLx const char *file)
{
@@ -949,9 +974,8 @@ NCURSES_SP_NAME(scr_restore) (NCURSES_SP_DCLx const char *file)
T((T_CALLED("scr_restore(%p,%s)"), (void *) SP_PARM, _nc_visbuf(file)));
if (_nc_access(file, R_OK) >= 0
- && (fp = fopen(file, BIN_R)) != 0) {
- delwin(NewScreen(SP_PARM));
- NewScreen(SP_PARM) = getwin(fp);
+ && (fp = safe_fopen(file, BIN_R)) != 0) {
+ NewScreen(SP_PARM) = replace_window(NewScreen(SP_PARM), fp);
#if !USE_REENTRANT
newscr = NewScreen(SP_PARM);
#endif
@@ -980,7 +1004,7 @@ scr_dump(const char *file)
T((T_CALLED("scr_dump(%s)"), _nc_visbuf(file)));
if (_nc_access(file, W_OK) < 0
- || (fp = fopen(file, BIN_W)) == 0) {
+ || (fp = safe_fopen(file, BIN_W)) == 0) {
result = ERR;
} else {
(void) putwin(newscr, fp);
@@ -1007,9 +1031,8 @@ NCURSES_SP_NAME(scr_init) (NCURSES_SP_DCLx const char *file)
FILE *fp = 0;
if (_nc_access(file, R_OK) >= 0
- && (fp = fopen(file, BIN_R)) != 0) {
- delwin(CurScreen(SP_PARM));
- CurScreen(SP_PARM) = getwin(fp);
+ && (fp = safe_fopen(file, BIN_R)) != 0) {
+ CurScreen(SP_PARM) = replace_window(CurScreen(SP_PARM), fp);
#if !USE_REENTRANT
curscr = CurScreen(SP_PARM);
#endif
diff --git a/ncurses/base/lib_set_term.c b/ncurses/base/lib_set_term.c
index c5f26bc..264fb98 100644
--- a/ncurses/base/lib_set_term.c
+++ b/ncurses/base/lib_set_term.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -44,10 +44,17 @@
#include <curses.priv.h>
#include <tic.h>
+#if USE_GPM_SUPPORT
+#ifdef HAVE_LIBDL
+/* use dynamic loader to avoid linkage dependency */
+#include <dlfcn.h>
+#endif
+#endif
+
#undef CUR
#define CUR SP_TERMTYPE
-MODULE_ID("$Id: lib_set_term.c,v 1.169 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_set_term.c,v 1.179 2021/05/08 21:48:34 tom Exp $")
#ifdef USE_TERM_DRIVER
#define MaxColors InfoOf(sp).maxcolors
@@ -140,8 +147,8 @@ delscreen(SCREEN *sp)
_nc_lock_global(curses);
if (delink_screen(sp)) {
#ifdef USE_SP_RIPOFF
- ripoff_t *rop;
if (safe_ripoff_sp && safe_ripoff_sp != safe_ripoff_stack) {
+ ripoff_t *rop;
for (rop = safe_ripoff_stack;
rop != safe_ripoff_sp && (rop - safe_ripoff_stack) < N_RIPS;
rop++) {
@@ -197,6 +204,14 @@ delscreen(SCREEN *sp)
if (_nc_find_prescr() == sp) {
_nc_forget_prescr();
}
+#if USE_GPM_SUPPORT
+#ifdef HAVE_LIBDL
+ if (sp->_dlopen_gpm != 0) {
+ dlclose(sp->_dlopen_gpm);
+ sp->_dlopen_gpm = 0;
+ }
+#endif
+#endif /* USE_GPM_SUPPORT */
free(sp);
/*
@@ -314,9 +329,14 @@ NCURSES_SP_NAME(_nc_setupscreen) (
T(("_nc_alloc_screen_sp %p", (void *) sp));
*spp = sp;
}
- if (!sp
- || ((sp->_acs_map = typeCalloc(chtype, ACS_LEN)) == 0)
- || ((sp->_screen_acs_map = typeCalloc(bool, ACS_LEN)) == 0)) {
+ if (sp == NULL) {
+ ReturnScreenError();
+ }
+ if ((sp->_acs_map = typeCalloc(chtype, ACS_LEN)) == NULL) {
+ ReturnScreenError();
+ }
+ if ((sp->_screen_acs_map = typeCalloc(bool, ACS_LEN)) == NULL) {
+ free(sp->_acs_map);
ReturnScreenError();
}
@@ -340,8 +360,9 @@ NCURSES_SP_NAME(_nc_setupscreen) (
sp->_next_screen = _nc_screen_chain;
_nc_screen_chain = sp;
- if ((sp->_current_attr = typeCalloc(NCURSES_CH_T, 1)) == 0)
+ if ((sp->_current_attr = typeCalloc(NCURSES_CH_T, 1)) == 0) {
returnCode(ERR);
+ }
#endif
/*
@@ -391,7 +412,11 @@ NCURSES_SP_NAME(_nc_setupscreen) (
fflush(output);
setmode(output, O_BINARY);
#endif
- NCURSES_SP_NAME(_nc_set_buffer) (NCURSES_SP_ARGx output, TRUE);
+#if defined(EXP_WIN32_DRIVER)
+ T(("setting output mode to binary"));
+ fflush(output);
+ _setmode(fileno(output), _O_BINARY);
+#endif
sp->_lines = (NCURSES_SIZE_T) slines;
sp->_lines_avail = (NCURSES_SIZE_T) slines;
sp->_columns = (NCURSES_SIZE_T) scolumns;
@@ -399,6 +424,10 @@ NCURSES_SP_NAME(_nc_setupscreen) (
fflush(output);
sp->_ofd = output ? fileno(output) : -1;
sp->_ofp = output;
+#if defined(EXP_WIN32_DRIVER)
+ if (output)
+ _setmode(fileno(output), _O_BINARY);
+#endif
sp->out_limit = (size_t) ((2 + slines) * (6 + scolumns));
if ((sp->out_buffer = malloc(sp->out_limit)) == 0)
sp->out_limit = 0;
@@ -470,7 +499,7 @@ NCURSES_SP_NAME(_nc_setupscreen) (
p = extract_fgbg(p, &(sp->_default_fg));
p = extract_fgbg(p, &(sp->_default_bg));
if (*p) /* assume rxvt was compiled with xpm support */
- p = extract_fgbg(p, &(sp->_default_bg));
+ extract_fgbg(p, &(sp->_default_bg));
TR(TRACE_CHARPUT | TRACE_MOVE, ("decoded fg=%d, bg=%d",
sp->_default_fg, sp->_default_bg));
if (sp->_default_fg >= MaxColors) {
@@ -667,6 +696,9 @@ NCURSES_SP_NAME(_nc_setupscreen) (
formats (4-4 or 3-2-3) for which there may be some hardware
support. */
if (rop->hook == _nc_slk_initialize) {
+ if (!TerminalOf(sp)) {
+ continue;
+ }
if (!(NumLabels <= 0 || !SLK_STDFMT(slk_format))) {
continue;
}
diff --git a/ncurses/base/lib_slkrefr.c b/ncurses/base/lib_slkrefr.c
index c6bf9d2..7a40624 100644
--- a/ncurses/base/lib_slkrefr.c
+++ b/ncurses/base/lib_slkrefr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -44,7 +44,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_slkrefr.c,v 1.31 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_slkrefr.c,v 1.32 2021/09/04 10:54:35 tom Exp $")
#ifdef USE_TERM_DRIVER
#define NumLabels InfoOf(SP_PARM).numlabels
@@ -113,7 +113,7 @@ slk_intern_refresh(SCREEN *sp)
wmove(slk->win, SLK_LINES(fmt) - 1, slk->ent[i].ent_x);
(void) wattrset(slk->win, (int) AttrOf(slk->attr));
waddstr(slk->win, slk->ent[i].form_text);
- /* if we simulate SLK's, it's looking much more
+ /* if we simulate SLK's, it is looking much more
natural to use the current ATTRIBUTE also
for the label window */
(void) wattrset(slk->win, (int) WINDOW_ATTRS(StdScreen(sp)));
diff --git a/ncurses/base/new_pair.c b/ncurses/base/new_pair.c
index 547ab28..70866c6 100644
--- a/ncurses/base/new_pair.c
+++ b/ncurses/base/new_pair.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -61,7 +61,7 @@
#endif
-MODULE_ID("$Id: new_pair.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: new_pair.c,v 1.23 2021/08/16 22:11:26 tom Exp $")
#if NCURSES_EXT_COLORS
@@ -106,7 +106,7 @@ dumpit(SCREEN *sp, int pair, const char *tag)
size_t have = sizeof(bigbuf);
_nc_STRCPY(p, tag, have);
- for (n = 0; n < sp->_pair_limit; ++n) {
+ for (n = 0; n < sp->_pair_alloc; ++n) {
if (list[n].mode != cpFREE) {
p += strlen(p);
if ((size_t) (p - bigbuf) + 50 > have)
@@ -144,17 +144,16 @@ static int
_nc_find_color_pair(SCREEN *sp, int fg, int bg)
{
colorpair_t find;
- int result;
- void *pp;
+ int result = -1;
find.fg = fg;
find.bg = bg;
- if (sp != 0 &&
- (pp = tfind(&find, &sp->_ordered_pairs, compare_data)) != 0) {
- colorpair_t *temp = *(colorpair_t **) pp;
- result = (int) (temp - sp->_color_pairs);
- } else {
- result = -1;
+ if (sp != 0) {
+ void *pp;
+ if ((pp = tfind(&find, &sp->_ordered_pairs, compare_data)) != 0) {
+ colorpair_t *temp = *(colorpair_t **) pp;
+ result = (int) (temp - sp->_color_pairs);
+ }
}
return result;
}
@@ -197,7 +196,10 @@ NCURSES_EXPORT(void)
_nc_reset_color_pair(SCREEN *sp, int pair, colorpair_t * next)
{
colorpair_t *last;
+
if (ValidPair(sp, pair)) {
+ bool used;
+
ReservePairs(sp, pair);
last = &(sp->_color_pairs[pair]);
delink_color_pair(sp, pair);
@@ -205,6 +207,11 @@ _nc_reset_color_pair(SCREEN *sp, int pair, colorpair_t * next)
(last->fg != next->fg || last->bg != next->bg)) {
/* remove the old entry from fast index */
tdelete(last, &sp->_ordered_pairs, compare_data);
+ used = FALSE;
+ } else {
+ used = (last->mode != cpFREE);
+ }
+ if (!used) {
/* create a new entry in fast index */
*last = *next;
tsearch(last, &sp->_ordered_pairs, compare_data);
@@ -290,7 +297,7 @@ NCURSES_SP_NAME(alloc_pair) (NCURSES_SP_DCLx int fg, int bg)
found = TRUE;
}
}
- if (!found) {
+ if (!found && SP_PARM->_color_pairs != NULL) {
for (pair = 1; pair <= hint; pair++) {
if (SP_PARM->_color_pairs[pair].mode == cpFREE) {
T(("found gap %d", pair));
diff --git a/ncurses/base/resizeterm.c b/ncurses/base/resizeterm.c
index 9b04287..225f552 100644
--- a/ncurses/base/resizeterm.c
+++ b/ncurses/base/resizeterm.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -46,7 +46,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: resizeterm.c,v 1.50 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: resizeterm.c,v 1.51 2021/09/04 10:54:35 tom Exp $")
/*
* If we're trying to be reentrant, do not want any local statics.
@@ -210,7 +210,7 @@ parent_depth(WINDOW *cmp)
}
/*
- * FIXME: must adjust position so it's within the parent!
+ * FIXME: must adjust position so it is within the parent!
*/
static int
adjust_window(WINDOW *win, int ToLines, int ToCols, int stolen EXTRA_DCLS)
diff --git a/ncurses/base/safe_sprintf.c b/ncurses/base/safe_sprintf.c
index 1868c00..3fff2e8 100644
--- a/ncurses/base/safe_sprintf.c
+++ b/ncurses/base/safe_sprintf.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2012,2013 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -34,7 +34,7 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: safe_sprintf.c,v 1.33 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: safe_sprintf.c,v 1.35 2021/10/03 00:25:09 tom Exp $")
#if USE_SAFE_SPRINTF
@@ -223,9 +223,9 @@ NCURSES_SP_NAME(_nc_printf_string) (NCURSES_SP_DCLx
const char *fmt,
va_list ap)
{
- char *result = 0;
+ char *result = NULL;
- if (SP_PARM != 0 && fmt != 0) {
+ if (SP_PARM != NULL && fmt != NULL) {
#if USE_SAFE_SPRINTF
va_list ap2;
int len;
@@ -238,7 +238,7 @@ NCURSES_SP_NAME(_nc_printf_string) (NCURSES_SP_DCLx
my_length = (size_t) (2 * (len + 1));
my_buffer = typeRealloc(char, my_length, my_buffer);
}
- if (my_buffer != 0) {
+ if (my_buffer != NULL) {
*my_buffer = '\0';
if (len >= 0) {
vsprintf(my_buffer, fmt, ap);
@@ -255,21 +255,30 @@ NCURSES_SP_NAME(_nc_printf_string) (NCURSES_SP_DCLx
if (screen_columns(SP_PARM) > MyCols)
MyCols = screen_columns(SP_PARM);
my_length = (size_t) (MyRows * (MyCols + 1)) + 1;
+ if (my_length < 80)
+ my_length = 80;
my_buffer = typeRealloc(char, my_length, my_buffer);
}
- if (my_buffer != 0) {
+ if (my_buffer != NULL) {
# if HAVE_VSNPRINTF
- vsnprintf(my_buffer, my_length, fmt, ap); /* SUSv2, 1997 */
+ /* SUSv2, 1997 */
+ int used;
+ while ((used = vsnprintf(my_buffer, my_length, fmt, ap))
+ >= (int) my_length) {
+ my_length = (size_t) ((3 * used) / 2);
+ my_buffer = typeRealloc(char, my_length, my_buffer);
+ }
# else
- vsprintf(my_buffer, fmt, ap); /* ISO/ANSI C, 1989 */
+ /* ISO/ANSI C, 1989 */
+ vsprintf(my_buffer, fmt, ap);
# endif
result = my_buffer;
}
#endif
- } else if (my_buffer != 0) { /* see _nc_freeall() */
+ } else if (my_buffer != NULL) { /* see _nc_freeall() */
free(my_buffer);
- my_buffer = 0;
+ my_buffer = NULL;
my_length = 0;
}
return result;
diff --git a/ncurses/base/wresize.c b/ncurses/base/wresize.c
index 93276ef..30718b8 100644
--- a/ncurses/base/wresize.c
+++ b/ncurses/base/wresize.c
@@ -34,7 +34,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: wresize.c,v 1.39 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: wresize.c,v 1.41 2020/04/18 21:01:00 tom Exp $")
static int
cleanup_lines(struct ldat *data, int length)
@@ -176,7 +176,15 @@ wresize(WINDOW *win, int ToLines, int ToCols)
if (s == 0)
returnCode(cleanup_lines(new_lines, row));
for (col = 0; col <= ToCols; ++col) {
- s[col] = (col <= size_x
+ bool valid = (col <= size_x);
+ if_WIDEC({
+ if (col == ToCols
+ && col < size_x
+ && isWidecBase(win->_line[row].text[col])) {
+ valid = FALSE;
+ }
+ });
+ s[col] = (valid
? win->_line[row].text[col]
: win->_nc_bkgd);
}
diff --git a/ncurses/curses.priv.h b/ncurses/curses.priv.h
index 9ca0263..872d25a 100644
--- a/ncurses/curses.priv.h
+++ b/ncurses/curses.priv.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,7 +35,7 @@
****************************************************************************/
/*
- * $Id: curses.priv.h,v 1.628 2020/02/02 23:34:34 tom Exp $
+ * $Id: curses.priv.h,v 1.646 2021/09/24 16:09:35 tom Exp $
*
* curses.priv.h
*
@@ -72,10 +72,6 @@ extern "C" {
#include <unistd.h>
#endif
-#if HAVE_SYS_BSDTYPES_H && !(defined(_WIN32) || defined(_WIN64))
-#include <sys/bsdtypes.h> /* needed for ISC */
-#endif
-
#if HAVE_LIMITS_H
# include <limits.h>
#elif HAVE_SYS_PARAM_H
@@ -107,6 +103,24 @@ extern "C" {
extern int errno;
#endif
+/* Some Windows related defines */
+#undef _NC_WINDOWS
+#if (defined(_WIN32) || defined(_WIN64))
+#define _NC_WINDOWS
+#else
+#undef EXP_WIN32_DRIVER
+#endif
+
+#undef _NC_MINGW
+#if (defined(__MINGW32__) || defined(__MINGW64__))
+#define _NC_MINGW
+#endif
+
+#undef _NC_MSC
+#ifdef _MSC_VER
+#define _NC_MSC
+#endif
+
/* Some systems have a broken 'select()', but workable 'poll()'. Use that */
#if HAVE_WORKING_POLL
#define USE_FUNC_POLL 1
@@ -185,7 +199,7 @@ extern int errno;
* the path separator in configure doesn't work properly. So, if building
* for MinGW, we enforce the correct Windows PATH separator
*/
-#ifdef _WIN32
+#if defined(_NC_WINDOWS)
# ifdef NCURSES_PATHSEP
# undef NCURSES_PATHSEP
# endif
@@ -193,17 +207,6 @@ extern int errno;
#endif
/*
- * If desired, one can configure this, disabling environment variables that
- * point to custom terminfo/termcap locations.
- */
-#ifdef USE_ROOT_ENVIRON
-#define use_terminfo_vars() 1
-#else
-#define use_terminfo_vars() _nc_env_access()
-extern NCURSES_EXPORT(int) _nc_env_access (void);
-#endif
-
-/*
* Not all platforms have memmove; some have an equivalent bcopy. (Some may
* have neither).
*/
@@ -275,11 +278,20 @@ extern NCURSES_EXPORT(void *) _nc_memmove (void *, const void *, size_t);
* Options for terminal drivers, etc...
*/
#ifdef USE_TERM_DRIVER
+#define NO_TERMINAL "unknown"
#define USE_SP_RIPOFF 1
#define USE_SP_TERMTYPE 1
#define USE_SP_WINDOWLIST 1
+#else
+#define NO_TERMINAL 0
#endif
+#define VALID_TERM_ENV(term_env, no_terminal) \
+ (term_env = (NonEmpty(term_env) \
+ ? term_env \
+ : no_terminal), \
+ NonEmpty(term_env))
+
/*
* Note: ht/cbt expansion flakes out randomly under Linux 1.1.47, but only
* when we're throwing control codes at the screen at high volume. To see
@@ -337,6 +349,10 @@ typedef TRIES {
#include <curses.h> /* we'll use -Ipath directive to get the right one! */
+#if !(defined(NCURSES_WGETCH_EVENTS) && defined(NEED_KEY_EVENT))
+#undef KEY_EVENT /* reduce compiler-warnings with Visual C++ */
+#endif
+
typedef struct
{
int red, green, blue; /* what color_content() returns */
@@ -380,7 +396,7 @@ typedef union {
#include <nc_panel.h>
-#include <term.h>
+#include <term.priv.h>
#include <nc_termios.h>
#define IsPreScreen(sp) (((sp) != 0) && sp->_prescreen)
@@ -783,12 +799,6 @@ typedef struct _SLK {
#endif /* USE_TERMLIB */
-typedef struct {
- WINDOW *win; /* the window used in the hook */
- int line; /* lines to take, < 0 => from bottom*/
- int (*hook)(WINDOW *, int); /* callback for user */
-} ripoff_t;
-
#if USE_GPM_SUPPORT
#undef buttons /* term.h defines this, and gpm uses it! */
#include <gpm.h>
@@ -816,16 +826,6 @@ typedef int (*TYPE_Gpm_GetEvent) (Gpm_Event *);
#endif /* HAVE_LIBDL */
#endif /* USE_GPM_SUPPORT */
-typedef struct {
- long sequence;
- bool last_used;
- char *fix_sgr0; /* this holds the filtered sgr0 string */
- char *last_bufp; /* help with fix_sgr0 leak */
- TERMINAL *last_term;
-} TGETENT_CACHE;
-
-#define TGETENT_MAX 4
-
/*
* When converting from terminfo to termcap, check for cases where we can trim
* octal escapes down to 2-character form. It is useful for terminfo format
@@ -837,46 +837,6 @@ typedef struct {
#define isoctal(c) ((c) >= '0' && (c) <= '7')
/*
- * State of tparm().
- */
-#define STACKSIZE 20
-
-typedef struct {
- union {
- int num;
- char *str;
- } data;
- bool num_type;
-} STACK_FRAME;
-
-#define NUM_VARS 26
-
-typedef struct {
- const char *tparam_base;
-
- STACK_FRAME stack[STACKSIZE];
- int stack_ptr;
-
- char *out_buff;
- size_t out_size;
- size_t out_used;
-
- char *fmt_buff;
- size_t fmt_size;
-
- int dynamic_var[NUM_VARS];
- int static_vars[NUM_VARS];
-#ifdef TRACE
- const char *tname;
-#endif
-} TPARM_STATE;
-
-typedef struct {
- char *text;
- size_t size;
-} TRACEBUF;
-
-/*
* The filesystem database normally uses a single-letter for the lower level
* of directories. Use a hexadecimal code for filesystems which do not
* preserve mixed-case names.
@@ -906,127 +866,8 @@ struct DriverTCB; /* Terminal Control Block forward declaration */
#define INIT_TERM_DRIVER() /* nothing */
#endif
-typedef struct {
- const char *name;
- char *value;
-} ITERATOR_VARS;
-
-/*
- * Global data which is not specific to a screen.
- */
-typedef struct {
- SIG_ATOMIC_T have_sigtstp;
- SIG_ATOMIC_T have_sigwinch;
- SIG_ATOMIC_T cleanup_nested;
-
- bool init_signals;
- bool init_screen;
-
- char *comp_sourcename;
- char *comp_termtype;
-
- bool have_tic_directory;
- bool keep_tic_directory;
- const char *tic_directory;
-
- char *dbi_list;
- int dbi_size;
-
- char *first_name;
- char **keyname_table;
- int init_keyname;
-
- int slk_format;
-
- int getstr_limit; /* getstr_limit based on POSIX LINE_MAX */
-
- char *safeprint_buf;
- size_t safeprint_used;
-
- TGETENT_CACHE tgetent_cache[TGETENT_MAX];
- int tgetent_index;
- long tgetent_sequence;
-
- char *dbd_blob; /* string-heap for dbd_list[] */
- char **dbd_list; /* distinct places to look for data */
- int dbd_size; /* length of dbd_list[] */
- time_t dbd_time; /* cache last updated */
- ITERATOR_VARS dbd_vars[dbdLAST];
-
-#ifdef USE_TERM_DRIVER
- int (*term_driver)(struct DriverTCB*, const char*, int*);
-#endif
-
-#ifndef USE_SP_WINDOWLIST
- WINDOWLIST *_nc_windowlist;
-#define WindowList(sp) _nc_globals._nc_windowlist
-#endif
-
-#if USE_HOME_TERMINFO
- char *home_terminfo;
-#endif
-
-#if !USE_SAFE_SPRINTF
- int safeprint_cols;
- int safeprint_rows;
-#endif
-
-#ifdef USE_PTHREADS
- pthread_mutex_t mutex_curses;
- pthread_mutex_t mutex_prescreen;
- pthread_mutex_t mutex_screen;
- pthread_mutex_t mutex_update;
- pthread_mutex_t mutex_tst_tracef;
- pthread_mutex_t mutex_tracef;
- int nested_tracef;
- int use_pthreads;
-#define _nc_use_pthreads _nc_globals.use_pthreads
-#if USE_PTHREADS_EINTR
- pthread_t read_thread; /* The reading thread */
-#endif
-#endif
-#if USE_WIDEC_SUPPORT
- char key_name[MB_LEN_MAX + 1];
-#endif
-
-#ifdef TRACE
- bool trace_opened;
- char trace_fname[PATH_MAX];
- int trace_level;
- FILE *trace_fp;
- int trace_fd;
-
- char *tracearg_buf;
- size_t tracearg_used;
-
- TRACEBUF *tracebuf_ptr;
- size_t tracebuf_used;
-
- char tracechr_buf[40];
-
- char *tracedmp_buf;
- size_t tracedmp_used;
-
- unsigned char *tracetry_buf;
- size_t tracetry_used;
-
- char traceatr_color_buf[2][80];
- int traceatr_color_sel;
- int traceatr_color_last;
-#if !defined(USE_PTHREADS) && USE_REENTRANT
- int nested_tracef;
-#endif
-#endif /* TRACE */
-
-#if NO_LEAKS
- bool leak_checking;
-#endif
-} NCURSES_GLOBALS;
-
extern NCURSES_EXPORT_VAR(NCURSES_GLOBALS) _nc_globals;
-#define N_RIPS 5
-
/* The limit reserves one byte for a terminating NUL */
#define my_getstr_limit (_nc_globals.getstr_limit - 1)
#define _nc_getstr_limit(n) \
@@ -1036,54 +877,6 @@ extern NCURSES_EXPORT_VAR(NCURSES_GLOBALS) _nc_globals;
? my_getstr_limit \
: (n)))
-#ifdef USE_PTHREADS
-typedef struct _prescreen_list {
- struct _prescreen_list *next;
- pthread_t id;
- struct screen *sp;
-} PRESCREEN_LIST;
-#endif
-
-/*
- * Global data which can be swept up into a SCREEN when one is created.
- * It may be modified before the next SCREEN is created.
- */
-typedef struct {
-#ifdef USE_PTHREADS
- PRESCREEN_LIST *allocated;
-#else
- struct screen * allocated;
-#endif
- bool use_env;
- bool filter_mode;
- attr_t previous_attr;
- TPARM_STATE tparm_state;
- TTY *saved_tty; /* savetty/resetty information */
- bool use_tioctl;
- NCURSES_SP_OUTC _outch; /* output handler if not putc */
-#ifndef USE_SP_RIPOFF
- ripoff_t rippedoff[N_RIPS];
- ripoff_t *rsp;
-#endif
-#if NCURSES_NO_PADDING
- bool _no_padding; /* flag to set if padding disabled */
-#endif
-#if BROKEN_LINKER || USE_REENTRANT
- chtype *real_acs_map;
- int _LINES;
- int _COLS;
- int _TABSIZE;
- int _ESCDELAY;
- TERMINAL *_cur_term;
-#endif
-#ifdef TRACE
-#if BROKEN_LINKER || USE_REENTRANT
- long _outchars;
- const char *_tputs_trace;
-#endif
-#endif
-} NCURSES_PRESCREEN;
-
/*
* Use screen-specific ripoff data (for softkeys) rather than global.
*/
@@ -1106,8 +899,7 @@ typedef enum {
/*
* The SCREEN structure.
*/
-
-struct screen {
+typedef struct screen {
int _ifd; /* input file descriptor for screen */
int _ofd; /* output file descriptor for screen */
FILE *_ofp; /* output file ptr for screen */
@@ -1334,7 +1126,7 @@ struct screen {
int _sysmouse_new_buttons;
#endif
-#ifdef USE_TERM_DRIVER
+#if defined(USE_TERM_DRIVER) || defined(EXP_WIN32_DRIVER)
MEVENT _drv_mouse_fifo[FIFO_SIZE];
int _drv_mouse_head;
int _drv_mouse_tail;
@@ -1391,7 +1183,8 @@ struct screen {
const char *_tputs_trace;
#endif
#endif
-};
+#undef SCREEN
+} SCREEN;
extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
extern NCURSES_EXPORT_VAR(SIG_ATOMIC_T) _nc_have_sigwinch;
@@ -1517,7 +1310,7 @@ extern NCURSES_EXPORT_VAR(SIG_ATOMIC_T) _nc_have_sigwinch;
#if USE_WIDEC_SUPPORT /* { */
#define isEILSEQ(status) (((size_t)status == (size_t)-1) && (errno == EILSEQ))
-#define init_mb(state) memset(&state, 0, sizeof(state))
+#define init_mb(state) memset(&(state), 0, sizeof(state))
#if NCURSES_EXT_COLORS
#define NulColor , 0
@@ -1551,14 +1344,14 @@ extern NCURSES_EXPORT_VAR(SIG_ATOMIC_T) _nc_have_sigwinch;
#endif
#define SetChar(ch,c,a) do { \
- NCURSES_CH_T *_cp = &ch; \
+ NCURSES_CH_T *_cp = &(ch); \
memset(_cp, 0, sizeof(ch)); \
_cp->chars[0] = (wchar_t) (c); \
_cp->attr = (a); \
if_EXT_COLORS(SetPair(ch, PairNumber(a))); \
} while (0)
-#define CHREF(wch) (&wch)
-#define CHDEREF(wch) (*wch)
+#define CHREF(wch) (&(wch))
+#define CHDEREF(wch) (*(wch))
#define ARG_CH_T NCURSES_CH_T *
#define CARG_CH_T const NCURSES_CH_T *
#define PUTC_DATA char PUTC_buf[MB_LEN_MAX]; int PUTC_i, PUTC_n; \
@@ -1696,6 +1489,7 @@ extern NCURSES_EXPORT_VAR(SIG_ATOMIC_T) _nc_have_sigwinch;
#define FreeAndNull(p) do { free(p); p = 0; } while (0)
#include <nc_alloc.h>
+#include <nc_access.h>
/*
* Use these for tic/infocmp malloc failures. Generally the ncurses library
@@ -1828,7 +1622,7 @@ extern NCURSES_EXPORT(SCREEN *) _nc_retrace_sp (SCREEN *);
extern NCURSES_EXPORT(WINDOW *) _nc_retrace_win (WINDOW *);
extern NCURSES_EXPORT(attr_t) _nc_retrace_attr_t (attr_t);
extern NCURSES_EXPORT(char *) _nc_retrace_ptr (char *);
-extern NCURSES_EXPORT(char *) _nc_trace_ttymode(TTY *tty);
+extern NCURSES_EXPORT(char *) _nc_trace_ttymode(const TTY *tty);
extern NCURSES_EXPORT(char *) _nc_varargs (const char *, va_list);
extern NCURSES_EXPORT(chtype) _nc_retrace_chtype (chtype);
extern NCURSES_EXPORT(const char *) _nc_altcharset_name(attr_t, chtype);
@@ -2343,11 +2137,10 @@ extern NCURSES_EXPORT(int) _nc_eventlist_timeout(_nc_eventlist *);
*/
#if USE_WIDEC_SUPPORT
-#if defined(_WIN32)
+#if defined(_NC_WINDOWS) && !defined(_NC_MSC) && !defined(EXP_WIN32_DRIVER)
/*
* MinGW has wide-character functions, but they do not work correctly.
*/
-
extern int __MINGW_NOTHROW _nc_wctomb(char *, wchar_t);
#define wctomb(s,wc) _nc_wctomb(s,wc)
#define wcrtomb(s,wc,n) _nc_wctomb(s,wc)
@@ -2358,19 +2151,19 @@ extern int __MINGW_NOTHROW _nc_mbtowc(wchar_t *, const char *, size_t);
extern int __MINGW_NOTHROW _nc_mblen(const char *, size_t);
#define mblen(s,n) _nc_mblen(s, n)
-#endif /* _WIN32 */
+#endif /* _NC_WINDOWS && !_NC_MSC */
#if HAVE_MBTOWC && HAVE_MBLEN
#define reset_mbytes(state) IGNORE_RC(mblen(NULL, (size_t) 0)), IGNORE_RC(mbtowc(NULL, NULL, (size_t) 0))
#define count_mbytes(buffer,length,state) mblen(buffer,length)
#define check_mbytes(wch,buffer,length,state) \
- (int) mbtowc(&wch, buffer, length)
+ (int) mbtowc(&(wch), buffer, length)
#define state_unused
#elif HAVE_MBRTOWC && HAVE_MBRLEN
#define reset_mbytes(state) init_mb(state)
-#define count_mbytes(buffer,length,state) mbrlen(buffer,length,&state)
+#define count_mbytes(buffer,length,state) mbrlen(buffer,length,&(state))
#define check_mbytes(wch,buffer,length,state) \
- (int) mbrtowc(&wch, buffer, length, &state)
+ (int) mbrtowc(&(wch), buffer, length, &(state))
#else
make an error
#endif
@@ -2419,7 +2212,7 @@ extern NCURSES_EXPORT_VAR(SCREEN *) SP;
/*
* We don't want to use the lines or columns capabilities internally, because
- * if the application is running multiple screens under X, it's quite possible
+ * if the application is running multiple screens under X, it is quite possible
* they could all have type xterm but have different sizes! So...
*/
#define screen_lines(sp) (sp)->_lines
@@ -2580,6 +2373,10 @@ extern NCURSES_EXPORT(int) TINFO_MVCUR(SCREEN*, int, int, int, int);
#define TINFO_MVCUR NCURSES_SP_NAME(_nc_mvcur)
#endif
+#if defined(EXP_WIN32_DRIVER)
+#include <nc_win32.h>
+#endif
+
/*
* Entrypoints using an extra parameter with the terminal driver.
*/
@@ -2602,6 +2399,9 @@ extern NCURSES_EXPORT(void) _nc_get_screensize(SCREEN *, int *, int *);
_nc_setupterm(name, fd, err, reuse)
#endif /* !USE_TERM_DRIVER */
+#ifdef EXP_WIN32_DRIVER
+extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_TINFO_DRIVER;
+#else
#ifdef USE_TERM_DRIVER
#if defined(USE_WIN32CON_DRIVER)
#include <nc_mingw.h>
@@ -2619,9 +2419,12 @@ extern NCURSES_EXPORT(int) _nc_mingw_testmouse(
#else
#endif
extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_TINFO_DRIVER;
-#endif
+#endif /* USE_TERM_DRIVER */
+#endif /* EXP_WIN32_DRIVER */
-#if defined(USE_TERM_DRIVER) && defined(USE_WIN32CON_DRIVER)
+#if defined(USE_TERM_DRIVER) && defined(EXP_WIN32_DRIVER)
+#define NC_ISATTY(fd) (0 != _nc_console_isatty(fd))
+#elif defined(USE_TERM_DRIVER) && defined(USE_WIN32CON_DRIVER)
#define NC_ISATTY(fd) _nc_mingw_isatty(fd)
#else
#define NC_ISATTY(fd) isatty(fd)
@@ -2630,15 +2433,21 @@ extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_TINFO_DRIVER;
#ifdef USE_TERM_DRIVER
# define IsTermInfo(sp) ((TCBOf(sp) != 0) && ((TCBOf(sp)->drv->isTerminfo)))
# define HasTInfoTerminal(sp) ((0 != TerminalOf(sp)) && IsTermInfo(sp))
-# if defined(USE_WIN32CON_DRIVER)
-# define IsTermInfoOnConsole(sp) (IsTermInfo(sp)&&_nc_mingw_isconsole(TerminalOf(sp)->Filedes))
-#else
+# if defined(EXP_WIN32_DRIVER)
+# define IsTermInfoOnConsole(sp) (IsTermInfo(sp) && _nc_console_test(TerminalOf(sp)->Filedes))
+# elif defined(USE_WIN32CON_DRIVER)
+# define IsTermInfoOnConsole(sp) (IsTermInfo(sp) && _nc_mingw_isconsole(TerminalOf(sp)->Filedes))
+# else
# define IsTermInfoOnConsole(sp) FALSE
# endif
#else
# define IsTermInfo(sp) TRUE
# define HasTInfoTerminal(sp) (0 != TerminalOf(sp))
-# define IsTermInfoOnConsole(sp) FALSE
+# if defined(EXP_WIN32_DRIVER)
+# define IsTermInfoOnConsole(sp) _nc_console_test(TerminalOf(sp)->Filedes)
+# else
+# define IsTermInfoOnConsole(sp) FALSE
+# endif
#endif
#define IsValidTIScreen(sp) (HasTInfoTerminal(sp))
@@ -2686,7 +2495,7 @@ extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_tgetent)(SCREEN*,char*,const
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_do_color)(SCREEN*, int, int, int, NCURSES_SP_OUTC);
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_do_xmc_glitch)(SCREEN*, attr_t);
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_flush)(SCREEN*);
-extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_free_and_exit)(SCREEN*, int) GCC_NORETURN;
+extern GCC_NORETURN NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_free_and_exit)(SCREEN*, int);
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_freeall)(SCREEN*);
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_hash_map)(SCREEN*);
extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_init_acs)(SCREEN*);
diff --git a/ncurses/llib-lncurses b/ncurses/llib-lncurses
index 642c68d..c0adc1e 100644
--- a/ncurses/llib-lncurses
+++ b/ncurses/llib-lncurses
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019,2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -70,7 +70,7 @@ void _nc_hash_map(void)
#undef _nc_make_oldhash_sp
void _nc_make_oldhash_sp(
- SCREEN *sp,
+ SCREEN *sp,
int i)
{ /* void */ }
@@ -81,16 +81,16 @@ void _nc_make_oldhash(
#undef _nc_scroll_oldhash_sp
void _nc_scroll_oldhash_sp(
- SCREEN *sp,
- int n,
- int top,
+ SCREEN *sp,
+ int n,
+ int top,
int bot)
{ /* void */ }
#undef _nc_scroll_oldhash
void _nc_scroll_oldhash(
- int n,
- int top,
+ int n,
+ int top,
int bot)
{ /* void */ }
@@ -98,25 +98,25 @@ void _nc_scroll_oldhash(
#undef _nc_render
chtype _nc_render(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ return(*(chtype *)0); }
#undef _nc_waddch_nosync
int _nc_waddch_nosync(
- WINDOW *win,
+ WINDOW *win,
const chtype c)
{ return(*(int *)0); }
#undef waddch
int waddch(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
#undef wechochar
int wechochar(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
@@ -124,15 +124,15 @@ int wechochar(
#undef waddnstr
int waddnstr(
- WINDOW *win,
- const char *astr,
+ WINDOW *win,
+ const char *astr,
int n)
{ return(*(int *)0); }
#undef waddchnstr
int waddchnstr(
- WINDOW *win,
- const chtype *astr,
+ WINDOW *win,
+ const chtype *astr,
int n)
{ return(*(int *)0); }
@@ -151,13 +151,13 @@ int beep(void)
#undef wbkgdset
void wbkgdset(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ /* void */ }
#undef wbkgd
int wbkgd(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
@@ -165,14 +165,14 @@ int wbkgd(
#undef wborder
int wborder(
- WINDOW *win,
- chtype ls,
- chtype rs,
- chtype ts,
- chtype bs,
- chtype tl,
- chtype tr,
- chtype bl,
+ WINDOW *win,
+ chtype ls,
+ chtype rs,
+ chtype ts,
+ chtype bs,
+ chtype tl,
+ chtype tr,
+ chtype bl,
chtype br)
{ return(*(int *)0); }
@@ -180,10 +180,10 @@ int wborder(
#undef wchgat
int wchgat(
- WINDOW *win,
- int n,
- attr_t attr,
- short pair_arg,
+ WINDOW *win,
+ int n,
+ attr_t attr,
+ short pair_arg,
const void *opts)
{ return(*(int *)0); }
@@ -198,7 +198,7 @@ int wclear(
#undef clearok
int clearok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -243,62 +243,62 @@ int start_color(void)
#undef _nc_change_pair
void _nc_change_pair(
- SCREEN *sp,
+ SCREEN *sp,
int pair)
{ /* void */ }
#undef _nc_reserve_pairs
void _nc_reserve_pairs(
- SCREEN *sp,
+ SCREEN *sp,
int want)
{ /* void */ }
#undef _nc_init_pair
int _nc_init_pair(
- SCREEN *sp,
- int pair,
- int f,
+ SCREEN *sp,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_pair_sp
int init_pair_sp(
- SCREEN *sp,
- short pair,
- short f,
+ SCREEN *sp,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef init_pair
int init_pair(
- short pair,
- short f,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef _nc_init_color
int _nc_init_color(
- SCREEN *sp,
- int color,
- int r,
- int g,
+ SCREEN *sp,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef init_color_sp
int init_color_sp(
- SCREEN *sp,
- short color,
- short r,
- short g,
+ SCREEN *sp,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
#undef init_color
int init_color(
- short color,
- short r,
- short g,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
@@ -322,58 +322,58 @@ NCURSES_BOOL has_colors(void)
#undef color_content_sp
int color_content_sp(
- SCREEN *sp,
- short color,
- short *r,
- short *g,
+ SCREEN *sp,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef color_content
int color_content(
- short color,
- short *r,
- short *g,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef _nc_pair_content
int _nc_pair_content(
- SCREEN *sp,
- int pair,
- int *f,
+ SCREEN *sp,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
#undef pair_content_sp
int pair_content_sp(
- SCREEN *sp,
- short pair,
- short *f,
+ SCREEN *sp,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef pair_content
int pair_content(
- short pair,
- short *f,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef _nc_do_color_sp
void _nc_do_color_sp(
- SCREEN *sp,
- int old_pair,
- int pair,
- int reverse,
+ SCREEN *sp,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC_sp outc)
{ /* void */ }
#undef _nc_do_color
void _nc_do_color(
- int old_pair,
- int pair,
- int reverse,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC outc)
{ /* void */ }
@@ -381,8 +381,8 @@ void _nc_do_color(
#undef wcolor_set
int wcolor_set(
- WINDOW *win,
- short pair_arg,
+ WINDOW *win,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -452,831 +452,831 @@ int flash(void)
/* ./lib_gen.c */
#undef addch
-int (addch)(
+int addch(
const chtype z)
{ return(*(int *)0); }
#undef addchnstr
-int (addchnstr)(
- const chtype *a1,
+int addchnstr(
+ const chtype *a1,
int z)
{ return(*(int *)0); }
#undef addchstr
-int (addchstr)(
+int addchstr(
const chtype *z)
{ return(*(int *)0); }
#undef addnstr
-int (addnstr)(
- const char *a1,
+int addnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef addstr
-int (addstr)(
+int addstr(
const char *z)
{ return(*(int *)0); }
#undef attroff
-int (attroff)(
+int attroff(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attron
-int (attron)(
+int attron(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attrset
-int (attrset)(
+int attrset(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attr_get
-int (attr_get)(
- attr_t *a1,
- short *a2,
+int attr_get(
+ attr_t *a1,
+ short *a2,
void *z)
{ return(*(int *)0); }
#undef attr_off
-int (attr_off)(
- attr_t a1,
+int attr_off(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_on
-int (attr_on)(
- attr_t a1,
+int attr_on(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_set
-int (attr_set)(
- attr_t a1,
- short a2,
+int attr_set(
+ attr_t a1,
+ short a2,
void *z)
{ return(*(int *)0); }
#undef bkgd
-int (bkgd)(
+int bkgd(
chtype z)
{ return(*(int *)0); }
#undef bkgdset
-void (bkgdset)(
+void bkgdset(
chtype z)
{ /* void */ }
#undef border
-int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
- chtype a4,
- chtype a5,
- chtype a6,
- chtype a7,
+int border(
+ chtype a1,
+ chtype a2,
+ chtype a3,
+ chtype a4,
+ chtype a5,
+ chtype a6,
+ chtype a7,
chtype z)
{ return(*(int *)0); }
#undef box
-int (box)(
- WINDOW *a1,
- chtype a2,
+int box(
+ WINDOW *a1,
+ chtype a2,
chtype z)
{ return(*(int *)0); }
#undef chgat
-int (chgat)(
- int a1,
- attr_t a2,
- short a3,
+int chgat(
+ int a1,
+ attr_t a2,
+ short a3,
const void *z)
{ return(*(int *)0); }
#undef clear
-int (clear)(void)
+int clear(void)
{ return(*(int *)0); }
#undef clrtobot
-int (clrtobot)(void)
+int clrtobot(void)
{ return(*(int *)0); }
#undef clrtoeol
-int (clrtoeol)(void)
+int clrtoeol(void)
{ return(*(int *)0); }
#undef color_set
-int (color_set)(
- short a1,
+int color_set(
+ short a1,
void *z)
{ return(*(int *)0); }
#undef COLOR_PAIR
-int (COLOR_PAIR)(
+int COLOR_PAIR(
int z)
{ return(*(int *)0); }
#undef delch
-int (delch)(void)
+int delch(void)
{ return(*(int *)0); }
#undef deleteln
-int (deleteln)(void)
+int deleteln(void)
{ return(*(int *)0); }
#undef echochar
-int (echochar)(
+int echochar(
const chtype z)
{ return(*(int *)0); }
#undef erase
-int (erase)(void)
+int erase(void)
{ return(*(int *)0); }
#undef getbkgd
-chtype (getbkgd)(
+chtype getbkgd(
WINDOW *z)
{ return(*(chtype *)0); }
#undef getch
-int (getch)(void)
+int getch(void)
{ return(*(int *)0); }
#undef getnstr
-int (getnstr)(
- char *a1,
+int getnstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef getstr
-int (getstr)(
+int getstr(
char *z)
{ return(*(int *)0); }
#undef hline
-int (hline)(
- chtype a1,
+int hline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef inch
-chtype (inch)(void)
+chtype inch(void)
{ return(*(chtype *)0); }
#undef inchnstr
-int (inchnstr)(
- chtype *a1,
+int inchnstr(
+ chtype *a1,
int z)
{ return(*(int *)0); }
#undef inchstr
-int (inchstr)(
+int inchstr(
chtype *z)
{ return(*(int *)0); }
#undef innstr
-int (innstr)(
- char *a1,
+int innstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef insch
-int (insch)(
+int insch(
chtype z)
{ return(*(int *)0); }
#undef insdelln
-int (insdelln)(
+int insdelln(
int z)
{ return(*(int *)0); }
#undef insertln
-int (insertln)(void)
+int insertln(void)
{ return(*(int *)0); }
#undef insnstr
-int (insnstr)(
- const char *a1,
+int insnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef insstr
-int (insstr)(
+int insstr(
const char *z)
{ return(*(int *)0); }
#undef instr
-int (instr)(
+int instr(
char *z)
{ return(*(int *)0); }
#undef move
-int (move)(
- int a1,
+int move(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvaddch
-int (mvaddch)(
- int a1,
- int a2,
+int mvaddch(
+ int a1,
+ int a2,
const chtype z)
{ return(*(int *)0); }
#undef mvaddchnstr
-int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
+int mvaddchnstr(
+ int a1,
+ int a2,
+ const chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvaddchstr
-int (mvaddchstr)(
- int a1,
- int a2,
+int mvaddchstr(
+ int a1,
+ int a2,
const chtype *z)
{ return(*(int *)0); }
#undef mvaddnstr
-int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvaddnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvaddstr
-int (mvaddstr)(
- int a1,
- int a2,
+int mvaddstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvchgat
-int (mvchgat)(
- int a1,
- int a2,
- int a3,
- attr_t a4,
- short a5,
+int mvchgat(
+ int a1,
+ int a2,
+ int a3,
+ attr_t a4,
+ short a5,
const void *z)
{ return(*(int *)0); }
#undef mvdelch
-int (mvdelch)(
- int a1,
+int mvdelch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetch
-int (mvgetch)(
- int a1,
+int mvgetch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetnstr
-int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
+int mvgetnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvgetstr
-int (mvgetstr)(
- int a1,
- int a2,
+int mvgetstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvhline
-int (mvhline)(
- int a1,
- int a2,
- chtype a3,
+int mvhline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvinch
-chtype (mvinch)(
- int a1,
+chtype mvinch(
+ int a1,
int z)
{ return(*(chtype *)0); }
#undef mvinchnstr
-int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
+int mvinchnstr(
+ int a1,
+ int a2,
+ chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvinchstr
-int (mvinchstr)(
- int a1,
- int a2,
+int mvinchstr(
+ int a1,
+ int a2,
chtype *z)
{ return(*(int *)0); }
#undef mvinnstr
-int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
+int mvinnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsch
-int (mvinsch)(
- int a1,
- int a2,
+int mvinsch(
+ int a1,
+ int a2,
chtype z)
{ return(*(int *)0); }
#undef mvinsnstr
-int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvinsnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsstr
-int (mvinsstr)(
- int a1,
- int a2,
+int mvinsstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvinstr
-int (mvinstr)(
- int a1,
- int a2,
+int mvinstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvvline
-int (mvvline)(
- int a1,
- int a2,
- chtype a3,
+int mvvline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvwaddch
-int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype z)
{ return(*(int *)0); }
#undef mvwaddchnstr
-int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const chtype *a4,
+int mvwaddchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddchstr
-int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype *z)
{ return(*(int *)0); }
#undef mvwaddnstr
-int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwaddnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddstr
-int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwchgat
-int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
- int a4,
- attr_t a5,
- short a6,
+int mvwchgat(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ int a4,
+ attr_t a5,
+ short a6,
const void *z)
{ return(*(int *)0); }
#undef mvwdelch
-int (mvwdelch)(
- WINDOW *a1,
- int a2,
+int mvwdelch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetch
-int (mvwgetch)(
- WINDOW *a1,
- int a2,
+int mvwgetch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetnstr
-int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwgetnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwgetstr
-int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwgetstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwhline
-int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwhline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef mvwinch
-chtype (mvwinch)(
- WINDOW *a1,
- int a2,
+chtype mvwinch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(chtype *)0); }
#undef mvwinchnstr
-int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype *a4,
+int mvwinchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwinchstr
-int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype *z)
{ return(*(int *)0); }
#undef mvwinnstr
-int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwinnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsch
-int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsch(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype z)
{ return(*(int *)0); }
#undef mvwinsnstr
-int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwinsnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsstr
-int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwinstr
-int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwvline
-int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwvline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef PAIR_NUMBER
-int (PAIR_NUMBER)(
+int PAIR_NUMBER(
int z)
{ return(*(int *)0); }
#undef redrawwin
-int (redrawwin)(
+int redrawwin(
WINDOW *z)
{ return(*(int *)0); }
#undef refresh
-int (refresh)(void)
+int refresh(void)
{ return(*(int *)0); }
#undef scrl
-int (scrl)(
+int scrl(
int z)
{ return(*(int *)0); }
#undef scroll
-int (scroll)(
+int scroll(
WINDOW *z)
{ return(*(int *)0); }
#undef setscrreg
-int (setscrreg)(
- int a1,
+int setscrreg(
+ int a1,
int z)
{ return(*(int *)0); }
#undef standout
-int (standout)(void)
+int standout(void)
{ return(*(int *)0); }
#undef standend
-int (standend)(void)
+int standend(void)
{ return(*(int *)0); }
#undef timeout
-void (timeout)(
+void timeout(
int z)
{ /* void */ }
#undef touchline
-int (touchline)(
- WINDOW *a1,
- int a2,
+int touchline(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef touchwin
-int (touchwin)(
+int touchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef untouchwin
-int (untouchwin)(
+int untouchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef vline
-int (vline)(
- chtype a1,
+int vline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef waddchstr
-int (waddchstr)(
- WINDOW *a1,
+int waddchstr(
+ WINDOW *a1,
const chtype *z)
{ return(*(int *)0); }
#undef waddstr
-int (waddstr)(
- WINDOW *a1,
+int waddstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef wattron
-int (wattron)(
- WINDOW *a1,
+int wattron(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattroff
-int (wattroff)(
- WINDOW *a1,
+int wattroff(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattrset
-int (wattrset)(
- WINDOW *a1,
+int wattrset(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattr_get
-int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
+int wattr_get(
+ WINDOW *a1,
+ attr_t *a2,
+ short *a3,
void *z)
{ return(*(int *)0); }
#undef wattr_set
-int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
+int wattr_set(
+ WINDOW *a1,
+ attr_t a2,
+ short a3,
void *z)
{ return(*(int *)0); }
#undef wdeleteln
-int (wdeleteln)(
+int wdeleteln(
WINDOW *z)
{ return(*(int *)0); }
#undef wgetstr
-int (wgetstr)(
- WINDOW *a1,
+int wgetstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef winchstr
-int (winchstr)(
- WINDOW *a1,
+int winchstr(
+ WINDOW *a1,
chtype *z)
{ return(*(int *)0); }
#undef winsertln
-int (winsertln)(
+int winsertln(
WINDOW *z)
{ return(*(int *)0); }
#undef winsstr
-int (winsstr)(
- WINDOW *a1,
+int winsstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef winstr
-int (winstr)(
- WINDOW *a1,
+int winstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef wstandout
-int (wstandout)(
+int wstandout(
WINDOW *z)
{ return(*(int *)0); }
#undef wstandend
-int (wstandend)(
+int wstandend(
WINDOW *z)
{ return(*(int *)0); }
#undef getattrs
-int (getattrs)(
+int getattrs(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcurx
-int (getcurx)(
+int getcurx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcury
-int (getcury)(
+int getcury(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegx
-int (getbegx)(
+int getbegx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegy
-int (getbegy)(
+int getbegy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxx
-int (getmaxx)(
+int getmaxx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxy
-int (getmaxy)(
+int getmaxy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getparx
-int (getparx)(
+int getparx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getpary
-int (getpary)(
+int getpary(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetparent
-WINDOW *(wgetparent)(
+WINDOW *wgetparent(
const WINDOW *z)
{ return(*(WINDOW **)0); }
#undef is_cleared
-NCURSES_BOOL (is_cleared)(
+NCURSES_BOOL is_cleared(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idcok
-NCURSES_BOOL (is_idcok)(
+NCURSES_BOOL is_idcok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idlok
-NCURSES_BOOL (is_idlok)(
+NCURSES_BOOL is_idlok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_immedok
-NCURSES_BOOL (is_immedok)(
+NCURSES_BOOL is_immedok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_keypad
-NCURSES_BOOL (is_keypad)(
+NCURSES_BOOL is_keypad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_leaveok
-NCURSES_BOOL (is_leaveok)(
+NCURSES_BOOL is_leaveok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_nodelay
-NCURSES_BOOL (is_nodelay)(
+NCURSES_BOOL is_nodelay(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_notimeout
-NCURSES_BOOL (is_notimeout)(
+NCURSES_BOOL is_notimeout(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_pad
-NCURSES_BOOL (is_pad)(
+NCURSES_BOOL is_pad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_scrollok
-NCURSES_BOOL (is_scrollok)(
+NCURSES_BOOL is_scrollok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_subwin
-NCURSES_BOOL (is_subwin)(
+NCURSES_BOOL is_subwin(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_syncok
-NCURSES_BOOL (is_syncok)(
+NCURSES_BOOL is_syncok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef wgetdelay
-int (wgetdelay)(
+int wgetdelay(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetscrreg
-int (wgetscrreg)(
- const WINDOW *a1,
- int *a2,
+int wgetscrreg(
+ const WINDOW *a1,
+ int *a2,
int *z)
{ return(*(int *)0); }
#undef mouse_trafo
-NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
+NCURSES_BOOL mouse_trafo(
+ int *a1,
+ int *a2,
NCURSES_BOOL z)
{ return(*(NCURSES_BOOL *)0); }
@@ -1287,7 +1287,7 @@ int ESCDELAY;
#undef set_escdelay_sp
int set_escdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -1307,8 +1307,8 @@ int get_escdelay(void)
#undef _nc_wgetch
int _nc_wgetch(
- WINDOW *win,
- int *result,
+ WINDOW *win,
+ int *result,
int use_meta)
{ return(*(int *)0); }
@@ -1321,8 +1321,8 @@ int wgetch(
#undef wgetnstr
int wgetnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int maxlen)
{ return(*(int *)0); }
@@ -1330,8 +1330,8 @@ int wgetnstr(
#undef whline
int whline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -1339,7 +1339,7 @@ int whline(
#undef immedok
void immedok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
@@ -1347,8 +1347,8 @@ void immedok(
#undef winchnstr
int winchnstr(
- WINDOW *win,
- chtype *str,
+ WINDOW *win,
+ chtype *str,
int n)
{ return(*(int *)0); }
@@ -1362,14 +1362,14 @@ WINDOW *initscr(void)
#undef _nc_insert_ch
int _nc_insert_ch(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
#undef winsch
int winsch(
- WINDOW *win,
+ WINDOW *win,
chtype c)
{ return(*(int *)0); }
@@ -1377,7 +1377,7 @@ int winsch(
#undef winsdelln
int winsdelln(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -1385,8 +1385,8 @@ int winsdelln(
#undef winsnstr
int winsnstr(
- WINDOW *win,
- const char *s,
+ WINDOW *win,
+ const char *s,
int n)
{ return(*(int *)0); }
@@ -1394,8 +1394,8 @@ int winsnstr(
#undef winnstr
int winnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int n)
{ return(*(int *)0); }
@@ -1414,7 +1414,7 @@ NCURSES_BOOL isendwin(void)
#undef leaveok
int leaveok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -1422,7 +1422,7 @@ int leaveok(
#undef getmouse_sp
int getmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -1433,7 +1433,7 @@ int getmouse(
#undef ungetmouse_sp
int ungetmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -1444,27 +1444,27 @@ int ungetmouse(
#undef mousemask_sp
mmask_t mousemask_sp(
- SCREEN *sp,
- mmask_t newmask,
+ SCREEN *sp,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef mousemask
mmask_t mousemask(
- mmask_t newmask,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef wenclose
NCURSES_BOOL wenclose(
- const WINDOW *win,
- int y,
+ const WINDOW *win,
+ int y,
int x)
{ return(*(NCURSES_BOOL *)0); }
#undef mouseinterval_sp
int mouseinterval_sp(
- SCREEN *sp,
+ SCREEN *sp,
int maxclick)
{ return(*(int *)0); }
@@ -1489,9 +1489,9 @@ NCURSES_BOOL has_mouse(void)
#undef wmouse_trafo
NCURSES_BOOL wmouse_trafo(
- const WINDOW *win,
- int *pY,
- int *pX,
+ const WINDOW *win,
+ int *pY,
+ int *pX,
NCURSES_BOOL to_screen)
{ return(*(NCURSES_BOOL *)0); }
@@ -1499,8 +1499,8 @@ NCURSES_BOOL wmouse_trafo(
#undef wmove
int wmove(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
@@ -1508,14 +1508,14 @@ int wmove(
#undef _nc_msec_cost_sp
int _nc_msec_cost_sp(
- SCREEN *sp,
- const char *const cap,
+ SCREEN *sp,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
#undef _nc_msec_cost
int _nc_msec_cost(
- const char *const cap,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
@@ -1548,35 +1548,35 @@ void _nc_mvcur_wrap(void)
#undef _nc_mvcur_sp
int _nc_mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef _nc_mvcur
int _nc_mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur_sp
int mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur
int mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
@@ -1587,8 +1587,8 @@ int _nc_optimize_enable;
#undef mvwin
int mvwin(
- WINDOW *win,
- int by,
+ WINDOW *win,
+ int by,
int bx)
{ return(*(int *)0); }
@@ -1614,16 +1614,16 @@ void nofilter(void)
#undef newterm_sp
SCREEN *newterm_sp(
- SCREEN *sp,
- const char *name,
- FILE *ofp,
+ SCREEN *sp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
#undef newterm
SCREEN *newterm(
- const char *name,
- FILE *ofp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
@@ -1636,46 +1636,46 @@ int _nc_freewin(
#undef newwin_sp
WINDOW *newwin_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef newwin
WINDOW *newwin(
- int num_lines,
- int num_columns,
- int begy,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef derwin
WINDOW *derwin(
- WINDOW *orig,
- int num_lines,
- int num_columns,
- int begy,
+ WINDOW *orig,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef subwin
WINDOW *subwin(
- WINDOW *w,
- int l,
- int c,
- int y,
+ WINDOW *w,
+ int l,
+ int c,
+ int y,
int x)
{ return(*(WINDOW **)0); }
#undef _nc_makenew_sp
WINDOW *_nc_makenew_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
- int begx,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
+ int begx,
int flags)
{ return(*(WINDOW **)0); }
@@ -1718,26 +1718,26 @@ int nonl(void)
#undef overlay
int overlay(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef overwrite
int overwrite(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef copywin
int copywin(
- const WINDOW *src,
- WINDOW *dst,
- int sminrow,
- int smincol,
- int dminrow,
- int dmincol,
- int dmaxrow,
- int dmaxcol,
+ const WINDOW *src,
+ WINDOW *dst,
+ int sminrow,
+ int smincol,
+ int dminrow,
+ int dmincol,
+ int dmaxrow,
+ int dmaxcol,
int over)
{ return(*(int *)0); }
@@ -1745,51 +1745,51 @@ int copywin(
#undef newpad_sp
WINDOW *newpad_sp(
- SCREEN *sp,
- int l,
+ SCREEN *sp,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef newpad
WINDOW *newpad(
- int l,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef subpad
WINDOW *subpad(
- WINDOW *orig,
- int l,
- int c,
- int begy,
+ WINDOW *orig,
+ int l,
+ int c,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef prefresh
int prefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pnoutrefresh
int pnoutrefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pechochar
int pechochar(
- WINDOW *pad,
+ WINDOW *pad,
const chtype ch)
{ return(*(int *)0); }
@@ -1797,45 +1797,45 @@ int pechochar(
#undef printw
int printw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wprintw
int wprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvprintw
int mvprintw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwprintw
int mvwprintw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef vwprintw
int vwprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_printw
int vw_printw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
@@ -1843,8 +1843,8 @@ int vw_printw(
#undef wredrawln
int wredrawln(
- WINDOW *win,
- int beg,
+ WINDOW *win,
+ int beg,
int num)
{ return(*(int *)0); }
@@ -1864,16 +1864,16 @@ int wnoutrefresh(
#undef restartterm_sp
int restartterm_sp(
- SCREEN *sp,
- const char *termp,
- int filenum,
+ SCREEN *sp,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
#undef restartterm
int restartterm(
- const char *termp,
- int filenum,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
@@ -1881,45 +1881,45 @@ int restartterm(
#undef vwscanw
int vwscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_scanw
int vw_scanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef scanw
int scanw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wscanw
int wscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvscanw
int mvscanw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwscanw
int mvwscanw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
@@ -1927,7 +1927,7 @@ int mvwscanw(
#undef getwin_sp
WINDOW *getwin_sp(
- SCREEN *sp,
+ SCREEN *sp,
FILE *filep)
{ return(*(WINDOW **)0); }
@@ -1938,13 +1938,13 @@ WINDOW *getwin(
#undef putwin
int putwin(
- WINDOW *win,
+ WINDOW *win,
FILE *filep)
{ return(*(int *)0); }
#undef scr_restore_sp
int scr_restore_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -1960,7 +1960,7 @@ int scr_dump(
#undef scr_init_sp
int scr_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -1971,7 +1971,7 @@ int scr_init(
#undef scr_set_sp
int scr_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -1984,16 +1984,16 @@ int scr_set(
#undef _nc_scroll_window
void _nc_scroll_window(
- WINDOW *win,
- int const n,
- int const top,
- int const bottom,
+ WINDOW *win,
+ int const n,
+ int const top,
+ int const bottom,
chtype blank)
{ /* void */ }
#undef wscrl
int wscrl(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -2001,7 +2001,7 @@ int wscrl(
#undef scrollok
int scrollok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -2009,8 +2009,8 @@ int scrollok(
#undef wsetscrreg
int wsetscrreg(
- WINDOW *win,
- int top,
+ WINDOW *win,
+ int top,
int bottom)
{ return(*(int *)0); }
@@ -2028,54 +2028,54 @@ void delscreen(
#undef _nc_setupscreen_sp
int _nc_setupscreen_sp(
- SCREEN **spp,
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ SCREEN **spp,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_setupscreen
int _nc_setupscreen(
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_ripoffline_sp
int _nc_ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef _nc_ripoffline
int _nc_ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline_sp
int ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline
int ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
@@ -2083,13 +2083,13 @@ int ripoffline(
#undef _nc_format_slks
int _nc_format_slks(
- SCREEN *sp,
+ SCREEN *sp,
int cols)
{ return(*(int *)0); }
#undef _nc_slk_initialize
int _nc_slk_initialize(
- WINDOW *stwin,
+ WINDOW *stwin,
int cols)
{ return(*(int *)0); }
@@ -2106,16 +2106,16 @@ int slk_restore(void)
#undef slk_attr_set_sp
int slk_attr_set_sp(
- SCREEN *sp,
- const attr_t attr,
- short pair_arg,
+ SCREEN *sp,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
#undef slk_attr_set
int slk_attr_set(
- const attr_t attr,
- short pair_arg,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -2123,7 +2123,7 @@ int slk_attr_set(
#undef slk_attroff_sp
int slk_attroff_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2136,7 +2136,7 @@ int slk_attroff(
#undef slk_attron_sp
int slk_attron_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2149,7 +2149,7 @@ int slk_attron(
#undef slk_attrset_sp
int slk_attrset_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2184,7 +2184,7 @@ int slk_clear(void)
#undef slk_color_sp
int slk_color_sp(
- SCREEN *sp,
+ SCREEN *sp,
short pair_arg)
{ return(*(int *)0); }
@@ -2197,7 +2197,7 @@ int slk_color(
#undef slk_init_sp
int slk_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
int format)
{ return(*(int *)0); }
@@ -2210,7 +2210,7 @@ int slk_init(
#undef slk_label_sp
char *slk_label_sp(
- SCREEN *sp,
+ SCREEN *sp,
int n)
{ return(*(char **)0); }
@@ -2243,16 +2243,16 @@ int slk_refresh(void)
#undef slk_set_sp
int slk_set_sp(
- SCREEN *sp,
- int i,
- const char *astr,
+ SCREEN *sp,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
#undef slk_set
int slk_set(
- int i,
- const char *astr,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
@@ -2271,7 +2271,7 @@ int slk_touch(void)
#undef is_linetouched
NCURSES_BOOL is_linetouched(
- WINDOW *win,
+ WINDOW *win,
int line)
{ return(*(NCURSES_BOOL *)0); }
@@ -2282,9 +2282,9 @@ NCURSES_BOOL is_wintouched(
#undef wtouchln
int wtouchln(
- WINDOW *win,
- int y,
- int n,
+ WINDOW *win,
+ int y,
+ int n,
int changed)
{ return(*(int *)0); }
@@ -2292,7 +2292,7 @@ int wtouchln(
#undef _tracedump
void _tracedump(
- const char *name,
+ const char *name,
WINDOW *win)
{ /* void */ }
@@ -2300,19 +2300,19 @@ void _tracedump(
#undef _nc_trace_mmask_t
char *_nc_trace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(char **)0); }
#undef _nc_tracemouse
char *_nc_tracemouse(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT const *ep)
{ return(*(char **)0); }
#undef _nc_retrace_mmask_t
mmask_t _nc_retrace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(mmask_t *)0); }
@@ -2337,7 +2337,7 @@ void _nc_fifo_dump(
#undef ungetch_sp
int ungetch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -2350,20 +2350,20 @@ int ungetch(
#undef vidputs_sp
int vidputs_sp(
- SCREEN *sp,
- chtype newmode,
+ SCREEN *sp,
+ chtype newmode,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef vidputs
int vidputs(
- chtype newmode,
+ chtype newmode,
NCURSES_OUTC outc)
{ return(*(int *)0); }
#undef vidattr_sp
int vidattr_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype newmode)
{ return(*(int *)0); }
@@ -2385,8 +2385,8 @@ chtype termattrs(void)
#undef wvline
int wvline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -2394,8 +2394,8 @@ int wvline(
#undef wattr_off
int wattr_off(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -2403,8 +2403,8 @@ int wattr_off(
#undef wattr_on
int wattr_on(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -2424,14 +2424,14 @@ void _nc_synchook(
#undef mvderwin
int mvderwin(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
#undef syncok
int syncok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL bf)
{ return(*(int *)0); }
@@ -2470,14 +2470,14 @@ struct panelhook *_nc_panelhook(void)
#undef _nc_printf_string_sp
char *_nc_printf_string_sp(
- SCREEN *sp,
- const char *fmt,
+ SCREEN *sp,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
#undef _nc_printf_string
char *_nc_printf_string(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -2494,18 +2494,18 @@ int doupdate(void)
#undef _nc_scrolln_sp
int _nc_scrolln_sp(
- SCREEN *sp,
- int n,
- int top,
- int bot,
+ SCREEN *sp,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
#undef _nc_scrolln
int _nc_scrolln(
- int n,
- int top,
- int bot,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
@@ -2538,7 +2538,7 @@ void _nc_screen_wrap(void)
#undef _nc_do_xmc_glitch_sp
void _nc_do_xmc_glitch_sp(
- SCREEN *sp,
+ SCREEN *sp,
attr_t previous)
{ /* void */ }
@@ -2551,7 +2551,7 @@ void _nc_do_xmc_glitch(
#undef _nc_varargs
char *_nc_varargs(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -2569,7 +2569,7 @@ void _nc_freeall(void)
#undef _nc_free_and_exit_sp
void _nc_free_and_exit_sp(
- SCREEN *sp,
+ SCREEN *sp,
int code)
{ /* void */ }
@@ -2587,31 +2587,31 @@ void exit_curses(
#undef _nc_toggle_attr_on
void _nc_toggle_attr_on(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_toggle_attr_off
void _nc_toggle_attr_off(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_DelCharCost_sp
int _nc_DelCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_InsCharCost_sp
int _nc_InsCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_UpdateAttrs_sp
void _nc_UpdateAttrs_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype c)
{ /* void */ }
@@ -2634,7 +2634,7 @@ void _nc_UpdateAttrs(
#undef use_legacy_coding_sp
int use_legacy_coding_sp(
- SCREEN *sp,
+ SCREEN *sp,
int level)
{ return(*(int *)0); }
@@ -2656,14 +2656,14 @@ int use_default_colors(void)
#undef assume_default_colors_sp
int assume_default_colors_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef assume_default_colors
int assume_default_colors(
- int fg,
+ int fg,
int bg)
{ return(*(int *)0); }
@@ -2671,14 +2671,14 @@ int assume_default_colors(
#undef mcprint_sp
int mcprint_sp(
- SCREEN *sp,
- char *data,
+ SCREEN *sp,
+ char *data,
int len)
{ return(*(int *)0); }
#undef mcprint
int mcprint(
- char *data,
+ char *data,
int len)
{ return(*(int *)0); }
@@ -2692,40 +2692,40 @@ void _nc_new_pair(void)
#undef is_term_resized_sp
NCURSES_BOOL is_term_resized_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef is_term_resized
NCURSES_BOOL is_term_resized(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef resize_term_sp
int resize_term_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resize_term
int resize_term(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm_sp
int resizeterm_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm
int resizeterm(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -2740,8 +2740,8 @@ void _nc_trace_xnames(
#undef use_screen
int use_screen(
- SCREEN *screen,
- NCURSES_SCREEN_CB func,
+ SCREEN *screen,
+ NCURSES_SCREEN_CB func,
void *data)
{ return(*(int *)0); }
@@ -2749,8 +2749,8 @@ int use_screen(
#undef use_window
int use_window(
- WINDOW *win,
- NCURSES_WINDOW_CB func,
+ WINDOW *win,
+ NCURSES_WINDOW_CB func,
void *data)
{ return(*(int *)0); }
@@ -2758,8 +2758,8 @@ int use_window(
#undef wresize
int wresize(
- WINDOW *win,
- int ToLines,
+ WINDOW *win,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -2787,7 +2787,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -2805,12 +2805,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -2818,13 +2831,13 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
- TERMTYPE2 *from)
+ TERMTYPE *to,
+ TERMTYPE *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
@@ -2889,19 +2902,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -2909,14 +2922,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -2953,13 +2966,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -2967,7 +2980,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -2980,8 +2993,8 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
- TERMTYPE2 *tterm)
+ ENTRY *headp,
+ TERMTYPE *tterm)
{ /* void */ }
#undef _nc_free_entries
@@ -3001,9 +3014,9 @@ void exit_terminfo(
/* ./fallback.c */
#undef _nc_fallback
-const TERMTYPE2 *_nc_fallback(
+const TERMTYPE *_nc_fallback(
const char *name)
- { return(*(const TERMTYPE2 **)0); }
+ { return(*(const TERMTYPE **)0); }
/* ./tinfo/free_ttype.c */
@@ -3029,7 +3042,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -3063,8 +3076,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -3093,7 +3106,7 @@ TERMINAL *cur_term;
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -3104,7 +3117,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -3190,7 +3203,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -3214,7 +3227,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -3227,19 +3240,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -3250,37 +3263,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -3291,7 +3304,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -3302,7 +3315,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -3313,14 +3326,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -3382,14 +3395,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -3406,7 +3419,7 @@ int TABSIZE;
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -3422,13 +3435,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -3444,8 +3457,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -3456,13 +3469,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
- TERMTYPE2 *const tp)
+ const char *const tn,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -3481,9 +3494,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -3493,8 +3506,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -3507,20 +3520,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -3531,7 +3544,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -3542,14 +3555,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -3568,8 +3581,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -3577,7 +3590,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -3588,7 +3601,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -3599,7 +3612,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -3615,23 +3628,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -3648,7 +3674,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -3668,7 +3694,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -3679,7 +3705,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -3690,7 +3716,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -3701,35 +3727,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -3755,7 +3781,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -3811,8 +3837,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -3820,7 +3846,7 @@ char *_nc_fmt_funcptr(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -3841,13 +3867,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -3865,7 +3891,7 @@ chtype _nc_retrace_chtype(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -3876,7 +3902,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -3889,7 +3915,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -3900,7 +3926,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -3967,9 +3993,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -3982,8 +4008,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -4006,14 +4032,14 @@ const char *const strfnames[] = {0};
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -4021,67 +4047,67 @@ void _nc_set_buffer(
#undef _nc_init_termtype
void _nc_init_termtype(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
- TERMTYPE2 *ptr)
+ const char *const filename,
+ TERMTYPE *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
- TERMTYPE2 *const tp)
+ const char *const name,
+ char *const filename,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
/* ./tinfo/read_termcap.c */
#undef _nc_read_termcap_entry
int _nc_read_termcap_entry(
- const char *const tn,
- TERMTYPE2 *const tp)
+ const char *const tn,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
/* ./tinfo/strings.c */
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -4089,13 +4115,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -4110,21 +4136,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -4132,14 +4158,14 @@ int _nc_remove_string(
#undef _nc_trim_sgr0
char *_nc_trim_sgr0(
- TERMTYPE2 *tp)
+ TERMTYPE *tp)
{ return(*(char **)0); }
/* ./unctrl.c */
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -4152,7 +4178,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -4163,20 +4189,20 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const chtype *buf,
+ int bufnum,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const chtype *buf,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
@@ -4194,18 +4220,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -4213,15 +4239,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -4229,8 +4255,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -4238,28 +4264,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -4284,7 +4310,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -4295,7 +4321,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -4313,14 +4339,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -4333,14 +4359,14 @@ void _nc_set_writedir(
#undef _nc_write_entry
void _nc_write_entry(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
@@ -4352,14 +4378,14 @@ int _nc_tic_written(void)
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -4373,7 +4399,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -4386,14 +4412,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -4401,14 +4427,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/llib-lncursest b/ncurses/llib-lncursest
index 0fbde93..7c54b32 100644
--- a/ncurses/llib-lncursest
+++ b/ncurses/llib-lncursest
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019,2020,2021 Thomas E. Dickey *
* Copyright 2008-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -70,7 +70,7 @@ void _nc_hash_map(void)
#undef _nc_make_oldhash_sp
void _nc_make_oldhash_sp(
- SCREEN *sp,
+ SCREEN *sp,
int i)
{ /* void */ }
@@ -81,16 +81,16 @@ void _nc_make_oldhash(
#undef _nc_scroll_oldhash_sp
void _nc_scroll_oldhash_sp(
- SCREEN *sp,
- int n,
- int top,
+ SCREEN *sp,
+ int n,
+ int top,
int bot)
{ /* void */ }
#undef _nc_scroll_oldhash
void _nc_scroll_oldhash(
- int n,
- int top,
+ int n,
+ int top,
int bot)
{ /* void */ }
@@ -98,25 +98,25 @@ void _nc_scroll_oldhash(
#undef _nc_render
chtype _nc_render(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ return(*(chtype *)0); }
#undef _nc_waddch_nosync
int _nc_waddch_nosync(
- WINDOW *win,
+ WINDOW *win,
const chtype c)
{ return(*(int *)0); }
#undef waddch
int waddch(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
#undef wechochar
int wechochar(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
@@ -124,15 +124,15 @@ int wechochar(
#undef waddnstr
int waddnstr(
- WINDOW *win,
- const char *astr,
+ WINDOW *win,
+ const char *astr,
int n)
{ return(*(int *)0); }
#undef waddchnstr
int waddchnstr(
- WINDOW *win,
- const chtype *astr,
+ WINDOW *win,
+ const chtype *astr,
int n)
{ return(*(int *)0); }
@@ -151,13 +151,13 @@ int beep(void)
#undef wbkgdset
void wbkgdset(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ /* void */ }
#undef wbkgd
int wbkgd(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
@@ -165,14 +165,14 @@ int wbkgd(
#undef wborder
int wborder(
- WINDOW *win,
- chtype ls,
- chtype rs,
- chtype ts,
- chtype bs,
- chtype tl,
- chtype tr,
- chtype bl,
+ WINDOW *win,
+ chtype ls,
+ chtype rs,
+ chtype ts,
+ chtype bs,
+ chtype tl,
+ chtype tr,
+ chtype bl,
chtype br)
{ return(*(int *)0); }
@@ -180,10 +180,10 @@ int wborder(
#undef wchgat
int wchgat(
- WINDOW *win,
- int n,
- attr_t attr,
- short pair_arg,
+ WINDOW *win,
+ int n,
+ attr_t attr,
+ short pair_arg,
const void *opts)
{ return(*(int *)0); }
@@ -198,7 +198,7 @@ int wclear(
#undef clearok
int clearok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -246,62 +246,62 @@ int start_color(void)
#undef _nc_change_pair
void _nc_change_pair(
- SCREEN *sp,
+ SCREEN *sp,
int pair)
{ /* void */ }
#undef _nc_reserve_pairs
void _nc_reserve_pairs(
- SCREEN *sp,
+ SCREEN *sp,
int want)
{ /* void */ }
#undef _nc_init_pair
int _nc_init_pair(
- SCREEN *sp,
- int pair,
- int f,
+ SCREEN *sp,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_pair_sp
int init_pair_sp(
- SCREEN *sp,
- short pair,
- short f,
+ SCREEN *sp,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef init_pair
int init_pair(
- short pair,
- short f,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef _nc_init_color
int _nc_init_color(
- SCREEN *sp,
- int color,
- int r,
- int g,
+ SCREEN *sp,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef init_color_sp
int init_color_sp(
- SCREEN *sp,
- short color,
- short r,
- short g,
+ SCREEN *sp,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
#undef init_color
int init_color(
- short color,
- short r,
- short g,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
@@ -325,58 +325,58 @@ NCURSES_BOOL has_colors(void)
#undef color_content_sp
int color_content_sp(
- SCREEN *sp,
- short color,
- short *r,
- short *g,
+ SCREEN *sp,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef color_content
int color_content(
- short color,
- short *r,
- short *g,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef _nc_pair_content
int _nc_pair_content(
- SCREEN *sp,
- int pair,
- int *f,
+ SCREEN *sp,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
#undef pair_content_sp
int pair_content_sp(
- SCREEN *sp,
- short pair,
- short *f,
+ SCREEN *sp,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef pair_content
int pair_content(
- short pair,
- short *f,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef _nc_do_color_sp
void _nc_do_color_sp(
- SCREEN *sp,
- int old_pair,
- int pair,
- int reverse,
+ SCREEN *sp,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC_sp outc)
{ /* void */ }
#undef _nc_do_color
void _nc_do_color(
- int old_pair,
- int pair,
- int reverse,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC outc)
{ /* void */ }
@@ -384,8 +384,8 @@ void _nc_do_color(
#undef wcolor_set
int wcolor_set(
- WINDOW *win,
- short pair_arg,
+ WINDOW *win,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -455,831 +455,831 @@ int flash(void)
/* ./lib_gen.c */
#undef addch
-int (addch)(
+int addch(
const chtype z)
{ return(*(int *)0); }
#undef addchnstr
-int (addchnstr)(
- const chtype *a1,
+int addchnstr(
+ const chtype *a1,
int z)
{ return(*(int *)0); }
#undef addchstr
-int (addchstr)(
+int addchstr(
const chtype *z)
{ return(*(int *)0); }
#undef addnstr
-int (addnstr)(
- const char *a1,
+int addnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef addstr
-int (addstr)(
+int addstr(
const char *z)
{ return(*(int *)0); }
#undef attroff
-int (attroff)(
+int attroff(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attron
-int (attron)(
+int attron(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attrset
-int (attrset)(
+int attrset(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attr_get
-int (attr_get)(
- attr_t *a1,
- short *a2,
+int attr_get(
+ attr_t *a1,
+ short *a2,
void *z)
{ return(*(int *)0); }
#undef attr_off
-int (attr_off)(
- attr_t a1,
+int attr_off(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_on
-int (attr_on)(
- attr_t a1,
+int attr_on(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_set
-int (attr_set)(
- attr_t a1,
- short a2,
+int attr_set(
+ attr_t a1,
+ short a2,
void *z)
{ return(*(int *)0); }
#undef bkgd
-int (bkgd)(
+int bkgd(
chtype z)
{ return(*(int *)0); }
#undef bkgdset
-void (bkgdset)(
+void bkgdset(
chtype z)
{ /* void */ }
#undef border
-int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
- chtype a4,
- chtype a5,
- chtype a6,
- chtype a7,
+int border(
+ chtype a1,
+ chtype a2,
+ chtype a3,
+ chtype a4,
+ chtype a5,
+ chtype a6,
+ chtype a7,
chtype z)
{ return(*(int *)0); }
#undef box
-int (box)(
- WINDOW *a1,
- chtype a2,
+int box(
+ WINDOW *a1,
+ chtype a2,
chtype z)
{ return(*(int *)0); }
#undef chgat
-int (chgat)(
- int a1,
- attr_t a2,
- short a3,
+int chgat(
+ int a1,
+ attr_t a2,
+ short a3,
const void *z)
{ return(*(int *)0); }
#undef clear
-int (clear)(void)
+int clear(void)
{ return(*(int *)0); }
#undef clrtobot
-int (clrtobot)(void)
+int clrtobot(void)
{ return(*(int *)0); }
#undef clrtoeol
-int (clrtoeol)(void)
+int clrtoeol(void)
{ return(*(int *)0); }
#undef color_set
-int (color_set)(
- short a1,
+int color_set(
+ short a1,
void *z)
{ return(*(int *)0); }
#undef COLOR_PAIR
-int (COLOR_PAIR)(
+int COLOR_PAIR(
int z)
{ return(*(int *)0); }
#undef delch
-int (delch)(void)
+int delch(void)
{ return(*(int *)0); }
#undef deleteln
-int (deleteln)(void)
+int deleteln(void)
{ return(*(int *)0); }
#undef echochar
-int (echochar)(
+int echochar(
const chtype z)
{ return(*(int *)0); }
#undef erase
-int (erase)(void)
+int erase(void)
{ return(*(int *)0); }
#undef getbkgd
-chtype (getbkgd)(
+chtype getbkgd(
WINDOW *z)
{ return(*(chtype *)0); }
#undef getch
-int (getch)(void)
+int getch(void)
{ return(*(int *)0); }
#undef getnstr
-int (getnstr)(
- char *a1,
+int getnstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef getstr
-int (getstr)(
+int getstr(
char *z)
{ return(*(int *)0); }
#undef hline
-int (hline)(
- chtype a1,
+int hline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef inch
-chtype (inch)(void)
+chtype inch(void)
{ return(*(chtype *)0); }
#undef inchnstr
-int (inchnstr)(
- chtype *a1,
+int inchnstr(
+ chtype *a1,
int z)
{ return(*(int *)0); }
#undef inchstr
-int (inchstr)(
+int inchstr(
chtype *z)
{ return(*(int *)0); }
#undef innstr
-int (innstr)(
- char *a1,
+int innstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef insch
-int (insch)(
+int insch(
chtype z)
{ return(*(int *)0); }
#undef insdelln
-int (insdelln)(
+int insdelln(
int z)
{ return(*(int *)0); }
#undef insertln
-int (insertln)(void)
+int insertln(void)
{ return(*(int *)0); }
#undef insnstr
-int (insnstr)(
- const char *a1,
+int insnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef insstr
-int (insstr)(
+int insstr(
const char *z)
{ return(*(int *)0); }
#undef instr
-int (instr)(
+int instr(
char *z)
{ return(*(int *)0); }
#undef move
-int (move)(
- int a1,
+int move(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvaddch
-int (mvaddch)(
- int a1,
- int a2,
+int mvaddch(
+ int a1,
+ int a2,
const chtype z)
{ return(*(int *)0); }
#undef mvaddchnstr
-int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
+int mvaddchnstr(
+ int a1,
+ int a2,
+ const chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvaddchstr
-int (mvaddchstr)(
- int a1,
- int a2,
+int mvaddchstr(
+ int a1,
+ int a2,
const chtype *z)
{ return(*(int *)0); }
#undef mvaddnstr
-int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvaddnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvaddstr
-int (mvaddstr)(
- int a1,
- int a2,
+int mvaddstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvchgat
-int (mvchgat)(
- int a1,
- int a2,
- int a3,
- attr_t a4,
- short a5,
+int mvchgat(
+ int a1,
+ int a2,
+ int a3,
+ attr_t a4,
+ short a5,
const void *z)
{ return(*(int *)0); }
#undef mvdelch
-int (mvdelch)(
- int a1,
+int mvdelch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetch
-int (mvgetch)(
- int a1,
+int mvgetch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetnstr
-int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
+int mvgetnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvgetstr
-int (mvgetstr)(
- int a1,
- int a2,
+int mvgetstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvhline
-int (mvhline)(
- int a1,
- int a2,
- chtype a3,
+int mvhline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvinch
-chtype (mvinch)(
- int a1,
+chtype mvinch(
+ int a1,
int z)
{ return(*(chtype *)0); }
#undef mvinchnstr
-int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
+int mvinchnstr(
+ int a1,
+ int a2,
+ chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvinchstr
-int (mvinchstr)(
- int a1,
- int a2,
+int mvinchstr(
+ int a1,
+ int a2,
chtype *z)
{ return(*(int *)0); }
#undef mvinnstr
-int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
+int mvinnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsch
-int (mvinsch)(
- int a1,
- int a2,
+int mvinsch(
+ int a1,
+ int a2,
chtype z)
{ return(*(int *)0); }
#undef mvinsnstr
-int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvinsnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsstr
-int (mvinsstr)(
- int a1,
- int a2,
+int mvinsstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvinstr
-int (mvinstr)(
- int a1,
- int a2,
+int mvinstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvvline
-int (mvvline)(
- int a1,
- int a2,
- chtype a3,
+int mvvline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvwaddch
-int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype z)
{ return(*(int *)0); }
#undef mvwaddchnstr
-int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const chtype *a4,
+int mvwaddchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddchstr
-int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype *z)
{ return(*(int *)0); }
#undef mvwaddnstr
-int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwaddnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddstr
-int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwchgat
-int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
- int a4,
- attr_t a5,
- short a6,
+int mvwchgat(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ int a4,
+ attr_t a5,
+ short a6,
const void *z)
{ return(*(int *)0); }
#undef mvwdelch
-int (mvwdelch)(
- WINDOW *a1,
- int a2,
+int mvwdelch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetch
-int (mvwgetch)(
- WINDOW *a1,
- int a2,
+int mvwgetch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetnstr
-int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwgetnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwgetstr
-int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwgetstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwhline
-int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwhline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef mvwinch
-chtype (mvwinch)(
- WINDOW *a1,
- int a2,
+chtype mvwinch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(chtype *)0); }
#undef mvwinchnstr
-int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype *a4,
+int mvwinchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwinchstr
-int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype *z)
{ return(*(int *)0); }
#undef mvwinnstr
-int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwinnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsch
-int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsch(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype z)
{ return(*(int *)0); }
#undef mvwinsnstr
-int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwinsnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsstr
-int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwinstr
-int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwvline
-int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwvline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef PAIR_NUMBER
-int (PAIR_NUMBER)(
+int PAIR_NUMBER(
int z)
{ return(*(int *)0); }
#undef redrawwin
-int (redrawwin)(
+int redrawwin(
WINDOW *z)
{ return(*(int *)0); }
#undef refresh
-int (refresh)(void)
+int refresh(void)
{ return(*(int *)0); }
#undef scrl
-int (scrl)(
+int scrl(
int z)
{ return(*(int *)0); }
#undef scroll
-int (scroll)(
+int scroll(
WINDOW *z)
{ return(*(int *)0); }
#undef setscrreg
-int (setscrreg)(
- int a1,
+int setscrreg(
+ int a1,
int z)
{ return(*(int *)0); }
#undef standout
-int (standout)(void)
+int standout(void)
{ return(*(int *)0); }
#undef standend
-int (standend)(void)
+int standend(void)
{ return(*(int *)0); }
#undef timeout
-void (timeout)(
+void timeout(
int z)
{ /* void */ }
#undef touchline
-int (touchline)(
- WINDOW *a1,
- int a2,
+int touchline(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef touchwin
-int (touchwin)(
+int touchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef untouchwin
-int (untouchwin)(
+int untouchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef vline
-int (vline)(
- chtype a1,
+int vline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef waddchstr
-int (waddchstr)(
- WINDOW *a1,
+int waddchstr(
+ WINDOW *a1,
const chtype *z)
{ return(*(int *)0); }
#undef waddstr
-int (waddstr)(
- WINDOW *a1,
+int waddstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef wattron
-int (wattron)(
- WINDOW *a1,
+int wattron(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattroff
-int (wattroff)(
- WINDOW *a1,
+int wattroff(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattrset
-int (wattrset)(
- WINDOW *a1,
+int wattrset(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattr_get
-int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
+int wattr_get(
+ WINDOW *a1,
+ attr_t *a2,
+ short *a3,
void *z)
{ return(*(int *)0); }
#undef wattr_set
-int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
+int wattr_set(
+ WINDOW *a1,
+ attr_t a2,
+ short a3,
void *z)
{ return(*(int *)0); }
#undef wdeleteln
-int (wdeleteln)(
+int wdeleteln(
WINDOW *z)
{ return(*(int *)0); }
#undef wgetstr
-int (wgetstr)(
- WINDOW *a1,
+int wgetstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef winchstr
-int (winchstr)(
- WINDOW *a1,
+int winchstr(
+ WINDOW *a1,
chtype *z)
{ return(*(int *)0); }
#undef winsertln
-int (winsertln)(
+int winsertln(
WINDOW *z)
{ return(*(int *)0); }
#undef winsstr
-int (winsstr)(
- WINDOW *a1,
+int winsstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef winstr
-int (winstr)(
- WINDOW *a1,
+int winstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef wstandout
-int (wstandout)(
+int wstandout(
WINDOW *z)
{ return(*(int *)0); }
#undef wstandend
-int (wstandend)(
+int wstandend(
WINDOW *z)
{ return(*(int *)0); }
#undef getattrs
-int (getattrs)(
+int getattrs(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcurx
-int (getcurx)(
+int getcurx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcury
-int (getcury)(
+int getcury(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegx
-int (getbegx)(
+int getbegx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegy
-int (getbegy)(
+int getbegy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxx
-int (getmaxx)(
+int getmaxx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxy
-int (getmaxy)(
+int getmaxy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getparx
-int (getparx)(
+int getparx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getpary
-int (getpary)(
+int getpary(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetparent
-WINDOW *(wgetparent)(
+WINDOW *wgetparent(
const WINDOW *z)
{ return(*(WINDOW **)0); }
#undef is_cleared
-NCURSES_BOOL (is_cleared)(
+NCURSES_BOOL is_cleared(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idcok
-NCURSES_BOOL (is_idcok)(
+NCURSES_BOOL is_idcok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idlok
-NCURSES_BOOL (is_idlok)(
+NCURSES_BOOL is_idlok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_immedok
-NCURSES_BOOL (is_immedok)(
+NCURSES_BOOL is_immedok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_keypad
-NCURSES_BOOL (is_keypad)(
+NCURSES_BOOL is_keypad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_leaveok
-NCURSES_BOOL (is_leaveok)(
+NCURSES_BOOL is_leaveok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_nodelay
-NCURSES_BOOL (is_nodelay)(
+NCURSES_BOOL is_nodelay(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_notimeout
-NCURSES_BOOL (is_notimeout)(
+NCURSES_BOOL is_notimeout(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_pad
-NCURSES_BOOL (is_pad)(
+NCURSES_BOOL is_pad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_scrollok
-NCURSES_BOOL (is_scrollok)(
+NCURSES_BOOL is_scrollok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_subwin
-NCURSES_BOOL (is_subwin)(
+NCURSES_BOOL is_subwin(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_syncok
-NCURSES_BOOL (is_syncok)(
+NCURSES_BOOL is_syncok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef wgetdelay
-int (wgetdelay)(
+int wgetdelay(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetscrreg
-int (wgetscrreg)(
- const WINDOW *a1,
- int *a2,
+int wgetscrreg(
+ const WINDOW *a1,
+ int *a2,
int *z)
{ return(*(int *)0); }
#undef mouse_trafo
-NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
+NCURSES_BOOL mouse_trafo(
+ int *a1,
+ int *a2,
NCURSES_BOOL z)
{ return(*(NCURSES_BOOL *)0); }
@@ -1296,7 +1296,7 @@ int *_nc_ptr_Escdelay(
#undef set_escdelay_sp
int set_escdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -1316,8 +1316,8 @@ int get_escdelay(void)
#undef _nc_wgetch
int _nc_wgetch(
- WINDOW *win,
- int *result,
+ WINDOW *win,
+ int *result,
int use_meta)
{ return(*(int *)0); }
@@ -1330,8 +1330,8 @@ int wgetch(
#undef wgetnstr
int wgetnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int maxlen)
{ return(*(int *)0); }
@@ -1339,8 +1339,8 @@ int wgetnstr(
#undef whline
int whline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -1348,7 +1348,7 @@ int whline(
#undef immedok
void immedok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
@@ -1356,8 +1356,8 @@ void immedok(
#undef winchnstr
int winchnstr(
- WINDOW *win,
- chtype *str,
+ WINDOW *win,
+ chtype *str,
int n)
{ return(*(int *)0); }
@@ -1371,14 +1371,14 @@ WINDOW *initscr(void)
#undef _nc_insert_ch
int _nc_insert_ch(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
#undef winsch
int winsch(
- WINDOW *win,
+ WINDOW *win,
chtype c)
{ return(*(int *)0); }
@@ -1386,7 +1386,7 @@ int winsch(
#undef winsdelln
int winsdelln(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -1394,8 +1394,8 @@ int winsdelln(
#undef winsnstr
int winsnstr(
- WINDOW *win,
- const char *s,
+ WINDOW *win,
+ const char *s,
int n)
{ return(*(int *)0); }
@@ -1403,8 +1403,8 @@ int winsnstr(
#undef winnstr
int winnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int n)
{ return(*(int *)0); }
@@ -1423,7 +1423,7 @@ NCURSES_BOOL isendwin(void)
#undef leaveok
int leaveok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -1431,7 +1431,7 @@ int leaveok(
#undef getmouse_sp
int getmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -1442,7 +1442,7 @@ int getmouse(
#undef ungetmouse_sp
int ungetmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -1453,27 +1453,27 @@ int ungetmouse(
#undef mousemask_sp
mmask_t mousemask_sp(
- SCREEN *sp,
- mmask_t newmask,
+ SCREEN *sp,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef mousemask
mmask_t mousemask(
- mmask_t newmask,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef wenclose
NCURSES_BOOL wenclose(
- const WINDOW *win,
- int y,
+ const WINDOW *win,
+ int y,
int x)
{ return(*(NCURSES_BOOL *)0); }
#undef mouseinterval_sp
int mouseinterval_sp(
- SCREEN *sp,
+ SCREEN *sp,
int maxclick)
{ return(*(int *)0); }
@@ -1498,9 +1498,9 @@ NCURSES_BOOL has_mouse(void)
#undef wmouse_trafo
NCURSES_BOOL wmouse_trafo(
- const WINDOW *win,
- int *pY,
- int *pX,
+ const WINDOW *win,
+ int *pY,
+ int *pX,
NCURSES_BOOL to_screen)
{ return(*(NCURSES_BOOL *)0); }
@@ -1508,8 +1508,8 @@ NCURSES_BOOL wmouse_trafo(
#undef wmove
int wmove(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
@@ -1517,14 +1517,14 @@ int wmove(
#undef _nc_msec_cost_sp
int _nc_msec_cost_sp(
- SCREEN *sp,
- const char *const cap,
+ SCREEN *sp,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
#undef _nc_msec_cost
int _nc_msec_cost(
- const char *const cap,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
@@ -1557,35 +1557,35 @@ void _nc_mvcur_wrap(void)
#undef _nc_mvcur_sp
int _nc_mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef _nc_mvcur
int _nc_mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur_sp
int mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur
int mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
@@ -1596,8 +1596,8 @@ int _nc_optimize_enable;
#undef mvwin
int mvwin(
- WINDOW *win,
- int by,
+ WINDOW *win,
+ int by,
int bx)
{ return(*(int *)0); }
@@ -1623,16 +1623,16 @@ void nofilter(void)
#undef newterm_sp
SCREEN *newterm_sp(
- SCREEN *sp,
- const char *name,
- FILE *ofp,
+ SCREEN *sp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
#undef newterm
SCREEN *newterm(
- const char *name,
- FILE *ofp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
@@ -1645,46 +1645,46 @@ int _nc_freewin(
#undef newwin_sp
WINDOW *newwin_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef newwin
WINDOW *newwin(
- int num_lines,
- int num_columns,
- int begy,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef derwin
WINDOW *derwin(
- WINDOW *orig,
- int num_lines,
- int num_columns,
- int begy,
+ WINDOW *orig,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef subwin
WINDOW *subwin(
- WINDOW *w,
- int l,
- int c,
- int y,
+ WINDOW *w,
+ int l,
+ int c,
+ int y,
int x)
{ return(*(WINDOW **)0); }
#undef _nc_makenew_sp
WINDOW *_nc_makenew_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
- int begx,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
+ int begx,
int flags)
{ return(*(WINDOW **)0); }
@@ -1727,26 +1727,26 @@ int nonl(void)
#undef overlay
int overlay(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef overwrite
int overwrite(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef copywin
int copywin(
- const WINDOW *src,
- WINDOW *dst,
- int sminrow,
- int smincol,
- int dminrow,
- int dmincol,
- int dmaxrow,
- int dmaxcol,
+ const WINDOW *src,
+ WINDOW *dst,
+ int sminrow,
+ int smincol,
+ int dminrow,
+ int dmincol,
+ int dmaxrow,
+ int dmaxcol,
int over)
{ return(*(int *)0); }
@@ -1754,51 +1754,51 @@ int copywin(
#undef newpad_sp
WINDOW *newpad_sp(
- SCREEN *sp,
- int l,
+ SCREEN *sp,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef newpad
WINDOW *newpad(
- int l,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef subpad
WINDOW *subpad(
- WINDOW *orig,
- int l,
- int c,
- int begy,
+ WINDOW *orig,
+ int l,
+ int c,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef prefresh
int prefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pnoutrefresh
int pnoutrefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pechochar
int pechochar(
- WINDOW *pad,
+ WINDOW *pad,
const chtype ch)
{ return(*(int *)0); }
@@ -1806,45 +1806,45 @@ int pechochar(
#undef printw
int printw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wprintw
int wprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvprintw
int mvprintw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwprintw
int mvwprintw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef vwprintw
int vwprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_printw
int vw_printw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
@@ -1852,8 +1852,8 @@ int vw_printw(
#undef wredrawln
int wredrawln(
- WINDOW *win,
- int beg,
+ WINDOW *win,
+ int beg,
int num)
{ return(*(int *)0); }
@@ -1873,16 +1873,16 @@ int wnoutrefresh(
#undef restartterm_sp
int restartterm_sp(
- SCREEN *sp,
- const char *termp,
- int filenum,
+ SCREEN *sp,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
#undef restartterm
int restartterm(
- const char *termp,
- int filenum,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
@@ -1890,45 +1890,45 @@ int restartterm(
#undef vwscanw
int vwscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_scanw
int vw_scanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef scanw
int scanw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wscanw
int wscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvscanw
int mvscanw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwscanw
int mvwscanw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
@@ -1936,7 +1936,7 @@ int mvwscanw(
#undef getwin_sp
WINDOW *getwin_sp(
- SCREEN *sp,
+ SCREEN *sp,
FILE *filep)
{ return(*(WINDOW **)0); }
@@ -1947,13 +1947,13 @@ WINDOW *getwin(
#undef putwin
int putwin(
- WINDOW *win,
+ WINDOW *win,
FILE *filep)
{ return(*(int *)0); }
#undef scr_restore_sp
int scr_restore_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -1969,7 +1969,7 @@ int scr_dump(
#undef scr_init_sp
int scr_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -1980,7 +1980,7 @@ int scr_init(
#undef scr_set_sp
int scr_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -1993,16 +1993,16 @@ int scr_set(
#undef _nc_scroll_window
void _nc_scroll_window(
- WINDOW *win,
- int const n,
- int const top,
- int const bottom,
+ WINDOW *win,
+ int const n,
+ int const top,
+ int const bottom,
chtype blank)
{ /* void */ }
#undef wscrl
int wscrl(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -2010,7 +2010,7 @@ int wscrl(
#undef scrollok
int scrollok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -2018,8 +2018,8 @@ int scrollok(
#undef wsetscrreg
int wsetscrreg(
- WINDOW *win,
- int top,
+ WINDOW *win,
+ int top,
int bottom)
{ return(*(int *)0); }
@@ -2037,54 +2037,54 @@ void delscreen(
#undef _nc_setupscreen_sp
int _nc_setupscreen_sp(
- SCREEN **spp,
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ SCREEN **spp,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_setupscreen
int _nc_setupscreen(
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_ripoffline_sp
int _nc_ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef _nc_ripoffline
int _nc_ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline_sp
int ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline
int ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
@@ -2092,13 +2092,13 @@ int ripoffline(
#undef _nc_format_slks
int _nc_format_slks(
- SCREEN *sp,
+ SCREEN *sp,
int cols)
{ return(*(int *)0); }
#undef _nc_slk_initialize
int _nc_slk_initialize(
- WINDOW *stwin,
+ WINDOW *stwin,
int cols)
{ return(*(int *)0); }
@@ -2115,16 +2115,16 @@ int slk_restore(void)
#undef slk_attr_set_sp
int slk_attr_set_sp(
- SCREEN *sp,
- const attr_t attr,
- short pair_arg,
+ SCREEN *sp,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
#undef slk_attr_set
int slk_attr_set(
- const attr_t attr,
- short pair_arg,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -2132,7 +2132,7 @@ int slk_attr_set(
#undef slk_attroff_sp
int slk_attroff_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2145,7 +2145,7 @@ int slk_attroff(
#undef slk_attron_sp
int slk_attron_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2158,7 +2158,7 @@ int slk_attron(
#undef slk_attrset_sp
int slk_attrset_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2193,7 +2193,7 @@ int slk_clear(void)
#undef slk_color_sp
int slk_color_sp(
- SCREEN *sp,
+ SCREEN *sp,
short pair_arg)
{ return(*(int *)0); }
@@ -2206,7 +2206,7 @@ int slk_color(
#undef slk_init_sp
int slk_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
int format)
{ return(*(int *)0); }
@@ -2219,7 +2219,7 @@ int slk_init(
#undef slk_label_sp
char *slk_label_sp(
- SCREEN *sp,
+ SCREEN *sp,
int n)
{ return(*(char **)0); }
@@ -2252,16 +2252,16 @@ int slk_refresh(void)
#undef slk_set_sp
int slk_set_sp(
- SCREEN *sp,
- int i,
- const char *astr,
+ SCREEN *sp,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
#undef slk_set
int slk_set(
- int i,
- const char *astr,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
@@ -2280,7 +2280,7 @@ int slk_touch(void)
#undef is_linetouched
NCURSES_BOOL is_linetouched(
- WINDOW *win,
+ WINDOW *win,
int line)
{ return(*(NCURSES_BOOL *)0); }
@@ -2291,9 +2291,9 @@ NCURSES_BOOL is_wintouched(
#undef wtouchln
int wtouchln(
- WINDOW *win,
- int y,
- int n,
+ WINDOW *win,
+ int y,
+ int n,
int changed)
{ return(*(int *)0); }
@@ -2301,7 +2301,7 @@ int wtouchln(
#undef _tracedump
void _tracedump(
- const char *name,
+ const char *name,
WINDOW *win)
{ /* void */ }
@@ -2309,19 +2309,19 @@ void _tracedump(
#undef _nc_trace_mmask_t
char *_nc_trace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(char **)0); }
#undef _nc_tracemouse
char *_nc_tracemouse(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT const *ep)
{ return(*(char **)0); }
#undef _nc_retrace_mmask_t
mmask_t _nc_retrace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(mmask_t *)0); }
@@ -2346,7 +2346,7 @@ void _nc_fifo_dump(
#undef ungetch_sp
int ungetch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -2359,20 +2359,20 @@ int ungetch(
#undef vidputs_sp
int vidputs_sp(
- SCREEN *sp,
- chtype newmode,
+ SCREEN *sp,
+ chtype newmode,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef vidputs
int vidputs(
- chtype newmode,
+ chtype newmode,
NCURSES_OUTC outc)
{ return(*(int *)0); }
#undef vidattr_sp
int vidattr_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype newmode)
{ return(*(int *)0); }
@@ -2394,8 +2394,8 @@ chtype termattrs(void)
#undef wvline
int wvline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -2403,8 +2403,8 @@ int wvline(
#undef wattr_off
int wattr_off(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -2412,8 +2412,8 @@ int wattr_off(
#undef wattr_on
int wattr_on(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -2433,14 +2433,14 @@ void _nc_synchook(
#undef mvderwin
int mvderwin(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
#undef syncok
int syncok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL bf)
{ return(*(int *)0); }
@@ -2479,14 +2479,14 @@ struct panelhook *_nc_panelhook(void)
#undef _nc_printf_string_sp
char *_nc_printf_string_sp(
- SCREEN *sp,
- const char *fmt,
+ SCREEN *sp,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
#undef _nc_printf_string
char *_nc_printf_string(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -2503,18 +2503,18 @@ int doupdate(void)
#undef _nc_scrolln_sp
int _nc_scrolln_sp(
- SCREEN *sp,
- int n,
- int top,
- int bot,
+ SCREEN *sp,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
#undef _nc_scrolln
int _nc_scrolln(
- int n,
- int top,
- int bot,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
@@ -2547,7 +2547,7 @@ void _nc_screen_wrap(void)
#undef _nc_do_xmc_glitch_sp
void _nc_do_xmc_glitch_sp(
- SCREEN *sp,
+ SCREEN *sp,
attr_t previous)
{ /* void */ }
@@ -2560,7 +2560,7 @@ void _nc_do_xmc_glitch(
#undef _nc_varargs
char *_nc_varargs(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -2578,7 +2578,7 @@ void _nc_freeall(void)
#undef _nc_free_and_exit_sp
void _nc_free_and_exit_sp(
- SCREEN *sp,
+ SCREEN *sp,
int code)
{ /* void */ }
@@ -2596,31 +2596,31 @@ void exit_curses(
#undef _nc_toggle_attr_on
void _nc_toggle_attr_on(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_toggle_attr_off
void _nc_toggle_attr_off(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_DelCharCost_sp
int _nc_DelCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_InsCharCost_sp
int _nc_InsCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_UpdateAttrs_sp
void _nc_UpdateAttrs_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype c)
{ /* void */ }
@@ -2643,7 +2643,7 @@ void _nc_UpdateAttrs(
#undef use_legacy_coding_sp
int use_legacy_coding_sp(
- SCREEN *sp,
+ SCREEN *sp,
int level)
{ return(*(int *)0); }
@@ -2665,14 +2665,14 @@ int use_default_colors(void)
#undef assume_default_colors_sp
int assume_default_colors_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef assume_default_colors
int assume_default_colors(
- int fg,
+ int fg,
int bg)
{ return(*(int *)0); }
@@ -2680,14 +2680,14 @@ int assume_default_colors(
#undef mcprint_sp
int mcprint_sp(
- SCREEN *sp,
- char *data,
+ SCREEN *sp,
+ char *data,
int len)
{ return(*(int *)0); }
#undef mcprint
int mcprint(
- char *data,
+ char *data,
int len)
{ return(*(int *)0); }
@@ -2701,40 +2701,40 @@ void _nc_new_pair(void)
#undef is_term_resized_sp
NCURSES_BOOL is_term_resized_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef is_term_resized
NCURSES_BOOL is_term_resized(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef resize_term_sp
int resize_term_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resize_term
int resize_term(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm_sp
int resizeterm_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm
int resizeterm(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -2749,8 +2749,8 @@ void _nc_trace_xnames(
#undef use_screen
int use_screen(
- SCREEN *screen,
- NCURSES_SCREEN_CB func,
+ SCREEN *screen,
+ NCURSES_SCREEN_CB func,
void *data)
{ return(*(int *)0); }
@@ -2758,8 +2758,8 @@ int use_screen(
#undef use_window
int use_window(
- WINDOW *win,
- NCURSES_WINDOW_CB func,
+ WINDOW *win,
+ NCURSES_WINDOW_CB func,
void *data)
{ return(*(int *)0); }
@@ -2767,8 +2767,8 @@ int use_window(
#undef wresize
int wresize(
- WINDOW *win,
- int ToLines,
+ WINDOW *win,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -2796,7 +2796,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -2814,12 +2814,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -2827,13 +2840,13 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
- TERMTYPE2 *from)
+ TERMTYPE *to,
+ TERMTYPE *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
@@ -2903,19 +2916,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -2923,14 +2936,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -2967,13 +2980,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -2981,7 +2994,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -2994,8 +3007,8 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
- TERMTYPE2 *tterm)
+ ENTRY *headp,
+ TERMTYPE *tterm)
{ /* void */ }
#undef _nc_free_entries
@@ -3015,9 +3028,9 @@ void exit_terminfo(
/* ./fallback.c */
#undef _nc_fallback
-const TERMTYPE2 *_nc_fallback(
+const TERMTYPE *_nc_fallback(
const char *name)
- { return(*(const TERMTYPE2 **)0); }
+ { return(*(const TERMTYPE **)0); }
/* ./tinfo/free_ttype.c */
@@ -3043,7 +3056,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -3078,8 +3091,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -3118,7 +3131,7 @@ TERMINAL *_nc_cur_term(void)
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -3129,7 +3142,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -3245,7 +3258,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -3269,7 +3282,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -3282,19 +3295,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -3305,37 +3318,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -3346,7 +3359,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -3357,7 +3370,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -3368,14 +3381,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -3437,14 +3450,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -3483,7 +3496,7 @@ int _nc_TABSIZE(void)
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -3499,13 +3512,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -3521,8 +3534,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -3533,13 +3546,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
- TERMTYPE2 *const tp)
+ const char *const tn,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -3558,9 +3571,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -3578,8 +3591,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -3592,20 +3605,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -3616,7 +3629,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -3627,14 +3640,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -3653,8 +3666,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -3662,7 +3675,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -3673,7 +3686,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -3684,7 +3697,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -3700,23 +3713,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -3733,7 +3759,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -3753,7 +3779,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -3764,7 +3790,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -3775,7 +3801,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -3786,35 +3812,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -3854,7 +3880,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -3910,8 +3936,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -3922,7 +3948,7 @@ int _nc_use_tracef(
#undef _nc_locked_tracef
void _nc_locked_tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -3930,7 +3956,7 @@ void _nc_locked_tracef(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -3951,13 +3977,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -3975,7 +4001,7 @@ chtype _nc_retrace_chtype(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -3986,7 +4012,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -3999,7 +4025,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -4010,7 +4036,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -4077,9 +4103,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -4092,8 +4118,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -4127,14 +4153,14 @@ const char *const *_nc_strfnames(void)
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -4142,67 +4168,67 @@ void _nc_set_buffer(
#undef _nc_init_termtype
void _nc_init_termtype(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
- TERMTYPE2 *ptr)
+ const char *const filename,
+ TERMTYPE *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
- TERMTYPE2 *const tp)
+ const char *const name,
+ char *const filename,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
/* ./tinfo/read_termcap.c */
#undef _nc_read_termcap_entry
int _nc_read_termcap_entry(
- const char *const tn,
- TERMTYPE2 *const tp)
+ const char *const tn,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
/* ./tinfo/strings.c */
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -4210,13 +4236,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -4231,21 +4257,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -4253,14 +4279,14 @@ int _nc_remove_string(
#undef _nc_trim_sgr0
char *_nc_trim_sgr0(
- TERMTYPE2 *tp)
+ TERMTYPE *tp)
{ return(*(char **)0); }
/* ./unctrl.c */
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -4273,7 +4299,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -4284,20 +4310,20 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const chtype *buf,
+ int bufnum,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const chtype *buf,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
@@ -4315,18 +4341,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -4334,15 +4360,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -4350,8 +4376,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -4359,28 +4385,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -4405,7 +4431,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -4416,7 +4442,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -4434,14 +4460,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -4454,14 +4480,14 @@ void _nc_set_writedir(
#undef _nc_write_entry
void _nc_write_entry(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
@@ -4473,14 +4499,14 @@ int _nc_tic_written(void)
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -4494,7 +4520,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -4507,14 +4533,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -4522,14 +4548,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/llib-lncursestw b/ncurses/llib-lncursestw
index 0463139..d553e5c 100644
--- a/ncurses/llib-lncursestw
+++ b/ncurses/llib-lncursestw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2009-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -70,7 +70,7 @@ void _nc_hash_map(void)
#undef _nc_make_oldhash_sp
void _nc_make_oldhash_sp(
- SCREEN *sp,
+ SCREEN *sp,
int i)
{ /* void */ }
@@ -81,16 +81,16 @@ void _nc_make_oldhash(
#undef _nc_scroll_oldhash_sp
void _nc_scroll_oldhash_sp(
- SCREEN *sp,
- int n,
- int top,
+ SCREEN *sp,
+ int n,
+ int top,
int bot)
{ /* void */ }
#undef _nc_scroll_oldhash
void _nc_scroll_oldhash(
- int n,
- int top,
+ int n,
+ int top,
int bot)
{ /* void */ }
@@ -98,31 +98,31 @@ void _nc_scroll_oldhash(
#undef _nc_render
cchar_t _nc_render(
- WINDOW *win,
+ WINDOW *win,
cchar_t ch)
{ return(*(cchar_t *)0); }
#undef _nc_build_wch
int _nc_build_wch(
- WINDOW *win,
+ WINDOW *win,
cchar_t *ch)
{ return(*(int *)0); }
#undef _nc_waddch_nosync
int _nc_waddch_nosync(
- WINDOW *win,
+ WINDOW *win,
const cchar_t c)
{ return(*(int *)0); }
#undef waddch
int waddch(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
#undef wechochar
int wechochar(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
@@ -130,15 +130,15 @@ int wechochar(
#undef waddnstr
int waddnstr(
- WINDOW *win,
- const char *astr,
+ WINDOW *win,
+ const char *astr,
int n)
{ return(*(int *)0); }
#undef waddchnstr
int waddchnstr(
- WINDOW *win,
- const chtype *astr,
+ WINDOW *win,
+ const chtype *astr,
int n)
{ return(*(int *)0); }
@@ -149,15 +149,15 @@ int _nc_wchstrlen(
#undef wadd_wchnstr
int wadd_wchnstr(
- WINDOW *win,
- const cchar_t *astr,
+ WINDOW *win,
+ const cchar_t *astr,
int n)
{ return(*(int *)0); }
#undef waddnwstr
int waddnwstr(
- WINDOW *win,
- const wchar_t *str,
+ WINDOW *win,
+ const wchar_t *str,
int n)
{ return(*(int *)0); }
@@ -176,25 +176,25 @@ int beep(void)
#undef wbkgrndset
void wbkgrndset(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *ch)
{ /* void */ }
#undef wbkgdset
void wbkgdset(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ /* void */ }
#undef wbkgrnd
int wbkgrnd(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *ch)
{ return(*(int *)0); }
#undef wbkgd
int wbkgd(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
@@ -202,14 +202,14 @@ int wbkgd(
#undef wborder
int wborder(
- WINDOW *win,
- chtype ls,
- chtype rs,
- chtype ts,
- chtype bs,
- chtype tl,
- chtype tr,
- chtype bl,
+ WINDOW *win,
+ chtype ls,
+ chtype rs,
+ chtype ts,
+ chtype bs,
+ chtype tl,
+ chtype tr,
+ chtype bl,
chtype br)
{ return(*(int *)0); }
@@ -217,10 +217,10 @@ int wborder(
#undef wchgat
int wchgat(
- WINDOW *win,
- int n,
- attr_t attr,
- short pair_arg,
+ WINDOW *win,
+ int n,
+ attr_t attr,
+ short pair_arg,
const void *opts)
{ return(*(int *)0); }
@@ -235,7 +235,7 @@ int wclear(
#undef clearok
int clearok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -283,62 +283,62 @@ int start_color(void)
#undef _nc_change_pair
void _nc_change_pair(
- SCREEN *sp,
+ SCREEN *sp,
int pair)
{ /* void */ }
#undef _nc_reserve_pairs
void _nc_reserve_pairs(
- SCREEN *sp,
+ SCREEN *sp,
int want)
{ /* void */ }
#undef _nc_init_pair
int _nc_init_pair(
- SCREEN *sp,
- int pair,
- int f,
+ SCREEN *sp,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_pair_sp
int init_pair_sp(
- SCREEN *sp,
- short pair,
- short f,
+ SCREEN *sp,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef init_pair
int init_pair(
- short pair,
- short f,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef _nc_init_color
int _nc_init_color(
- SCREEN *sp,
- int color,
- int r,
- int g,
+ SCREEN *sp,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef init_color_sp
int init_color_sp(
- SCREEN *sp,
- short color,
- short r,
- short g,
+ SCREEN *sp,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
#undef init_color
int init_color(
- short color,
- short r,
- short g,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
@@ -362,92 +362,92 @@ NCURSES_BOOL has_colors(void)
#undef color_content_sp
int color_content_sp(
- SCREEN *sp,
- short color,
- short *r,
- short *g,
+ SCREEN *sp,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef color_content
int color_content(
- short color,
- short *r,
- short *g,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef _nc_pair_content
int _nc_pair_content(
- SCREEN *sp,
- int pair,
- int *f,
+ SCREEN *sp,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
#undef pair_content_sp
int pair_content_sp(
- SCREEN *sp,
- short pair,
- short *f,
+ SCREEN *sp,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef pair_content
int pair_content(
- short pair,
- short *f,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef _nc_do_color_sp
void _nc_do_color_sp(
- SCREEN *sp,
- int old_pair,
- int pair,
- int reverse,
+ SCREEN *sp,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC_sp outc)
{ /* void */ }
#undef _nc_do_color
void _nc_do_color(
- int old_pair,
- int pair,
- int reverse,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC outc)
{ /* void */ }
#undef init_extended_pair_sp
int init_extended_pair_sp(
- SCREEN *sp,
- int pair,
- int f,
+ SCREEN *sp,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_extended_color_sp
int init_extended_color_sp(
- SCREEN *sp,
- int color,
- int r,
- int g,
+ SCREEN *sp,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef extended_color_content_sp
int extended_color_content_sp(
- SCREEN *sp,
- int color,
- int *r,
- int *g,
+ SCREEN *sp,
+ int color,
+ int *r,
+ int *g,
int *b)
{ return(*(int *)0); }
#undef extended_pair_content_sp
int extended_pair_content_sp(
- SCREEN *sp,
- int pair,
- int *f,
+ SCREEN *sp,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
@@ -458,31 +458,31 @@ void reset_color_pairs_sp(
#undef init_extended_pair
int init_extended_pair(
- int pair,
- int f,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_extended_color
int init_extended_color(
- int color,
- int r,
- int g,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef extended_color_content
int extended_color_content(
- int color,
- int *r,
- int *g,
+ int color,
+ int *r,
+ int *g,
int *b)
{ return(*(int *)0); }
#undef extended_pair_content
int extended_pair_content(
- int pair,
- int *f,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
@@ -494,8 +494,8 @@ void reset_color_pairs(void)
#undef wcolor_set
int wcolor_set(
- WINDOW *win,
- short pair_arg,
+ WINDOW *win,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -565,1302 +565,1302 @@ int flash(void)
/* ./lib_gen.c */
#undef addch
-int (addch)(
+int addch(
const chtype z)
{ return(*(int *)0); }
#undef addchnstr
-int (addchnstr)(
- const chtype *a1,
+int addchnstr(
+ const chtype *a1,
int z)
{ return(*(int *)0); }
#undef addchstr
-int (addchstr)(
+int addchstr(
const chtype *z)
{ return(*(int *)0); }
#undef addnstr
-int (addnstr)(
- const char *a1,
+int addnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef addstr
-int (addstr)(
+int addstr(
const char *z)
{ return(*(int *)0); }
#undef attroff
-int (attroff)(
+int attroff(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attron
-int (attron)(
+int attron(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attrset
-int (attrset)(
+int attrset(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attr_get
-int (attr_get)(
- attr_t *a1,
- short *a2,
+int attr_get(
+ attr_t *a1,
+ short *a2,
void *z)
{ return(*(int *)0); }
#undef attr_off
-int (attr_off)(
- attr_t a1,
+int attr_off(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_on
-int (attr_on)(
- attr_t a1,
+int attr_on(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_set
-int (attr_set)(
- attr_t a1,
- short a2,
+int attr_set(
+ attr_t a1,
+ short a2,
void *z)
{ return(*(int *)0); }
#undef bkgd
-int (bkgd)(
+int bkgd(
chtype z)
{ return(*(int *)0); }
#undef bkgdset
-void (bkgdset)(
+void bkgdset(
chtype z)
{ /* void */ }
#undef border
-int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
- chtype a4,
- chtype a5,
- chtype a6,
- chtype a7,
+int border(
+ chtype a1,
+ chtype a2,
+ chtype a3,
+ chtype a4,
+ chtype a5,
+ chtype a6,
+ chtype a7,
chtype z)
{ return(*(int *)0); }
#undef box
-int (box)(
- WINDOW *a1,
- chtype a2,
+int box(
+ WINDOW *a1,
+ chtype a2,
chtype z)
{ return(*(int *)0); }
#undef chgat
-int (chgat)(
- int a1,
- attr_t a2,
- short a3,
+int chgat(
+ int a1,
+ attr_t a2,
+ short a3,
const void *z)
{ return(*(int *)0); }
#undef clear
-int (clear)(void)
+int clear(void)
{ return(*(int *)0); }
#undef clrtobot
-int (clrtobot)(void)
+int clrtobot(void)
{ return(*(int *)0); }
#undef clrtoeol
-int (clrtoeol)(void)
+int clrtoeol(void)
{ return(*(int *)0); }
#undef color_set
-int (color_set)(
- short a1,
+int color_set(
+ short a1,
void *z)
{ return(*(int *)0); }
#undef COLOR_PAIR
-int (COLOR_PAIR)(
+int COLOR_PAIR(
int z)
{ return(*(int *)0); }
#undef delch
-int (delch)(void)
+int delch(void)
{ return(*(int *)0); }
#undef deleteln
-int (deleteln)(void)
+int deleteln(void)
{ return(*(int *)0); }
#undef echochar
-int (echochar)(
+int echochar(
const chtype z)
{ return(*(int *)0); }
#undef erase
-int (erase)(void)
+int erase(void)
{ return(*(int *)0); }
#undef getbkgd
-chtype (getbkgd)(
+chtype getbkgd(
WINDOW *z)
{ return(*(chtype *)0); }
#undef getch
-int (getch)(void)
+int getch(void)
{ return(*(int *)0); }
#undef getnstr
-int (getnstr)(
- char *a1,
+int getnstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef getstr
-int (getstr)(
+int getstr(
char *z)
{ return(*(int *)0); }
#undef hline
-int (hline)(
- chtype a1,
+int hline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef inch
-chtype (inch)(void)
+chtype inch(void)
{ return(*(chtype *)0); }
#undef inchnstr
-int (inchnstr)(
- chtype *a1,
+int inchnstr(
+ chtype *a1,
int z)
{ return(*(int *)0); }
#undef inchstr
-int (inchstr)(
+int inchstr(
chtype *z)
{ return(*(int *)0); }
#undef innstr
-int (innstr)(
- char *a1,
+int innstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef insch
-int (insch)(
+int insch(
chtype z)
{ return(*(int *)0); }
#undef insdelln
-int (insdelln)(
+int insdelln(
int z)
{ return(*(int *)0); }
#undef insertln
-int (insertln)(void)
+int insertln(void)
{ return(*(int *)0); }
#undef insnstr
-int (insnstr)(
- const char *a1,
+int insnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef insstr
-int (insstr)(
+int insstr(
const char *z)
{ return(*(int *)0); }
#undef instr
-int (instr)(
+int instr(
char *z)
{ return(*(int *)0); }
#undef move
-int (move)(
- int a1,
+int move(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvaddch
-int (mvaddch)(
- int a1,
- int a2,
+int mvaddch(
+ int a1,
+ int a2,
const chtype z)
{ return(*(int *)0); }
#undef mvaddchnstr
-int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
+int mvaddchnstr(
+ int a1,
+ int a2,
+ const chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvaddchstr
-int (mvaddchstr)(
- int a1,
- int a2,
+int mvaddchstr(
+ int a1,
+ int a2,
const chtype *z)
{ return(*(int *)0); }
#undef mvaddnstr
-int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvaddnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvaddstr
-int (mvaddstr)(
- int a1,
- int a2,
+int mvaddstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvchgat
-int (mvchgat)(
- int a1,
- int a2,
- int a3,
- attr_t a4,
- short a5,
+int mvchgat(
+ int a1,
+ int a2,
+ int a3,
+ attr_t a4,
+ short a5,
const void *z)
{ return(*(int *)0); }
#undef mvdelch
-int (mvdelch)(
- int a1,
+int mvdelch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetch
-int (mvgetch)(
- int a1,
+int mvgetch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetnstr
-int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
+int mvgetnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvgetstr
-int (mvgetstr)(
- int a1,
- int a2,
+int mvgetstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvhline
-int (mvhline)(
- int a1,
- int a2,
- chtype a3,
+int mvhline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvinch
-chtype (mvinch)(
- int a1,
+chtype mvinch(
+ int a1,
int z)
{ return(*(chtype *)0); }
#undef mvinchnstr
-int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
+int mvinchnstr(
+ int a1,
+ int a2,
+ chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvinchstr
-int (mvinchstr)(
- int a1,
- int a2,
+int mvinchstr(
+ int a1,
+ int a2,
chtype *z)
{ return(*(int *)0); }
#undef mvinnstr
-int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
+int mvinnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsch
-int (mvinsch)(
- int a1,
- int a2,
+int mvinsch(
+ int a1,
+ int a2,
chtype z)
{ return(*(int *)0); }
#undef mvinsnstr
-int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvinsnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsstr
-int (mvinsstr)(
- int a1,
- int a2,
+int mvinsstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvinstr
-int (mvinstr)(
- int a1,
- int a2,
+int mvinstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvvline
-int (mvvline)(
- int a1,
- int a2,
- chtype a3,
+int mvvline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvwaddch
-int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype z)
{ return(*(int *)0); }
#undef mvwaddchnstr
-int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const chtype *a4,
+int mvwaddchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddchstr
-int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype *z)
{ return(*(int *)0); }
#undef mvwaddnstr
-int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwaddnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddstr
-int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwchgat
-int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
- int a4,
- attr_t a5,
- short a6,
+int mvwchgat(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ int a4,
+ attr_t a5,
+ short a6,
const void *z)
{ return(*(int *)0); }
#undef mvwdelch
-int (mvwdelch)(
- WINDOW *a1,
- int a2,
+int mvwdelch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetch
-int (mvwgetch)(
- WINDOW *a1,
- int a2,
+int mvwgetch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetnstr
-int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwgetnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwgetstr
-int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwgetstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwhline
-int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwhline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef mvwinch
-chtype (mvwinch)(
- WINDOW *a1,
- int a2,
+chtype mvwinch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(chtype *)0); }
#undef mvwinchnstr
-int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype *a4,
+int mvwinchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwinchstr
-int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype *z)
{ return(*(int *)0); }
#undef mvwinnstr
-int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwinnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsch
-int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsch(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype z)
{ return(*(int *)0); }
#undef mvwinsnstr
-int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwinsnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsstr
-int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwinstr
-int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwvline
-int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwvline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef PAIR_NUMBER
-int (PAIR_NUMBER)(
+int PAIR_NUMBER(
int z)
{ return(*(int *)0); }
#undef redrawwin
-int (redrawwin)(
+int redrawwin(
WINDOW *z)
{ return(*(int *)0); }
#undef refresh
-int (refresh)(void)
+int refresh(void)
{ return(*(int *)0); }
#undef scrl
-int (scrl)(
+int scrl(
int z)
{ return(*(int *)0); }
#undef scroll
-int (scroll)(
+int scroll(
WINDOW *z)
{ return(*(int *)0); }
#undef setscrreg
-int (setscrreg)(
- int a1,
+int setscrreg(
+ int a1,
int z)
{ return(*(int *)0); }
#undef slk_attr_off
-int (slk_attr_off)(
- const attr_t a1,
+int slk_attr_off(
+ const attr_t a1,
void *z)
{ return(*(int *)0); }
#undef slk_attr_on
-int (slk_attr_on)(
- attr_t a1,
+int slk_attr_on(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef standout
-int (standout)(void)
+int standout(void)
{ return(*(int *)0); }
#undef standend
-int (standend)(void)
+int standend(void)
{ return(*(int *)0); }
#undef timeout
-void (timeout)(
+void timeout(
int z)
{ /* void */ }
#undef touchline
-int (touchline)(
- WINDOW *a1,
- int a2,
+int touchline(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef touchwin
-int (touchwin)(
+int touchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef untouchwin
-int (untouchwin)(
+int untouchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef vline
-int (vline)(
- chtype a1,
+int vline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef waddchstr
-int (waddchstr)(
- WINDOW *a1,
+int waddchstr(
+ WINDOW *a1,
const chtype *z)
{ return(*(int *)0); }
#undef waddstr
-int (waddstr)(
- WINDOW *a1,
+int waddstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef wattron
-int (wattron)(
- WINDOW *a1,
+int wattron(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattroff
-int (wattroff)(
- WINDOW *a1,
+int wattroff(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattrset
-int (wattrset)(
- WINDOW *a1,
+int wattrset(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattr_get
-int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
+int wattr_get(
+ WINDOW *a1,
+ attr_t *a2,
+ short *a3,
void *z)
{ return(*(int *)0); }
#undef wattr_set
-int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
+int wattr_set(
+ WINDOW *a1,
+ attr_t a2,
+ short a3,
void *z)
{ return(*(int *)0); }
#undef wdeleteln
-int (wdeleteln)(
+int wdeleteln(
WINDOW *z)
{ return(*(int *)0); }
#undef wgetstr
-int (wgetstr)(
- WINDOW *a1,
+int wgetstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef winchstr
-int (winchstr)(
- WINDOW *a1,
+int winchstr(
+ WINDOW *a1,
chtype *z)
{ return(*(int *)0); }
#undef winsertln
-int (winsertln)(
+int winsertln(
WINDOW *z)
{ return(*(int *)0); }
#undef winsstr
-int (winsstr)(
- WINDOW *a1,
+int winsstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef winstr
-int (winstr)(
- WINDOW *a1,
+int winstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef wstandout
-int (wstandout)(
+int wstandout(
WINDOW *z)
{ return(*(int *)0); }
#undef wstandend
-int (wstandend)(
+int wstandend(
WINDOW *z)
{ return(*(int *)0); }
#undef getattrs
-int (getattrs)(
+int getattrs(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcurx
-int (getcurx)(
+int getcurx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcury
-int (getcury)(
+int getcury(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegx
-int (getbegx)(
+int getbegx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegy
-int (getbegy)(
+int getbegy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxx
-int (getmaxx)(
+int getmaxx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxy
-int (getmaxy)(
+int getmaxy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getparx
-int (getparx)(
+int getparx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getpary
-int (getpary)(
+int getpary(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetparent
-WINDOW *(wgetparent)(
+WINDOW *wgetparent(
const WINDOW *z)
{ return(*(WINDOW **)0); }
#undef is_cleared
-NCURSES_BOOL (is_cleared)(
+NCURSES_BOOL is_cleared(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idcok
-NCURSES_BOOL (is_idcok)(
+NCURSES_BOOL is_idcok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idlok
-NCURSES_BOOL (is_idlok)(
+NCURSES_BOOL is_idlok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_immedok
-NCURSES_BOOL (is_immedok)(
+NCURSES_BOOL is_immedok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_keypad
-NCURSES_BOOL (is_keypad)(
+NCURSES_BOOL is_keypad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_leaveok
-NCURSES_BOOL (is_leaveok)(
+NCURSES_BOOL is_leaveok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_nodelay
-NCURSES_BOOL (is_nodelay)(
+NCURSES_BOOL is_nodelay(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_notimeout
-NCURSES_BOOL (is_notimeout)(
+NCURSES_BOOL is_notimeout(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_pad
-NCURSES_BOOL (is_pad)(
+NCURSES_BOOL is_pad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_scrollok
-NCURSES_BOOL (is_scrollok)(
+NCURSES_BOOL is_scrollok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_subwin
-NCURSES_BOOL (is_subwin)(
+NCURSES_BOOL is_subwin(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_syncok
-NCURSES_BOOL (is_syncok)(
+NCURSES_BOOL is_syncok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef wgetdelay
-int (wgetdelay)(
+int wgetdelay(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetscrreg
-int (wgetscrreg)(
- const WINDOW *a1,
- int *a2,
+int wgetscrreg(
+ const WINDOW *a1,
+ int *a2,
int *z)
{ return(*(int *)0); }
#undef add_wch
-int (add_wch)(
+int add_wch(
const cchar_t *z)
{ return(*(int *)0); }
#undef add_wchnstr
-int (add_wchnstr)(
- const cchar_t *a1,
+int add_wchnstr(
+ const cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef add_wchstr
-int (add_wchstr)(
+int add_wchstr(
const cchar_t *z)
{ return(*(int *)0); }
#undef addnwstr
-int (addnwstr)(
- const wchar_t *a1,
+int addnwstr(
+ const wchar_t *a1,
int z)
{ return(*(int *)0); }
#undef addwstr
-int (addwstr)(
+int addwstr(
const wchar_t *z)
{ return(*(int *)0); }
#undef bkgrnd
-int (bkgrnd)(
+int bkgrnd(
const cchar_t *z)
{ return(*(int *)0); }
#undef bkgrndset
-void (bkgrndset)(
+void bkgrndset(
const cchar_t *z)
{ /* void */ }
#undef border_set
-int (border_set)(
- const cchar_t *a1,
- const cchar_t *a2,
- const cchar_t *a3,
- const cchar_t *a4,
- const cchar_t *a5,
- const cchar_t *a6,
- const cchar_t *a7,
+int border_set(
+ const cchar_t *a1,
+ const cchar_t *a2,
+ const cchar_t *a3,
+ const cchar_t *a4,
+ const cchar_t *a5,
+ const cchar_t *a6,
+ const cchar_t *a7,
const cchar_t *z)
{ return(*(int *)0); }
#undef box_set
-int (box_set)(
- WINDOW *a1,
- const cchar_t *a2,
+int box_set(
+ WINDOW *a1,
+ const cchar_t *a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef echo_wchar
-int (echo_wchar)(
+int echo_wchar(
const cchar_t *z)
{ return(*(int *)0); }
#undef get_wch
-int (get_wch)(
+int get_wch(
wint_t *z)
{ return(*(int *)0); }
#undef get_wstr
-int (get_wstr)(
+int get_wstr(
wint_t *z)
{ return(*(int *)0); }
#undef getbkgrnd
-int (getbkgrnd)(
+int getbkgrnd(
cchar_t *z)
{ return(*(int *)0); }
#undef getn_wstr
-int (getn_wstr)(
- wint_t *a1,
+int getn_wstr(
+ wint_t *a1,
int z)
{ return(*(int *)0); }
#undef hline_set
-int (hline_set)(
- const cchar_t *a1,
+int hline_set(
+ const cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef in_wch
-int (in_wch)(
+int in_wch(
cchar_t *z)
{ return(*(int *)0); }
#undef in_wchnstr
-int (in_wchnstr)(
- cchar_t *a1,
+int in_wchnstr(
+ cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef in_wchstr
-int (in_wchstr)(
+int in_wchstr(
cchar_t *z)
{ return(*(int *)0); }
#undef innwstr
-int (innwstr)(
- wchar_t *a1,
+int innwstr(
+ wchar_t *a1,
int z)
{ return(*(int *)0); }
#undef ins_nwstr
-int (ins_nwstr)(
- const wchar_t *a1,
+int ins_nwstr(
+ const wchar_t *a1,
int z)
{ return(*(int *)0); }
#undef ins_wch
-int (ins_wch)(
+int ins_wch(
const cchar_t *z)
{ return(*(int *)0); }
#undef ins_wstr
-int (ins_wstr)(
+int ins_wstr(
const wchar_t *z)
{ return(*(int *)0); }
#undef inwstr
-int (inwstr)(
+int inwstr(
wchar_t *z)
{ return(*(int *)0); }
#undef mvadd_wch
-int (mvadd_wch)(
- int a1,
- int a2,
+int mvadd_wch(
+ int a1,
+ int a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvadd_wchnstr
-int (mvadd_wchnstr)(
- int a1,
- int a2,
- const cchar_t *a3,
+int mvadd_wchnstr(
+ int a1,
+ int a2,
+ const cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvadd_wchstr
-int (mvadd_wchstr)(
- int a1,
- int a2,
+int mvadd_wchstr(
+ int a1,
+ int a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvaddnwstr
-int (mvaddnwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
+int mvaddnwstr(
+ int a1,
+ int a2,
+ const wchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvaddwstr
-int (mvaddwstr)(
- int a1,
- int a2,
+int mvaddwstr(
+ int a1,
+ int a2,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvget_wch
-int (mvget_wch)(
- int a1,
- int a2,
+int mvget_wch(
+ int a1,
+ int a2,
wint_t *z)
{ return(*(int *)0); }
#undef mvget_wstr
-int (mvget_wstr)(
- int a1,
- int a2,
+int mvget_wstr(
+ int a1,
+ int a2,
wint_t *z)
{ return(*(int *)0); }
#undef mvgetn_wstr
-int (mvgetn_wstr)(
- int a1,
- int a2,
- wint_t *a3,
+int mvgetn_wstr(
+ int a1,
+ int a2,
+ wint_t *a3,
int z)
{ return(*(int *)0); }
#undef mvhline_set
-int (mvhline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
+int mvhline_set(
+ int a1,
+ int a2,
+ const cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvin_wch
-int (mvin_wch)(
- int a1,
- int a2,
+int mvin_wch(
+ int a1,
+ int a2,
cchar_t *z)
{ return(*(int *)0); }
#undef mvin_wchnstr
-int (mvin_wchnstr)(
- int a1,
- int a2,
- cchar_t *a3,
+int mvin_wchnstr(
+ int a1,
+ int a2,
+ cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvin_wchstr
-int (mvin_wchstr)(
- int a1,
- int a2,
+int mvin_wchstr(
+ int a1,
+ int a2,
cchar_t *z)
{ return(*(int *)0); }
#undef mvinnwstr
-int (mvinnwstr)(
- int a1,
- int a2,
- wchar_t *a3,
+int mvinnwstr(
+ int a1,
+ int a2,
+ wchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvins_nwstr
-int (mvins_nwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
+int mvins_nwstr(
+ int a1,
+ int a2,
+ const wchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvins_wch
-int (mvins_wch)(
- int a1,
- int a2,
+int mvins_wch(
+ int a1,
+ int a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvins_wstr
-int (mvins_wstr)(
- int a1,
- int a2,
+int mvins_wstr(
+ int a1,
+ int a2,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvinwstr
-int (mvinwstr)(
- int a1,
- int a2,
+int mvinwstr(
+ int a1,
+ int a2,
wchar_t *z)
{ return(*(int *)0); }
#undef mvvline_set
-int (mvvline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
+int mvvline_set(
+ int a1,
+ int a2,
+ const cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvwadd_wch
-int (mvwadd_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwadd_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvwadd_wchnstr
-int (mvwadd_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const cchar_t *a4,
+int mvwadd_wchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwadd_wchstr
-int (mvwadd_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwadd_wchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvwaddnwstr
-int (mvwaddnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const wchar_t *a4,
+int mvwaddnwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const wchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddwstr
-int (mvwaddwstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvwget_wch
-int (mvwget_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwget_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
wint_t *z)
{ return(*(int *)0); }
#undef mvwget_wstr
-int (mvwget_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwget_wstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
wint_t *z)
{ return(*(int *)0); }
#undef mvwgetn_wstr
-int (mvwgetn_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
- wint_t *a4,
+int mvwgetn_wstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ wint_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwhline_set
-int (mvwhline_set)(
- WINDOW *a1,
- int a2,
- int a3,
- const cchar_t *a4,
+int mvwhline_set(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwin_wch
-int (mvwin_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwin_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
cchar_t *z)
{ return(*(int *)0); }
#undef mvwin_wchnstr
-int (mvwin_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- cchar_t *a4,
+int mvwin_wchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwin_wchstr
-int (mvwin_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwin_wchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
cchar_t *z)
{ return(*(int *)0); }
#undef mvwinnwstr
-int (mvwinnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
- wchar_t *a4,
+int mvwinnwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ wchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwins_nwstr
-int (mvwins_nwstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const wchar_t *a4,
+int mvwins_nwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const wchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwins_wch
-int (mvwins_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwins_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvwins_wstr
-int (mvwins_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwins_wstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvwinwstr
-int (mvwinwstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
wchar_t *z)
{ return(*(int *)0); }
#undef mvwvline_set
-int (mvwvline_set)(
- WINDOW *a1,
- int a2,
- int a3,
- const cchar_t *a4,
+int mvwvline_set(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef vline_set
-int (vline_set)(
- const cchar_t *a1,
+int vline_set(
+ const cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef wadd_wchstr
-int (wadd_wchstr)(
- WINDOW *a1,
+int wadd_wchstr(
+ WINDOW *a1,
const cchar_t *z)
{ return(*(int *)0); }
#undef waddwstr
-int (waddwstr)(
- WINDOW *a1,
+int waddwstr(
+ WINDOW *a1,
const wchar_t *z)
{ return(*(int *)0); }
#undef wget_wstr
-int (wget_wstr)(
- WINDOW *a1,
+int wget_wstr(
+ WINDOW *a1,
wint_t *z)
{ return(*(int *)0); }
#undef wgetbkgrnd
-int (wgetbkgrnd)(
- WINDOW *a1,
+int wgetbkgrnd(
+ WINDOW *a1,
cchar_t *z)
{ return(*(int *)0); }
#undef win_wchstr
-int (win_wchstr)(
- WINDOW *a1,
+int win_wchstr(
+ WINDOW *a1,
cchar_t *z)
{ return(*(int *)0); }
#undef wins_wstr
-int (wins_wstr)(
- WINDOW *a1,
+int wins_wstr(
+ WINDOW *a1,
const wchar_t *z)
{ return(*(int *)0); }
#undef mouse_trafo
-NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
+NCURSES_BOOL mouse_trafo(
+ int *a1,
+ int *a2,
NCURSES_BOOL z)
{ return(*(NCURSES_BOOL *)0); }
@@ -1877,7 +1877,7 @@ int *_nc_ptr_Escdelay(
#undef set_escdelay_sp
int set_escdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -1897,8 +1897,8 @@ int get_escdelay(void)
#undef _nc_wgetch
int _nc_wgetch(
- WINDOW *win,
- int *result,
+ WINDOW *win,
+ int *result,
int use_meta)
{ return(*(int *)0); }
@@ -1911,8 +1911,8 @@ int wgetch(
#undef wgetnstr
int wgetnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int maxlen)
{ return(*(int *)0); }
@@ -1920,8 +1920,8 @@ int wgetnstr(
#undef whline
int whline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -1929,7 +1929,7 @@ int whline(
#undef immedok
void immedok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
@@ -1937,8 +1937,8 @@ void immedok(
#undef winchnstr
int winchnstr(
- WINDOW *win,
- chtype *str,
+ WINDOW *win,
+ chtype *str,
int n)
{ return(*(int *)0); }
@@ -1952,14 +1952,14 @@ WINDOW *initscr(void)
#undef _nc_insert_ch
int _nc_insert_ch(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
#undef winsch
int winsch(
- WINDOW *win,
+ WINDOW *win,
chtype c)
{ return(*(int *)0); }
@@ -1967,7 +1967,7 @@ int winsch(
#undef winsdelln
int winsdelln(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -1975,8 +1975,8 @@ int winsdelln(
#undef winsnstr
int winsnstr(
- WINDOW *win,
- const char *s,
+ WINDOW *win,
+ const char *s,
int n)
{ return(*(int *)0); }
@@ -1984,8 +1984,8 @@ int winsnstr(
#undef winnstr
int winnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int n)
{ return(*(int *)0); }
@@ -2004,7 +2004,7 @@ NCURSES_BOOL isendwin(void)
#undef leaveok
int leaveok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -2012,7 +2012,7 @@ int leaveok(
#undef getmouse_sp
int getmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -2023,7 +2023,7 @@ int getmouse(
#undef ungetmouse_sp
int ungetmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -2034,27 +2034,27 @@ int ungetmouse(
#undef mousemask_sp
mmask_t mousemask_sp(
- SCREEN *sp,
- mmask_t newmask,
+ SCREEN *sp,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef mousemask
mmask_t mousemask(
- mmask_t newmask,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef wenclose
NCURSES_BOOL wenclose(
- const WINDOW *win,
- int y,
+ const WINDOW *win,
+ int y,
int x)
{ return(*(NCURSES_BOOL *)0); }
#undef mouseinterval_sp
int mouseinterval_sp(
- SCREEN *sp,
+ SCREEN *sp,
int maxclick)
{ return(*(int *)0); }
@@ -2079,9 +2079,9 @@ NCURSES_BOOL has_mouse(void)
#undef wmouse_trafo
NCURSES_BOOL wmouse_trafo(
- const WINDOW *win,
- int *pY,
- int *pX,
+ const WINDOW *win,
+ int *pY,
+ int *pX,
NCURSES_BOOL to_screen)
{ return(*(NCURSES_BOOL *)0); }
@@ -2089,8 +2089,8 @@ NCURSES_BOOL wmouse_trafo(
#undef wmove
int wmove(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
@@ -2098,14 +2098,14 @@ int wmove(
#undef _nc_msec_cost_sp
int _nc_msec_cost_sp(
- SCREEN *sp,
- const char *const cap,
+ SCREEN *sp,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
#undef _nc_msec_cost
int _nc_msec_cost(
- const char *const cap,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
@@ -2138,35 +2138,35 @@ void _nc_mvcur_wrap(void)
#undef _nc_mvcur_sp
int _nc_mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef _nc_mvcur
int _nc_mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur_sp
int mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur
int mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
@@ -2177,8 +2177,8 @@ int _nc_optimize_enable;
#undef mvwin
int mvwin(
- WINDOW *win,
- int by,
+ WINDOW *win,
+ int by,
int bx)
{ return(*(int *)0); }
@@ -2204,16 +2204,16 @@ void nofilter(void)
#undef newterm_sp
SCREEN *newterm_sp(
- SCREEN *sp,
- const char *name,
- FILE *ofp,
+ SCREEN *sp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
#undef newterm
SCREEN *newterm(
- const char *name,
- FILE *ofp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
@@ -2226,46 +2226,46 @@ int _nc_freewin(
#undef newwin_sp
WINDOW *newwin_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef newwin
WINDOW *newwin(
- int num_lines,
- int num_columns,
- int begy,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef derwin
WINDOW *derwin(
- WINDOW *orig,
- int num_lines,
- int num_columns,
- int begy,
+ WINDOW *orig,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef subwin
WINDOW *subwin(
- WINDOW *w,
- int l,
- int c,
- int y,
+ WINDOW *w,
+ int l,
+ int c,
+ int y,
int x)
{ return(*(WINDOW **)0); }
#undef _nc_makenew_sp
WINDOW *_nc_makenew_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
- int begx,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
+ int begx,
int flags)
{ return(*(WINDOW **)0); }
@@ -2308,26 +2308,26 @@ int nonl(void)
#undef overlay
int overlay(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef overwrite
int overwrite(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef copywin
int copywin(
- const WINDOW *src,
- WINDOW *dst,
- int sminrow,
- int smincol,
- int dminrow,
- int dmincol,
- int dmaxrow,
- int dmaxcol,
+ const WINDOW *src,
+ WINDOW *dst,
+ int sminrow,
+ int smincol,
+ int dminrow,
+ int dmincol,
+ int dmaxrow,
+ int dmaxcol,
int over)
{ return(*(int *)0); }
@@ -2335,51 +2335,51 @@ int copywin(
#undef newpad_sp
WINDOW *newpad_sp(
- SCREEN *sp,
- int l,
+ SCREEN *sp,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef newpad
WINDOW *newpad(
- int l,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef subpad
WINDOW *subpad(
- WINDOW *orig,
- int l,
- int c,
- int begy,
+ WINDOW *orig,
+ int l,
+ int c,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef prefresh
int prefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pnoutrefresh
int pnoutrefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pechochar
int pechochar(
- WINDOW *pad,
+ WINDOW *pad,
const chtype ch)
{ return(*(int *)0); }
@@ -2387,45 +2387,45 @@ int pechochar(
#undef printw
int printw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wprintw
int wprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvprintw
int mvprintw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwprintw
int mvwprintw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef vwprintw
int vwprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_printw
int vw_printw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
@@ -2433,8 +2433,8 @@ int vw_printw(
#undef wredrawln
int wredrawln(
- WINDOW *win,
- int beg,
+ WINDOW *win,
+ int beg,
int num)
{ return(*(int *)0); }
@@ -2454,16 +2454,16 @@ int wnoutrefresh(
#undef restartterm_sp
int restartterm_sp(
- SCREEN *sp,
- const char *termp,
- int filenum,
+ SCREEN *sp,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
#undef restartterm
int restartterm(
- const char *termp,
- int filenum,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
@@ -2471,45 +2471,45 @@ int restartterm(
#undef vwscanw
int vwscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_scanw
int vw_scanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef scanw
int scanw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wscanw
int wscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvscanw
int mvscanw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwscanw
int mvwscanw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
@@ -2517,7 +2517,7 @@ int mvwscanw(
#undef getwin_sp
WINDOW *getwin_sp(
- SCREEN *sp,
+ SCREEN *sp,
FILE *filep)
{ return(*(WINDOW **)0); }
@@ -2528,13 +2528,13 @@ WINDOW *getwin(
#undef putwin
int putwin(
- WINDOW *win,
+ WINDOW *win,
FILE *filep)
{ return(*(int *)0); }
#undef scr_restore_sp
int scr_restore_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -2550,7 +2550,7 @@ int scr_dump(
#undef scr_init_sp
int scr_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -2561,7 +2561,7 @@ int scr_init(
#undef scr_set_sp
int scr_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -2574,16 +2574,16 @@ int scr_set(
#undef _nc_scroll_window
void _nc_scroll_window(
- WINDOW *win,
- int const n,
- int const top,
- int const bottom,
+ WINDOW *win,
+ int const n,
+ int const top,
+ int const bottom,
cchar_t blank)
{ /* void */ }
#undef wscrl
int wscrl(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -2591,7 +2591,7 @@ int wscrl(
#undef scrollok
int scrollok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -2599,8 +2599,8 @@ int scrollok(
#undef wsetscrreg
int wsetscrreg(
- WINDOW *win,
- int top,
+ WINDOW *win,
+ int top,
int bottom)
{ return(*(int *)0); }
@@ -2618,54 +2618,54 @@ void delscreen(
#undef _nc_setupscreen_sp
int _nc_setupscreen_sp(
- SCREEN **spp,
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ SCREEN **spp,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_setupscreen
int _nc_setupscreen(
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_ripoffline_sp
int _nc_ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef _nc_ripoffline
int _nc_ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline_sp
int ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline
int ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
@@ -2673,13 +2673,13 @@ int ripoffline(
#undef _nc_format_slks
int _nc_format_slks(
- SCREEN *sp,
+ SCREEN *sp,
int cols)
{ return(*(int *)0); }
#undef _nc_slk_initialize
int _nc_slk_initialize(
- WINDOW *stwin,
+ WINDOW *stwin,
int cols)
{ return(*(int *)0); }
@@ -2696,16 +2696,16 @@ int slk_restore(void)
#undef slk_attr_set_sp
int slk_attr_set_sp(
- SCREEN *sp,
- const attr_t attr,
- short pair_arg,
+ SCREEN *sp,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
#undef slk_attr_set
int slk_attr_set(
- const attr_t attr,
- short pair_arg,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -2713,7 +2713,7 @@ int slk_attr_set(
#undef slk_attroff_sp
int slk_attroff_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2726,7 +2726,7 @@ int slk_attroff(
#undef slk_attron_sp
int slk_attron_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2739,7 +2739,7 @@ int slk_attron(
#undef slk_attrset_sp
int slk_attrset_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2774,7 +2774,7 @@ int slk_clear(void)
#undef slk_color_sp
int slk_color_sp(
- SCREEN *sp,
+ SCREEN *sp,
short pair_arg)
{ return(*(int *)0); }
@@ -2785,7 +2785,7 @@ int slk_color(
#undef extended_slk_color_sp
int extended_slk_color_sp(
- SCREEN *sp,
+ SCREEN *sp,
int pair_arg)
{ return(*(int *)0); }
@@ -2798,7 +2798,7 @@ int extended_slk_color(
#undef slk_init_sp
int slk_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
int format)
{ return(*(int *)0); }
@@ -2811,7 +2811,7 @@ int slk_init(
#undef slk_label_sp
char *slk_label_sp(
- SCREEN *sp,
+ SCREEN *sp,
int n)
{ return(*(char **)0); }
@@ -2844,16 +2844,16 @@ int slk_refresh(void)
#undef slk_set_sp
int slk_set_sp(
- SCREEN *sp,
- int i,
- const char *astr,
+ SCREEN *sp,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
#undef slk_set
int slk_set(
- int i,
- const char *astr,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
@@ -2872,7 +2872,7 @@ int slk_touch(void)
#undef is_linetouched
NCURSES_BOOL is_linetouched(
- WINDOW *win,
+ WINDOW *win,
int line)
{ return(*(NCURSES_BOOL *)0); }
@@ -2883,9 +2883,9 @@ NCURSES_BOOL is_wintouched(
#undef wtouchln
int wtouchln(
- WINDOW *win,
- int y,
- int n,
+ WINDOW *win,
+ int y,
+ int n,
int changed)
{ return(*(int *)0); }
@@ -2893,7 +2893,7 @@ int wtouchln(
#undef _tracedump
void _tracedump(
- const char *name,
+ const char *name,
WINDOW *win)
{ /* void */ }
@@ -2901,19 +2901,19 @@ void _tracedump(
#undef _nc_trace_mmask_t
char *_nc_trace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(char **)0); }
#undef _nc_tracemouse
char *_nc_tracemouse(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT const *ep)
{ return(*(char **)0); }
#undef _nc_retrace_mmask_t
mmask_t _nc_retrace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(mmask_t *)0); }
@@ -2938,7 +2938,7 @@ void _nc_fifo_dump(
#undef ungetch_sp
int ungetch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -2951,20 +2951,20 @@ int ungetch(
#undef vidputs_sp
int vidputs_sp(
- SCREEN *sp,
- chtype newmode,
+ SCREEN *sp,
+ chtype newmode,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef vidputs
int vidputs(
- chtype newmode,
+ chtype newmode,
NCURSES_OUTC outc)
{ return(*(int *)0); }
#undef vidattr_sp
int vidattr_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype newmode)
{ return(*(int *)0); }
@@ -2986,8 +2986,8 @@ chtype termattrs(void)
#undef wvline
int wvline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -2995,8 +2995,8 @@ int wvline(
#undef wattr_off
int wattr_off(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -3004,8 +3004,8 @@ int wattr_off(
#undef wattr_on
int wattr_on(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -3025,14 +3025,14 @@ void _nc_synchook(
#undef mvderwin
int mvderwin(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
#undef syncok
int syncok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL bf)
{ return(*(int *)0); }
@@ -3071,14 +3071,14 @@ struct panelhook *_nc_panelhook(void)
#undef _nc_printf_string_sp
char *_nc_printf_string_sp(
- SCREEN *sp,
- const char *fmt,
+ SCREEN *sp,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
#undef _nc_printf_string
char *_nc_printf_string(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -3095,18 +3095,18 @@ int doupdate(void)
#undef _nc_scrolln_sp
int _nc_scrolln_sp(
- SCREEN *sp,
- int n,
- int top,
- int bot,
+ SCREEN *sp,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
#undef _nc_scrolln
int _nc_scrolln(
- int n,
- int top,
- int bot,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
@@ -3139,7 +3139,7 @@ void _nc_screen_wrap(void)
#undef _nc_do_xmc_glitch_sp
void _nc_do_xmc_glitch_sp(
- SCREEN *sp,
+ SCREEN *sp,
attr_t previous)
{ /* void */ }
@@ -3152,7 +3152,7 @@ void _nc_do_xmc_glitch(
#undef _nc_varargs
char *_nc_varargs(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -3170,7 +3170,7 @@ void _nc_freeall(void)
#undef _nc_free_and_exit_sp
void _nc_free_and_exit_sp(
- SCREEN *sp,
+ SCREEN *sp,
int code)
{ /* void */ }
@@ -3205,13 +3205,13 @@ wint_t _nc_to_widechar(
#undef wadd_wch
int wadd_wch(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
#undef wecho_wchar
int wecho_wchar(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
@@ -3219,14 +3219,14 @@ int wecho_wchar(
#undef wborder_set
int wborder_set(
- WINDOW *win,
- const cchar_t *ls,
- const cchar_t *rs,
- const cchar_t *ts,
- const cchar_t *bs,
- const cchar_t *tl,
- const cchar_t *tr,
- const cchar_t *bl,
+ WINDOW *win,
+ const cchar_t *ls,
+ const cchar_t *rs,
+ const cchar_t *ts,
+ const cchar_t *bs,
+ const cchar_t *tl,
+ const cchar_t *tr,
+ const cchar_t *bl,
const cchar_t *br)
{ return(*(int *)0); }
@@ -3234,29 +3234,41 @@ int wborder_set(
#undef setcchar
int setcchar(
- cchar_t *wcval,
- const wchar_t *wch,
- const attr_t attrs,
- short pair_arg,
+ cchar_t *wcval,
+ const wchar_t *wch,
+ const attr_t attrs,
+ short pair_arg,
const void *opts)
{ return(*(int *)0); }
#undef getcchar
int getcchar(
- const cchar_t *wcval,
- wchar_t *wch,
- attr_t *attrs,
- short *pair_arg,
+ const cchar_t *wcval,
+ wchar_t *wch,
+ attr_t *attrs,
+ short *pair_arg,
void *opts)
{ return(*(int *)0); }
/* ./widechar/lib_erasewchar.c */
+#undef erasewchar_sp
+int erasewchar_sp(
+ SCREEN *sp,
+ wchar_t *wch)
+ { return(*(int *)0); }
+
#undef erasewchar
int erasewchar(
wchar_t *wch)
{ return(*(int *)0); }
+#undef killwchar_sp
+int killwchar_sp(
+ SCREEN *sp,
+ wchar_t *wch)
+ { return(*(int *)0); }
+
#undef killwchar
int killwchar(
wchar_t *wch)
@@ -3266,7 +3278,7 @@ int killwchar(
#undef wget_wch
int wget_wch(
- WINDOW *win,
+ WINDOW *win,
wint_t *result)
{ return(*(int *)0); }
@@ -3274,8 +3286,8 @@ int wget_wch(
#undef wgetn_wstr
int wgetn_wstr(
- WINDOW *win,
- wint_t *str,
+ WINDOW *win,
+ wint_t *str,
int maxlen)
{ return(*(int *)0); }
@@ -3283,8 +3295,8 @@ int wgetn_wstr(
#undef whline_set
int whline_set(
- WINDOW *win,
- const cchar_t *ch,
+ WINDOW *win,
+ const cchar_t *ch,
int n)
{ return(*(int *)0); }
@@ -3292,7 +3304,7 @@ int whline_set(
#undef win_wch
int win_wch(
- WINDOW *win,
+ WINDOW *win,
cchar_t *wcval)
{ return(*(int *)0); }
@@ -3300,8 +3312,8 @@ int win_wch(
#undef win_wchnstr
int win_wchnstr(
- WINDOW *win,
- cchar_t *wchstr,
+ WINDOW *win,
+ cchar_t *wchstr,
int n)
{ return(*(int *)0); }
@@ -3309,20 +3321,20 @@ int win_wchnstr(
#undef _nc_insert_wch
int _nc_insert_wch(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
#undef wins_wch
int wins_wch(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
#undef wins_nwstr
int wins_nwstr(
- WINDOW *win,
- const wchar_t *wstr,
+ WINDOW *win,
+ const wchar_t *wstr,
int n)
{ return(*(int *)0); }
@@ -3330,14 +3342,14 @@ int wins_nwstr(
#undef winnwstr
int winnwstr(
- WINDOW *win,
- wchar_t *wstr,
+ WINDOW *win,
+ wchar_t *wstr,
int n)
{ return(*(int *)0); }
#undef winwstr
int winwstr(
- WINDOW *win,
+ WINDOW *win,
wchar_t *wstr)
{ return(*(int *)0); }
@@ -3352,7 +3364,7 @@ const char *key_name(
#undef pecho_wchar
int pecho_wchar(
- WINDOW *pad,
+ WINDOW *pad,
const cchar_t *wch)
{ return(*(int *)0); }
@@ -3360,8 +3372,8 @@ int pecho_wchar(
#undef slk_wset
int slk_wset(
- int i,
- const wchar_t *astr,
+ int i,
+ const wchar_t *astr,
int format)
{ return(*(int *)0); }
@@ -3369,14 +3381,14 @@ int slk_wset(
#undef _nc_wcrtomb
size_t _nc_wcrtomb(
- char *target,
- wchar_t source,
+ char *target,
+ wchar_t source,
mbstate_t *state)
{ return(*(size_t *)0); }
#undef unget_wch_sp
int unget_wch_sp(
- SCREEN *sp,
+ SCREEN *sp,
const wchar_t wch)
{ return(*(int *)0); }
@@ -3389,33 +3401,33 @@ int unget_wch(
#undef vid_puts_sp
int vid_puts_sp(
- SCREEN *sp,
- attr_t newmode,
- short pair_arg,
- void *opts,
+ SCREEN *sp,
+ attr_t newmode,
+ short pair_arg,
+ void *opts,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef vid_puts
int vid_puts(
- attr_t newmode,
- short pair_arg,
- void *opts,
+ attr_t newmode,
+ short pair_arg,
+ void *opts,
NCURSES_OUTC outc)
{ return(*(int *)0); }
#undef vid_attr_sp
int vid_attr_sp(
- SCREEN *sp,
- attr_t newmode,
- short pair_arg,
+ SCREEN *sp,
+ attr_t newmode,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
#undef vid_attr
int vid_attr(
- attr_t newmode,
- short pair_arg,
+ attr_t newmode,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -3432,8 +3444,8 @@ attr_t term_attrs(void)
#undef wvline_set
int wvline_set(
- WINDOW *win,
- const cchar_t *ch,
+ WINDOW *win,
+ const cchar_t *ch,
int n)
{ return(*(int *)0); }
@@ -3450,7 +3462,7 @@ void _nc_init_wacs(void)
#undef wunctrl_sp
wchar_t *wunctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
cchar_t *wc)
{ return(*(wchar_t **)0); }
@@ -3463,31 +3475,31 @@ wchar_t *wunctrl(
#undef _nc_toggle_attr_on
void _nc_toggle_attr_on(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_toggle_attr_off
void _nc_toggle_attr_off(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_DelCharCost_sp
int _nc_DelCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_InsCharCost_sp
int _nc_InsCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_UpdateAttrs_sp
void _nc_UpdateAttrs_sp(
- SCREEN *sp,
+ SCREEN *sp,
const cchar_t *c)
{ /* void */ }
@@ -3510,7 +3522,7 @@ void _nc_UpdateAttrs(
#undef use_legacy_coding_sp
int use_legacy_coding_sp(
- SCREEN *sp,
+ SCREEN *sp,
int level)
{ return(*(int *)0); }
@@ -3532,14 +3544,14 @@ int use_default_colors(void)
#undef assume_default_colors_sp
int assume_default_colors_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef assume_default_colors
int assume_default_colors(
- int fg,
+ int fg,
int bg)
{ return(*(int *)0); }
@@ -3547,14 +3559,14 @@ int assume_default_colors(
#undef mcprint_sp
int mcprint_sp(
- SCREEN *sp,
- char *data,
+ SCREEN *sp,
+ char *data,
int len)
{ return(*(int *)0); }
#undef mcprint
int mcprint(
- char *data,
+ char *data,
int len)
{ return(*(int *)0); }
@@ -3567,55 +3579,55 @@ void _nc_free_ordered_pairs(
#undef _nc_reset_color_pair
void _nc_reset_color_pair(
- SCREEN *sp,
- int pair,
+ SCREEN *sp,
+ int pair,
colorpair_t *next)
{ /* void */ }
#undef _nc_set_color_pair
void _nc_set_color_pair(
- SCREEN *sp,
- int pair,
+ SCREEN *sp,
+ int pair,
int mode)
{ /* void */ }
#undef _nc_copy_pairs
void _nc_copy_pairs(
- SCREEN *sp,
- colorpair_t *target,
- colorpair_t *source,
+ SCREEN *sp,
+ colorpair_t *target,
+ colorpair_t *source,
int length)
{ /* void */ }
#undef alloc_pair_sp
int alloc_pair_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef find_pair_sp
int find_pair_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef free_pair_sp
int free_pair_sp(
- SCREEN *sp,
+ SCREEN *sp,
int pair)
{ return(*(int *)0); }
#undef alloc_pair
int alloc_pair(
- int f,
+ int f,
int b)
{ return(*(int *)0); }
#undef find_pair
int find_pair(
- int f,
+ int f,
int b)
{ return(*(int *)0); }
@@ -3628,40 +3640,40 @@ int free_pair(
#undef is_term_resized_sp
NCURSES_BOOL is_term_resized_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef is_term_resized
NCURSES_BOOL is_term_resized(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef resize_term_sp
int resize_term_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resize_term
int resize_term(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm_sp
int resizeterm_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm
int resizeterm(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -3676,8 +3688,8 @@ void _nc_trace_xnames(
#undef use_screen
int use_screen(
- SCREEN *screen,
- NCURSES_SCREEN_CB func,
+ SCREEN *screen,
+ NCURSES_SCREEN_CB func,
void *data)
{ return(*(int *)0); }
@@ -3685,8 +3697,8 @@ int use_screen(
#undef use_window
int use_window(
- WINDOW *win,
- NCURSES_WINDOW_CB func,
+ WINDOW *win,
+ NCURSES_WINDOW_CB func,
void *data)
{ return(*(int *)0); }
@@ -3694,8 +3706,8 @@ int use_window(
#undef wresize
int wresize(
- WINDOW *win,
- int ToLines,
+ WINDOW *win,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -3723,7 +3735,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -3741,12 +3753,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -3754,25 +3779,25 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
+ TERMTYPE2 *to,
TERMTYPE2 *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
#undef _nc_copy_termtype2
void _nc_copy_termtype2(
- TERMTYPE2 *dst,
+ TERMTYPE2 *dst,
const TERMTYPE2 *src)
{ /* void */ }
#undef _nc_export_termtype2
void _nc_export_termtype2(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE2 *src)
{ /* void */ }
@@ -3842,19 +3867,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -3862,14 +3887,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -3906,13 +3931,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -3920,7 +3945,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -3933,7 +3958,7 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
+ ENTRY *headp,
TERMTYPE2 *tterm)
{ /* void */ }
@@ -3992,7 +4017,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -4027,8 +4052,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -4067,7 +4092,7 @@ TERMINAL *_nc_cur_term(void)
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -4078,7 +4103,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -4194,7 +4219,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -4218,7 +4243,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -4231,19 +4256,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -4254,37 +4279,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -4295,7 +4320,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -4306,7 +4331,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -4317,14 +4342,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -4386,14 +4411,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -4432,7 +4457,7 @@ int _nc_TABSIZE(void)
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -4448,13 +4473,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -4470,8 +4495,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -4482,13 +4507,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
+ const char *const tn,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -4507,9 +4532,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -4527,8 +4552,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -4541,20 +4566,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -4565,7 +4590,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -4576,14 +4601,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -4602,8 +4627,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -4611,7 +4636,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -4622,7 +4647,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -4633,7 +4658,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -4649,23 +4674,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -4682,7 +4720,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -4702,7 +4740,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -4713,7 +4751,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -4724,7 +4762,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -4735,35 +4773,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -4803,7 +4841,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -4859,8 +4897,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -4871,7 +4909,7 @@ int _nc_use_tracef(
#undef _nc_locked_tracef
void _nc_locked_tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -4879,7 +4917,7 @@ void _nc_locked_tracef(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -4900,13 +4938,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -4922,7 +4960,7 @@ chtype _nc_retrace_chtype(
#undef _tracecchar_t2
char *_tracecchar_t2(
- int bufnum,
+ int bufnum,
const cchar_t *ch)
{ return(*(char **)0); }
@@ -4935,7 +4973,7 @@ char *_tracecchar_t(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -4946,7 +4984,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -4959,7 +4997,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -4970,7 +5008,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -5037,9 +5075,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -5052,8 +5090,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -5087,14 +5125,14 @@ const char *const *_nc_strfnames(void)
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -5107,28 +5145,28 @@ void _nc_init_termtype(
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE2 *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
+ const char *const filename,
TERMTYPE2 *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry2
int _nc_read_entry2(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE *const tp)
{ return(*(int *)0); }
@@ -5136,7 +5174,7 @@ int _nc_read_entry(
#undef _nc_read_termcap_entry
int _nc_read_termcap_entry(
- const char *const tn,
+ const char *const tn,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
@@ -5144,32 +5182,32 @@ int _nc_read_termcap_entry(
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -5177,13 +5215,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -5198,21 +5236,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -5227,7 +5265,7 @@ char *_nc_trim_sgr0(
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -5240,7 +5278,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -5251,13 +5289,13 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viswbuf2
const char *_nc_viswbuf2(
- int bufnum,
+ int bufnum,
const wchar_t *buf)
{ return(*(const char **)0); }
@@ -5268,7 +5306,7 @@ const char *_nc_viswbuf(
#undef _nc_viswbufn
const char *_nc_viswbufn(
- const wchar_t *buf,
+ const wchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -5279,14 +5317,14 @@ const char *_nc_viswibuf(
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const cchar_t *buf,
+ int bufnum,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const cchar_t *buf,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -5304,18 +5342,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -5323,15 +5361,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -5339,8 +5377,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -5348,28 +5386,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE2 *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -5394,7 +5432,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -5405,7 +5443,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -5423,14 +5461,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -5448,9 +5486,9 @@ void _nc_write_entry(
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE2 *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
@@ -5462,14 +5500,14 @@ int _nc_tic_written(void)
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -5483,7 +5521,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -5496,14 +5534,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -5511,14 +5549,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/llib-lncursesw b/ncurses/llib-lncursesw
index dd084a4..0f41959 100644
--- a/ncurses/llib-lncursesw
+++ b/ncurses/llib-lncursesw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2001-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -70,7 +70,7 @@ void _nc_hash_map(void)
#undef _nc_make_oldhash_sp
void _nc_make_oldhash_sp(
- SCREEN *sp,
+ SCREEN *sp,
int i)
{ /* void */ }
@@ -81,16 +81,16 @@ void _nc_make_oldhash(
#undef _nc_scroll_oldhash_sp
void _nc_scroll_oldhash_sp(
- SCREEN *sp,
- int n,
- int top,
+ SCREEN *sp,
+ int n,
+ int top,
int bot)
{ /* void */ }
#undef _nc_scroll_oldhash
void _nc_scroll_oldhash(
- int n,
- int top,
+ int n,
+ int top,
int bot)
{ /* void */ }
@@ -98,31 +98,31 @@ void _nc_scroll_oldhash(
#undef _nc_render
cchar_t _nc_render(
- WINDOW *win,
+ WINDOW *win,
cchar_t ch)
{ return(*(cchar_t *)0); }
#undef _nc_build_wch
int _nc_build_wch(
- WINDOW *win,
+ WINDOW *win,
cchar_t *ch)
{ return(*(int *)0); }
#undef _nc_waddch_nosync
int _nc_waddch_nosync(
- WINDOW *win,
+ WINDOW *win,
const cchar_t c)
{ return(*(int *)0); }
#undef waddch
int waddch(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
#undef wechochar
int wechochar(
- WINDOW *win,
+ WINDOW *win,
const chtype ch)
{ return(*(int *)0); }
@@ -130,15 +130,15 @@ int wechochar(
#undef waddnstr
int waddnstr(
- WINDOW *win,
- const char *astr,
+ WINDOW *win,
+ const char *astr,
int n)
{ return(*(int *)0); }
#undef waddchnstr
int waddchnstr(
- WINDOW *win,
- const chtype *astr,
+ WINDOW *win,
+ const chtype *astr,
int n)
{ return(*(int *)0); }
@@ -149,15 +149,15 @@ int _nc_wchstrlen(
#undef wadd_wchnstr
int wadd_wchnstr(
- WINDOW *win,
- const cchar_t *astr,
+ WINDOW *win,
+ const cchar_t *astr,
int n)
{ return(*(int *)0); }
#undef waddnwstr
int waddnwstr(
- WINDOW *win,
- const wchar_t *str,
+ WINDOW *win,
+ const wchar_t *str,
int n)
{ return(*(int *)0); }
@@ -176,25 +176,25 @@ int beep(void)
#undef wbkgrndset
void wbkgrndset(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *ch)
{ /* void */ }
#undef wbkgdset
void wbkgdset(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ /* void */ }
#undef wbkgrnd
int wbkgrnd(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *ch)
{ return(*(int *)0); }
#undef wbkgd
int wbkgd(
- WINDOW *win,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
@@ -202,14 +202,14 @@ int wbkgd(
#undef wborder
int wborder(
- WINDOW *win,
- chtype ls,
- chtype rs,
- chtype ts,
- chtype bs,
- chtype tl,
- chtype tr,
- chtype bl,
+ WINDOW *win,
+ chtype ls,
+ chtype rs,
+ chtype ts,
+ chtype bs,
+ chtype tl,
+ chtype tr,
+ chtype bl,
chtype br)
{ return(*(int *)0); }
@@ -217,10 +217,10 @@ int wborder(
#undef wchgat
int wchgat(
- WINDOW *win,
- int n,
- attr_t attr,
- short pair_arg,
+ WINDOW *win,
+ int n,
+ attr_t attr,
+ short pair_arg,
const void *opts)
{ return(*(int *)0); }
@@ -235,7 +235,7 @@ int wclear(
#undef clearok
int clearok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -280,62 +280,62 @@ int start_color(void)
#undef _nc_change_pair
void _nc_change_pair(
- SCREEN *sp,
+ SCREEN *sp,
int pair)
{ /* void */ }
#undef _nc_reserve_pairs
void _nc_reserve_pairs(
- SCREEN *sp,
+ SCREEN *sp,
int want)
{ /* void */ }
#undef _nc_init_pair
int _nc_init_pair(
- SCREEN *sp,
- int pair,
- int f,
+ SCREEN *sp,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_pair_sp
int init_pair_sp(
- SCREEN *sp,
- short pair,
- short f,
+ SCREEN *sp,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef init_pair
int init_pair(
- short pair,
- short f,
+ short pair,
+ short f,
short b)
{ return(*(int *)0); }
#undef _nc_init_color
int _nc_init_color(
- SCREEN *sp,
- int color,
- int r,
- int g,
+ SCREEN *sp,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef init_color_sp
int init_color_sp(
- SCREEN *sp,
- short color,
- short r,
- short g,
+ SCREEN *sp,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
#undef init_color
int init_color(
- short color,
- short r,
- short g,
+ short color,
+ short r,
+ short g,
short b)
{ return(*(int *)0); }
@@ -359,92 +359,92 @@ NCURSES_BOOL has_colors(void)
#undef color_content_sp
int color_content_sp(
- SCREEN *sp,
- short color,
- short *r,
- short *g,
+ SCREEN *sp,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef color_content
int color_content(
- short color,
- short *r,
- short *g,
+ short color,
+ short *r,
+ short *g,
short *b)
{ return(*(int *)0); }
#undef _nc_pair_content
int _nc_pair_content(
- SCREEN *sp,
- int pair,
- int *f,
+ SCREEN *sp,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
#undef pair_content_sp
int pair_content_sp(
- SCREEN *sp,
- short pair,
- short *f,
+ SCREEN *sp,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef pair_content
int pair_content(
- short pair,
- short *f,
+ short pair,
+ short *f,
short *b)
{ return(*(int *)0); }
#undef _nc_do_color_sp
void _nc_do_color_sp(
- SCREEN *sp,
- int old_pair,
- int pair,
- int reverse,
+ SCREEN *sp,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC_sp outc)
{ /* void */ }
#undef _nc_do_color
void _nc_do_color(
- int old_pair,
- int pair,
- int reverse,
+ int old_pair,
+ int pair,
+ int reverse,
NCURSES_OUTC outc)
{ /* void */ }
#undef init_extended_pair_sp
int init_extended_pair_sp(
- SCREEN *sp,
- int pair,
- int f,
+ SCREEN *sp,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_extended_color_sp
int init_extended_color_sp(
- SCREEN *sp,
- int color,
- int r,
- int g,
+ SCREEN *sp,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef extended_color_content_sp
int extended_color_content_sp(
- SCREEN *sp,
- int color,
- int *r,
- int *g,
+ SCREEN *sp,
+ int color,
+ int *r,
+ int *g,
int *b)
{ return(*(int *)0); }
#undef extended_pair_content_sp
int extended_pair_content_sp(
- SCREEN *sp,
- int pair,
- int *f,
+ SCREEN *sp,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
@@ -455,31 +455,31 @@ void reset_color_pairs_sp(
#undef init_extended_pair
int init_extended_pair(
- int pair,
- int f,
+ int pair,
+ int f,
int b)
{ return(*(int *)0); }
#undef init_extended_color
int init_extended_color(
- int color,
- int r,
- int g,
+ int color,
+ int r,
+ int g,
int b)
{ return(*(int *)0); }
#undef extended_color_content
int extended_color_content(
- int color,
- int *r,
- int *g,
+ int color,
+ int *r,
+ int *g,
int *b)
{ return(*(int *)0); }
#undef extended_pair_content
int extended_pair_content(
- int pair,
- int *f,
+ int pair,
+ int *f,
int *b)
{ return(*(int *)0); }
@@ -491,8 +491,8 @@ void reset_color_pairs(void)
#undef wcolor_set
int wcolor_set(
- WINDOW *win,
- short pair_arg,
+ WINDOW *win,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -562,1302 +562,1302 @@ int flash(void)
/* ./lib_gen.c */
#undef addch
-int (addch)(
+int addch(
const chtype z)
{ return(*(int *)0); }
#undef addchnstr
-int (addchnstr)(
- const chtype *a1,
+int addchnstr(
+ const chtype *a1,
int z)
{ return(*(int *)0); }
#undef addchstr
-int (addchstr)(
+int addchstr(
const chtype *z)
{ return(*(int *)0); }
#undef addnstr
-int (addnstr)(
- const char *a1,
+int addnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef addstr
-int (addstr)(
+int addstr(
const char *z)
{ return(*(int *)0); }
#undef attroff
-int (attroff)(
+int attroff(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attron
-int (attron)(
+int attron(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attrset
-int (attrset)(
+int attrset(
NCURSES_ATTR_T z)
{ return(*(int *)0); }
#undef attr_get
-int (attr_get)(
- attr_t *a1,
- short *a2,
+int attr_get(
+ attr_t *a1,
+ short *a2,
void *z)
{ return(*(int *)0); }
#undef attr_off
-int (attr_off)(
- attr_t a1,
+int attr_off(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_on
-int (attr_on)(
- attr_t a1,
+int attr_on(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef attr_set
-int (attr_set)(
- attr_t a1,
- short a2,
+int attr_set(
+ attr_t a1,
+ short a2,
void *z)
{ return(*(int *)0); }
#undef bkgd
-int (bkgd)(
+int bkgd(
chtype z)
{ return(*(int *)0); }
#undef bkgdset
-void (bkgdset)(
+void bkgdset(
chtype z)
{ /* void */ }
#undef border
-int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
- chtype a4,
- chtype a5,
- chtype a6,
- chtype a7,
+int border(
+ chtype a1,
+ chtype a2,
+ chtype a3,
+ chtype a4,
+ chtype a5,
+ chtype a6,
+ chtype a7,
chtype z)
{ return(*(int *)0); }
#undef box
-int (box)(
- WINDOW *a1,
- chtype a2,
+int box(
+ WINDOW *a1,
+ chtype a2,
chtype z)
{ return(*(int *)0); }
#undef chgat
-int (chgat)(
- int a1,
- attr_t a2,
- short a3,
+int chgat(
+ int a1,
+ attr_t a2,
+ short a3,
const void *z)
{ return(*(int *)0); }
#undef clear
-int (clear)(void)
+int clear(void)
{ return(*(int *)0); }
#undef clrtobot
-int (clrtobot)(void)
+int clrtobot(void)
{ return(*(int *)0); }
#undef clrtoeol
-int (clrtoeol)(void)
+int clrtoeol(void)
{ return(*(int *)0); }
#undef color_set
-int (color_set)(
- short a1,
+int color_set(
+ short a1,
void *z)
{ return(*(int *)0); }
#undef COLOR_PAIR
-int (COLOR_PAIR)(
+int COLOR_PAIR(
int z)
{ return(*(int *)0); }
#undef delch
-int (delch)(void)
+int delch(void)
{ return(*(int *)0); }
#undef deleteln
-int (deleteln)(void)
+int deleteln(void)
{ return(*(int *)0); }
#undef echochar
-int (echochar)(
+int echochar(
const chtype z)
{ return(*(int *)0); }
#undef erase
-int (erase)(void)
+int erase(void)
{ return(*(int *)0); }
#undef getbkgd
-chtype (getbkgd)(
+chtype getbkgd(
WINDOW *z)
{ return(*(chtype *)0); }
#undef getch
-int (getch)(void)
+int getch(void)
{ return(*(int *)0); }
#undef getnstr
-int (getnstr)(
- char *a1,
+int getnstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef getstr
-int (getstr)(
+int getstr(
char *z)
{ return(*(int *)0); }
#undef hline
-int (hline)(
- chtype a1,
+int hline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef inch
-chtype (inch)(void)
+chtype inch(void)
{ return(*(chtype *)0); }
#undef inchnstr
-int (inchnstr)(
- chtype *a1,
+int inchnstr(
+ chtype *a1,
int z)
{ return(*(int *)0); }
#undef inchstr
-int (inchstr)(
+int inchstr(
chtype *z)
{ return(*(int *)0); }
#undef innstr
-int (innstr)(
- char *a1,
+int innstr(
+ char *a1,
int z)
{ return(*(int *)0); }
#undef insch
-int (insch)(
+int insch(
chtype z)
{ return(*(int *)0); }
#undef insdelln
-int (insdelln)(
+int insdelln(
int z)
{ return(*(int *)0); }
#undef insertln
-int (insertln)(void)
+int insertln(void)
{ return(*(int *)0); }
#undef insnstr
-int (insnstr)(
- const char *a1,
+int insnstr(
+ const char *a1,
int z)
{ return(*(int *)0); }
#undef insstr
-int (insstr)(
+int insstr(
const char *z)
{ return(*(int *)0); }
#undef instr
-int (instr)(
+int instr(
char *z)
{ return(*(int *)0); }
#undef move
-int (move)(
- int a1,
+int move(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvaddch
-int (mvaddch)(
- int a1,
- int a2,
+int mvaddch(
+ int a1,
+ int a2,
const chtype z)
{ return(*(int *)0); }
#undef mvaddchnstr
-int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
+int mvaddchnstr(
+ int a1,
+ int a2,
+ const chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvaddchstr
-int (mvaddchstr)(
- int a1,
- int a2,
+int mvaddchstr(
+ int a1,
+ int a2,
const chtype *z)
{ return(*(int *)0); }
#undef mvaddnstr
-int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvaddnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvaddstr
-int (mvaddstr)(
- int a1,
- int a2,
+int mvaddstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvchgat
-int (mvchgat)(
- int a1,
- int a2,
- int a3,
- attr_t a4,
- short a5,
+int mvchgat(
+ int a1,
+ int a2,
+ int a3,
+ attr_t a4,
+ short a5,
const void *z)
{ return(*(int *)0); }
#undef mvdelch
-int (mvdelch)(
- int a1,
+int mvdelch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetch
-int (mvgetch)(
- int a1,
+int mvgetch(
+ int a1,
int z)
{ return(*(int *)0); }
#undef mvgetnstr
-int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
+int mvgetnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvgetstr
-int (mvgetstr)(
- int a1,
- int a2,
+int mvgetstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvhline
-int (mvhline)(
- int a1,
- int a2,
- chtype a3,
+int mvhline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvinch
-chtype (mvinch)(
- int a1,
+chtype mvinch(
+ int a1,
int z)
{ return(*(chtype *)0); }
#undef mvinchnstr
-int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
+int mvinchnstr(
+ int a1,
+ int a2,
+ chtype *a3,
int z)
{ return(*(int *)0); }
#undef mvinchstr
-int (mvinchstr)(
- int a1,
- int a2,
+int mvinchstr(
+ int a1,
+ int a2,
chtype *z)
{ return(*(int *)0); }
#undef mvinnstr
-int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
+int mvinnstr(
+ int a1,
+ int a2,
+ char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsch
-int (mvinsch)(
- int a1,
- int a2,
+int mvinsch(
+ int a1,
+ int a2,
chtype z)
{ return(*(int *)0); }
#undef mvinsnstr
-int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
+int mvinsnstr(
+ int a1,
+ int a2,
+ const char *a3,
int z)
{ return(*(int *)0); }
#undef mvinsstr
-int (mvinsstr)(
- int a1,
- int a2,
+int mvinsstr(
+ int a1,
+ int a2,
const char *z)
{ return(*(int *)0); }
#undef mvinstr
-int (mvinstr)(
- int a1,
- int a2,
+int mvinstr(
+ int a1,
+ int a2,
char *z)
{ return(*(int *)0); }
#undef mvvline
-int (mvvline)(
- int a1,
- int a2,
- chtype a3,
+int mvvline(
+ int a1,
+ int a2,
+ chtype a3,
int z)
{ return(*(int *)0); }
#undef mvwaddch
-int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype z)
{ return(*(int *)0); }
#undef mvwaddchnstr
-int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const chtype *a4,
+int mvwaddchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddchstr
-int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const chtype *z)
{ return(*(int *)0); }
#undef mvwaddnstr
-int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwaddnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddstr
-int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwchgat
-int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
- int a4,
- attr_t a5,
- short a6,
+int mvwchgat(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ int a4,
+ attr_t a5,
+ short a6,
const void *z)
{ return(*(int *)0); }
#undef mvwdelch
-int (mvwdelch)(
- WINDOW *a1,
- int a2,
+int mvwdelch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetch
-int (mvwgetch)(
- WINDOW *a1,
- int a2,
+int mvwgetch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef mvwgetnstr
-int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwgetnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwgetstr
-int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwgetstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwhline
-int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwhline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef mvwinch
-chtype (mvwinch)(
- WINDOW *a1,
- int a2,
+chtype mvwinch(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(chtype *)0); }
#undef mvwinchnstr
-int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype *a4,
+int mvwinchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype *a4,
int z)
{ return(*(int *)0); }
#undef mvwinchstr
-int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype *z)
{ return(*(int *)0); }
#undef mvwinnstr
-int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- char *a4,
+int mvwinnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsch
-int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsch(
+ WINDOW *a1,
+ int a2,
+ int a3,
chtype z)
{ return(*(int *)0); }
#undef mvwinsnstr
-int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const char *a4,
+int mvwinsnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const char *a4,
int z)
{ return(*(int *)0); }
#undef mvwinsstr
-int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinsstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const char *z)
{ return(*(int *)0); }
#undef mvwinstr
-int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
char *z)
{ return(*(int *)0); }
#undef mvwvline
-int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
- chtype a4,
+int mvwvline(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ chtype a4,
int z)
{ return(*(int *)0); }
#undef PAIR_NUMBER
-int (PAIR_NUMBER)(
+int PAIR_NUMBER(
int z)
{ return(*(int *)0); }
#undef redrawwin
-int (redrawwin)(
+int redrawwin(
WINDOW *z)
{ return(*(int *)0); }
#undef refresh
-int (refresh)(void)
+int refresh(void)
{ return(*(int *)0); }
#undef scrl
-int (scrl)(
+int scrl(
int z)
{ return(*(int *)0); }
#undef scroll
-int (scroll)(
+int scroll(
WINDOW *z)
{ return(*(int *)0); }
#undef setscrreg
-int (setscrreg)(
- int a1,
+int setscrreg(
+ int a1,
int z)
{ return(*(int *)0); }
#undef slk_attr_off
-int (slk_attr_off)(
- const attr_t a1,
+int slk_attr_off(
+ const attr_t a1,
void *z)
{ return(*(int *)0); }
#undef slk_attr_on
-int (slk_attr_on)(
- attr_t a1,
+int slk_attr_on(
+ attr_t a1,
void *z)
{ return(*(int *)0); }
#undef standout
-int (standout)(void)
+int standout(void)
{ return(*(int *)0); }
#undef standend
-int (standend)(void)
+int standend(void)
{ return(*(int *)0); }
#undef timeout
-void (timeout)(
+void timeout(
int z)
{ /* void */ }
#undef touchline
-int (touchline)(
- WINDOW *a1,
- int a2,
+int touchline(
+ WINDOW *a1,
+ int a2,
int z)
{ return(*(int *)0); }
#undef touchwin
-int (touchwin)(
+int touchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef untouchwin
-int (untouchwin)(
+int untouchwin(
WINDOW *z)
{ return(*(int *)0); }
#undef vline
-int (vline)(
- chtype a1,
+int vline(
+ chtype a1,
int z)
{ return(*(int *)0); }
#undef waddchstr
-int (waddchstr)(
- WINDOW *a1,
+int waddchstr(
+ WINDOW *a1,
const chtype *z)
{ return(*(int *)0); }
#undef waddstr
-int (waddstr)(
- WINDOW *a1,
+int waddstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef wattron
-int (wattron)(
- WINDOW *a1,
+int wattron(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattroff
-int (wattroff)(
- WINDOW *a1,
+int wattroff(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattrset
-int (wattrset)(
- WINDOW *a1,
+int wattrset(
+ WINDOW *a1,
int z)
{ return(*(int *)0); }
#undef wattr_get
-int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
+int wattr_get(
+ WINDOW *a1,
+ attr_t *a2,
+ short *a3,
void *z)
{ return(*(int *)0); }
#undef wattr_set
-int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
+int wattr_set(
+ WINDOW *a1,
+ attr_t a2,
+ short a3,
void *z)
{ return(*(int *)0); }
#undef wdeleteln
-int (wdeleteln)(
+int wdeleteln(
WINDOW *z)
{ return(*(int *)0); }
#undef wgetstr
-int (wgetstr)(
- WINDOW *a1,
+int wgetstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef winchstr
-int (winchstr)(
- WINDOW *a1,
+int winchstr(
+ WINDOW *a1,
chtype *z)
{ return(*(int *)0); }
#undef winsertln
-int (winsertln)(
+int winsertln(
WINDOW *z)
{ return(*(int *)0); }
#undef winsstr
-int (winsstr)(
- WINDOW *a1,
+int winsstr(
+ WINDOW *a1,
const char *z)
{ return(*(int *)0); }
#undef winstr
-int (winstr)(
- WINDOW *a1,
+int winstr(
+ WINDOW *a1,
char *z)
{ return(*(int *)0); }
#undef wstandout
-int (wstandout)(
+int wstandout(
WINDOW *z)
{ return(*(int *)0); }
#undef wstandend
-int (wstandend)(
+int wstandend(
WINDOW *z)
{ return(*(int *)0); }
#undef getattrs
-int (getattrs)(
+int getattrs(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcurx
-int (getcurx)(
+int getcurx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getcury
-int (getcury)(
+int getcury(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegx
-int (getbegx)(
+int getbegx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getbegy
-int (getbegy)(
+int getbegy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxx
-int (getmaxx)(
+int getmaxx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getmaxy
-int (getmaxy)(
+int getmaxy(
const WINDOW *z)
{ return(*(int *)0); }
#undef getparx
-int (getparx)(
+int getparx(
const WINDOW *z)
{ return(*(int *)0); }
#undef getpary
-int (getpary)(
+int getpary(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetparent
-WINDOW *(wgetparent)(
+WINDOW *wgetparent(
const WINDOW *z)
{ return(*(WINDOW **)0); }
#undef is_cleared
-NCURSES_BOOL (is_cleared)(
+NCURSES_BOOL is_cleared(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idcok
-NCURSES_BOOL (is_idcok)(
+NCURSES_BOOL is_idcok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_idlok
-NCURSES_BOOL (is_idlok)(
+NCURSES_BOOL is_idlok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_immedok
-NCURSES_BOOL (is_immedok)(
+NCURSES_BOOL is_immedok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_keypad
-NCURSES_BOOL (is_keypad)(
+NCURSES_BOOL is_keypad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_leaveok
-NCURSES_BOOL (is_leaveok)(
+NCURSES_BOOL is_leaveok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_nodelay
-NCURSES_BOOL (is_nodelay)(
+NCURSES_BOOL is_nodelay(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_notimeout
-NCURSES_BOOL (is_notimeout)(
+NCURSES_BOOL is_notimeout(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_pad
-NCURSES_BOOL (is_pad)(
+NCURSES_BOOL is_pad(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_scrollok
-NCURSES_BOOL (is_scrollok)(
+NCURSES_BOOL is_scrollok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_subwin
-NCURSES_BOOL (is_subwin)(
+NCURSES_BOOL is_subwin(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef is_syncok
-NCURSES_BOOL (is_syncok)(
+NCURSES_BOOL is_syncok(
const WINDOW *z)
{ return(*(NCURSES_BOOL *)0); }
#undef wgetdelay
-int (wgetdelay)(
+int wgetdelay(
const WINDOW *z)
{ return(*(int *)0); }
#undef wgetscrreg
-int (wgetscrreg)(
- const WINDOW *a1,
- int *a2,
+int wgetscrreg(
+ const WINDOW *a1,
+ int *a2,
int *z)
{ return(*(int *)0); }
#undef add_wch
-int (add_wch)(
+int add_wch(
const cchar_t *z)
{ return(*(int *)0); }
#undef add_wchnstr
-int (add_wchnstr)(
- const cchar_t *a1,
+int add_wchnstr(
+ const cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef add_wchstr
-int (add_wchstr)(
+int add_wchstr(
const cchar_t *z)
{ return(*(int *)0); }
#undef addnwstr
-int (addnwstr)(
- const wchar_t *a1,
+int addnwstr(
+ const wchar_t *a1,
int z)
{ return(*(int *)0); }
#undef addwstr
-int (addwstr)(
+int addwstr(
const wchar_t *z)
{ return(*(int *)0); }
#undef bkgrnd
-int (bkgrnd)(
+int bkgrnd(
const cchar_t *z)
{ return(*(int *)0); }
#undef bkgrndset
-void (bkgrndset)(
+void bkgrndset(
const cchar_t *z)
{ /* void */ }
#undef border_set
-int (border_set)(
- const cchar_t *a1,
- const cchar_t *a2,
- const cchar_t *a3,
- const cchar_t *a4,
- const cchar_t *a5,
- const cchar_t *a6,
- const cchar_t *a7,
+int border_set(
+ const cchar_t *a1,
+ const cchar_t *a2,
+ const cchar_t *a3,
+ const cchar_t *a4,
+ const cchar_t *a5,
+ const cchar_t *a6,
+ const cchar_t *a7,
const cchar_t *z)
{ return(*(int *)0); }
#undef box_set
-int (box_set)(
- WINDOW *a1,
- const cchar_t *a2,
+int box_set(
+ WINDOW *a1,
+ const cchar_t *a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef echo_wchar
-int (echo_wchar)(
+int echo_wchar(
const cchar_t *z)
{ return(*(int *)0); }
#undef get_wch
-int (get_wch)(
+int get_wch(
wint_t *z)
{ return(*(int *)0); }
#undef get_wstr
-int (get_wstr)(
+int get_wstr(
wint_t *z)
{ return(*(int *)0); }
#undef getbkgrnd
-int (getbkgrnd)(
+int getbkgrnd(
cchar_t *z)
{ return(*(int *)0); }
#undef getn_wstr
-int (getn_wstr)(
- wint_t *a1,
+int getn_wstr(
+ wint_t *a1,
int z)
{ return(*(int *)0); }
#undef hline_set
-int (hline_set)(
- const cchar_t *a1,
+int hline_set(
+ const cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef in_wch
-int (in_wch)(
+int in_wch(
cchar_t *z)
{ return(*(int *)0); }
#undef in_wchnstr
-int (in_wchnstr)(
- cchar_t *a1,
+int in_wchnstr(
+ cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef in_wchstr
-int (in_wchstr)(
+int in_wchstr(
cchar_t *z)
{ return(*(int *)0); }
#undef innwstr
-int (innwstr)(
- wchar_t *a1,
+int innwstr(
+ wchar_t *a1,
int z)
{ return(*(int *)0); }
#undef ins_nwstr
-int (ins_nwstr)(
- const wchar_t *a1,
+int ins_nwstr(
+ const wchar_t *a1,
int z)
{ return(*(int *)0); }
#undef ins_wch
-int (ins_wch)(
+int ins_wch(
const cchar_t *z)
{ return(*(int *)0); }
#undef ins_wstr
-int (ins_wstr)(
+int ins_wstr(
const wchar_t *z)
{ return(*(int *)0); }
#undef inwstr
-int (inwstr)(
+int inwstr(
wchar_t *z)
{ return(*(int *)0); }
#undef mvadd_wch
-int (mvadd_wch)(
- int a1,
- int a2,
+int mvadd_wch(
+ int a1,
+ int a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvadd_wchnstr
-int (mvadd_wchnstr)(
- int a1,
- int a2,
- const cchar_t *a3,
+int mvadd_wchnstr(
+ int a1,
+ int a2,
+ const cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvadd_wchstr
-int (mvadd_wchstr)(
- int a1,
- int a2,
+int mvadd_wchstr(
+ int a1,
+ int a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvaddnwstr
-int (mvaddnwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
+int mvaddnwstr(
+ int a1,
+ int a2,
+ const wchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvaddwstr
-int (mvaddwstr)(
- int a1,
- int a2,
+int mvaddwstr(
+ int a1,
+ int a2,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvget_wch
-int (mvget_wch)(
- int a1,
- int a2,
+int mvget_wch(
+ int a1,
+ int a2,
wint_t *z)
{ return(*(int *)0); }
#undef mvget_wstr
-int (mvget_wstr)(
- int a1,
- int a2,
+int mvget_wstr(
+ int a1,
+ int a2,
wint_t *z)
{ return(*(int *)0); }
#undef mvgetn_wstr
-int (mvgetn_wstr)(
- int a1,
- int a2,
- wint_t *a3,
+int mvgetn_wstr(
+ int a1,
+ int a2,
+ wint_t *a3,
int z)
{ return(*(int *)0); }
#undef mvhline_set
-int (mvhline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
+int mvhline_set(
+ int a1,
+ int a2,
+ const cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvin_wch
-int (mvin_wch)(
- int a1,
- int a2,
+int mvin_wch(
+ int a1,
+ int a2,
cchar_t *z)
{ return(*(int *)0); }
#undef mvin_wchnstr
-int (mvin_wchnstr)(
- int a1,
- int a2,
- cchar_t *a3,
+int mvin_wchnstr(
+ int a1,
+ int a2,
+ cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvin_wchstr
-int (mvin_wchstr)(
- int a1,
- int a2,
+int mvin_wchstr(
+ int a1,
+ int a2,
cchar_t *z)
{ return(*(int *)0); }
#undef mvinnwstr
-int (mvinnwstr)(
- int a1,
- int a2,
- wchar_t *a3,
+int mvinnwstr(
+ int a1,
+ int a2,
+ wchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvins_nwstr
-int (mvins_nwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
+int mvins_nwstr(
+ int a1,
+ int a2,
+ const wchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvins_wch
-int (mvins_wch)(
- int a1,
- int a2,
+int mvins_wch(
+ int a1,
+ int a2,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvins_wstr
-int (mvins_wstr)(
- int a1,
- int a2,
+int mvins_wstr(
+ int a1,
+ int a2,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvinwstr
-int (mvinwstr)(
- int a1,
- int a2,
+int mvinwstr(
+ int a1,
+ int a2,
wchar_t *z)
{ return(*(int *)0); }
#undef mvvline_set
-int (mvvline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
+int mvvline_set(
+ int a1,
+ int a2,
+ const cchar_t *a3,
int z)
{ return(*(int *)0); }
#undef mvwadd_wch
-int (mvwadd_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwadd_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvwadd_wchnstr
-int (mvwadd_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const cchar_t *a4,
+int mvwadd_wchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwadd_wchstr
-int (mvwadd_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwadd_wchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvwaddnwstr
-int (mvwaddnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const wchar_t *a4,
+int mvwaddnwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const wchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwaddwstr
-int (mvwaddwstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwaddwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvwget_wch
-int (mvwget_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwget_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
wint_t *z)
{ return(*(int *)0); }
#undef mvwget_wstr
-int (mvwget_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwget_wstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
wint_t *z)
{ return(*(int *)0); }
#undef mvwgetn_wstr
-int (mvwgetn_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
- wint_t *a4,
+int mvwgetn_wstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ wint_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwhline_set
-int (mvwhline_set)(
- WINDOW *a1,
- int a2,
- int a3,
- const cchar_t *a4,
+int mvwhline_set(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwin_wch
-int (mvwin_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwin_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
cchar_t *z)
{ return(*(int *)0); }
#undef mvwin_wchnstr
-int (mvwin_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
- cchar_t *a4,
+int mvwin_wchnstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwin_wchstr
-int (mvwin_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwin_wchstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
cchar_t *z)
{ return(*(int *)0); }
#undef mvwinnwstr
-int (mvwinnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
- wchar_t *a4,
+int mvwinnwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ wchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwins_nwstr
-int (mvwins_nwstr)(
- WINDOW *a1,
- int a2,
- int a3,
- const wchar_t *a4,
+int mvwins_nwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const wchar_t *a4,
int z)
{ return(*(int *)0); }
#undef mvwins_wch
-int (mvwins_wch)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwins_wch(
+ WINDOW *a1,
+ int a2,
+ int a3,
const cchar_t *z)
{ return(*(int *)0); }
#undef mvwins_wstr
-int (mvwins_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwins_wstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
const wchar_t *z)
{ return(*(int *)0); }
#undef mvwinwstr
-int (mvwinwstr)(
- WINDOW *a1,
- int a2,
- int a3,
+int mvwinwstr(
+ WINDOW *a1,
+ int a2,
+ int a3,
wchar_t *z)
{ return(*(int *)0); }
#undef mvwvline_set
-int (mvwvline_set)(
- WINDOW *a1,
- int a2,
- int a3,
- const cchar_t *a4,
+int mvwvline_set(
+ WINDOW *a1,
+ int a2,
+ int a3,
+ const cchar_t *a4,
int z)
{ return(*(int *)0); }
#undef vline_set
-int (vline_set)(
- const cchar_t *a1,
+int vline_set(
+ const cchar_t *a1,
int z)
{ return(*(int *)0); }
#undef wadd_wchstr
-int (wadd_wchstr)(
- WINDOW *a1,
+int wadd_wchstr(
+ WINDOW *a1,
const cchar_t *z)
{ return(*(int *)0); }
#undef waddwstr
-int (waddwstr)(
- WINDOW *a1,
+int waddwstr(
+ WINDOW *a1,
const wchar_t *z)
{ return(*(int *)0); }
#undef wget_wstr
-int (wget_wstr)(
- WINDOW *a1,
+int wget_wstr(
+ WINDOW *a1,
wint_t *z)
{ return(*(int *)0); }
#undef wgetbkgrnd
-int (wgetbkgrnd)(
- WINDOW *a1,
+int wgetbkgrnd(
+ WINDOW *a1,
cchar_t *z)
{ return(*(int *)0); }
#undef win_wchstr
-int (win_wchstr)(
- WINDOW *a1,
+int win_wchstr(
+ WINDOW *a1,
cchar_t *z)
{ return(*(int *)0); }
#undef wins_wstr
-int (wins_wstr)(
- WINDOW *a1,
+int wins_wstr(
+ WINDOW *a1,
const wchar_t *z)
{ return(*(int *)0); }
#undef mouse_trafo
-NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
+NCURSES_BOOL mouse_trafo(
+ int *a1,
+ int *a2,
NCURSES_BOOL z)
{ return(*(NCURSES_BOOL *)0); }
@@ -1868,7 +1868,7 @@ int ESCDELAY;
#undef set_escdelay_sp
int set_escdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -1888,8 +1888,8 @@ int get_escdelay(void)
#undef _nc_wgetch
int _nc_wgetch(
- WINDOW *win,
- int *result,
+ WINDOW *win,
+ int *result,
int use_meta)
{ return(*(int *)0); }
@@ -1902,8 +1902,8 @@ int wgetch(
#undef wgetnstr
int wgetnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int maxlen)
{ return(*(int *)0); }
@@ -1911,8 +1911,8 @@ int wgetnstr(
#undef whline
int whline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -1920,7 +1920,7 @@ int whline(
#undef immedok
void immedok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
@@ -1928,8 +1928,8 @@ void immedok(
#undef winchnstr
int winchnstr(
- WINDOW *win,
- chtype *str,
+ WINDOW *win,
+ chtype *str,
int n)
{ return(*(int *)0); }
@@ -1943,14 +1943,14 @@ WINDOW *initscr(void)
#undef _nc_insert_ch
int _nc_insert_ch(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
chtype ch)
{ return(*(int *)0); }
#undef winsch
int winsch(
- WINDOW *win,
+ WINDOW *win,
chtype c)
{ return(*(int *)0); }
@@ -1958,7 +1958,7 @@ int winsch(
#undef winsdelln
int winsdelln(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -1966,8 +1966,8 @@ int winsdelln(
#undef winsnstr
int winsnstr(
- WINDOW *win,
- const char *s,
+ WINDOW *win,
+ const char *s,
int n)
{ return(*(int *)0); }
@@ -1975,8 +1975,8 @@ int winsnstr(
#undef winnstr
int winnstr(
- WINDOW *win,
- char *str,
+ WINDOW *win,
+ char *str,
int n)
{ return(*(int *)0); }
@@ -1995,7 +1995,7 @@ NCURSES_BOOL isendwin(void)
#undef leaveok
int leaveok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -2003,7 +2003,7 @@ int leaveok(
#undef getmouse_sp
int getmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -2014,7 +2014,7 @@ int getmouse(
#undef ungetmouse_sp
int ungetmouse_sp(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT *aevent)
{ return(*(int *)0); }
@@ -2025,27 +2025,27 @@ int ungetmouse(
#undef mousemask_sp
mmask_t mousemask_sp(
- SCREEN *sp,
- mmask_t newmask,
+ SCREEN *sp,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef mousemask
mmask_t mousemask(
- mmask_t newmask,
+ mmask_t newmask,
mmask_t *oldmask)
{ return(*(mmask_t *)0); }
#undef wenclose
NCURSES_BOOL wenclose(
- const WINDOW *win,
- int y,
+ const WINDOW *win,
+ int y,
int x)
{ return(*(NCURSES_BOOL *)0); }
#undef mouseinterval_sp
int mouseinterval_sp(
- SCREEN *sp,
+ SCREEN *sp,
int maxclick)
{ return(*(int *)0); }
@@ -2070,9 +2070,9 @@ NCURSES_BOOL has_mouse(void)
#undef wmouse_trafo
NCURSES_BOOL wmouse_trafo(
- const WINDOW *win,
- int *pY,
- int *pX,
+ const WINDOW *win,
+ int *pY,
+ int *pX,
NCURSES_BOOL to_screen)
{ return(*(NCURSES_BOOL *)0); }
@@ -2080,8 +2080,8 @@ NCURSES_BOOL wmouse_trafo(
#undef wmove
int wmove(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
@@ -2089,14 +2089,14 @@ int wmove(
#undef _nc_msec_cost_sp
int _nc_msec_cost_sp(
- SCREEN *sp,
- const char *const cap,
+ SCREEN *sp,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
#undef _nc_msec_cost
int _nc_msec_cost(
- const char *const cap,
+ const char *const cap,
int affcnt)
{ return(*(int *)0); }
@@ -2129,35 +2129,35 @@ void _nc_mvcur_wrap(void)
#undef _nc_mvcur_sp
int _nc_mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef _nc_mvcur
int _nc_mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur_sp
int mvcur_sp(
- SCREEN *sp,
- int yold,
- int xold,
- int ynew,
+ SCREEN *sp,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
#undef mvcur
int mvcur(
- int yold,
- int xold,
- int ynew,
+ int yold,
+ int xold,
+ int ynew,
int xnew)
{ return(*(int *)0); }
@@ -2168,8 +2168,8 @@ int _nc_optimize_enable;
#undef mvwin
int mvwin(
- WINDOW *win,
- int by,
+ WINDOW *win,
+ int by,
int bx)
{ return(*(int *)0); }
@@ -2195,16 +2195,16 @@ void nofilter(void)
#undef newterm_sp
SCREEN *newterm_sp(
- SCREEN *sp,
- const char *name,
- FILE *ofp,
+ SCREEN *sp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
#undef newterm
SCREEN *newterm(
- const char *name,
- FILE *ofp,
+ const char *name,
+ FILE *ofp,
FILE *ifp)
{ return(*(SCREEN **)0); }
@@ -2217,46 +2217,46 @@ int _nc_freewin(
#undef newwin_sp
WINDOW *newwin_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef newwin
WINDOW *newwin(
- int num_lines,
- int num_columns,
- int begy,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef derwin
WINDOW *derwin(
- WINDOW *orig,
- int num_lines,
- int num_columns,
- int begy,
+ WINDOW *orig,
+ int num_lines,
+ int num_columns,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef subwin
WINDOW *subwin(
- WINDOW *w,
- int l,
- int c,
- int y,
+ WINDOW *w,
+ int l,
+ int c,
+ int y,
int x)
{ return(*(WINDOW **)0); }
#undef _nc_makenew_sp
WINDOW *_nc_makenew_sp(
- SCREEN *sp,
- int num_lines,
- int num_columns,
- int begy,
- int begx,
+ SCREEN *sp,
+ int num_lines,
+ int num_columns,
+ int begy,
+ int begx,
int flags)
{ return(*(WINDOW **)0); }
@@ -2299,26 +2299,26 @@ int nonl(void)
#undef overlay
int overlay(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef overwrite
int overwrite(
- const WINDOW *win1,
+ const WINDOW *win1,
WINDOW *win2)
{ return(*(int *)0); }
#undef copywin
int copywin(
- const WINDOW *src,
- WINDOW *dst,
- int sminrow,
- int smincol,
- int dminrow,
- int dmincol,
- int dmaxrow,
- int dmaxcol,
+ const WINDOW *src,
+ WINDOW *dst,
+ int sminrow,
+ int smincol,
+ int dminrow,
+ int dmincol,
+ int dmaxrow,
+ int dmaxcol,
int over)
{ return(*(int *)0); }
@@ -2326,51 +2326,51 @@ int copywin(
#undef newpad_sp
WINDOW *newpad_sp(
- SCREEN *sp,
- int l,
+ SCREEN *sp,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef newpad
WINDOW *newpad(
- int l,
+ int l,
int c)
{ return(*(WINDOW **)0); }
#undef subpad
WINDOW *subpad(
- WINDOW *orig,
- int l,
- int c,
- int begy,
+ WINDOW *orig,
+ int l,
+ int c,
+ int begy,
int begx)
{ return(*(WINDOW **)0); }
#undef prefresh
int prefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pnoutrefresh
int pnoutrefresh(
- WINDOW *win,
- int pminrow,
- int pmincol,
- int sminrow,
- int smincol,
- int smaxrow,
+ WINDOW *win,
+ int pminrow,
+ int pmincol,
+ int sminrow,
+ int smincol,
+ int smaxrow,
int smaxcol)
{ return(*(int *)0); }
#undef pechochar
int pechochar(
- WINDOW *pad,
+ WINDOW *pad,
const chtype ch)
{ return(*(int *)0); }
@@ -2378,45 +2378,45 @@ int pechochar(
#undef printw
int printw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wprintw
int wprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvprintw
int mvprintw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwprintw
int mvwprintw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef vwprintw
int vwprintw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_printw
int vw_printw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
@@ -2424,8 +2424,8 @@ int vw_printw(
#undef wredrawln
int wredrawln(
- WINDOW *win,
- int beg,
+ WINDOW *win,
+ int beg,
int num)
{ return(*(int *)0); }
@@ -2445,16 +2445,16 @@ int wnoutrefresh(
#undef restartterm_sp
int restartterm_sp(
- SCREEN *sp,
- const char *termp,
- int filenum,
+ SCREEN *sp,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
#undef restartterm
int restartterm(
- const char *termp,
- int filenum,
+ const char *termp,
+ int filenum,
int *errret)
{ return(*(int *)0); }
@@ -2462,45 +2462,45 @@ int restartterm(
#undef vwscanw
int vwscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef vw_scanw
int vw_scanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
va_list argp)
{ return(*(int *)0); }
#undef scanw
int scanw(
- const char *fmt,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef wscanw
int wscanw(
- WINDOW *win,
- const char *fmt,
+ WINDOW *win,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvscanw
int mvscanw(
- int y,
- int x,
- const char *fmt,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
#undef mvwscanw
int mvwscanw(
- WINDOW *win,
- int y,
- int x,
- const char *fmt,
+ WINDOW *win,
+ int y,
+ int x,
+ const char *fmt,
...)
{ return(*(int *)0); }
@@ -2508,7 +2508,7 @@ int mvwscanw(
#undef getwin_sp
WINDOW *getwin_sp(
- SCREEN *sp,
+ SCREEN *sp,
FILE *filep)
{ return(*(WINDOW **)0); }
@@ -2519,13 +2519,13 @@ WINDOW *getwin(
#undef putwin
int putwin(
- WINDOW *win,
+ WINDOW *win,
FILE *filep)
{ return(*(int *)0); }
#undef scr_restore_sp
int scr_restore_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -2541,7 +2541,7 @@ int scr_dump(
#undef scr_init_sp
int scr_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -2552,7 +2552,7 @@ int scr_init(
#undef scr_set_sp
int scr_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *file)
{ return(*(int *)0); }
@@ -2565,16 +2565,16 @@ int scr_set(
#undef _nc_scroll_window
void _nc_scroll_window(
- WINDOW *win,
- int const n,
- int const top,
- int const bottom,
+ WINDOW *win,
+ int const n,
+ int const top,
+ int const bottom,
cchar_t blank)
{ /* void */ }
#undef wscrl
int wscrl(
- WINDOW *win,
+ WINDOW *win,
int n)
{ return(*(int *)0); }
@@ -2582,7 +2582,7 @@ int wscrl(
#undef scrollok
int scrollok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -2590,8 +2590,8 @@ int scrollok(
#undef wsetscrreg
int wsetscrreg(
- WINDOW *win,
- int top,
+ WINDOW *win,
+ int top,
int bottom)
{ return(*(int *)0); }
@@ -2609,54 +2609,54 @@ void delscreen(
#undef _nc_setupscreen_sp
int _nc_setupscreen_sp(
- SCREEN **spp,
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ SCREEN **spp,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_setupscreen
int _nc_setupscreen(
- int slines,
- int scolumns,
- FILE *output,
- int filtered,
+ int slines,
+ int scolumns,
+ FILE *output,
+ int filtered,
int slk_format)
{ return(*(int *)0); }
#undef _nc_ripoffline_sp
int _nc_ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef _nc_ripoffline
int _nc_ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline_sp
int ripoffline_sp(
- SCREEN *sp,
- int line,
+ SCREEN *sp,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
#undef ripoffline
int ripoffline(
- int line,
+ int line,
int (*init)(
- WINDOW *p1,
+ WINDOW *p1,
int p2))
{ return(*(int *)0); }
@@ -2664,13 +2664,13 @@ int ripoffline(
#undef _nc_format_slks
int _nc_format_slks(
- SCREEN *sp,
+ SCREEN *sp,
int cols)
{ return(*(int *)0); }
#undef _nc_slk_initialize
int _nc_slk_initialize(
- WINDOW *stwin,
+ WINDOW *stwin,
int cols)
{ return(*(int *)0); }
@@ -2687,16 +2687,16 @@ int slk_restore(void)
#undef slk_attr_set_sp
int slk_attr_set_sp(
- SCREEN *sp,
- const attr_t attr,
- short pair_arg,
+ SCREEN *sp,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
#undef slk_attr_set
int slk_attr_set(
- const attr_t attr,
- short pair_arg,
+ const attr_t attr,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -2704,7 +2704,7 @@ int slk_attr_set(
#undef slk_attroff_sp
int slk_attroff_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2717,7 +2717,7 @@ int slk_attroff(
#undef slk_attron_sp
int slk_attron_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2730,7 +2730,7 @@ int slk_attron(
#undef slk_attrset_sp
int slk_attrset_sp(
- SCREEN *sp,
+ SCREEN *sp,
const chtype attr)
{ return(*(int *)0); }
@@ -2765,7 +2765,7 @@ int slk_clear(void)
#undef slk_color_sp
int slk_color_sp(
- SCREEN *sp,
+ SCREEN *sp,
short pair_arg)
{ return(*(int *)0); }
@@ -2776,7 +2776,7 @@ int slk_color(
#undef extended_slk_color_sp
int extended_slk_color_sp(
- SCREEN *sp,
+ SCREEN *sp,
int pair_arg)
{ return(*(int *)0); }
@@ -2789,7 +2789,7 @@ int extended_slk_color(
#undef slk_init_sp
int slk_init_sp(
- SCREEN *sp,
+ SCREEN *sp,
int format)
{ return(*(int *)0); }
@@ -2802,7 +2802,7 @@ int slk_init(
#undef slk_label_sp
char *slk_label_sp(
- SCREEN *sp,
+ SCREEN *sp,
int n)
{ return(*(char **)0); }
@@ -2835,16 +2835,16 @@ int slk_refresh(void)
#undef slk_set_sp
int slk_set_sp(
- SCREEN *sp,
- int i,
- const char *astr,
+ SCREEN *sp,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
#undef slk_set
int slk_set(
- int i,
- const char *astr,
+ int i,
+ const char *astr,
int format)
{ return(*(int *)0); }
@@ -2863,7 +2863,7 @@ int slk_touch(void)
#undef is_linetouched
NCURSES_BOOL is_linetouched(
- WINDOW *win,
+ WINDOW *win,
int line)
{ return(*(NCURSES_BOOL *)0); }
@@ -2874,9 +2874,9 @@ NCURSES_BOOL is_wintouched(
#undef wtouchln
int wtouchln(
- WINDOW *win,
- int y,
- int n,
+ WINDOW *win,
+ int y,
+ int n,
int changed)
{ return(*(int *)0); }
@@ -2884,7 +2884,7 @@ int wtouchln(
#undef _tracedump
void _tracedump(
- const char *name,
+ const char *name,
WINDOW *win)
{ /* void */ }
@@ -2892,19 +2892,19 @@ void _tracedump(
#undef _nc_trace_mmask_t
char *_nc_trace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(char **)0); }
#undef _nc_tracemouse
char *_nc_tracemouse(
- SCREEN *sp,
+ SCREEN *sp,
MEVENT const *ep)
{ return(*(char **)0); }
#undef _nc_retrace_mmask_t
mmask_t _nc_retrace_mmask_t(
- SCREEN *sp,
+ SCREEN *sp,
mmask_t code)
{ return(*(mmask_t *)0); }
@@ -2929,7 +2929,7 @@ void _nc_fifo_dump(
#undef ungetch_sp
int ungetch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -2942,20 +2942,20 @@ int ungetch(
#undef vidputs_sp
int vidputs_sp(
- SCREEN *sp,
- chtype newmode,
+ SCREEN *sp,
+ chtype newmode,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef vidputs
int vidputs(
- chtype newmode,
+ chtype newmode,
NCURSES_OUTC outc)
{ return(*(int *)0); }
#undef vidattr_sp
int vidattr_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype newmode)
{ return(*(int *)0); }
@@ -2977,8 +2977,8 @@ chtype termattrs(void)
#undef wvline
int wvline(
- WINDOW *win,
- chtype ch,
+ WINDOW *win,
+ chtype ch,
int n)
{ return(*(int *)0); }
@@ -2986,8 +2986,8 @@ int wvline(
#undef wattr_off
int wattr_off(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -2995,8 +2995,8 @@ int wattr_off(
#undef wattr_on
int wattr_on(
- WINDOW *win,
- attr_t at,
+ WINDOW *win,
+ attr_t at,
void *opts)
{ return(*(int *)0); }
@@ -3016,14 +3016,14 @@ void _nc_synchook(
#undef mvderwin
int mvderwin(
- WINDOW *win,
- int y,
+ WINDOW *win,
+ int y,
int x)
{ return(*(int *)0); }
#undef syncok
int syncok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL bf)
{ return(*(int *)0); }
@@ -3062,14 +3062,14 @@ struct panelhook *_nc_panelhook(void)
#undef _nc_printf_string_sp
char *_nc_printf_string_sp(
- SCREEN *sp,
- const char *fmt,
+ SCREEN *sp,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
#undef _nc_printf_string
char *_nc_printf_string(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -3086,18 +3086,18 @@ int doupdate(void)
#undef _nc_scrolln_sp
int _nc_scrolln_sp(
- SCREEN *sp,
- int n,
- int top,
- int bot,
+ SCREEN *sp,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
#undef _nc_scrolln
int _nc_scrolln(
- int n,
- int top,
- int bot,
+ int n,
+ int top,
+ int bot,
int maxy)
{ return(*(int *)0); }
@@ -3130,7 +3130,7 @@ void _nc_screen_wrap(void)
#undef _nc_do_xmc_glitch_sp
void _nc_do_xmc_glitch_sp(
- SCREEN *sp,
+ SCREEN *sp,
attr_t previous)
{ /* void */ }
@@ -3143,7 +3143,7 @@ void _nc_do_xmc_glitch(
#undef _nc_varargs
char *_nc_varargs(
- const char *fmt,
+ const char *fmt,
va_list ap)
{ return(*(char **)0); }
@@ -3161,7 +3161,7 @@ void _nc_freeall(void)
#undef _nc_free_and_exit_sp
void _nc_free_and_exit_sp(
- SCREEN *sp,
+ SCREEN *sp,
int code)
{ /* void */ }
@@ -3196,13 +3196,13 @@ wint_t _nc_to_widechar(
#undef wadd_wch
int wadd_wch(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
#undef wecho_wchar
int wecho_wchar(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
@@ -3210,14 +3210,14 @@ int wecho_wchar(
#undef wborder_set
int wborder_set(
- WINDOW *win,
- const cchar_t *ls,
- const cchar_t *rs,
- const cchar_t *ts,
- const cchar_t *bs,
- const cchar_t *tl,
- const cchar_t *tr,
- const cchar_t *bl,
+ WINDOW *win,
+ const cchar_t *ls,
+ const cchar_t *rs,
+ const cchar_t *ts,
+ const cchar_t *bs,
+ const cchar_t *tl,
+ const cchar_t *tr,
+ const cchar_t *bl,
const cchar_t *br)
{ return(*(int *)0); }
@@ -3225,29 +3225,41 @@ int wborder_set(
#undef setcchar
int setcchar(
- cchar_t *wcval,
- const wchar_t *wch,
- const attr_t attrs,
- short pair_arg,
+ cchar_t *wcval,
+ const wchar_t *wch,
+ const attr_t attrs,
+ short pair_arg,
const void *opts)
{ return(*(int *)0); }
#undef getcchar
int getcchar(
- const cchar_t *wcval,
- wchar_t *wch,
- attr_t *attrs,
- short *pair_arg,
+ const cchar_t *wcval,
+ wchar_t *wch,
+ attr_t *attrs,
+ short *pair_arg,
void *opts)
{ return(*(int *)0); }
/* ./widechar/lib_erasewchar.c */
+#undef erasewchar_sp
+int erasewchar_sp(
+ SCREEN *sp,
+ wchar_t *wch)
+ { return(*(int *)0); }
+
#undef erasewchar
int erasewchar(
wchar_t *wch)
{ return(*(int *)0); }
+#undef killwchar_sp
+int killwchar_sp(
+ SCREEN *sp,
+ wchar_t *wch)
+ { return(*(int *)0); }
+
#undef killwchar
int killwchar(
wchar_t *wch)
@@ -3257,7 +3269,7 @@ int killwchar(
#undef wget_wch
int wget_wch(
- WINDOW *win,
+ WINDOW *win,
wint_t *result)
{ return(*(int *)0); }
@@ -3265,8 +3277,8 @@ int wget_wch(
#undef wgetn_wstr
int wgetn_wstr(
- WINDOW *win,
- wint_t *str,
+ WINDOW *win,
+ wint_t *str,
int maxlen)
{ return(*(int *)0); }
@@ -3274,8 +3286,8 @@ int wgetn_wstr(
#undef whline_set
int whline_set(
- WINDOW *win,
- const cchar_t *ch,
+ WINDOW *win,
+ const cchar_t *ch,
int n)
{ return(*(int *)0); }
@@ -3283,7 +3295,7 @@ int whline_set(
#undef win_wch
int win_wch(
- WINDOW *win,
+ WINDOW *win,
cchar_t *wcval)
{ return(*(int *)0); }
@@ -3291,8 +3303,8 @@ int win_wch(
#undef win_wchnstr
int win_wchnstr(
- WINDOW *win,
- cchar_t *wchstr,
+ WINDOW *win,
+ cchar_t *wchstr,
int n)
{ return(*(int *)0); }
@@ -3300,20 +3312,20 @@ int win_wchnstr(
#undef _nc_insert_wch
int _nc_insert_wch(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
#undef wins_wch
int wins_wch(
- WINDOW *win,
+ WINDOW *win,
const cchar_t *wch)
{ return(*(int *)0); }
#undef wins_nwstr
int wins_nwstr(
- WINDOW *win,
- const wchar_t *wstr,
+ WINDOW *win,
+ const wchar_t *wstr,
int n)
{ return(*(int *)0); }
@@ -3321,14 +3333,14 @@ int wins_nwstr(
#undef winnwstr
int winnwstr(
- WINDOW *win,
- wchar_t *wstr,
+ WINDOW *win,
+ wchar_t *wstr,
int n)
{ return(*(int *)0); }
#undef winwstr
int winwstr(
- WINDOW *win,
+ WINDOW *win,
wchar_t *wstr)
{ return(*(int *)0); }
@@ -3343,7 +3355,7 @@ const char *key_name(
#undef pecho_wchar
int pecho_wchar(
- WINDOW *pad,
+ WINDOW *pad,
const cchar_t *wch)
{ return(*(int *)0); }
@@ -3351,8 +3363,8 @@ int pecho_wchar(
#undef slk_wset
int slk_wset(
- int i,
- const wchar_t *astr,
+ int i,
+ const wchar_t *astr,
int format)
{ return(*(int *)0); }
@@ -3360,14 +3372,14 @@ int slk_wset(
#undef _nc_wcrtomb
size_t _nc_wcrtomb(
- char *target,
- wchar_t source,
+ char *target,
+ wchar_t source,
mbstate_t *state)
{ return(*(size_t *)0); }
#undef unget_wch_sp
int unget_wch_sp(
- SCREEN *sp,
+ SCREEN *sp,
const wchar_t wch)
{ return(*(int *)0); }
@@ -3380,33 +3392,33 @@ int unget_wch(
#undef vid_puts_sp
int vid_puts_sp(
- SCREEN *sp,
- attr_t newmode,
- short pair_arg,
- void *opts,
+ SCREEN *sp,
+ attr_t newmode,
+ short pair_arg,
+ void *opts,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef vid_puts
int vid_puts(
- attr_t newmode,
- short pair_arg,
- void *opts,
+ attr_t newmode,
+ short pair_arg,
+ void *opts,
NCURSES_OUTC outc)
{ return(*(int *)0); }
#undef vid_attr_sp
int vid_attr_sp(
- SCREEN *sp,
- attr_t newmode,
- short pair_arg,
+ SCREEN *sp,
+ attr_t newmode,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
#undef vid_attr
int vid_attr(
- attr_t newmode,
- short pair_arg,
+ attr_t newmode,
+ short pair_arg,
void *opts)
{ return(*(int *)0); }
@@ -3423,8 +3435,8 @@ attr_t term_attrs(void)
#undef wvline_set
int wvline_set(
- WINDOW *win,
- const cchar_t *ch,
+ WINDOW *win,
+ const cchar_t *ch,
int n)
{ return(*(int *)0); }
@@ -3441,7 +3453,7 @@ void _nc_init_wacs(void)
#undef wunctrl_sp
wchar_t *wunctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
cchar_t *wc)
{ return(*(wchar_t **)0); }
@@ -3454,31 +3466,31 @@ wchar_t *wunctrl(
#undef _nc_toggle_attr_on
void _nc_toggle_attr_on(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_toggle_attr_off
void _nc_toggle_attr_off(
- attr_t *S,
+ attr_t *S,
attr_t at)
{ /* void */ }
#undef _nc_DelCharCost_sp
int _nc_DelCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_InsCharCost_sp
int _nc_InsCharCost_sp(
- SCREEN *sp,
+ SCREEN *sp,
int count)
{ return(*(int *)0); }
#undef _nc_UpdateAttrs_sp
void _nc_UpdateAttrs_sp(
- SCREEN *sp,
+ SCREEN *sp,
const cchar_t *c)
{ /* void */ }
@@ -3501,7 +3513,7 @@ void _nc_UpdateAttrs(
#undef use_legacy_coding_sp
int use_legacy_coding_sp(
- SCREEN *sp,
+ SCREEN *sp,
int level)
{ return(*(int *)0); }
@@ -3523,14 +3535,14 @@ int use_default_colors(void)
#undef assume_default_colors_sp
int assume_default_colors_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef assume_default_colors
int assume_default_colors(
- int fg,
+ int fg,
int bg)
{ return(*(int *)0); }
@@ -3538,14 +3550,14 @@ int assume_default_colors(
#undef mcprint_sp
int mcprint_sp(
- SCREEN *sp,
- char *data,
+ SCREEN *sp,
+ char *data,
int len)
{ return(*(int *)0); }
#undef mcprint
int mcprint(
- char *data,
+ char *data,
int len)
{ return(*(int *)0); }
@@ -3558,55 +3570,55 @@ void _nc_free_ordered_pairs(
#undef _nc_reset_color_pair
void _nc_reset_color_pair(
- SCREEN *sp,
- int pair,
+ SCREEN *sp,
+ int pair,
colorpair_t *next)
{ /* void */ }
#undef _nc_set_color_pair
void _nc_set_color_pair(
- SCREEN *sp,
- int pair,
+ SCREEN *sp,
+ int pair,
int mode)
{ /* void */ }
#undef _nc_copy_pairs
void _nc_copy_pairs(
- SCREEN *sp,
- colorpair_t *target,
- colorpair_t *source,
+ SCREEN *sp,
+ colorpair_t *target,
+ colorpair_t *source,
int length)
{ /* void */ }
#undef alloc_pair_sp
int alloc_pair_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef find_pair_sp
int find_pair_sp(
- SCREEN *sp,
- int fg,
+ SCREEN *sp,
+ int fg,
int bg)
{ return(*(int *)0); }
#undef free_pair_sp
int free_pair_sp(
- SCREEN *sp,
+ SCREEN *sp,
int pair)
{ return(*(int *)0); }
#undef alloc_pair
int alloc_pair(
- int f,
+ int f,
int b)
{ return(*(int *)0); }
#undef find_pair
int find_pair(
- int f,
+ int f,
int b)
{ return(*(int *)0); }
@@ -3619,40 +3631,40 @@ int free_pair(
#undef is_term_resized_sp
NCURSES_BOOL is_term_resized_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef is_term_resized
NCURSES_BOOL is_term_resized(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(NCURSES_BOOL *)0); }
#undef resize_term_sp
int resize_term_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resize_term
int resize_term(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm_sp
int resizeterm_sp(
- SCREEN *sp,
- int ToLines,
+ SCREEN *sp,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
#undef resizeterm
int resizeterm(
- int ToLines,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -3667,8 +3679,8 @@ void _nc_trace_xnames(
#undef use_screen
int use_screen(
- SCREEN *screen,
- NCURSES_SCREEN_CB func,
+ SCREEN *screen,
+ NCURSES_SCREEN_CB func,
void *data)
{ return(*(int *)0); }
@@ -3676,8 +3688,8 @@ int use_screen(
#undef use_window
int use_window(
- WINDOW *win,
- NCURSES_WINDOW_CB func,
+ WINDOW *win,
+ NCURSES_WINDOW_CB func,
void *data)
{ return(*(int *)0); }
@@ -3685,8 +3697,8 @@ int use_window(
#undef wresize
int wresize(
- WINDOW *win,
- int ToLines,
+ WINDOW *win,
+ int ToLines,
int ToCols)
{ return(*(int *)0); }
@@ -3714,7 +3726,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -3732,12 +3744,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -3745,25 +3770,25 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
+ TERMTYPE2 *to,
TERMTYPE2 *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
#undef _nc_copy_termtype2
void _nc_copy_termtype2(
- TERMTYPE2 *dst,
+ TERMTYPE2 *dst,
const TERMTYPE2 *src)
{ /* void */ }
#undef _nc_export_termtype2
void _nc_export_termtype2(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE2 *src)
{ /* void */ }
@@ -3828,19 +3853,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -3848,14 +3873,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -3892,13 +3917,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -3906,7 +3931,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -3919,7 +3944,7 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
+ ENTRY *headp,
TERMTYPE2 *tterm)
{ /* void */ }
@@ -3978,7 +4003,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -4012,8 +4037,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -4042,7 +4067,7 @@ TERMINAL *cur_term;
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -4053,7 +4078,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -4139,7 +4164,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -4163,7 +4188,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -4176,19 +4201,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -4199,37 +4224,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -4240,7 +4265,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -4251,7 +4276,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -4262,14 +4287,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -4331,14 +4356,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -4355,7 +4380,7 @@ int TABSIZE;
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -4371,13 +4396,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -4393,8 +4418,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -4405,13 +4430,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
+ const char *const tn,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -4430,9 +4455,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -4442,8 +4467,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -4456,20 +4481,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -4480,7 +4505,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -4491,14 +4516,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -4517,8 +4542,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -4526,7 +4551,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -4537,7 +4562,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -4548,7 +4573,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -4564,23 +4589,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -4597,7 +4635,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -4617,7 +4655,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -4628,7 +4666,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -4639,7 +4677,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -4650,35 +4688,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -4704,7 +4742,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -4760,8 +4798,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -4769,7 +4807,7 @@ char *_nc_fmt_funcptr(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -4790,13 +4828,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -4812,7 +4850,7 @@ chtype _nc_retrace_chtype(
#undef _tracecchar_t2
char *_tracecchar_t2(
- int bufnum,
+ int bufnum,
const cchar_t *ch)
{ return(*(char **)0); }
@@ -4825,7 +4863,7 @@ char *_tracecchar_t(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -4836,7 +4874,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -4849,7 +4887,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -4860,7 +4898,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -4927,9 +4965,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -4942,8 +4980,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -4966,14 +5004,14 @@ const char *const strfnames[] = {0};
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -4986,28 +5024,28 @@ void _nc_init_termtype(
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE2 *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
+ const char *const filename,
TERMTYPE2 *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry2
int _nc_read_entry2(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE *const tp)
{ return(*(int *)0); }
@@ -5015,7 +5053,7 @@ int _nc_read_entry(
#undef _nc_read_termcap_entry
int _nc_read_termcap_entry(
- const char *const tn,
+ const char *const tn,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
@@ -5023,32 +5061,32 @@ int _nc_read_termcap_entry(
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -5056,13 +5094,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -5077,21 +5115,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -5106,7 +5144,7 @@ char *_nc_trim_sgr0(
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -5119,7 +5157,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -5130,13 +5168,13 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viswbuf2
const char *_nc_viswbuf2(
- int bufnum,
+ int bufnum,
const wchar_t *buf)
{ return(*(const char **)0); }
@@ -5147,7 +5185,7 @@ const char *_nc_viswbuf(
#undef _nc_viswbufn
const char *_nc_viswbufn(
- const wchar_t *buf,
+ const wchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -5158,14 +5196,14 @@ const char *_nc_viswibuf(
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const cchar_t *buf,
+ int bufnum,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const cchar_t *buf,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -5183,18 +5221,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -5202,15 +5240,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -5218,8 +5256,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -5227,28 +5265,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE2 *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -5273,7 +5311,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -5284,7 +5322,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -5302,14 +5340,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -5327,9 +5365,9 @@ void _nc_write_entry(
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE2 *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
@@ -5341,14 +5379,14 @@ int _nc_tic_written(void)
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -5362,7 +5400,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -5375,14 +5413,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -5390,14 +5428,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/llib-ltic b/ncurses/llib-ltic
index 6ea2714..0037884 100644
--- a/ncurses/llib-ltic
+++ b/ncurses/llib-ltic
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2012-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -48,18 +48,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -67,15 +67,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -83,8 +83,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -92,28 +92,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -138,7 +138,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -149,7 +149,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -167,14 +167,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -187,14 +187,14 @@ void _nc_set_writedir(
#undef _nc_write_entry
void _nc_write_entry(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
diff --git a/ncurses/llib-ltict b/ncurses/llib-ltict
index e1625df..b9895bc 100644
--- a/ncurses/llib-ltict
+++ b/ncurses/llib-ltict
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2013-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -48,18 +48,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -67,15 +67,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -83,8 +83,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -92,28 +92,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -138,7 +138,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -149,7 +149,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -167,14 +167,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -187,14 +187,14 @@ void _nc_set_writedir(
#undef _nc_write_entry
void _nc_write_entry(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
diff --git a/ncurses/llib-ltictw b/ncurses/llib-ltictw
index 6ea2714..2e407fd 100644
--- a/ncurses/llib-ltictw
+++ b/ncurses/llib-ltictw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2012-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -48,18 +48,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -67,15 +67,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -83,8 +83,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -92,28 +92,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE2 *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -138,7 +138,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -149,7 +149,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -167,14 +167,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -192,9 +192,9 @@ void _nc_write_entry(
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE2 *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
diff --git a/ncurses/llib-lticw b/ncurses/llib-lticw
index 6ea2714..2e407fd 100644
--- a/ncurses/llib-lticw
+++ b/ncurses/llib-lticw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2012-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -48,18 +48,18 @@ ENTRY *_nc_copy_entry(
#undef _nc_save_str
char *_nc_save_str(
- const char *const string)
+ const char *string)
{ return(*(char **)0); }
#undef _nc_wrap_entry
void _nc_wrap_entry(
- ENTRY *const ep,
+ ENTRY *const ep,
NCURSES_BOOL copy_strings)
{ /* void */ }
#undef _nc_merge_entry
void _nc_merge_entry(
- ENTRY *const target,
+ ENTRY *const target,
ENTRY *const source)
{ /* void */ }
@@ -67,15 +67,15 @@ void _nc_merge_entry(
#undef _nc_captoinfo
char *_nc_captoinfo(
- const char *cap,
- const char *s,
+ const char *cap,
+ const char *s,
int const parameterized)
{ return(*(char **)0); }
#undef _nc_infotocap
char *_nc_infotocap(
- const char *cap,
- const char *str,
+ const char *cap,
+ const char *str,
int const parameterized)
{ return(*(char **)0); }
@@ -83,8 +83,8 @@ char *_nc_infotocap(
#undef _nc_tic_expand
char *_nc_tic_expand(
- const char *srcp,
- NCURSES_BOOL tic_format,
+ const char *srcp,
+ NCURSES_BOOL tic_format,
int numbers)
{ return(*(char **)0); }
@@ -92,28 +92,28 @@ char *_nc_tic_expand(
#undef _nc_check_termtype2
void (*_nc_check_termtype2)(
- TERMTYPE2 *p1,
+ TERMTYPE2 *p1,
NCURSES_BOOL p2);
#undef _nc_entry_match
NCURSES_BOOL _nc_entry_match(
- char *n1,
+ char *n1,
char *n2)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_read_entry_source
void _nc_read_entry_source(
- FILE *fp,
- char *buf,
- int literal,
- NCURSES_BOOL silent,
+ FILE *fp,
+ char *buf,
+ int literal,
+ NCURSES_BOOL silent,
NCURSES_BOOL (*hook)(
ENTRY *p1))
{ /* void */ }
#undef _nc_resolve_uses2
int _nc_resolve_uses2(
- NCURSES_BOOL fullresolve,
+ NCURSES_BOOL fullresolve,
NCURSES_BOOL literal)
{ return(*(int *)0); }
@@ -138,7 +138,7 @@ NCURSES_BOOL _nc_disable_period;
#undef _nc_reset_input
void _nc_reset_input(
- FILE *fp,
+ FILE *fp,
char *buf)
{ /* void */ }
@@ -149,7 +149,7 @@ int _nc_get_token(
#undef _nc_trans_string
int _nc_trans_string(
- char *ptr,
+ char *ptr,
char *last)
{ return(*(int *)0); }
@@ -167,14 +167,14 @@ void _nc_panic_mode(
#undef _nc_parse_entry
int _nc_parse_entry(
- ENTRY *entryp,
- int literal,
+ ENTRY *entryp,
+ int literal,
NCURSES_BOOL silent)
{ return(*(int *)0); }
#undef _nc_capcmp
int _nc_capcmp(
- const char *s,
+ const char *s,
const char *t)
{ return(*(int *)0); }
@@ -192,9 +192,9 @@ void _nc_write_entry(
#undef _nc_write_object
int _nc_write_object(
- TERMTYPE2 *tp,
- char *buffer,
- unsigned *offset,
+ TERMTYPE2 *tp,
+ char *buffer,
+ unsigned *offset,
unsigned limit)
{ return(*(int *)0); }
diff --git a/ncurses/llib-ltinfo b/ncurses/llib-ltinfo
index 27680ca..5dabf89 100644
--- a/ncurses/llib-ltinfo
+++ b/ncurses/llib-ltinfo
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2012-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -58,7 +58,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -76,12 +76,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -89,13 +102,13 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
- TERMTYPE2 *from)
+ TERMTYPE *to,
+ TERMTYPE *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
@@ -160,19 +173,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -180,14 +193,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -224,13 +237,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -238,7 +251,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -251,8 +264,8 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
- TERMTYPE2 *tterm)
+ ENTRY *headp,
+ TERMTYPE *tterm)
{ /* void */ }
#undef _nc_free_entries
@@ -264,12 +277,17 @@ void _nc_free_entries(
void _nc_leaks_tinfo(void)
{ /* void */ }
+#undef exit_terminfo
+void exit_terminfo(
+ int code)
+ { /* void */ }
+
/* ./fallback.c */
#undef _nc_fallback
-const TERMTYPE2 *_nc_fallback(
+const TERMTYPE *_nc_fallback(
const char *name)
- { return(*(const TERMTYPE2 **)0); }
+ { return(*(const TERMTYPE **)0); }
/* ./tinfo/free_ttype.c */
@@ -295,7 +313,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -329,8 +347,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -359,7 +377,7 @@ TERMINAL *cur_term;
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -370,7 +388,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -456,7 +474,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -480,7 +498,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -493,19 +511,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -516,37 +534,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -557,7 +575,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -568,7 +586,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -579,14 +597,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -648,14 +666,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -672,7 +690,7 @@ int TABSIZE;
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -688,13 +706,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -710,8 +728,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -722,13 +740,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
- TERMTYPE2 *const tp)
+ const char *const tn,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -747,9 +765,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -759,8 +777,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -773,20 +791,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -797,7 +815,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -808,14 +826,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -834,8 +852,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -843,7 +861,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -854,7 +872,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -865,7 +883,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -881,23 +899,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -914,7 +945,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -934,7 +965,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -945,7 +976,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -956,7 +987,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -967,35 +998,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -1009,6 +1040,11 @@ const char *_nc_tputs_trace = {0};
#undef _nc_outchars
long _nc_outchars;
+#undef curses_trace
+unsigned curses_trace(
+ unsigned tracelevel)
+ { return(*(unsigned *)0); }
+
#undef trace
void trace(
const unsigned int tracelevel)
@@ -1016,7 +1052,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -1072,8 +1108,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -1081,7 +1117,7 @@ char *_nc_fmt_funcptr(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -1102,13 +1138,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -1126,7 +1162,7 @@ chtype _nc_retrace_chtype(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -1137,7 +1173,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -1150,7 +1186,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1161,7 +1197,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1228,9 +1264,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -1243,8 +1279,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -1267,14 +1303,14 @@ const char *const strfnames[] = {0};
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -1282,27 +1318,27 @@ void _nc_set_buffer(
#undef _nc_init_termtype
void _nc_init_termtype(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
- TERMTYPE2 *ptr)
+ const char *const filename,
+ TERMTYPE *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
- TERMTYPE2 *const tp)
+ const char *const name,
+ char *const filename,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
/* ./tinfo/read_termcap.c */
@@ -1315,32 +1351,32 @@ void _nc_read_termcap(void)
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -1348,13 +1384,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -1369,21 +1405,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -1391,14 +1427,14 @@ int _nc_remove_string(
#undef _nc_trim_sgr0
char *_nc_trim_sgr0(
- TERMTYPE2 *tp)
+ TERMTYPE *tp)
{ return(*(char **)0); }
/* ./unctrl.c */
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -1411,7 +1447,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -1422,20 +1458,20 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const chtype *buf,
+ int bufnum,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const chtype *buf,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
@@ -1443,14 +1479,14 @@ const char *_nc_viscbuf(
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -1464,7 +1500,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -1477,14 +1513,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -1492,14 +1528,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/llib-ltinfot b/ncurses/llib-ltinfot
index 8ac9fac..7d5dcf0 100644
--- a/ncurses/llib-ltinfot
+++ b/ncurses/llib-ltinfot
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2013-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -58,7 +58,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -76,12 +76,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -89,13 +102,13 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
- TERMTYPE2 *from)
+ TERMTYPE *to,
+ TERMTYPE *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
@@ -165,19 +178,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -185,14 +198,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -229,13 +242,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -243,7 +256,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -256,8 +269,8 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
- TERMTYPE2 *tterm)
+ ENTRY *headp,
+ TERMTYPE *tterm)
{ /* void */ }
#undef _nc_free_entries
@@ -269,12 +282,17 @@ void _nc_free_entries(
void _nc_leaks_tinfo(void)
{ /* void */ }
+#undef exit_terminfo
+void exit_terminfo(
+ int code)
+ { /* void */ }
+
/* ./fallback.c */
#undef _nc_fallback
-const TERMTYPE2 *_nc_fallback(
+const TERMTYPE *_nc_fallback(
const char *name)
- { return(*(const TERMTYPE2 **)0); }
+ { return(*(const TERMTYPE **)0); }
/* ./tinfo/free_ttype.c */
@@ -300,7 +318,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -335,8 +353,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -375,7 +393,7 @@ TERMINAL *_nc_cur_term(void)
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -386,7 +404,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -502,7 +520,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -526,7 +544,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -539,19 +557,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -562,37 +580,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -603,7 +621,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -614,7 +632,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -625,14 +643,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -694,14 +712,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -740,7 +758,7 @@ int _nc_TABSIZE(void)
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -756,13 +774,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -778,8 +796,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -790,13 +808,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
- TERMTYPE2 *const tp)
+ const char *const tn,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -815,9 +833,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -835,8 +853,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -849,20 +867,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -873,7 +891,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -884,14 +902,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -910,8 +928,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -919,7 +937,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -930,7 +948,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -941,7 +959,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -957,23 +975,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -990,7 +1021,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -1010,7 +1041,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -1021,7 +1052,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -1032,7 +1063,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -1043,35 +1074,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -1099,6 +1130,11 @@ void _nc_count_outchars(
long increment)
{ /* void */ }
+#undef curses_trace
+unsigned curses_trace(
+ unsigned tracelevel)
+ { return(*(unsigned *)0); }
+
#undef trace
void trace(
const unsigned int tracelevel)
@@ -1106,7 +1142,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -1162,8 +1198,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -1174,7 +1210,7 @@ int _nc_use_tracef(
#undef _nc_locked_tracef
void _nc_locked_tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -1182,7 +1218,7 @@ void _nc_locked_tracef(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -1203,13 +1239,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -1227,7 +1263,7 @@ chtype _nc_retrace_chtype(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -1238,7 +1274,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -1251,7 +1287,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1262,7 +1298,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1329,9 +1365,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -1344,8 +1380,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -1379,14 +1415,14 @@ const char *const *_nc_strfnames(void)
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -1394,27 +1430,27 @@ void _nc_set_buffer(
#undef _nc_init_termtype
void _nc_init_termtype(
- TERMTYPE2 *const tp)
+ TERMTYPE *const tp)
{ /* void */ }
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
- TERMTYPE2 *ptr)
+ const char *const filename,
+ TERMTYPE *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
- TERMTYPE2 *const tp)
+ const char *const name,
+ char *const filename,
+ TERMTYPE *const tp)
{ return(*(int *)0); }
/* ./tinfo/read_termcap.c */
@@ -1427,32 +1463,32 @@ void _nc_read_termcap(void)
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -1460,13 +1496,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -1481,21 +1517,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -1503,14 +1539,14 @@ int _nc_remove_string(
#undef _nc_trim_sgr0
char *_nc_trim_sgr0(
- TERMTYPE2 *tp)
+ TERMTYPE *tp)
{ return(*(char **)0); }
/* ./unctrl.c */
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -1523,7 +1559,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -1534,20 +1570,20 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const chtype *buf,
+ int bufnum,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const chtype *buf,
+ const chtype *buf,
int len)
{ return(*(const char **)0); }
@@ -1555,14 +1591,14 @@ const char *_nc_viscbuf(
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -1576,7 +1612,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -1589,14 +1625,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -1604,14 +1640,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/llib-ltinfotw b/ncurses/llib-ltinfotw
index 7011dbe..0fd8d28 100644
--- a/ncurses/llib-ltinfotw
+++ b/ncurses/llib-ltinfotw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2012-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -58,7 +58,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -76,12 +76,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -89,25 +102,25 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
+ TERMTYPE2 *to,
TERMTYPE2 *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
#undef _nc_copy_termtype2
void _nc_copy_termtype2(
- TERMTYPE2 *dst,
+ TERMTYPE2 *dst,
const TERMTYPE2 *src)
{ /* void */ }
#undef _nc_export_termtype2
void _nc_export_termtype2(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE2 *src)
{ /* void */ }
@@ -177,19 +190,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -197,14 +210,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -241,13 +254,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -255,7 +268,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -268,7 +281,7 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
+ ENTRY *headp,
TERMTYPE2 *tterm)
{ /* void */ }
@@ -281,6 +294,11 @@ void _nc_free_entries(
void _nc_leaks_tinfo(void)
{ /* void */ }
+#undef exit_terminfo
+void exit_terminfo(
+ int code)
+ { /* void */ }
+
/* ./fallback.c */
#undef _nc_fallback2
@@ -322,7 +340,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -357,8 +375,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -397,7 +415,7 @@ TERMINAL *_nc_cur_term(void)
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -408,7 +426,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -524,7 +542,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -548,7 +566,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -561,19 +579,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -584,37 +602,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -625,7 +643,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -636,7 +654,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -647,14 +665,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -716,14 +734,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -762,7 +780,7 @@ int _nc_TABSIZE(void)
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -778,13 +796,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -800,8 +818,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -812,13 +830,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
+ const char *const tn,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -837,9 +855,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -857,8 +875,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -871,20 +889,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -895,7 +913,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -906,14 +924,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -932,8 +950,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -941,7 +959,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -952,7 +970,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -963,7 +981,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -979,23 +997,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -1012,7 +1043,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -1032,7 +1063,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -1043,7 +1074,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -1054,7 +1085,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -1065,35 +1096,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -1121,6 +1152,11 @@ void _nc_count_outchars(
long increment)
{ /* void */ }
+#undef curses_trace
+unsigned curses_trace(
+ unsigned tracelevel)
+ { return(*(unsigned *)0); }
+
#undef trace
void trace(
const unsigned int tracelevel)
@@ -1128,7 +1164,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -1184,8 +1220,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -1196,7 +1232,7 @@ int _nc_use_tracef(
#undef _nc_locked_tracef
void _nc_locked_tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -1204,7 +1240,7 @@ void _nc_locked_tracef(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -1225,13 +1261,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -1247,7 +1283,7 @@ chtype _nc_retrace_chtype(
#undef _tracecchar_t2
char *_tracecchar_t2(
- int bufnum,
+ int bufnum,
const cchar_t *ch)
{ return(*(char **)0); }
@@ -1260,7 +1296,7 @@ char *_tracecchar_t(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -1271,7 +1307,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -1284,7 +1320,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1295,7 +1331,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1362,9 +1398,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -1377,8 +1413,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -1412,14 +1448,14 @@ const char *const *_nc_strfnames(void)
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -1432,28 +1468,28 @@ void _nc_init_termtype(
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE2 *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
+ const char *const filename,
TERMTYPE2 *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry2
int _nc_read_entry2(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE *const tp)
{ return(*(int *)0); }
@@ -1467,32 +1503,32 @@ void _nc_read_termcap(void)
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -1500,13 +1536,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -1521,21 +1557,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -1550,7 +1586,7 @@ char *_nc_trim_sgr0(
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -1563,7 +1599,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -1574,13 +1610,13 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viswbuf2
const char *_nc_viswbuf2(
- int bufnum,
+ int bufnum,
const wchar_t *buf)
{ return(*(const char **)0); }
@@ -1591,7 +1627,7 @@ const char *_nc_viswbuf(
#undef _nc_viswbufn
const char *_nc_viswbufn(
- const wchar_t *buf,
+ const wchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -1602,14 +1638,14 @@ const char *_nc_viswibuf(
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const cchar_t *buf,
+ int bufnum,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const cchar_t *buf,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -1617,14 +1653,14 @@ const char *_nc_viscbuf(
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -1638,7 +1674,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -1651,14 +1687,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -1666,14 +1702,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/llib-ltinfow b/ncurses/llib-ltinfow
index 7a68d70..93c9274 100644
--- a/ncurses/llib-ltinfow
+++ b/ncurses/llib-ltinfow
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2012-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -58,7 +58,7 @@ char *_nc_basename(
#undef _nc_access
int _nc_access(
- const char *path,
+ const char *path,
int mode)
{ return(*(int *)0); }
@@ -76,12 +76,25 @@ NCURSES_BOOL _nc_is_file_path(
int _nc_env_access(void)
{ return(*(int *)0); }
+#undef _nc_safe_fopen
+FILE *_nc_safe_fopen(
+ const char *path,
+ const char *mode)
+ { return(*(FILE **)0); }
+
+#undef _nc_safe_open3
+int _nc_safe_open3(
+ const char *path,
+ int flags,
+ mode_t mode)
+ { return(*(int *)0); }
+
/* ./tinfo/add_tries.c */
#undef _nc_add_to_try
int _nc_add_to_try(
- TRIES **tree,
- const char *str,
+ TRIES **tree,
+ const char *str,
unsigned code)
{ return(*(int *)0); }
@@ -89,25 +102,25 @@ int _nc_add_to_try(
#undef _nc_align_termtype
void _nc_align_termtype(
- TERMTYPE2 *to,
+ TERMTYPE2 *to,
TERMTYPE2 *from)
{ /* void */ }
#undef _nc_copy_termtype
void _nc_copy_termtype(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE *src)
{ /* void */ }
#undef _nc_copy_termtype2
void _nc_copy_termtype2(
- TERMTYPE2 *dst,
+ TERMTYPE2 *dst,
const TERMTYPE2 *src)
{ /* void */ }
#undef _nc_export_termtype2
void _nc_export_termtype2(
- TERMTYPE *dst,
+ TERMTYPE *dst,
const TERMTYPE2 *src)
{ /* void */ }
@@ -172,19 +185,19 @@ void _nc_get_type(
#undef _nc_warning
void _nc_warning(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_err_abort
void _nc_err_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
#undef _nc_syserr_abort
void _nc_syserr_abort(
- const char *const fmt,
+ const char *const fmt,
...)
{ /* void */ }
@@ -192,14 +205,14 @@ void _nc_syserr_abort(
#undef _nc_find_entry
struct name_table_entry const *_nc_find_entry(
- const char *string,
+ const char *string,
const HashValue *hash_table)
{ return(*(struct name_table_entry const **)0); }
#undef _nc_find_type_entry
struct name_table_entry const *_nc_find_type_entry(
- const char *string,
- int type,
+ const char *string,
+ int type,
NCURSES_BOOL termcap)
{ return(*(struct name_table_entry const **)0); }
@@ -236,13 +249,13 @@ void _nc_last_db(void)
#undef _nc_next_db
const char *_nc_next_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ return(*(const char **)0); }
#undef _nc_first_db
void _nc_first_db(
- DBDIRS *state,
+ DBDIRS *state,
int *offset)
{ /* void */ }
@@ -250,7 +263,7 @@ void _nc_first_db(
#undef _nc_doalloc
void *_nc_doalloc(
- void *oldp,
+ void *oldp,
size_t amount)
{ return(*(void **)0); }
@@ -263,7 +276,7 @@ ENTRY *_nc_tail;
#undef _nc_free_entry
void _nc_free_entry(
- ENTRY *headp,
+ ENTRY *headp,
TERMTYPE2 *tterm)
{ /* void */ }
@@ -276,6 +289,11 @@ void _nc_free_entries(
void _nc_leaks_tinfo(void)
{ /* void */ }
+#undef exit_terminfo
+void exit_terminfo(
+ int code)
+ { /* void */ }
+
/* ./fallback.c */
#undef _nc_fallback2
@@ -317,7 +335,7 @@ int _nc_getenv_num(
#undef _nc_setenv_num
void _nc_setenv_num(
- const char *name,
+ const char *name,
int value)
{ /* void */ }
@@ -351,8 +369,8 @@ void _nc_init_acs(void)
/* ./tinfo/lib_baudrate.c */
struct speed {
- int given_speed;
- int actual_speed;
+ int given_speed;
+ int actual_speed;
};
#undef _nc_baudrate
@@ -381,7 +399,7 @@ TERMINAL *cur_term;
#undef set_curterm_sp
TERMINAL *set_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(TERMINAL **)0); }
@@ -392,7 +410,7 @@ TERMINAL *set_curterm(
#undef del_curterm_sp
int del_curterm_sp(
- SCREEN *sp,
+ SCREEN *sp,
TERMINAL *termp)
{ return(*(int *)0); }
@@ -478,7 +496,7 @@ struct kn { short offset; int code; };
#undef keyname_sp
const char *keyname_sp(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(const char **)0); }
@@ -502,7 +520,7 @@ char *longname(void)
#undef napms_sp
int napms_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -515,19 +533,19 @@ int napms(
#undef idlok
int idlok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef idcok
void idcok(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ /* void */ }
#undef halfdelay_sp
int halfdelay_sp(
- SCREEN *sp,
+ SCREEN *sp,
int t)
{ return(*(int *)0); }
@@ -538,37 +556,37 @@ int halfdelay(
#undef nodelay
int nodelay(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef notimeout
int notimeout(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL f)
{ return(*(int *)0); }
#undef wtimeout
void wtimeout(
- WINDOW *win,
+ WINDOW *win,
int delay)
{ /* void */ }
#undef keypad
int keypad(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef meta
int meta(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef curs_set_sp
int curs_set_sp(
- SCREEN *sp,
+ SCREEN *sp,
int vis)
{ return(*(int *)0); }
@@ -579,7 +597,7 @@ int curs_set(
#undef typeahead_sp
int typeahead_sp(
- SCREEN *sp,
+ SCREEN *sp,
int fd)
{ return(*(int *)0); }
@@ -590,7 +608,7 @@ int typeahead(
#undef has_key_sp
int has_key_sp(
- SCREEN *sp,
+ SCREEN *sp,
int keycode)
{ return(*(int *)0); }
@@ -601,14 +619,14 @@ int has_key(
#undef _nc_putp_flush_sp
int _nc_putp_flush_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *value)
{ return(*(int *)0); }
#undef _nc_keypad
int _nc_keypad(
- SCREEN *sp,
+ SCREEN *sp,
int flag)
{ return(*(int *)0); }
@@ -670,14 +688,14 @@ void noqiflush(void)
#undef intrflush_sp
int intrflush_sp(
- SCREEN *sp,
- WINDOW *win,
+ SCREEN *sp,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef intrflush
int intrflush(
- WINDOW *win,
+ WINDOW *win,
NCURSES_BOOL flag)
{ return(*(int *)0); }
@@ -694,7 +712,7 @@ int TABSIZE;
#undef set_tabsize_sp
int set_tabsize_sp(
- SCREEN *sp,
+ SCREEN *sp,
int value)
{ return(*(int *)0); }
@@ -710,13 +728,13 @@ int _nc_handle_sigwinch(
#undef use_env_sp
void use_env_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
#undef use_tioctl_sp
void use_tioctl_sp(
- SCREEN *sp,
+ SCREEN *sp,
NCURSES_BOOL f)
{ /* void */ }
@@ -732,8 +750,8 @@ void use_tioctl(
#undef _nc_get_screensize
void _nc_get_screensize(
- SCREEN *sp,
- int *linep,
+ SCREEN *sp,
+ int *linep,
int *colp)
{ /* void */ }
@@ -744,13 +762,13 @@ void _nc_update_screensize(
#undef _nc_setup_tinfo
int _nc_setup_tinfo(
- const char *const tn,
+ const char *const tn,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_tinfo_cmdch
void _nc_tinfo_cmdch(
- TERMINAL *termp,
+ TERMINAL *termp,
int proto)
{ /* void */ }
@@ -769,9 +787,9 @@ int _nc_locale_breaks_acs(
#undef _nc_setupterm
int _nc_setupterm(
- const char *tname,
- int Filedes,
- int *errret,
+ const char *tname,
+ int Filedes,
+ int *errret,
int reuse)
{ return(*(int *)0); }
@@ -781,8 +799,8 @@ SCREEN *new_prescr(void)
#undef setupterm
int setupterm(
- const char *tname,
- int Filedes,
+ const char *tname,
+ int Filedes,
int *errret)
{ return(*(int *)0); }
@@ -795,20 +813,20 @@ char *BC;
#undef tgetent_sp
int tgetent_sp(
- SCREEN *sp,
- char *bufp,
+ SCREEN *sp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetent
int tgetent(
- char *bufp,
+ char *bufp,
const char *name)
{ return(*(int *)0); }
#undef tgetflag_sp
int tgetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -819,7 +837,7 @@ int tgetflag(
#undef tgetnum_sp
int tgetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *id)
{ return(*(int *)0); }
@@ -830,14 +848,14 @@ int tgetnum(
#undef tgetstr_sp
char *tgetstr_sp(
- SCREEN *sp,
- const char *id,
+ SCREEN *sp,
+ const char *id,
char **area)
{ return(*(char **)0); }
#undef tgetstr
char *tgetstr(
- const char *id,
+ const char *id,
char **area)
{ return(*(char **)0); }
@@ -856,8 +874,8 @@ char *termname(void)
#undef tgoto
char *tgoto(
- const char *string,
- int x,
+ const char *string,
+ int x,
int y)
{ return(*(char **)0); }
@@ -865,7 +883,7 @@ char *tgoto(
#undef tigetflag_sp
int tigetflag_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -876,7 +894,7 @@ int tigetflag(
#undef tigetnum_sp
int tigetnum_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -887,7 +905,7 @@ int tigetnum(
#undef tigetstr_sp
char *tigetstr_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(char **)0); }
@@ -903,23 +921,36 @@ int _nc_tparm_err;
#undef _nc_tparm_analyze
int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
+ TERMINAL *term,
+ const char *string,
+ char **p_is_s,
int *_nc_popcount)
{ return(*(int *)0); }
#undef tparm
char *tparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
#undef tiparm
char *tiparm(
- const char *string,
+ const char *string,
...)
{ return(*(char **)0); }
+#undef _nc_tiparm
+char *_nc_tiparm(
+ int expected,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef _nc_reset_tparm
+void _nc_reset_tparm(
+ TERMINAL *term)
+ { /* void */ }
+
/* ./tinfo/lib_tputs.c */
#undef PC
@@ -936,7 +967,7 @@ void _nc_set_no_padding(
#undef delay_output_sp
int delay_output_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ms)
{ return(*(int *)0); }
@@ -956,7 +987,7 @@ void _nc_flush(void)
#undef _nc_outch_sp
int _nc_outch_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -967,7 +998,7 @@ int _nc_outch(
#undef _nc_putchar_sp
int _nc_putchar_sp(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(int *)0); }
@@ -978,7 +1009,7 @@ int _nc_putchar(
#undef putp_sp
int putp_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *string)
{ return(*(int *)0); }
@@ -989,35 +1020,35 @@ int putp(
#undef _nc_putp_sp
int _nc_putp_sp(
- SCREEN *sp,
- const char *name,
+ SCREEN *sp,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef _nc_putp
int _nc_putp(
- const char *name,
+ const char *name,
const char *string)
{ return(*(int *)0); }
#undef tputs_sp
int tputs_sp(
- SCREEN *sp,
- const char *string,
- int affcnt,
+ SCREEN *sp,
+ const char *string,
+ int affcnt,
NCURSES_OUTC_sp outc)
{ return(*(int *)0); }
#undef _nc_outc_wrapper
int _nc_outc_wrapper(
- SCREEN *sp,
+ SCREEN *sp,
int c)
{ return(*(int *)0); }
#undef tputs
int tputs(
- const char *string,
- int affcnt,
+ const char *string,
+ int affcnt,
int (*outc)(
int p1))
{ return(*(int *)0); }
@@ -1031,6 +1062,11 @@ const char *_nc_tputs_trace = {0};
#undef _nc_outchars
long _nc_outchars;
+#undef curses_trace
+unsigned curses_trace(
+ unsigned tracelevel)
+ { return(*(unsigned *)0); }
+
#undef trace
void trace(
const unsigned int tracelevel)
@@ -1038,7 +1074,7 @@ void trace(
#undef _tracef
void _tracef(
- const char *fmt,
+ const char *fmt,
...)
{ /* void */ }
@@ -1094,8 +1130,8 @@ WINDOW *_nc_retrace_win(
#undef _nc_fmt_funcptr
char *_nc_fmt_funcptr(
- char *target,
- const char *source,
+ char *target,
+ const char *source,
size_t size)
{ return(*(char **)0); }
@@ -1103,7 +1139,7 @@ char *_nc_fmt_funcptr(
#undef _traceattr2
char *_traceattr2(
- int bufnum,
+ int bufnum,
chtype newmode)
{ return(*(char **)0); }
@@ -1124,13 +1160,13 @@ attr_t _nc_retrace_attr_t(
#undef _nc_altcharset_name
const char *_nc_altcharset_name(
- attr_t attr,
+ attr_t attr,
chtype ch)
{ return(*(const char **)0); }
#undef _tracechtype2
char *_tracechtype2(
- int bufnum,
+ int bufnum,
chtype ch)
{ return(*(char **)0); }
@@ -1146,7 +1182,7 @@ chtype _nc_retrace_chtype(
#undef _tracecchar_t2
char *_tracecchar_t2(
- int bufnum,
+ int bufnum,
const cchar_t *ch)
{ return(*(char **)0); }
@@ -1159,7 +1195,7 @@ char *_tracecchar_t(
#undef _nc_trace_ttymode
char *_nc_trace_ttymode(
- struct termios *tty)
+ const struct termios *tty)
{ return(*(char **)0); }
#undef _nc_tracebits
@@ -1170,7 +1206,7 @@ char *_nc_tracebits(void)
#undef _nc_tracechar
char *_nc_tracechar(
- SCREEN *sp,
+ SCREEN *sp,
int ch)
{ return(*(char **)0); }
@@ -1183,7 +1219,7 @@ char *_tracechar(
#undef _nc_get_tty_mode_sp
int _nc_get_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1194,7 +1230,7 @@ int _nc_get_tty_mode(
#undef _nc_set_tty_mode_sp
int _nc_set_tty_mode_sp(
- SCREEN *sp,
+ SCREEN *sp,
struct termios *buf)
{ return(*(int *)0); }
@@ -1261,9 +1297,9 @@ int resetty(void)
#undef _nc_timed_wait
int _nc_timed_wait(
- SCREEN *sp,
- int mode,
- int milliseconds,
+ SCREEN *sp,
+ int mode,
+ int milliseconds,
int *timeleft)
{ return(*(int *)0); }
@@ -1276,8 +1312,8 @@ char *_nc_first_name(
#undef _nc_name_match
int _nc_name_match(
- const char *const namelst,
- const char *const name,
+ const char *const namelst,
+ const char *const name,
const char *const delim)
{ return(*(int *)0); }
@@ -1300,14 +1336,14 @@ const char *const strfnames[] = {0};
#undef _nc_set_buffer_sp
void _nc_set_buffer_sp(
- SCREEN *sp,
- FILE *ofp,
+ SCREEN *sp,
+ FILE *ofp,
int buffered)
{ /* void */ }
#undef _nc_set_buffer
void _nc_set_buffer(
- FILE *ofp,
+ FILE *ofp,
int buffered)
{ /* void */ }
@@ -1320,28 +1356,28 @@ void _nc_init_termtype(
#undef _nc_read_termtype
int _nc_read_termtype(
- TERMTYPE2 *ptr,
- char *buffer,
+ TERMTYPE2 *ptr,
+ char *buffer,
int limit)
{ return(*(int *)0); }
#undef _nc_read_file_entry
int _nc_read_file_entry(
- const char *const filename,
+ const char *const filename,
TERMTYPE2 *ptr)
{ return(*(int *)0); }
#undef _nc_read_entry2
int _nc_read_entry2(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE2 *const tp)
{ return(*(int *)0); }
#undef _nc_read_entry
int _nc_read_entry(
- const char *const name,
- char *const filename,
+ const char *const name,
+ char *const filename,
TERMTYPE *const tp)
{ return(*(int *)0); }
@@ -1355,32 +1391,32 @@ void _nc_read_termcap(void)
#undef _nc_str_init
string_desc *_nc_str_init(
- string_desc *dst,
- char *src,
+ string_desc *dst,
+ char *src,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_null
string_desc *_nc_str_null(
- string_desc *dst,
+ string_desc *dst,
size_t len)
{ return(*(string_desc **)0); }
#undef _nc_str_copy
string_desc *_nc_str_copy(
- string_desc *dst,
+ string_desc *dst,
string_desc *src)
{ return(*(string_desc **)0); }
#undef _nc_safe_strcat
NCURSES_BOOL _nc_safe_strcat(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
#undef _nc_safe_strcpy
NCURSES_BOOL _nc_safe_strcpy(
- string_desc *dst,
+ string_desc *dst,
const char *src)
{ return(*(NCURSES_BOOL *)0); }
@@ -1388,13 +1424,13 @@ NCURSES_BOOL _nc_safe_strcpy(
#undef _nc_trace_buf
char *_nc_trace_buf(
- int bufnum,
+ int bufnum,
size_t want)
{ return(*(char **)0); }
#undef _nc_trace_bufcat
char *_nc_trace_bufcat(
- int bufnum,
+ int bufnum,
const char *value)
{ return(*(char **)0); }
@@ -1409,21 +1445,21 @@ void _nc_trace_tries(
#undef _nc_expand_try
char *_nc_expand_try(
- TRIES *tree,
- unsigned code,
- int *count,
+ TRIES *tree,
+ unsigned code,
+ int *count,
size_t len)
{ return(*(char **)0); }
#undef _nc_remove_key
int _nc_remove_key(
- TRIES **tree,
+ TRIES **tree,
unsigned code)
{ return(*(int *)0); }
#undef _nc_remove_string
int _nc_remove_string(
- TRIES **tree,
+ TRIES **tree,
const char *string)
{ return(*(int *)0); }
@@ -1438,7 +1474,7 @@ char *_nc_trim_sgr0(
#undef unctrl_sp
const char *unctrl_sp(
- SCREEN *sp,
+ SCREEN *sp,
chtype ch)
{ return(*(const char **)0); }
@@ -1451,7 +1487,7 @@ const char *unctrl(
#undef _nc_visbuf2
const char *_nc_visbuf2(
- int bufnum,
+ int bufnum,
const char *buf)
{ return(*(const char **)0); }
@@ -1462,13 +1498,13 @@ const char *_nc_visbuf(
#undef _nc_visbufn
const char *_nc_visbufn(
- const char *buf,
+ const char *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viswbuf2
const char *_nc_viswbuf2(
- int bufnum,
+ int bufnum,
const wchar_t *buf)
{ return(*(const char **)0); }
@@ -1479,7 +1515,7 @@ const char *_nc_viswbuf(
#undef _nc_viswbufn
const char *_nc_viswbufn(
- const wchar_t *buf,
+ const wchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -1490,14 +1526,14 @@ const char *_nc_viswibuf(
#undef _nc_viscbuf2
const char *_nc_viscbuf2(
- int bufnum,
- const cchar_t *buf,
+ int bufnum,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
#undef _nc_viscbuf
const char *_nc_viscbuf(
- const cchar_t *buf,
+ const cchar_t *buf,
int len)
{ return(*(const char **)0); }
@@ -1505,14 +1541,14 @@ const char *_nc_viscbuf(
#undef define_key_sp
int define_key_sp(
- SCREEN *sp,
- const char *str,
+ SCREEN *sp,
+ const char *str,
int keycode)
{ return(*(int *)0); }
#undef define_key
int define_key(
- const char *str,
+ const char *str,
int keycode)
{ return(*(int *)0); }
@@ -1526,7 +1562,7 @@ void _nc_hashed_db(void)
#undef key_defined_sp
int key_defined_sp(
- SCREEN *sp,
+ SCREEN *sp,
const char *str)
{ return(*(int *)0); }
@@ -1539,14 +1575,14 @@ int key_defined(
#undef keybound_sp
char *keybound_sp(
- SCREEN *sp,
- int code,
+ SCREEN *sp,
+ int code,
int count)
{ return(*(char **)0); }
#undef keybound
char *keybound(
- int code,
+ int code,
int count)
{ return(*(char **)0); }
@@ -1554,14 +1590,14 @@ char *keybound(
#undef keyok_sp
int keyok_sp(
- SCREEN *sp,
- int c,
+ SCREEN *sp,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
#undef keyok
int keyok(
- int c,
+ int c,
NCURSES_BOOL flag)
{ return(*(int *)0); }
diff --git a/ncurses/modules b/ncurses/modules
index f4c3e8b..e111712 100644
--- a/ncurses/modules
+++ b/ncurses/modules
@@ -1,4 +1,4 @@
-# $Id: modules,v 1.124 2020/02/02 23:34:34 tom Exp $
+# $Id: modules,v 1.127 2020/09/12 17:58:12 tom Exp $
##############################################################################
# Copyright 2019,2020 Thomas E. Dickey #
# Copyright 1998-2013,2017 Free Software Foundation, Inc. #
@@ -241,6 +241,12 @@ wcwidth lib $(win32con) $(HEADER_DEPS)
widechars lib $(wide) $(HEADER_DEPS)
win_driver lib $(win32con) $(HEADER_DEPS)
+@ port_win32
+lib_win32con lib $(tinfo) $(HEADER_DEPS)
+lib_win32util lib $(tinfo) $(HEADER_DEPS)
+wcwidth lib $(win32con) $(HEADER_DEPS)
+win32_driver lib $(win32con) $(HEADER_DEPS)
+
@ port_tinfo
tinfo_driver lib $(tinfo) $(HEADER_DEPS) $(INCDIR)/tic.h
diff --git a/ncurses/new_pair.h b/ncurses/new_pair.h
index 811abc1..49d7e8b 100644
--- a/ncurses/new_pair.h
+++ b/ncurses/new_pair.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -34,13 +34,22 @@
/*
* Common type definitions and macros for new_pair.c, lib_color.c
*
- * $Id: new_pair.h,v 1.10 2020/02/02 23:34:34 tom Exp $
+ * $Id: new_pair.h,v 1.13 2021/09/24 17:52:01 tom Exp $
*/
#ifndef NEW_PAIR_H
#define NEW_PAIR_H 1
/* *INDENT-OFF* */
+#include <ncurses_cfg.h>
+#include <ncurses_dll.h>
+
+#include <sys/types.h>
+
+#undef SCREEN
+#define SCREEN struct screen
+SCREEN;
+
#define LIMIT_TYPED(n,t) \
(t)(((n) > MAX_OF_TYPE(t)) \
? MAX_OF_TYPE(t) \
@@ -77,8 +86,7 @@
typedef enum {
cpKEEP = -1, /* color pair 0 */
cpFREE = 0, /* free for use */
- cpINIT = 1, /* init_pair() */
- cpAUTO = 1 /* alloc_pair() */
+ cpINIT = 1 /* initialized */
} CPMODE;
typedef struct _color_pairs
diff --git a/ncurses/report_offsets.c b/ncurses/report_offsets.c
index 2e7083a..83f6f38 100644
--- a/ncurses/report_offsets.c
+++ b/ncurses/report_offsets.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,7 +33,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: report_offsets.c,v 1.21 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: report_offsets.c,v 1.22 2021/08/19 19:51:33 tom Exp $")
#define show_size(type) \
flag = 0; \
@@ -175,6 +175,7 @@ main(void)
show_offset(TERMINAL, Nttyb);
show_offset(TERMINAL, _baudrate);
show_offset(TERMINAL, _termname);
+ show_offset(TERMINAL, tparm_state);
#if HAVE_INIT_EXTENDED_COLOR
show_COLORS(TERMINAL, type2);
#endif
@@ -187,6 +188,15 @@ main(void)
#endif
printf("\n");
+ show_size(TPARM_STATE);
+ show_offset(TPARM_STATE, stack);
+ show_offset(TPARM_STATE, stack_ptr);
+ show_offset(TPARM_STATE, out_buff);
+ show_offset(TPARM_STATE, fmt_buff);
+ show_offset(TPARM_STATE, static_vars);
+ show_TRACES(TPARM_STATE, tname);
+
+ printf("\n");
show_size(WINDOW);
show_WIDECH(WINDOW, _bkgrnd);
show_COLORS(WINDOW, _color);
@@ -194,6 +204,11 @@ main(void)
printf("\n");
show_size(NCURSES_GLOBALS);
show_offset(NCURSES_GLOBALS, init_signals);
+ show_offset(NCURSES_GLOBALS, tgetent_cache);
+ show_offset(NCURSES_GLOBALS, dbd_vars);
+#if HAVE_TSEARCH
+ show_offset(NCURSES_GLOBALS, cached_tparm);
+#endif
show_DRIVER(NCURSES_GLOBALS, term_driver);
show_NORMAL(NCURSES_GLOBALS, _nc_windowlist);
#if USE_HOME_TERMINFO
@@ -212,10 +227,13 @@ main(void)
printf("\n");
show_size(NCURSES_PRESCREEN);
+ show_offset(NCURSES_PRESCREEN, tparm_state);
show_offset(NCURSES_PRESCREEN, saved_tty);
show_offset(NCURSES_PRESCREEN, use_tioctl);
show_offset(NCURSES_PRESCREEN, _outch);
+#ifndef USE_SP_RIPOFF
show_NORMAL(NCURSES_PRESCREEN, rippedoff);
+#endif
#if NCURSES_NO_PADDING
show_OPTION(NCURSES_PRESCREEN, _no_padding);
#endif
@@ -224,6 +242,9 @@ main(void)
#else
show_REENTR(NCURSES_PRESCREEN, real_acs_map);
#endif
+#if BROKEN_LINKER || USE_REENTRANT
+ show_TRACES(NCURSES_PRESCREEN, _outchars);
+#endif
return EXIT_SUCCESS;
}
diff --git a/ncurses/term.priv.h b/ncurses/term.priv.h
new file mode 100644
index 0000000..ce7a986
--- /dev/null
+++ b/ncurses/term.priv.h
@@ -0,0 +1,332 @@
+/****************************************************************************
+ * Copyright 2021 Thomas E. Dickey *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/*
+ * $Id: term.priv.h,v 1.6 2021/09/26 20:43:08 tom Exp $
+ *
+ * term.priv.h
+ *
+ * Header file for terminfo library objects which are private to
+ * the library.
+ *
+ */
+
+#ifndef _TERM_PRIV_H
+#define _TERM_PRIV_H 1
+/* *INDENT-OFF* */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <ncurses_cfg.h>
+
+#undef NCURSES_OPAQUE
+#define NCURSES_INTERNALS 1
+#define NCURSES_OPAQUE 0
+
+#include <limits.h> /* PATH_MAX */
+#include <signal.h> /* sig_atomic_t */
+#include <time.h> /* time_t */
+#include <term.h> /* time_t */
+
+#ifdef USE_PTHREADS
+#if USE_REENTRANT
+#include <pthread.h>
+#endif
+#endif
+
+/*
+ * State of tparm().
+ */
+#define STACKSIZE 20
+
+typedef struct {
+ union {
+ int num;
+ char * str;
+ } data;
+ bool num_type;
+} STACK_FRAME;
+
+#define NUM_VARS 26
+
+typedef struct {
+ const char * tparam_base;
+
+ STACK_FRAME stack[STACKSIZE];
+ int stack_ptr;
+
+ char * out_buff;
+ size_t out_size;
+ size_t out_used;
+
+ char * fmt_buff;
+ size_t fmt_size;
+
+ int static_vars[NUM_VARS];
+#ifdef TRACE
+ const char * tname;
+#endif
+} TPARM_STATE;
+
+typedef struct {
+ char * text;
+ size_t size;
+} TRACEBUF;
+
+typedef struct {
+ const char * name;
+ char * value;
+} ITERATOR_VARS;
+
+/*
+ * Internals for term.h
+ */
+typedef struct term { /* describe an actual terminal */
+ TERMTYPE type; /* terminal type description */
+ short Filedes; /* file description being written to */
+ TTY Ottyb; /* original state of the terminal */
+ TTY Nttyb; /* current state of the terminal */
+ int _baudrate; /* used to compute padding */
+ char * _termname; /* used for termname() */
+ TPARM_STATE tparm_state;
+#if NCURSES_EXT_COLORS
+ TERMTYPE2 type2; /* extended terminal type description */
+#endif
+#undef TERMINAL
+} TERMINAL;
+
+/*
+ * Internals for soft-keys
+ */
+typedef struct {
+ WINDOW * win; /* the window used in the hook */
+ int line; /* lines to take, < 0 => from bottom*/
+ int (*hook)(WINDOW *, int); /* callback for user */
+} ripoff_t;
+
+/*
+ * Internals for tgetent
+ */
+typedef struct {
+ long sequence;
+ bool last_used;
+ char * fix_sgr0; /* this holds the filtered sgr0 string */
+ char * last_bufp; /* help with fix_sgr0 leak */
+ TERMINAL * last_term;
+} TGETENT_CACHE;
+
+#define TGETENT_MAX 4
+
+#include <term_entry.h> /* dbdLAST */
+
+#ifdef USE_TERM_DRIVER
+struct DriverTCB; /* Terminal Control Block forward declaration */
+#endif
+
+/*
+ * Global data which is not specific to a screen.
+ */
+typedef struct {
+ SIG_ATOMIC_T have_sigtstp;
+ SIG_ATOMIC_T have_sigwinch;
+ SIG_ATOMIC_T cleanup_nested;
+
+ bool init_signals;
+ bool init_screen;
+
+ char * comp_sourcename;
+ char * comp_termtype;
+
+ bool have_tic_directory;
+ bool keep_tic_directory;
+ const char * tic_directory;
+
+ char * dbi_list;
+ int dbi_size;
+
+ char * first_name;
+ char ** keyname_table;
+ int init_keyname;
+
+ int slk_format;
+
+ int getstr_limit; /* getstr_limit based on POSIX LINE_MAX */
+
+ char * safeprint_buf;
+ size_t safeprint_used;
+
+ TGETENT_CACHE tgetent_cache[TGETENT_MAX];
+ int tgetent_index;
+ long tgetent_sequence;
+
+ char * dbd_blob; /* string-heap for dbd_list[] */
+ char ** dbd_list; /* distinct places to look for data */
+ int dbd_size; /* length of dbd_list[] */
+ time_t dbd_time; /* cache last updated */
+ ITERATOR_VARS dbd_vars[dbdLAST];
+
+#if HAVE_TSEARCH
+ void * cached_tparm;
+ int count_tparm;
+#endif /* HAVE_TSEARCH */
+
+#ifdef USE_TERM_DRIVER
+ int (*term_driver)(struct DriverTCB*, const char*, int*);
+#endif
+
+#define WINDOWLIST struct _win_list
+
+#ifndef USE_SP_WINDOWLIST
+ WINDOWLIST * _nc_windowlist;
+#define WindowList(sp) _nc_globals._nc_windowlist
+#endif
+
+#if USE_HOME_TERMINFO
+ char * home_terminfo;
+#endif
+
+#if !USE_SAFE_SPRINTF
+ int safeprint_cols;
+ int safeprint_rows;
+#endif
+
+#ifdef USE_PTHREADS
+ pthread_mutex_t mutex_curses;
+ pthread_mutex_t mutex_prescreen;
+ pthread_mutex_t mutex_screen;
+ pthread_mutex_t mutex_update;
+ pthread_mutex_t mutex_tst_tracef;
+ pthread_mutex_t mutex_tracef;
+ int nested_tracef;
+ int use_pthreads;
+#define _nc_use_pthreads _nc_globals.use_pthreads
+#if USE_PTHREADS_EINTR
+ pthread_t read_thread; /* The reading thread */
+#endif
+#endif
+#if USE_WIDEC_SUPPORT
+ char key_name[MB_LEN_MAX + 1];
+#endif
+
+#ifdef TRACE
+ bool trace_opened;
+ char trace_fname[PATH_MAX];
+ int trace_level;
+ FILE * trace_fp;
+ int trace_fd;
+
+ char * tracearg_buf;
+ size_t tracearg_used;
+
+ TRACEBUF * tracebuf_ptr;
+ size_t tracebuf_used;
+
+ char tracechr_buf[40];
+
+ char * tracedmp_buf;
+ size_t tracedmp_used;
+
+ unsigned char * tracetry_buf;
+ size_t tracetry_used;
+
+ char traceatr_color_buf[2][80];
+ int traceatr_color_sel;
+ int traceatr_color_last;
+#if !defined(USE_PTHREADS) && USE_REENTRANT
+ int nested_tracef;
+#endif
+#endif /* TRACE */
+
+#if NO_LEAKS
+ bool leak_checking;
+#endif
+} NCURSES_GLOBALS;
+
+extern NCURSES_EXPORT_VAR(NCURSES_GLOBALS) _nc_globals;
+
+#define N_RIPS 5
+
+#ifdef USE_PTHREADS
+typedef struct _prescreen_list {
+ struct _prescreen_list *next;
+ pthread_t id;
+ struct screen * sp;
+} PRESCREEN_LIST;
+#endif
+
+/*
+ * Global data which can be swept up into a SCREEN when one is created.
+ * It may be modified before the next SCREEN is created.
+ */
+typedef struct {
+#ifdef USE_PTHREADS
+ PRESCREEN_LIST *allocated;
+#else
+ struct screen * allocated;
+#endif
+ bool use_env;
+ bool filter_mode;
+ attr_t previous_attr;
+ TPARM_STATE tparm_state;
+ TTY * saved_tty; /* savetty/resetty information */
+ bool use_tioctl;
+ NCURSES_SP_OUTC _outch; /* output handler if not putc */
+#ifndef USE_SP_RIPOFF
+ ripoff_t rippedoff[N_RIPS];
+ ripoff_t * rsp;
+#endif
+#if NCURSES_NO_PADDING
+ bool _no_padding; /* flag to set if padding disabled */
+#endif
+#if BROKEN_LINKER || USE_REENTRANT
+ chtype * real_acs_map;
+ int _LINES;
+ int _COLS;
+ int _TABSIZE;
+ int _ESCDELAY;
+ TERMINAL * _cur_term;
+#endif
+#ifdef TRACE
+#if BROKEN_LINKER || USE_REENTRANT
+ long _outchars;
+ const char * _tputs_trace;
+#endif
+#endif
+} NCURSES_PRESCREEN;
+
+extern NCURSES_EXPORT_VAR(NCURSES_PRESCREEN) _nc_prescreen;
+
+#ifdef __cplusplus
+}
+#endif
+
+/* *INDENT-ON* */
+
+#endif /* _TERM_PRIV_H */
diff --git a/ncurses/tinfo/MKcaptab.sh b/ncurses/tinfo/MKcaptab.sh
index c800023..c800023 100755..100644
--- a/ncurses/tinfo/MKcaptab.sh
+++ b/ncurses/tinfo/MKcaptab.sh
diff --git a/ncurses/tinfo/MKfallback.sh b/ncurses/tinfo/MKfallback.sh
index 319ab06..64c65f1 100755..100644
--- a/ncurses/tinfo/MKfallback.sh
+++ b/ncurses/tinfo/MKfallback.sh
@@ -27,7 +27,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: MKfallback.sh,v 1.24 2020/02/08 21:52:37 tom Exp $
+# $Id: MKfallback.sh,v 1.25 2020/08/16 15:58:44 tom Exp $
#
# MKfallback.sh -- create fallback table for entry reads
#
@@ -44,12 +44,14 @@ terminfo_src=$1
shift
tic_path=$1
+test -z "$tic_path" && tic_path=tic
shift
infocmp_path=$1
+test -z "$infocmp_path" && infocmp_path=infocmp
shift
-case $tic_path in #(vi
+case "$tic_path" in #(vi
/*)
tic_head=`echo "$tic_path" | sed -e 's,/[^/]*$,,'`
PATH=$tic_head:$PATH
@@ -67,7 +69,7 @@ if test $# != 0 ; then
TERMINFO_DIRS=$TERMINFO:$terminfo_dir
export TERMINFO_DIRS
- $tic_path -x $terminfo_src >&2
+ "$tic_path" -x "$terminfo_src" >&2
else
tmp_info=
fi
@@ -90,10 +92,10 @@ then
/* fallback entries for: $* */
EOF
- for x in $*
+ for x in "$@"
do
echo "/* $x */"
- $infocmp_path -E $x | sed -e 's/\<short\>/NCURSES_INT2/g'
+ "$infocmp_path" -E "$x" | sed -e 's/\<short\>/NCURSES_INT2/g'
done
cat <<EOF
@@ -101,10 +103,10 @@ static const TERMTYPE2 fallbacks[$#] =
{
EOF
comma=""
- for x in $*
+ for x in "$@"
do
echo "$comma /* $x */"
- $infocmp_path -e $x
+ "$infocmp_path" -e "$x"
comma=","
done
diff --git a/ncurses/tinfo/MKkeys_list.sh b/ncurses/tinfo/MKkeys_list.sh
index 3b8beae..3b8beae 100755..100644
--- a/ncurses/tinfo/MKkeys_list.sh
+++ b/ncurses/tinfo/MKkeys_list.sh
diff --git a/ncurses/tinfo/MKuserdefs.sh b/ncurses/tinfo/MKuserdefs.sh
index 109dd64..109dd64 100755..100644
--- a/ncurses/tinfo/MKuserdefs.sh
+++ b/ncurses/tinfo/MKuserdefs.sh
diff --git a/ncurses/tinfo/access.c b/ncurses/tinfo/access.c
index c69707f..a735db2 100644
--- a/ncurses/tinfo/access.c
+++ b/ncurses/tinfo/access.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2011,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,12 +35,26 @@
#include <ctype.h>
+#ifndef USE_ROOT_ACCESS
+#if HAVE_SETFSUID
+#include <sys/fsuid.h>
+#else
+#include <sys/stat.h>
+#endif
+#endif
+
#include <tic.h>
-MODULE_ID("$Id: access.c,v 1.25 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: access.c,v 1.31 2021/08/29 10:35:17 tom Exp $")
#define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
+#ifdef _NC_MSC
+# define ACCESS(FN, MODE) access((FN), (MODE)&(R_OK|W_OK))
+#else
+# define ACCESS access
+#endif
+
NCURSES_EXPORT(char *)
_nc_rootname(char *path)
{
@@ -112,7 +126,7 @@ _nc_access(const char *path, int mode)
if (path == 0) {
result = -1;
- } else if (access(path, mode) < 0) {
+ } else if (ACCESS(path, mode) < 0) {
if ((mode & W_OK) != 0
&& errno == ENOENT
&& strlen(path) < PATH_MAX) {
@@ -127,7 +141,7 @@ _nc_access(const char *path, int mode)
if (head == leaf)
_nc_STRCPY(head, ".", sizeof(head));
- result = access(head, R_OK | W_OK | X_OK);
+ result = ACCESS(head, R_OK | W_OK | X_OK);
} else {
result = -1;
}
@@ -163,6 +177,32 @@ _nc_is_file_path(const char *path)
return result;
}
+#if HAVE_ISSETUGID
+#define is_elevated() issetugid()
+#elif HAVE_GETEUID && HAVE_GETEGID
+#define is_elevated() \
+ (getuid() != geteuid() \
+ || getgid() != getegid())
+#else
+#define is_elevated() FALSE
+#endif
+
+#if HAVE_SETFSUID
+#define lower_privileges() \
+ int save_err = errno; \
+ setfsuid(getuid()); \
+ setfsgid(getgid()); \
+ errno = save_err
+#define resume_elevation() \
+ save_err = errno; \
+ setfsuid(geteuid()); \
+ setfsgid(getegid()); \
+ errno = save_err
+#else
+#define lower_privileges() /* nothing */
+#define resume_elevation() /* nothing */
+#endif
+
#ifndef USE_ROOT_ENVIRON
/*
* Returns true if we allow application to use environment variables that are
@@ -171,15 +211,50 @@ _nc_is_file_path(const char *path)
NCURSES_EXPORT(int)
_nc_env_access(void)
{
-#if HAVE_ISSETUGID
- if (issetugid())
- return FALSE;
-#elif HAVE_GETEUID && HAVE_GETEGID
- if (getuid() != geteuid()
- || getgid() != getegid())
- return FALSE;
+ int result = TRUE;
+
+ if (is_elevated()) {
+ result = FALSE;
+ } else if ((getuid() == ROOT_UID) || (geteuid() == ROOT_UID)) {
+ result = FALSE;
+ }
+ return result;
+}
+#endif /* USE_ROOT_ENVIRON */
+
+#ifndef USE_ROOT_ACCESS
+/*
+ * Limit privileges if possible; otherwise disallow access for updating files.
+ */
+NCURSES_EXPORT(FILE *)
+_nc_safe_fopen(const char *path, const char *mode)
+{
+ FILE *result = NULL;
+#if HAVE_SETFSUID
+ lower_privileges();
+ result = fopen(path, mode);
+ resume_elevation();
+#else
+ if (!is_elevated() || *mode == 'r') {
+ result = fopen(path, mode);
+ }
#endif
- /* ...finally, disallow root */
- return (getuid() != ROOT_UID) && (geteuid() != ROOT_UID);
+ return result;
}
+
+NCURSES_EXPORT(int)
+_nc_safe_open3(const char *path, int flags, mode_t mode)
+{
+ int result = -1;
+#if HAVE_SETFSUID
+ lower_privileges();
+ result = open(path, flags, mode);
+ resume_elevation();
+#else
+ if (!is_elevated() || (flags & O_RDONLY)) {
+ result = open(path, flags, mode);
+ }
#endif
+ return result;
+}
+#endif /* USE_ROOT_ENVIRON */
diff --git a/ncurses/tinfo/alloc_entry.c b/ncurses/tinfo/alloc_entry.c
index 4bf7d6c..c13f86e 100644
--- a/ncurses/tinfo/alloc_entry.c
+++ b/ncurses/tinfo/alloc_entry.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2013,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -48,7 +48,7 @@
#include <tic.h>
-MODULE_ID("$Id: alloc_entry.c,v 1.64 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: alloc_entry.c,v 1.66 2021/08/08 00:09:37 tom Exp $")
#define ABSENT_OFFSET -1
#define CANCELLED_OFFSET -2
@@ -93,14 +93,14 @@ _nc_copy_entry(ENTRY * oldp)
/* save a copy of string in the string buffer */
NCURSES_EXPORT(char *)
-_nc_save_str(const char *const string)
+_nc_save_str(const char *string)
{
char *result = 0;
size_t old_next_free = next_free;
size_t len;
if (!VALID_STRING(string))
- return _nc_save_str("");
+ string = "";
len = strlen(string) + 1;
if (len == 1 && next_free != 0) {
@@ -242,7 +242,7 @@ _nc_merge_entry(ENTRY * const target, ENTRY * const source)
_nc_align_termtype(to, from);
#endif
for_each_boolean(i, from) {
- if (to->Booleans[i] != (char) CANCELLED_BOOLEAN) {
+ if (to->Booleans[i] != (NCURSES_SBOOL) CANCELLED_BOOLEAN) {
int mergebool = from->Booleans[i];
if (mergebool == CANCELLED_BOOLEAN)
diff --git a/ncurses/tinfo/alloc_ttype.c b/ncurses/tinfo/alloc_ttype.c
index 222868e..cb82411 100644
--- a/ncurses/tinfo/alloc_ttype.c
+++ b/ncurses/tinfo/alloc_ttype.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1999-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,7 +43,7 @@
#include <tic.h>
-MODULE_ID("$Id: alloc_ttype.c,v 1.33 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: alloc_ttype.c,v 1.35 2021/06/17 21:11:08 tom Exp $")
#if NCURSES_XNAMES
/*
@@ -429,7 +429,7 @@ _nc_align_termtype(TERMTYPE2 *to, TERMTYPE2 *from)
na, to ? NonNull(to->term_names) : "?",
nb, from ? NonNull(from->term_names) : "?"));
- if (na != 0 || nb != 0) {
+ if (to != NULL && from != NULL && (na != 0 || nb != 0)) {
int ext_Booleans, ext_Numbers, ext_Strings;
bool used_ext_Names = FALSE;
@@ -450,7 +450,7 @@ _nc_align_termtype(TERMTYPE2 *to, TERMTYPE2 *from)
return;
}
/*
- * This is where we pay for having a simple extension representation.
+ * This is where we pay for having a simple extension representation.
* Allocate a new ext_Names array and merge the two ext_Names arrays
* into it, updating to's counts for booleans, etc. Fortunately we do
* this only for the terminfo compiler (tic) and comparer (infocmp).
diff --git a/ncurses/tinfo/captoinfo.c b/ncurses/tinfo/captoinfo.c
index 8b3b83d..7e14731 100644
--- a/ncurses/tinfo/captoinfo.c
+++ b/ncurses/tinfo/captoinfo.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -98,7 +98,7 @@
#include <ctype.h>
#include <tic.h>
-MODULE_ID("$Id: captoinfo.c,v 1.98 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: captoinfo.c,v 1.102 2021/09/04 10:29:15 tom Exp $")
#if 0
#define DEBUG_THIS(p) DEBUG(9, p)
@@ -216,12 +216,15 @@ cvtchar(register const char *sp)
}
break;
case '^':
+ len = 2;
c = UChar(*++sp);
- if (c == '?')
+ if (c == '?') {
c = 127;
- else
+ } else if (c == '\0') {
+ len = 1;
+ } else {
c &= 0x1f;
- len = 2;
+ }
break;
default:
c = UChar(*sp);
@@ -631,12 +634,15 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parameteriz
int offset;
} fixups[MAX_TC_FIXUPS];
- DEBUG_THIS(("_nc_infotocap params %d, %s", parameterized, str));
+ DEBUG_THIS(("_nc_infotocap %s params %d, %s",
+ _nc_strict_bsd ? "strict" : "loose",
+ parameterized,
+ _nc_visbuf(str)));
/* we may have to move some trailing mandatory padding up front */
padding = str + strlen(str) - 1;
if (padding > str && *padding == '>') {
- if (*--padding == '/')
+ if (padding > (str + 1) && *--padding == '/')
--padding;
while (isdigit(UChar(*padding)) || *padding == '.' || *padding == '*')
padding--;
@@ -670,6 +676,11 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parameteriz
bufptr = save_char(bufptr, *str++);
bufptr = save_char(bufptr, *str);
}
+ } else if (str[0] == ':') {
+ bufptr = save_char(bufptr, '\\');
+ bufptr = save_char(bufptr, '0');
+ bufptr = save_char(bufptr, '7');
+ bufptr = save_char(bufptr, '2');
} else if (str[0] == '\\') {
if (str[1] == '\0' || (str + 1) == trimmed) {
bufptr = save_string(bufptr, "\\134");
@@ -929,7 +940,7 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parameteriz
break;
/*
- * %s isn't in termcap, but it's convenient to pass it through
+ * %s isn't in termcap, but it is convenient to pass it through
* so we can represent things like terminfo pfkey strings in
* termcap notation.
*/
diff --git a/ncurses/tinfo/comp_expand.c b/ncurses/tinfo/comp_expand.c
index 02e38e6..724283c 100644
--- a/ncurses/tinfo/comp_expand.c
+++ b/ncurses/tinfo/comp_expand.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -36,7 +36,7 @@
#include <ctype.h>
#include <tic.h>
-MODULE_ID("$Id: comp_expand.c,v 1.32 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: comp_expand.c,v 1.34 2021/09/04 10:29:15 tom Exp $")
#if 0
#define DEBUG_THIS(p) DEBUG(9, p)
@@ -87,7 +87,10 @@ _nc_tic_expand(const char *srcp, bool tic_format, int numbers)
return 0;
}
- DEBUG_THIS(("_nc_tic_expand %s", _nc_visbuf(srcp)));
+ DEBUG_THIS(("_nc_tic_expand %s:%s:%s",
+ tic_format ? "ti" : "tc",
+ numbers ? "#" : "",
+ _nc_visbuf(srcp)));
bufp = 0;
while ((ch = UChar(*str)) != 0) {
if (ch == '%' && REALPRINT(str + 1)) {
@@ -162,12 +165,12 @@ _nc_tic_expand(const char *srcp, bool tic_format, int numbers)
trailing_spaces(str))) {
buffer[bufp++] = '\\';
buffer[bufp++] = 's';
- } else if ((ch == ',' || ch == ':' || ch == '^') && tic_format) {
+ } else if ((ch == ',' || ch == '^') && tic_format) {
buffer[bufp++] = '\\';
buffer[bufp++] = (char) ch;
} else if (REALPRINT(str)
&& (ch != ','
- && ch != ':'
+ && !(ch == ':' && !tic_format)
&& !(ch == '!' && !tic_format)
&& ch != '^'))
buffer[bufp++] = (char) ch;
@@ -203,7 +206,7 @@ _nc_tic_expand(const char *srcp, bool tic_format, int numbers)
/*
* If most of a short string is ASCII control characters, reformat the
- * string to show those in up-arrow format. For longer strings, it's
+ * string to show those in up-arrow format. For longer strings, it is
* more likely that the characters are just binary coding.
*
* If we're formatting termcap, just use the shorter format (up-arrows).
diff --git a/ncurses/tinfo/comp_parse.c b/ncurses/tinfo/comp_parse.c
index ab25d5b..2bc9485 100644
--- a/ncurses/tinfo/comp_parse.c
+++ b/ncurses/tinfo/comp_parse.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -48,10 +48,10 @@
#include <tic.h>
-MODULE_ID("$Id: comp_parse.c,v 1.109 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: comp_parse.c,v 1.113 2021/05/08 15:03:42 tom Exp $")
static void sanity_check2(TERMTYPE2 *, bool);
-NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype2) (TERMTYPE2 *, bool) = sanity_check2;
+NCURSES_IMPEXP void (NCURSES_API *_nc_check_termtype2) (TERMTYPE2 *, bool) = sanity_check2;
static void fixup_acsc(TERMTYPE2 *, int);
@@ -392,7 +392,7 @@ _nc_resolve_uses2(bool fullresolve, bool literal)
{
ENTRY *qp, *rp, *lastread = 0;
bool keepgoing;
- unsigned i;
+ unsigned i, j;
int unresolved, total_unresolved, multiples;
DEBUG(2, ("RESOLUTION BEGINNING"));
@@ -454,6 +454,16 @@ _nc_resolve_uses2(bool fullresolve, bool literal)
qp->uses[i].link = rp;
foundit = TRUE;
+
+ /* verify that there are no earlier uses */
+ for (j = 0; j < i; ++j) {
+ if (qp->uses[j].link != NULL
+ && !strcmp(qp->uses[j].link->tterm.term_names,
+ rp->tterm.term_names)) {
+ _nc_warning("duplicate use=%s", lookfor);
+ break;
+ }
+ }
}
}
@@ -475,6 +485,16 @@ _nc_resolve_uses2(bool fullresolve, bool literal)
qp->uses[i].link = rp;
foundit = TRUE;
+
+ /* verify that there are no earlier uses */
+ for (j = 0; j < i; ++j) {
+ if (qp->uses[j].link != NULL
+ && !strcmp(qp->uses[j].link->tterm.term_names,
+ rp->tterm.term_names)) {
+ _nc_warning("duplicate use=%s", lookfor);
+ break;
+ }
+ }
}
}
diff --git a/ncurses/tinfo/comp_scan.c b/ncurses/tinfo/comp_scan.c
index 87929d2..08e0e7e 100644
--- a/ncurses/tinfo/comp_scan.c
+++ b/ncurses/tinfo/comp_scan.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -51,7 +51,7 @@
#include <ctype.h>
#include <tic.h>
-MODULE_ID("$Id: comp_scan.c,v 1.109 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: comp_scan.c,v 1.112 2021/10/04 23:56:28 tom Exp $")
/*
* Maximum length of string capability we'll accept before raising an error.
@@ -136,7 +136,7 @@ last_char(int from_end)
while (len--) {
if (!isspace(UChar(bufptr[len]))) {
- if (from_end < (int) len)
+ if (from_end <= (int) len)
result = bufptr[(int) len - from_end];
break;
}
@@ -556,7 +556,7 @@ _nc_get_token(bool silent)
* Grrr...what we ought to do here is barf, complaining that
* the entry is malformed. But because a couple of name fields
* in the 8.2 termcap file end with |\, we just have to assume
- * it's termcap syntax.
+ * it is termcap syntax.
*/
_nc_syntax = SYN_TERMCAP;
separator = ':';
@@ -587,10 +587,11 @@ _nc_get_token(bool silent)
*/
if (after_list != 0) {
if (!silent) {
- if (*after_list == '\0')
+ if (*after_list == '\0' || strchr("|", after_list[1]) != NULL) {
_nc_warning("empty longname field");
- else if (strchr(after_list, ' ') == 0)
+ } else if (strchr(after_list, ' ') == 0) {
_nc_warning("older tic versions may treat the description field as an alias");
+ }
}
} else {
after_list = tok_buf + strlen(tok_buf);
diff --git a/ncurses/tinfo/doalloc.c b/ncurses/tinfo/doalloc.c
index f0c8141..e3b1a2e 100644
--- a/ncurses/tinfo/doalloc.c
+++ b/ncurses/tinfo/doalloc.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2002,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -40,15 +40,18 @@
#include <curses.priv.h>
-MODULE_ID("$Id: doalloc.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: doalloc.c,v 1.14 2021/04/24 23:43:39 tom Exp $")
-NCURSES_EXPORT(void *)
+void *
_nc_doalloc(void *oldp, size_t amount)
{
void *newp;
- if (oldp != 0) {
- if ((newp = realloc(oldp, amount)) == 0) {
+ if (oldp != NULL) {
+ if (amount == 0) {
+ free(oldp);
+ newp = NULL;
+ } else if ((newp = realloc(oldp, amount)) == 0) {
free(oldp);
errno = ENOMEM; /* just in case 'free' reset */
}
diff --git a/ncurses/tinfo/lib_baudrate.c b/ncurses/tinfo/lib_baudrate.c
index 4f72de5..311c41a 100644
--- a/ncurses/tinfo/lib_baudrate.c
+++ b/ncurses/tinfo/lib_baudrate.c
@@ -84,7 +84,7 @@
#undef USE_OLD_TTY
#endif /* USE_OLD_TTY */
-MODULE_ID("$Id: lib_baudrate.c,v 1.44 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_baudrate.c,v 1.45 2020/09/05 21:15:32 tom Exp $")
/*
* int
@@ -99,6 +99,7 @@ struct speed {
int actual_speed; /* the actual speed */
};
+#if !defined(EXP_WIN32_DRIVER)
#define DATA(number) { B##number, number }
static struct speed const speeds[] =
@@ -188,10 +189,16 @@ static struct speed const speeds[] =
#endif
#endif
};
+#endif /* !EXP_WIN32_DRIVER */
NCURSES_EXPORT(int)
_nc_baudrate(int OSpeed)
{
+#if defined(EXP_WIN32_DRIVER)
+ /* On Windows this is a noop */
+ (void) OSpeed;
+ return (OK);
+#else
#if !USE_REENTRANT
static int last_OSpeed;
static int last_baudrate;
@@ -230,13 +237,16 @@ _nc_baudrate(int OSpeed)
#endif
}
return (result);
+#endif /* !EXP_WIN32_DRIVER */
}
NCURSES_EXPORT(int)
_nc_ospeed(int BaudRate)
{
int result = 1;
-
+#if defined(EXP_WIN32_DRIVER)
+ (void) BaudRate;
+#else
if (BaudRate >= 0) {
unsigned i;
@@ -247,6 +257,7 @@ _nc_ospeed(int BaudRate)
}
}
}
+#endif
return (result);
}
@@ -257,6 +268,9 @@ NCURSES_SP_NAME(baudrate) (NCURSES_SP_DCL0)
T((T_CALLED("baudrate(%p)"), (void *) SP_PARM));
+#if defined(EXP_WIN32_DRIVER)
+ result = OK;
+#else
/*
* In debugging, allow the environment symbol to override when we're
* redirecting to a file, so we can construct repeatable test-cases
@@ -290,7 +304,7 @@ NCURSES_SP_NAME(baudrate) (NCURSES_SP_DCL0)
} else {
result = ERR;
}
-
+#endif /* !EXP_WIN32_DRIVER */
returnCode(result);
}
diff --git a/ncurses/tinfo/lib_cur_term.c b/ncurses/tinfo/lib_cur_term.c
index 4a90335..0373aeb 100644
--- a/ncurses/tinfo/lib_cur_term.c
+++ b/ncurses/tinfo/lib_cur_term.c
@@ -39,8 +39,9 @@
#include <curses.priv.h>
#include <termcap.h> /* ospeed */
+#include <tic.h> /* VALID_STRING */
-MODULE_ID("$Id: lib_cur_term.c,v 1.42 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_cur_term.c,v 1.43 2020/10/24 18:54:32 tom Exp $")
#undef CUR
#define CUR TerminalType(termp).
@@ -99,13 +100,13 @@ NCURSES_SP_NAME(set_curterm) (NCURSES_SP_DCLx TERMINAL *termp)
if (TCB->drv &&
TCB->drv->isTerminfo &&
TerminalType(termp).Strings) {
- PC = (char) ((pad_char != NULL) ? pad_char[0] : 0);
+ PC = (char) (VALID_STRING(pad_char) ? pad_char[0] : 0);
}
TCB->csp = SP_PARM;
#else
ospeed = (NCURSES_OSPEED) _nc_ospeed(termp->_baudrate);
if (TerminalType(termp).Strings) {
- PC = (char) ((pad_char != NULL) ? pad_char[0] : 0);
+ PC = (char) (VALID_STRING(pad_char) ? pad_char[0] : 0);
}
#endif
#if !USE_REENTRANT
diff --git a/ncurses/tinfo/lib_data.c b/ncurses/tinfo/lib_data.c
index bf3e554..8bebc3d 100644
--- a/ncurses/tinfo/lib_data.c
+++ b/ncurses/tinfo/lib_data.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,7 +43,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_data.c,v 1.80 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_data.c,v 1.85 2021/09/04 10:54:35 tom Exp $")
/*
* OS/2's native linker complains if we don't initialize public data when
@@ -155,6 +155,11 @@ NCURSES_EXPORT_VAR(NCURSES_GLOBALS) _nc_globals = {
0, /* dbd_time */
{ { 0, 0 } }, /* dbd_vars */
+#if HAVE_TSEARCH
+ NULL, /* cached_tparm */
+ 0, /* count_tparm */
+#endif /* HAVE_TSEARCH */
+
#ifdef USE_TERM_DRIVER
0, /* term_driver */
#endif
@@ -246,7 +251,6 @@ NCURSES_EXPORT_VAR(NCURSES_PRESCREEN) _nc_prescreen = {
NULL, /* fmt_buff */
0, /* fmt_size */
- NUM_VARS_0s, /* dynamic_var */
NUM_VARS_0s, /* static_vars */
#ifdef TRACE
NULL, /* tname */
diff --git a/ncurses/tinfo/lib_kernel.c b/ncurses/tinfo/lib_kernel.c
index 482657a..d5b021b 100644
--- a/ncurses/tinfo/lib_kernel.c
+++ b/ncurses/tinfo/lib_kernel.c
@@ -49,8 +49,9 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_kernel.c,v 1.32 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_kernel.c,v 1.34 2020/11/21 22:05:58 tom Exp $")
+#ifdef TERMIOS
static int
_nc_vdisable(void)
{
@@ -71,6 +72,7 @@ _nc_vdisable(void)
#endif
return value;
}
+#endif /* TERMIOS */
/*
* erasechar()
@@ -92,6 +94,8 @@ NCURSES_SP_NAME(erasechar) (NCURSES_SP_DCL0)
result = termp->Ottyb.c_cc[VERASE];
if (result == _nc_vdisable())
result = ERR;
+#elif defined(EXP_WIN32_DRIVER)
+ result = ERR;
#else
result = termp->Ottyb.sg_erase;
#endif
@@ -127,6 +131,8 @@ NCURSES_SP_NAME(killchar) (NCURSES_SP_DCL0)
result = termp->Ottyb.c_cc[VKILL];
if (result == _nc_vdisable())
result = ERR;
+#elif defined(EXP_WIN32_DRIVER)
+ result = ERR;
#else
result = termp->Ottyb.sg_kill;
#endif
@@ -162,7 +168,11 @@ NCURSES_SP_NAME(flushinp) (NCURSES_SP_DCL0)
#else
errno = 0;
do {
+#if defined(EXP_WIN32_DRIVER)
+ _nc_console_flush(_nc_console_fd2handle(termp->Filedes));
+#else
ioctl(termp->Filedes, TIOCFLUSH, 0);
+#endif
} while
(errno == EINTR);
#endif
diff --git a/ncurses/tinfo/lib_longname.c b/ncurses/tinfo/lib_longname.c
index 835d15c..9dc6d71 100644
--- a/ncurses/tinfo/lib_longname.c
+++ b/ncurses/tinfo/lib_longname.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,7 +43,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_longname.c,v 1.14 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_longname.c,v 1.15 2021/04/03 22:36:21 tom Exp $")
#if USE_REENTRANT
NCURSES_EXPORT(char *)
@@ -51,11 +51,12 @@ NCURSES_SP_NAME(longname) (NCURSES_SP_DCL0)
{
static char empty[] =
{'\0'};
- char *ptr;
T((T_CALLED("longname(%p)"), (void *) SP_PARM));
if (SP_PARM) {
+ char *ptr;
+
for (ptr = SP_PARM->_ttytype + strlen(SP_PARM->_ttytype);
ptr > SP_PARM->_ttytype;
ptr--)
diff --git a/ncurses/tinfo/lib_napms.c b/ncurses/tinfo/lib_napms.c
index 99dacd7..3a9fc31 100644
--- a/ncurses/tinfo/lib_napms.c
+++ b/ncurses/tinfo/lib_napms.c
@@ -52,7 +52,7 @@
#endif
#endif
-MODULE_ID("$Id: lib_napms.c,v 1.26 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_napms.c,v 1.27 2020/08/15 19:45:23 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(napms) (NCURSES_SP_DCLx int ms)
@@ -75,6 +75,8 @@ NCURSES_SP_NAME(napms) (NCURSES_SP_DCLx int ms)
request = remaining;
}
}
+#elif defined(_NC_WINDOWS)
+ Sleep((DWORD) ms);
#else
_nc_timed_wait(0, 0, ms, (int *) 0 EVENTLIST_2nd(0));
#endif
diff --git a/ncurses/tinfo/lib_options.c b/ncurses/tinfo/lib_options.c
index 784e06c..017a34a 100644
--- a/ncurses/tinfo/lib_options.c
+++ b/ncurses/tinfo/lib_options.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -47,7 +47,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_options.c,v 1.81 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_options.c,v 1.82 2021/02/14 00:17:35 tom Exp $")
NCURSES_EXPORT(int)
idlok(WINDOW *win, bool flag)
@@ -361,7 +361,7 @@ _nc_keypad(SCREEN *sp, int flag)
#else
if (flag) {
(void) NCURSES_PUTP2_FLUSH("keypad_xmit", keypad_xmit);
- } else if (!flag && keypad_local) {
+ } else if (keypad_local) {
(void) NCURSES_PUTP2_FLUSH("keypad_local", keypad_local);
}
diff --git a/ncurses/tinfo/lib_print.c b/ncurses/tinfo/lib_print.c
index eb92149..aa65041 100644
--- a/ncurses/tinfo/lib_print.c
+++ b/ncurses/tinfo/lib_print.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2011,2012 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -40,14 +40,14 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_print.c,v 1.25 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_print.c,v 1.30 2021/04/18 14:58:57 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(mcprint) (NCURSES_SP_DCLx char *data, int len)
/* ship binary character data to the printer via mc4/mc5/mc5p */
{
int result;
- char *mybuf, *switchon;
+ char *mybuf = NULL, *switchon;
size_t onsize, offsize;
size_t need;
@@ -60,7 +60,7 @@ NCURSES_SP_NAME(mcprint) (NCURSES_SP_DCLx char *data, int len)
}
if (prtr_non) {
- switchon = TPARM_1(prtr_non, len);
+ switchon = TIPARM_1(prtr_non, len);
onsize = strlen(switchon);
offsize = 0;
} else {
@@ -73,6 +73,7 @@ NCURSES_SP_NAME(mcprint) (NCURSES_SP_DCLx char *data, int len)
if (switchon == 0
|| (mybuf = typeMalloc(char, need + 1)) == 0) {
+ free(mybuf);
errno = ENOMEM;
return (ERR);
}
@@ -96,7 +97,7 @@ NCURSES_SP_NAME(mcprint) (NCURSES_SP_DCLx char *data, int len)
* kernel will ship the contiguous clist items from the last write
* immediately.
*/
-#ifndef _WIN32
+#ifndef _NC_WINDOWS
(void) sleep(0);
#endif
free(mybuf);
diff --git a/ncurses/tinfo/lib_raw.c b/ncurses/tinfo/lib_raw.c
index a691a26..1e47f3b 100644
--- a/ncurses/tinfo/lib_raw.c
+++ b/ncurses/tinfo/lib_raw.c
@@ -50,7 +50,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_raw.c,v 1.24 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_raw.c,v 1.26 2020/11/21 22:07:48 tom Exp $")
#if HAVE_SYS_TERMIO_H
#include <sys/termio.h> /* needed for ISC */
@@ -97,6 +97,8 @@ NCURSES_SP_NAME(raw) (NCURSES_SP_DCL0)
buf.c_iflag &= (unsigned) ~(COOKED_INPUT);
buf.c_cc[VMIN] = 1;
buf.c_cc[VTIME] = 0;
+#elif defined(EXP_WIN32_DRIVER)
+ buf.dwFlagIn &= (unsigned long) ~CONMODE_NORAW;
#else
buf.sg_flags |= RAW;
#endif
@@ -152,6 +154,9 @@ NCURSES_SP_NAME(cbreak) (NCURSES_SP_DCL0)
buf.c_lflag |= ISIG;
buf.c_cc[VMIN] = 1;
buf.c_cc[VTIME] = 0;
+#elif defined(EXP_WIN32_DRIVER)
+ buf.dwFlagIn |= CONMODE_NORAW;
+ buf.dwFlagIn &= (unsigned long) ~CONMODE_NOCBREAK;
#else
buf.sg_flags |= CBREAK;
#endif
@@ -231,6 +236,8 @@ NCURSES_SP_NAME(noraw) (NCURSES_SP_DCL0)
buf.c_lflag |= ISIG | ICANON |
(termp->Ottyb.c_lflag & IEXTEN);
buf.c_iflag |= COOKED_INPUT;
+#elif defined(EXP_WIN32_DRIVER)
+ buf.dwFlagIn |= CONMODE_NORAW;
#else
buf.sg_flags &= ~(RAW | CBREAK);
#endif
@@ -283,6 +290,8 @@ NCURSES_SP_NAME(nocbreak) (NCURSES_SP_DCL0)
#ifdef TERMIOS
buf.c_lflag |= ICANON;
buf.c_iflag |= ICRNL;
+#elif defined(EXP_WIN32_DRIVER)
+ buf.dwFlagIn |= (CONMODE_NOCBREAK | CONMODE_NORAW);
#else
buf.sg_flags &= ~CBREAK;
#endif
diff --git a/ncurses/tinfo/lib_setup.c b/ncurses/tinfo/lib_setup.c
index a6527bf..0aaaa93 100644
--- a/ncurses/tinfo/lib_setup.c
+++ b/ncurses/tinfo/lib_setup.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -49,7 +49,7 @@
#include <locale.h>
#endif
-MODULE_ID("$Id: lib_setup.c,v 1.207 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_setup.c,v 1.214 2021/09/01 23:38:12 tom Exp $")
/****************************************************************************
*
@@ -66,7 +66,7 @@ MODULE_ID("$Id: lib_setup.c,v 1.207 2020/02/02 23:34:34 tom Exp $")
#endif
#if NEED_PTEM_H
- /* On SCO, they neglected to define struct winsize in termios.h -- it's only
+ /* On SCO, they neglected to define struct winsize in termios.h -- it is only
* in termio.h and ptem.h (the former conflicts with other definitions).
*/
# include <sys/stream.h>
@@ -305,11 +305,19 @@ _nc_get_screensize(SCREEN *sp,
bool useEnv = _nc_prescreen.use_env;
bool useTioctl = _nc_prescreen.use_tioctl;
+#ifdef EXP_WIN32_DRIVER
+ /* If we are here, then Windows console is used in terminfo mode.
+ We need to figure out the size using the console API
+ */
+ _nc_console_size(linep, colp);
+ T(("screen size: winconsole lines = %d columns = %d", *linep, *colp));
+#else
/* figure out the size of the screen */
T(("screen size: terminfo lines = %d columns = %d", lines, columns));
*linep = (int) lines;
*colp = (int) columns;
+#endif
#if NCURSES_SP_FUNCS
if (sp) {
@@ -566,7 +574,7 @@ NCURSES_EXPORT(int)
_nc_unicode_locale(void)
{
int result = 0;
-#if defined(_WIN32) && USE_WIDEC_SUPPORT
+#if defined(_NC_WINDOWS) && USE_WIDEC_SUPPORT
result = 1;
#elif HAVE_LANGINFO_CODESET
char *env = nl_langinfo(CODESET);
@@ -655,13 +663,20 @@ TINFO_SETUP_TERM(TERMINAL **tp,
if (tname == 0) {
tname = getenv("TERM");
- if (tname == 0 || *tname == '\0') {
-#ifdef USE_TERM_DRIVER
+#if defined(EXP_WIN32_DRIVER)
+ if (!VALID_TERM_ENV(tname, NO_TERMINAL)) {
+ T(("Failure with TERM=%s", NonNull(tname)));
+ ret_error0(TGETENT_ERR, "TERM environment variable not set.\n");
+ }
+#elif defined(USE_TERM_DRIVER)
+ if (!NonEmpty(tname))
tname = "unknown";
#else
+ if (!NonEmpty(tname)) {
+ T(("Failure with TERM=%s", NonNull(tname)));
ret_error0(TGETENT_ERR, "TERM environment variable not set.\n");
-#endif
}
+#endif
}
myname = strdup(tname);
@@ -680,6 +695,10 @@ TINFO_SETUP_TERM(TERMINAL **tp,
*/
if (Filedes == STDOUT_FILENO && !NC_ISATTY(Filedes))
Filedes = STDERR_FILENO;
+#if defined(EXP_WIN32_DRIVER)
+ if (Filedes != STDERR_FILENO && NC_ISATTY(Filedes))
+ _setmode(Filedes, _O_BINARY);
+#endif
/*
* Check if we have already initialized to use this terminal. If so, we
@@ -783,6 +802,7 @@ TINFO_SETUP_TERM(TERMINAL **tp,
ret_error1(status, "unknown terminal type.\n",
myname, free(myname));
} else {
+ free(myname);
ret_error0(status, "unexpected return-code\n");
}
}
diff --git a/ncurses/tinfo/lib_tgoto.c b/ncurses/tinfo/lib_tgoto.c
index 8e24085..9cf5e10 100644
--- a/ncurses/tinfo/lib_tgoto.c
+++ b/ncurses/tinfo/lib_tgoto.c
@@ -36,7 +36,7 @@
#include <ctype.h>
#include <termcap.h>
-MODULE_ID("$Id: lib_tgoto.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_tgoto.c,v 1.21 2020/05/27 23:55:56 tom Exp $")
#if !PURE_TERMINFO
static bool
@@ -207,6 +207,6 @@ tgoto(const char *string, int x, int y)
result = tgoto_internal(string, x, y);
else
#endif
- result = TPARM_2(string, y, x);
+ result = TIPARM_2(string, y, x);
returnPtr(result);
}
diff --git a/ncurses/tinfo/lib_tparm.c b/ncurses/tinfo/lib_tparm.c
index 400cd31..72d8813 100644
--- a/ncurses/tinfo/lib_tparm.c
+++ b/ncurses/tinfo/lib_tparm.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -38,12 +38,22 @@
*
*/
+#define entry _ncu_entry
+#define ENTRY _ncu_ENTRY
+
#include <curses.priv.h>
+#undef entry
+#undef ENTRY
+
+#if HAVE_TSEARCH
+#include <search.h>
+#endif
+
#include <ctype.h>
#include <tic.h>
-MODULE_ID("$Id: lib_tparm.c,v 1.108 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_tparm.c,v 1.134 2021/08/21 21:52:08 tom Exp $")
/*
* char *
@@ -107,128 +117,245 @@ MODULE_ID("$Id: lib_tparm.c,v 1.108 2020/02/02 23:34:34 tom Exp $")
NCURSES_EXPORT_VAR(int) _nc_tparm_err = 0;
-#define TPS(var) _nc_prescreen.tparm_state.var
+#define TPS(var) tps->var
#define popcount _nc_popcount /* workaround for NetBSD 6.0 defect */
+#define get_tparm_state(term) \
+ (term != NULL \
+ ? &(term->tparm_state) \
+ : &(_nc_prescreen.tparm_state))
+
+#define isUPPER(c) ((c) >= 'A' && (c) <= 'Z')
+#define isLOWER(c) ((c) >= 'a' && (c) <= 'z')
+#define tc_BUMP() if (level < 0 && number < 2) number++
+
+typedef struct {
+ const char *format; /* format-string can be used as cache-key */
+ int tparm_type; /* bit-set for each string-parameter */
+ int num_actual;
+ int num_parsed;
+ int num_popped;
+ TPARM_ARG param[NUM_PARM];
+ char *p_is_s[NUM_PARM];
+} TPARM_DATA;
+
+#if HAVE_TSEARCH
+#define MyCache _nc_globals.cached_tparm
+#define MyCount _nc_globals.count_tparm
+#if NO_LEAKS
+static int which_tparm;
+static TPARM_DATA **delete_tparm;
+#endif
+#endif /* HAVE_TSEARCH */
+
+static char dummy[] = ""; /* avoid const-cast */
+
+#if HAVE_TSEARCH
+static int
+cmp_format(const void *p, const void *q)
+{
+ const char *a = *(char *const *) p;
+ const char *b = *(char *const *) q;
+ return strcmp(a, b);
+}
+#endif
+
#if NO_LEAKS
+#if HAVE_TSEARCH
+static void
+visit_nodes(const void *nodep, const VISIT which, const int depth)
+{
+ (void) depth;
+ if (which == preorder || which == leaf) {
+ delete_tparm[which_tparm] = *(TPARM_DATA **) nodep;
+ which_tparm++;
+ }
+}
+#endif
+
NCURSES_EXPORT(void)
_nc_free_tparm(void)
{
- if (TPS(out_buff) != 0) {
- FreeAndNull(TPS(out_buff));
- TPS(out_size) = 0;
- TPS(out_used) = 0;
- FreeAndNull(TPS(fmt_buff));
- TPS(fmt_size) = 0;
+ TPARM_STATE *tps = get_tparm_state(cur_term); /* FIXME */
+#if HAVE_TSEARCH
+ if (MyCount != 0) {
+ delete_tparm = typeCalloc(TPARM_DATA *, MyCount);
+ which_tparm = 0;
+ twalk(MyCache, visit_nodes);
+ for (which_tparm = 0; which_tparm < MyCount; ++which_tparm) {
+ TPARM_DATA *ptr = delete_tparm[which_tparm];
+ if (ptr != NULL) {
+ tdelete(ptr, &MyCache, cmp_format);
+ free((char *) ptr->format);
+ free(ptr);
+ }
+ }
+ which_tparm = 0;
+ twalk(MyCache, visit_nodes);
+ FreeAndNull(delete_tparm);
+ MyCount = 0;
+ which_tparm = 0;
}
+#endif
+ FreeAndNull(TPS(out_buff));
+ TPS(out_size) = 0;
+ TPS(out_used) = 0;
+
+ FreeAndNull(TPS(fmt_buff));
+ TPS(fmt_size) = 0;
}
#endif
-static NCURSES_INLINE void
-get_space(size_t need)
+static int
+tparm_error(TPARM_STATE *tps, const char *message)
{
- need += TPS(out_used);
- if (need > TPS(out_size)) {
- TPS(out_size) = need * 2;
- TYPE_REALLOC(char, TPS(out_size), TPS(out_buff));
- }
+ DEBUG(2, ("%s: %s", message, _nc_visbuf(TPS(tparam_base))));
+ return ++_nc_tparm_err;
}
+#define get_space(tps, need) \
+{ \
+ size_t need2get = need + TPS(out_used); \
+ if (need2get > TPS(out_size)) { \
+ TPS(out_size) = need2get * 2; \
+ TYPE_REALLOC(char, TPS(out_size), TPS(out_buff)); \
+ } \
+}
+
+#if NCURSES_EXPANDED
static NCURSES_INLINE void
-save_text(const char *fmt, const char *s, int len)
-{
- size_t s_len = strlen(s);
- if (len > (int) s_len)
- s_len = (size_t) len;
+ (get_space) (TPARM_STATE *tps, size_t need) {
+ get_space(tps, need);
+}
- get_space(s_len + 1);
+#undef get_space
+#endif
- _nc_SPRINTF(TPS(out_buff) + TPS(out_used),
- _nc_SLIMIT(TPS(out_size) - TPS(out_used))
- fmt, s);
- TPS(out_used) += strlen(TPS(out_buff) + TPS(out_used));
+#define save_text(tps, fmt, s, len) \
+{ \
+ size_t s_len = (size_t) len + strlen(s) + strlen(fmt); \
+ get_space(tps, s_len + 1); \
+ _nc_SPRINTF(TPS(out_buff) + TPS(out_used), \
+ _nc_SLIMIT(TPS(out_size) - TPS(out_used)) \
+ fmt, s); \
+ TPS(out_used) += strlen(TPS(out_buff) + TPS(out_used)); \
}
+#if NCURSES_EXPANDED
static NCURSES_INLINE void
-save_number(const char *fmt, int number, int len)
-{
- if (len < 30)
- len = 30; /* actually log10(MAX_INT)+1 */
+ (save_text) (TPARM_STATE *tps, const char *fmt, const char *s, int len) {
+ save_text(tps, fmt, s, len);
+}
- get_space((size_t) len + 1);
+#undef save_text
+#endif
- _nc_SPRINTF(TPS(out_buff) + TPS(out_used),
- _nc_SLIMIT(TPS(out_size) - TPS(out_used))
- fmt, number);
- TPS(out_used) += strlen(TPS(out_buff) + TPS(out_used));
+#define save_number(tps, fmt, number, len) \
+{ \
+ size_t s_len = (size_t) len + 30 + strlen(fmt); \
+ get_space(tps, s_len + 1); \
+ _nc_SPRINTF(TPS(out_buff) + TPS(out_used), \
+ _nc_SLIMIT(TPS(out_size) - TPS(out_used)) \
+ fmt, number); \
+ TPS(out_used) += strlen(TPS(out_buff) + TPS(out_used)); \
}
+#if NCURSES_EXPANDED
static NCURSES_INLINE void
-save_char(int c)
-{
- if (c == 0)
- c = 0200;
- get_space((size_t) 1);
- TPS(out_buff)[TPS(out_used)++] = (char) c;
+ (save_number) (TPARM_STATE *tps, const char *fmt, int number, int len) {
+ save_number(tps, fmt, number, len);
+}
+
+#undef save_number
+#endif
+
+#define save_char(tps, c) \
+{ \
+ get_space(tps, (size_t) 1); \
+ TPS(out_buff)[TPS(out_used)++] = (char) ((c == 0) ? 0200 : c); \
}
+#if NCURSES_EXPANDED
static NCURSES_INLINE void
-npush(int x)
-{
- if (TPS(stack_ptr) < STACKSIZE) {
- TPS(stack)[TPS(stack_ptr)].num_type = TRUE;
- TPS(stack)[TPS(stack_ptr)].data.num = x;
- TPS(stack_ptr)++;
- } else {
- DEBUG(2, ("npush: stack overflow: %s", _nc_visbuf(TPS(tparam_base))));
- _nc_tparm_err++;
- }
+ (save_char) (TPARM_STATE *tps, int c) {
+ save_char(tps, c);
}
-static NCURSES_INLINE int
-npop(void)
-{
- int result = 0;
- if (TPS(stack_ptr) > 0) {
- TPS(stack_ptr)--;
- if (TPS(stack)[TPS(stack_ptr)].num_type)
- result = TPS(stack)[TPS(stack_ptr)].data.num;
- } else {
- DEBUG(2, ("npop: stack underflow: %s", _nc_visbuf(TPS(tparam_base))));
- _nc_tparm_err++;
- }
- return result;
+#undef save_char
+#endif
+
+#define npush(tps, x) \
+{ \
+ if (TPS(stack_ptr) < STACKSIZE) { \
+ TPS(stack)[TPS(stack_ptr)].num_type = TRUE; \
+ TPS(stack)[TPS(stack_ptr)].data.num = x; \
+ TPS(stack_ptr)++; \
+ } else { \
+ (void) tparm_error(tps, "npush: stack overflow"); \
+ } \
}
+#if NCURSES_EXPANDED
static NCURSES_INLINE void
-spush(char *x)
-{
- if (TPS(stack_ptr) < STACKSIZE) {
- TPS(stack)[TPS(stack_ptr)].num_type = FALSE;
- TPS(stack)[TPS(stack_ptr)].data.str = x;
- TPS(stack_ptr)++;
- } else {
- DEBUG(2, ("spush: stack overflow: %s", _nc_visbuf(TPS(tparam_base))));
- _nc_tparm_err++;
- }
+ (npush) (TPARM_STATE *tps, int x) {
+ npush(tps, x);
+}
+
+#undef npush
+#endif
+
+#define spush(tps, x) \
+{ \
+ if (TPS(stack_ptr) < STACKSIZE) { \
+ TPS(stack)[TPS(stack_ptr)].num_type = FALSE; \
+ TPS(stack)[TPS(stack_ptr)].data.str = x; \
+ TPS(stack_ptr)++; \
+ } else { \
+ (void) tparm_error(tps, "spush: stack overflow"); \
+ } \
}
+#if NCURSES_EXPANDED
+static NCURSES_INLINE void
+ (spush) (TPARM_STATE *tps, char *x) {
+ spush(tps, x);
+}
+
+#undef spush
+#endif
+
+#define npop(tps) \
+ ((TPS(stack_ptr)-- > 0) \
+ ? ((TPS(stack)[TPS(stack_ptr)].num_type) \
+ ? TPS(stack)[TPS(stack_ptr)].data.num \
+ : 0) \
+ : (tparm_error(tps, "npop: stack underflow"), \
+ TPS(stack_ptr) = 0))
+
+#if NCURSES_EXPANDED
+static NCURSES_INLINE int
+ (npop) (TPARM_STATE *tps) {
+ return npop(tps);
+}
+#undef npop
+#endif
+
+#define spop(tps) \
+ ((TPS(stack_ptr)-- > 0) \
+ ? ((!TPS(stack)[TPS(stack_ptr)].num_type \
+ && TPS(stack)[TPS(stack_ptr)].data.str != 0) \
+ ? TPS(stack)[TPS(stack_ptr)].data.str \
+ : dummy) \
+ : (tparm_error(tps, "spop: stack underflow"), \
+ dummy))
+
+#if NCURSES_EXPANDED
static NCURSES_INLINE char *
-spop(void)
-{
- static char dummy[] = ""; /* avoid const-cast */
- char *result = dummy;
- if (TPS(stack_ptr) > 0) {
- TPS(stack_ptr)--;
- if (!TPS(stack)[TPS(stack_ptr)].num_type
- && TPS(stack)[TPS(stack_ptr)].data.str != 0)
- result = TPS(stack)[TPS(stack_ptr)].data.str;
- } else {
- DEBUG(2, ("spop: stack underflow: %s", _nc_visbuf(TPS(tparam_base))));
- _nc_tparm_err++;
- }
- return result;
+ (spop) (TPARM_STATE *tps) {
+ return spop(tps);
}
+#undef spop
+#endif
static NCURSES_INLINE const char *
parse_format(const char *s, char *format, int *len)
@@ -325,10 +452,6 @@ parse_format(const char *s, char *format, int *len)
return s;
}
-#define isUPPER(c) ((c) >= 'A' && (c) <= 'Z')
-#define isLOWER(c) ((c) >= 'a' && (c) <= 'z')
-#define tc_BUMP() if (level < 0 && number < 2) number++
-
/*
* Analyze the string to see how many parameters we need from the varargs list,
* and what their types are. We will only accept string parameters if they
@@ -341,8 +464,9 @@ parse_format(const char *s, char *format, int *len)
* may be cases that we cannot see the explicit parameter numbers.
*/
NCURSES_EXPORT(int)
-_nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount)
+_nc_tparm_analyze(TERMINAL *term, const char *string, char **p_is_s, int *popcount)
{
+ TPARM_STATE *tps = get_tparm_state(term);
size_t len2;
int i;
int lastpop = -1;
@@ -350,7 +474,6 @@ _nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount)
int number = 0;
int level = -1;
const char *cp = string;
- static char dummy[] = "";
if (cp == 0)
return 0;
@@ -469,109 +592,215 @@ _nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount)
return number;
}
-static NCURSES_INLINE char *
-tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
+/*
+ * Analyze the capability string, finding the number of parameters and their
+ * types.
+ *
+ * TODO: cache the result so that this is done once per capability per term.
+ */
+static int
+tparm_setup(TERMINAL *term, const char *string, TPARM_DATA *result)
{
- char *p_is_s[NUM_PARM];
- TPARM_ARG param[NUM_PARM];
- int popcount = 0;
- int number;
- int num_args;
- int len;
- int level;
- int x, y;
- int i;
- const char *cp = string;
- size_t len2;
- bool termcap_hack;
- bool incremented_two;
+ TPARM_STATE *tps = get_tparm_state(term);
+ int rc = OK;
+
+ TPS(out_used) = 0;
+ memset(result, 0, sizeof(*result));
- if (cp == NULL) {
+ if (string == NULL) {
TR(TRACE_CALLS, ("%s: format is null", TPS(tname)));
- return NULL;
- }
+ rc = ERR;
+ } else {
+#if HAVE_TSEARCH
+ TPARM_DATA *fs;
+ void *ft;
+
+ result->format = string;
+ if ((ft = tfind(result, &MyCache, cmp_format)) != 0) {
+ size_t len2;
+ fs = *(TPARM_DATA **) ft;
+ *result = *fs;
+ if ((len2 = strlen(string)) + 2 > TPS(fmt_size)) {
+ TPS(fmt_size) += len2 + 2;
+ TPS(fmt_buff) = typeRealloc(char, TPS(fmt_size), TPS(fmt_buff));
+ if (TPS(fmt_buff) == 0)
+ return ERR;
+ }
+ } else
+#endif
+ {
+ /*
+ * Find the highest parameter-number referred to in the format
+ * string. Use this value to limit the number of arguments copied
+ * from the variable-length argument list.
+ */
+ result->num_parsed = _nc_tparm_analyze(term, string,
+ result->p_is_s,
+ &(result->num_popped));
+ if (TPS(fmt_buff) == 0) {
+ TR(TRACE_CALLS, ("%s: error in analysis", TPS(tname)));
+ rc = ERR;
+ } else {
+ int n;
- TPS(out_used) = 0;
- len2 = strlen(cp);
+ if (result->num_parsed > NUM_PARM)
+ result->num_parsed = NUM_PARM;
+ if (result->num_popped > NUM_PARM)
+ result->num_popped = NUM_PARM;
+ result->num_actual = max(result->num_popped, result->num_parsed);
- /*
- * Find the highest parameter-number referred to in the format string.
- * Use this value to limit the number of arguments copied from the
- * variable-length argument list.
- */
- number = _nc_tparm_analyze(cp, p_is_s, &popcount);
- if (TPS(fmt_buff) == 0) {
- TR(TRACE_CALLS, ("%s: error in analysis", TPS(tname)));
- return NULL;
+ for (n = 0; n < result->num_actual; ++n) {
+ if (result->p_is_s[n])
+ result->tparm_type |= (1 << n);
+ }
+#if HAVE_TSEARCH
+ if ((fs = typeCalloc(TPARM_DATA, 1)) != 0) {
+ *fs = *result;
+ if ((fs->format = strdup(string)) != 0) {
+ if (tsearch(fs, &MyCache, cmp_format) != 0) {
+ ++MyCount;
+ } else {
+ free(fs);
+ rc = ERR;
+ }
+ } else {
+ free(fs);
+ rc = ERR;
+ }
+ } else {
+ rc = ERR;
+ }
+#endif
+ }
+ }
}
- incremented_two = FALSE;
+ return rc;
+}
- if (number > NUM_PARM)
- number = NUM_PARM;
- if (popcount > NUM_PARM)
- popcount = NUM_PARM;
- num_args = max(popcount, number);
+/*
+ * A few caps (such as plab_norm) have string-valued parms. We'll have to
+ * assume that the caller knows the difference, since a char* and an int may
+ * not be the same size on the stack. The normal prototype for tparm uses 9
+ * long's, which is consistent with our va_arg() usage.
+ */
+static void
+tparm_copy_valist(TPARM_DATA *data, int use_TPARM_ARG, va_list ap)
+{
+ int i;
- for (i = 0; i < num_args; i++) {
- /*
- * A few caps (such as plab_norm) have string-valued parms.
- * We'll have to assume that the caller knows the difference, since
- * a char* and an int may not be the same size on the stack. The
- * normal prototype for this uses 9 long's, which is consistent with
- * our va_arg() usage.
- */
- if (p_is_s[i] != 0) {
- p_is_s[i] = va_arg(ap, char *);
- param[i] = 0;
+ for (i = 0; i < data->num_actual; i++) {
+ if (data->p_is_s[i] != 0) {
+ char *value = va_arg(ap, char *);
+ if (value == 0)
+ value = dummy;
+ data->p_is_s[i] = value;
+ data->param[i] = 0;
} else if (use_TPARM_ARG) {
- param[i] = va_arg(ap, TPARM_ARG);
+ data->param[i] = va_arg(ap, TPARM_ARG);
} else {
- param[i] = (TPARM_ARG) va_arg(ap, int);
+ data->param[i] = (TPARM_ARG) va_arg(ap, int);
}
}
+}
+
+/*
+ * This is a termcap compatibility hack. If there are no explicit pop
+ * operations in the string, load the stack in such a way that successive pops
+ * will grab successive parameters. That will make the expansion of (for
+ * example) \E[%d;%dH work correctly in termcap style, which means tparam()
+ * will expand termcap strings OK.
+ */
+static bool
+tparm_tc_compat(TPARM_STATE *tps, TPARM_DATA *data)
+{
+ bool termcap_hack = FALSE;
- /*
- * This is a termcap compatibility hack. If there are no explicit pop
- * operations in the string, load the stack in such a way that
- * successive pops will grab successive parameters. That will make
- * the expansion of (for example) \E[%d;%dH work correctly in termcap
- * style, which means tparam() will expand termcap strings OK.
- */
TPS(stack_ptr) = 0;
- termcap_hack = FALSE;
- if (popcount == 0) {
+
+ if (data->num_popped == 0) {
+ int i;
+
termcap_hack = TRUE;
- for (i = number - 1; i >= 0; i--) {
- if (p_is_s[i])
- spush(p_is_s[i]);
- else
- npush((int) param[i]);
+ for (i = data->num_parsed - 1; i >= 0; i--) {
+ if (data->p_is_s[i]) {
+ spush(tps, data->p_is_s[i]);
+ } else {
+ npush(tps, (int) data->param[i]);
+ }
}
}
+ return termcap_hack;
+}
+
#ifdef TRACE
+static void
+tparm_trace_call(TPARM_STATE *tps, const char *string, TPARM_DATA *data)
+{
if (USE_TRACEF(TRACE_CALLS)) {
- for (i = 0; i < num_args; i++) {
- if (p_is_s[i] != 0) {
- save_text(", %s", _nc_visbuf(p_is_s[i]), 0);
- } else if ((long) param[i] > MAX_OF_TYPE(NCURSES_INT2) ||
- (long) param[i] < 0) {
+ int i;
+ for (i = 0; i < data->num_actual; i++) {
+ if (data->p_is_s[i] != 0) {
+ save_text(tps, ", %s", _nc_visbuf(data->p_is_s[i]), 0);
+ } else if ((long) data->param[i] > MAX_OF_TYPE(NCURSES_INT2) ||
+ (long) data->param[i] < 0) {
_tracef("BUG: problem with tparm parameter #%d of %d",
- i + 1, num_args);
+ i + 1, data->num_actual);
break;
} else {
- save_number(", %d", (int) param[i], 0);
+ save_number(tps, ", %d", (int) data->param[i], 0);
}
}
- _tracef(T_CALLED("%s(%s%s)"), TPS(tname), _nc_visbuf(cp), TPS(out_buff));
+ _tracef(T_CALLED("%s(%s%s)"), TPS(tname), _nc_visbuf(string), TPS(out_buff));
TPS(out_used) = 0;
_nc_unlock_global(tracef);
}
+}
+
+#else
+#define tparm_trace_call(tps, string, data) /* nothing */
#endif /* TRACE */
+#define init_vars(name) \
+ if (!name##_used) { \
+ name##_used = TRUE; \
+ memset(name##_vars, 0, sizeof(name##_vars)); \
+ }
+
+static NCURSES_INLINE char *
+tparam_internal(TPARM_STATE *tps, const char *string, TPARM_DATA *data)
+{
+ int number;
+ int len;
+ int level;
+ int x, y;
+ int i;
+ const char *s;
+ const char *cp = string;
+ size_t len2 = strlen(cp);
+ bool incremented_two = FALSE;
+ bool termcap_hack = tparm_tc_compat(tps, data);
+ /*
+ * SVr4 curses stores variables 'A' to 'Z' in the TERMINAL structure (so
+ * they are initialized once to zero), and variables 'a' to 'z' on the
+ * stack in tparm, referring to the former as "static" and the latter as
+ * "dynamic". However, it makes no check to ensure that the "dynamic"
+ * variables are initialized.
+ *
+ * Solaris xpg4 curses makes no distinction between the upper/lower, and
+ * stores the common set of 26 variables on the stack, without initializing
+ * them.
+ *
+ * In ncurses, both sets of variables are initialized on the first use.
+ */
+ bool dynamic_used = FALSE;
+ int dynamic_vars[NUM_VARS];
+
+ tparm_trace_call(tps, string, data);
+
while ((cp - string) < (int) len2) {
if (*cp != '%') {
- save_char(UChar(*cp));
+ save_char(tps, UChar(*cp));
} else {
TPS(tparam_base) = cp++;
cp = parse_format(cp, TPS(fmt_buff), &len);
@@ -579,50 +808,54 @@ tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
default:
break;
case '%':
- save_char('%');
+ save_char(tps, '%');
break;
case 'd': /* FALLTHRU */
case 'o': /* FALLTHRU */
case 'x': /* FALLTHRU */
case 'X': /* FALLTHRU */
- save_number(TPS(fmt_buff), npop(), len);
+ x = npop(tps);
+ save_number(tps, TPS(fmt_buff), x, len);
break;
case 'c': /* FALLTHRU */
- save_char(npop());
+ x = npop(tps);
+ save_char(tps, x);
break;
#ifdef EXP_XTERM_1005
case 'u':
{
unsigned char target[10];
- unsigned source = (unsigned) npop();
+ unsigned source = (unsigned) npop(tps);
int rc = _nc_conv_to_utf8(target, source, (unsigned)
sizeof(target));
int n;
for (n = 0; n < rc; ++n) {
- save_char(target[n]);
+ save_char(tps, target[n]);
}
}
break;
#endif
case 'l':
- npush((int) strlen(spop()));
+ s = spop(tps);
+ npush(tps, (int) strlen(s));
break;
case 's':
- save_text(TPS(fmt_buff), spop(), len);
+ s = spop(tps);
+ save_text(tps, TPS(fmt_buff), s, len);
break;
case 'p':
cp++;
i = (UChar(*cp) - '1');
if (i >= 0 && i < NUM_PARM) {
- if (p_is_s[i]) {
- spush(p_is_s[i]);
+ if (data->p_is_s[i]) {
+ spush(tps, data->p_is_s[i]);
} else {
- npush((int) param[i]);
+ npush(tps, (int) data->param[i]);
}
}
break;
@@ -631,10 +864,11 @@ tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
cp++;
if (isUPPER(*cp)) {
i = (UChar(*cp) - 'A');
- TPS(static_vars)[i] = npop();
+ TPS(static_vars)[i] = npop(tps);
} else if (isLOWER(*cp)) {
i = (UChar(*cp) - 'a');
- TPS(dynamic_var)[i] = npop();
+ init_vars(dynamic);
+ dynamic_vars[i] = npop(tps);
}
break;
@@ -642,16 +876,17 @@ tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
cp++;
if (isUPPER(*cp)) {
i = (UChar(*cp) - 'A');
- npush(TPS(static_vars)[i]);
+ npush(tps, TPS(static_vars)[i]);
} else if (isLOWER(*cp)) {
i = (UChar(*cp) - 'a');
- npush(TPS(dynamic_var)[i]);
+ init_vars(dynamic);
+ npush(tps, dynamic_vars[i]);
}
break;
case S_QUOTE:
cp++;
- npush(UChar(*cp));
+ npush(tps, UChar(*cp));
cp++;
break;
@@ -662,83 +897,95 @@ tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
number = (number * 10) + (UChar(*cp) - '0');
cp++;
}
- npush(number);
+ npush(tps, number);
break;
case '+':
- npush(npop() + npop());
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x + y);
break;
case '-':
- y = npop();
- x = npop();
- npush(x - y);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x - y);
break;
case '*':
- npush(npop() * npop());
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x * y);
break;
case '/':
- y = npop();
- x = npop();
- npush(y ? (x / y) : 0);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, y ? (x / y) : 0);
break;
case 'm':
- y = npop();
- x = npop();
- npush(y ? (x % y) : 0);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, y ? (x % y) : 0);
break;
case 'A':
- y = npop();
- x = npop();
- npush(y && x);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, y && x);
break;
case 'O':
- y = npop();
- x = npop();
- npush(y || x);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, y || x);
break;
case '&':
- npush(npop() & npop());
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x & y);
break;
case '|':
- npush(npop() | npop());
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x | y);
break;
case '^':
- npush(npop() ^ npop());
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x ^ y);
break;
case '=':
- y = npop();
- x = npop();
- npush(x == y);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x == y);
break;
case '<':
- y = npop();
- x = npop();
- npush(x < y);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x < y);
break;
case '>':
- y = npop();
- x = npop();
- npush(x > y);
+ y = npop(tps);
+ x = npop(tps);
+ npush(tps, x > y);
break;
case '!':
- npush(!npop());
+ x = npop(tps);
+ npush(tps, !x);
break;
case '~':
- npush(~npop());
+ x = npop(tps);
+ npush(tps, ~x);
break;
case 'i':
@@ -751,15 +998,15 @@ tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
*/
if (!incremented_two) {
incremented_two = TRUE;
- if (p_is_s[0] == 0) {
- param[0]++;
+ if (data->p_is_s[0] == 0) {
+ data->param[0]++;
if (termcap_hack)
- TPS(stack)[0].data.num = (int) param[0];
+ TPS(stack)[0].data.num = (int) data->param[0];
}
- if (p_is_s[1] == 0) {
- param[1]++;
+ if (data->p_is_s[1] == 0) {
+ data->param[1]++;
if (termcap_hack)
- TPS(stack)[1].data.num = (int) param[1];
+ TPS(stack)[1].data.num = (int) data->param[1];
}
}
break;
@@ -768,7 +1015,7 @@ tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
break;
case 't':
- x = npop();
+ x = npop(tps);
if (!x) {
/* scan forward for %e or %; at level zero */
cp++;
@@ -827,64 +1074,148 @@ tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
cp++;
} /* endwhile (*cp) */
- get_space((size_t) 1);
+ get_space(tps, (size_t) 1);
TPS(out_buff)[TPS(out_used)] = '\0';
+ if (TPS(stack_ptr) && !_nc_tparm_err) {
+ DEBUG(2, ("tparm: stack has %d item%s on return",
+ TPS(stack_ptr),
+ TPS(stack_ptr) == 1 ? "" : "s"));
+ _nc_tparm_err++;
+ }
+
T((T_RETURN("%s"), _nc_visbuf(TPS(out_buff))));
return (TPS(out_buff));
}
#if NCURSES_TPARM_VARARGS
-#define tparm_varargs tparm
-#else
-#define tparm_proto tparm
-#endif
NCURSES_EXPORT(char *)
-tparm_varargs(const char *string, ...)
+tparm(const char *string, ...)
{
- va_list ap;
- char *result;
+ TPARM_STATE *tps = get_tparm_state(cur_term);
+ TPARM_DATA myData;
+ char *result = NULL;
_nc_tparm_err = 0;
- va_start(ap, string);
#ifdef TRACE
- TPS(tname) = "tparm";
+ tps->tname = "tparm";
#endif /* TRACE */
- result = tparam_internal(TRUE, string, ap);
- va_end(ap);
+
+ if (tparm_setup(cur_term, string, &myData) == OK) {
+ va_list ap;
+
+ va_start(ap, string);
+ tparm_copy_valist(&myData, TRUE, ap);
+ va_end(ap);
+
+ result = tparam_internal(tps, string, &myData);
+ }
return result;
}
-#if !NCURSES_TPARM_VARARGS
+#else /* !NCURSES_TPARM_VARARGS */
+
NCURSES_EXPORT(char *)
-tparm_proto(const char *string,
- TPARM_ARG a1,
- TPARM_ARG a2,
- TPARM_ARG a3,
- TPARM_ARG a4,
- TPARM_ARG a5,
- TPARM_ARG a6,
- TPARM_ARG a7,
- TPARM_ARG a8,
- TPARM_ARG a9)
+tparm(const char *string,
+ TPARM_ARG a1,
+ TPARM_ARG a2,
+ TPARM_ARG a3,
+ TPARM_ARG a4,
+ TPARM_ARG a5,
+ TPARM_ARG a6,
+ TPARM_ARG a7,
+ TPARM_ARG a8,
+ TPARM_ARG a9)
{
- return tparm_varargs(string, a1, a2, a3, a4, a5, a6, a7, a8, a9);
+ TPARM_STATE *tps = get_tparm_state(cur_term);
+ TPARM_DATA myData;
+ char *result = NULL;
+
+ _nc_tparm_err = 0;
+#ifdef TRACE
+ tps->tname = "tparm";
+#endif /* TRACE */
+
+ if (tparm_setup(cur_term, string, &myData) == OK) {
+
+ myData.param[0] = a1;
+ myData.param[1] = a2;
+ myData.param[2] = a3;
+ myData.param[3] = a4;
+ myData.param[4] = a5;
+ myData.param[5] = a6;
+ myData.param[6] = a7;
+ myData.param[7] = a8;
+ myData.param[8] = a9;
+
+ result = tparam_internal(tps, string, &myData);
+ }
+ return result;
}
+
#endif /* NCURSES_TPARM_VARARGS */
NCURSES_EXPORT(char *)
tiparm(const char *string, ...)
{
- va_list ap;
- char *result;
+ TPARM_STATE *tps = get_tparm_state(cur_term);
+ TPARM_DATA myData;
+ char *result = NULL;
_nc_tparm_err = 0;
- va_start(ap, string);
#ifdef TRACE
- TPS(tname) = "tiparm";
+ tps->tname = "tiparm";
#endif /* TRACE */
- result = tparam_internal(FALSE, string, ap);
- va_end(ap);
+
+ if (tparm_setup(cur_term, string, &myData) == OK) {
+ va_list ap;
+
+ va_start(ap, string);
+ tparm_copy_valist(&myData, FALSE, ap);
+ va_end(ap);
+
+ result = tparam_internal(tps, string, &myData);
+ }
return result;
}
+
+/*
+ * The internal-use flavor ensures that the parameters are numbers, not strings
+ */
+NCURSES_EXPORT(char *)
+_nc_tiparm(int expected, const char *string, ...)
+{
+ TPARM_STATE *tps = get_tparm_state(cur_term);
+ TPARM_DATA myData;
+ char *result = NULL;
+
+ _nc_tparm_err = 0;
+#ifdef TRACE
+ tps->tname = "_nc_tiparm";
+#endif /* TRACE */
+
+ if (tparm_setup(cur_term, string, &myData) == OK
+ && myData.num_actual <= expected
+ && myData.tparm_type == 0) {
+ va_list ap;
+
+ va_start(ap, string);
+ tparm_copy_valist(&myData, FALSE, ap);
+ va_end(ap);
+
+ result = tparam_internal(tps, string, &myData);
+ }
+ return result;
+}
+
+/*
+ * Improve tic's checks by resetting the terminfo "static variables" before
+ * calling functions which may update them.
+ */
+NCURSES_EXPORT(void)
+_nc_reset_tparm(TERMINAL *term)
+{
+ TPARM_STATE *tps = get_tparm_state(term);
+ memset(TPS(static_vars), 0, sizeof(TPS(static_vars)));
+}
diff --git a/ncurses/tinfo/lib_tputs.c b/ncurses/tinfo/lib_tputs.c
index bfde26e..b9ca41c 100644
--- a/ncurses/tinfo/lib_tputs.c
+++ b/ncurses/tinfo/lib_tputs.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -52,7 +52,7 @@
#include <termcap.h> /* ospeed */
#include <tic.h>
-MODULE_ID("$Id: lib_tputs.c,v 1.103 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_tputs.c,v 1.108 2021/05/08 23:27:40 tom Exp $")
NCURSES_EXPORT_VAR(char) PC = 0; /* used by termcap library */
NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed = 0; /* used by termcap library */
@@ -120,16 +120,21 @@ delay_output(int ms)
NCURSES_EXPORT(void)
NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_DCL0)
{
+ T((T_CALLED("_nc_flush(%p)"), (void *) SP_PARM));
if (SP_PARM != 0 && SP_PARM->_ofd >= 0) {
+ TR(TRACE_CHARPUT, ("ofd:%d inuse:%lu buffer:%p",
+ SP_PARM->_ofd,
+ (unsigned long) SP_PARM->out_inuse,
+ SP_PARM->out_buffer));
if (SP_PARM->out_inuse) {
char *buf = SP_PARM->out_buffer;
size_t amount = SP->out_inuse;
SP->out_inuse = 0;
- TR(TRACE_CHARPUT, ("flushing %ld bytes", (unsigned long) amount));
+ TR(TRACE_CHARPUT, ("flushing %ld/%ld bytes",
+ (unsigned long) amount, _nc_outchars));
while (amount) {
ssize_t res = write(SP_PARM->_ofd, buf, amount);
-
if (res > 0) {
/* if the write was incomplete, try again */
amount -= (size_t) res;
@@ -142,10 +147,15 @@ NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_DCL0)
break; /* an error we can not recover from */
}
}
+ } else if (SP_PARM->out_buffer == 0) {
+ TR(TRACE_CHARPUT, ("flushing stdout"));
+ fflush(stdout);
}
} else {
+ TR(TRACE_CHARPUT, ("flushing stdout"));
fflush(stdout);
}
+ returnVoid;
}
#if NCURSES_SP_FUNCS
@@ -266,8 +276,8 @@ NCURSES_SP_NAME(tputs) (NCURSES_SP_DCLx
NCURSES_SP_OUTC outc)
{
NCURSES_SP_OUTC my_outch = GetOutCh();
- bool always_delay;
- bool normal_delay;
+ bool always_delay = FALSE;
+ bool normal_delay = FALSE;
int number;
#if BSD_TPUTS
int trailpad;
@@ -295,32 +305,30 @@ NCURSES_SP_NAME(tputs) (NCURSES_SP_DCLx
}
#endif /* TRACE */
- if (SP_PARM != 0 && !HasTInfoTerminal(SP_PARM))
- return ERR;
-
if (!VALID_STRING(string))
return ERR;
- if (
+ if (SP_PARM != 0 && HasTInfoTerminal(SP_PARM)) {
+ if (
#if NCURSES_SP_FUNCS
- (SP_PARM != 0 && SP_PARM->_term == 0)
+ (SP_PARM != 0 && SP_PARM->_term == 0)
#else
- cur_term == 0
+ cur_term == 0
#endif
- ) {
- always_delay = FALSE;
- normal_delay = TRUE;
- } else {
- always_delay = (string == bell) || (string == flash_screen);
- normal_delay =
- !xon_xoff
- && padding_baud_rate
+ ) {
+ always_delay = FALSE;
+ normal_delay = TRUE;
+ } else {
+ always_delay = (string == bell) || (string == flash_screen);
+ normal_delay =
+ !xon_xoff
+ && padding_baud_rate
#if NCURSES_NO_PADDING
- && !GetNoPadding(SP_PARM)
+ && !GetNoPadding(SP_PARM)
#endif
- && (_nc_baudrate(ospeed) >= padding_baud_rate);
+ && (_nc_baudrate(ospeed) >= padding_baud_rate);
+ }
}
-
#if BSD_TPUTS
/*
* This ugly kluge deals with the fact that some ancient BSD programs
@@ -419,7 +427,7 @@ NCURSES_SP_NAME(tputs) (NCURSES_SP_DCLx
*/
if (trailpad > 0
&& (always_delay || normal_delay))
- delay_output(trailpad / 10);
+ NCURSES_SP_NAME(delay_output) (NCURSES_SP_ARGx trailpad / 10);
#endif /* BSD_TPUTS */
SetOutCh(my_outch);
diff --git a/ncurses/tinfo/lib_ttyflags.c b/ncurses/tinfo/lib_ttyflags.c
index bfcd64a..6363a80 100644
--- a/ncurses/tinfo/lib_ttyflags.c
+++ b/ncurses/tinfo/lib_ttyflags.c
@@ -42,7 +42,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_ttyflags.c,v 1.34 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_ttyflags.c,v 1.36 2020/09/05 22:54:47 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(_nc_get_tty_mode) (NCURSES_SP_DCLx TTY * buf)
@@ -156,6 +156,8 @@ NCURSES_SP_NAME(def_shell_mode) (NCURSES_SP_DCL0)
#ifdef TERMIOS
if (termp->Ottyb.c_oflag & OFLAGS_TABS)
tab = back_tab = NULL;
+#elif defined(EXP_WIN32_DRIVER)
+ /* noop */
#else
if (termp->Ottyb.sg_flags & XTABS)
tab = back_tab = NULL;
@@ -193,6 +195,8 @@ NCURSES_SP_NAME(def_prog_mode) (NCURSES_SP_DCL0)
if (_nc_get_tty_mode(&termp->Nttyb) == OK) {
#ifdef TERMIOS
termp->Nttyb.c_oflag &= (unsigned) (~OFLAGS_TABS);
+#elif defined(EXP_WIN32_DRIVER)
+ /* noop */
#else
termp->Nttyb.sg_flags &= (unsigned) (~XTABS);
#endif
diff --git a/ncurses/tinfo/lib_win32con.c b/ncurses/tinfo/lib_win32con.c
new file mode 100644
index 0000000..2bcea39
--- /dev/null
+++ b/ncurses/tinfo/lib_win32con.c
@@ -0,0 +1,1256 @@
+/****************************************************************************
+ * Copyright 2020,2021 Thomas E. Dickey *
+ * Copyright 1998-2009,2010 Free Software Foundation, Inc. *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Author: Juergen Pfeifer *
+ * and: Thomas E. Dickey *
+ ****************************************************************************/
+
+/*
+ * TODO - GetMousePos(POINT * result) from ntconio.c
+ */
+
+#include <curses.priv.h>
+
+MODULE_ID("$Id: lib_win32con.c,v 1.7 2021/09/04 10:54:35 tom Exp $")
+
+#ifdef _NC_WINDOWS
+
+#ifdef _NC_MINGW
+#include <wchar.h>
+#else
+#include <tchar.h>
+#endif
+
+#include <io.h>
+
+#if USE_WIDEC_SUPPORT
+#define write_screen WriteConsoleOutputW
+#define read_screen ReadConsoleOutputW
+#else
+#define write_screen WriteConsoleOutput
+#define read_screen ReadConsoleOutput
+#endif
+
+static BOOL IsConsoleHandle(HANDLE hdl);
+static bool save_original_screen(void);
+static bool restore_original_screen(void) GCC_UNUSED;
+static bool read_screen_data(void);
+static int Adjust(int milliseconds, int diff);
+static int decode_mouse(SCREEN *sp, int mask);
+static bool handle_mouse(SCREEN *sp, MOUSE_EVENT_RECORD mer);
+static int rkeycompare(const void *el1, const void *el2);
+static int keycompare(const void *el1, const void *el2);
+static int MapKey(WORD vKey);
+static int AnsiKey(WORD vKey);
+
+static ULONGLONG tdiff(FILETIME fstart, FILETIME fend);
+
+#define GenMap(vKey,key) MAKELONG(key, vKey)
+static const LONG keylist[] =
+{
+ GenMap(VK_PRIOR, KEY_PPAGE),
+ GenMap(VK_NEXT, KEY_NPAGE),
+ GenMap(VK_END, KEY_END),
+ GenMap(VK_HOME, KEY_HOME),
+ GenMap(VK_LEFT, KEY_LEFT),
+ GenMap(VK_UP, KEY_UP),
+ GenMap(VK_RIGHT, KEY_RIGHT),
+ GenMap(VK_DOWN, KEY_DOWN),
+ GenMap(VK_DELETE, KEY_DC),
+ GenMap(VK_INSERT, KEY_IC)
+};
+static const LONG ansi_keys[] =
+{
+ GenMap(VK_PRIOR, 'I'),
+ GenMap(VK_NEXT, 'Q'),
+ GenMap(VK_END, 'O'),
+ GenMap(VK_HOME, 'H'),
+ GenMap(VK_LEFT, 'K'),
+ GenMap(VK_UP, 'H'),
+ GenMap(VK_RIGHT, 'M'),
+ GenMap(VK_DOWN, 'P'),
+ GenMap(VK_DELETE, 'S'),
+ GenMap(VK_INSERT, 'R')
+};
+#define array_length(a) (sizeof(a)/sizeof(a[0]))
+#define N_INI ((int)array_length(keylist))
+#define FKEYS 24
+#define MAPSIZE (FKEYS + N_INI)
+
+/* A process can only have a single console, so it is safe
+ to maintain all the information about it in a single
+ static structure.
+ */
+NCURSES_EXPORT_VAR(ConsoleInfo) _nc_CONSOLE;
+static bool console_initialized = FALSE;
+
+#define EnsureInit() (void)(console_initialized ? TRUE : _nc_console_checkinit(TRUE, TRUE))
+
+#define REQUIRED_MAX_V (DWORD)10
+#define REQUIRED_MIN_V (DWORD)0
+#define REQUIRED_BUILD (DWORD)17763
+/*
+ This function returns 0 if the Windows version has no support for
+ the modern Console interface, otherwise it returns 1
+ */
+NCURSES_EXPORT(int)
+_nc_console_vt_supported(void)
+{
+ OSVERSIONINFO osvi;
+ int res = 0;
+
+ T((T_CALLED("lib_win32con::_nc_console_vt_supported")));
+ ZeroMemory(&osvi, sizeof(OSVERSIONINFO));
+ osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
+
+ GetVersionEx(&osvi);
+ T(("GetVersionEx returnedMajor=%ld, Minor=%ld, Build=%ld",
+ osvi.dwMajorVersion,
+ osvi.dwMinorVersion,
+ osvi.dwBuildNumber));
+ if (osvi.dwMajorVersion >= REQUIRED_MAX_V) {
+ if (osvi.dwMajorVersion == REQUIRED_MAX_V) {
+ if (((osvi.dwMinorVersion == REQUIRED_MIN_V) &&
+ (osvi.dwBuildNumber >= REQUIRED_BUILD)) ||
+ ((osvi.dwMinorVersion > REQUIRED_MIN_V)))
+ res = 1;
+ } else
+ res = 1;
+ }
+ returnCode(res);
+}
+
+NCURSES_EXPORT(void)
+_nc_console_size(int* Lines, int* Cols)
+{
+ EnsureInit();
+ if (Lines != NULL && Cols != NULL) {
+ if (WINCONSOLE.buffered) {
+ *Lines = (int) (WINCONSOLE.SBI.dwSize.Y);
+ *Cols = (int) (WINCONSOLE.SBI.dwSize.X);
+ } else {
+ *Lines = (int) (WINCONSOLE.SBI.srWindow.Bottom + 1 -
+ WINCONSOLE.SBI.srWindow.Top);
+ *Cols = (int) (WINCONSOLE.SBI.srWindow.Right + 1 -
+ WINCONSOLE.SBI.srWindow.Left);
+ }
+ }
+}
+
+/* Convert a file descriptor into a HANDLE
+ That's not necessarily a console HANDLE
+*/
+NCURSES_EXPORT(HANDLE)
+_nc_console_handle(int fd)
+{
+ intptr_t value = _get_osfhandle(fd);
+ return (HANDLE) value;
+}
+
+/* Validate that a HANDLE is actually a
+ console HANDLE
+*/
+static BOOL
+IsConsoleHandle(HANDLE hdl)
+{
+ DWORD dwFlag = 0;
+ BOOL result = FALSE;
+
+ T((T_CALLED("lib_win32con::IsConsoleHandle(HANDLE=%p"), hdl));
+
+ EnsureInit();
+
+ if (!GetConsoleMode(hdl, &dwFlag)) {
+ T(("GetConsoleMode failed"));
+ } else {
+ result = TRUE;
+ }
+
+ returnBool(result);
+}
+
+/* This is used when running in terminfo mode to discover,
+ whether or not the "terminal" is actually a Windows
+ Console. It is the responsibility of the console to deal
+ with the terminal escape sequences that are sent by
+ terminfo.
+ */
+NCURSES_EXPORT(int)
+_nc_console_test(int fd)
+{
+ int code = 0;
+ HANDLE hdl = INVALID_HANDLE_VALUE;
+ T((T_CALLED("lib_win32con::_nc_console_test(%d)"), fd));
+ hdl = _nc_console_handle(fd);
+ code = (int) IsConsoleHandle(hdl);
+ returnCode(code);
+}
+
+#define OutHandle() ((WINCONSOLE.isTermInfoConsole || WINCONSOLE.progMode) ? WINCONSOLE.hdl : WINCONSOLE.out)
+
+NCURSES_EXPORT(void)
+_nc_console_selectActiveHandle(void)
+{
+ if (WINCONSOLE.lastOut != WINCONSOLE.hdl) {
+ WINCONSOLE.lastOut = WINCONSOLE.hdl;
+ SetConsoleActiveScreenBuffer(WINCONSOLE.lastOut);
+ }
+}
+
+NCURSES_EXPORT(HANDLE)
+_nc_console_fd2handle(int fd)
+{
+ HANDLE hdl = _nc_console_handle(fd);
+ if (hdl==WINCONSOLE.inp) {
+ T(("lib_win32con:validateHandle %d -> WINCONSOLE.inp", fd));
+ } else if (hdl==WINCONSOLE.hdl) {
+ T(("lib_win32con:validateHandle %d -> WINCONSOLE.hdl", fd));
+ } else if (hdl==WINCONSOLE.out) {
+ T(("lib_win32con:validateHandle %d -> WINCONSOLE.out", fd));
+ } else {
+ T(("lib_win32con:validateHandle %d maps to unknown HANDLE", fd));
+ hdl = INVALID_HANDLE_VALUE;
+ }
+#if 1
+ assert(hdl != INVALID_HANDLE_VALUE);
+#endif
+ if (hdl != INVALID_HANDLE_VALUE) {
+ if (hdl != WINCONSOLE.inp && (!WINCONSOLE.isTermInfoConsole && WINCONSOLE.progMode)) {
+ if (hdl==WINCONSOLE.out && hdl!=WINCONSOLE.hdl) {
+ T(("lib_win32con:validateHandle forcing WINCONSOLE.out -> WINCONSOLE.hdl"));
+ hdl = WINCONSOLE.hdl;
+ }
+ }
+ }
+ return hdl;
+}
+
+NCURSES_EXPORT(int)
+_nc_console_setmode(HANDLE hdl, const TTY *arg)
+{
+ DWORD dwFlag = 0;
+ int code = ERR;
+ HANDLE alt;
+
+ if (arg) {
+#ifdef TRACE
+ TTY TRCTTY;
+#define TRCTTYOUT(flag) TRCTTY.dwFlagOut = flag
+#define TRCTTYIN(flag) TRCTTY.dwFlagIn = flag
+#else
+#define TRCTTYOUT(flag)
+#define TRCTTYIN(flag)
+#endif
+ T(("lib_win32con:_nc_console_setmode %s", _nc_trace_ttymode(arg)));
+ if (hdl==WINCONSOLE.inp) {
+ dwFlag = arg->dwFlagIn | ENABLE_MOUSE_INPUT | VT_FLAG_IN;
+ if (WINCONSOLE.isTermInfoConsole)
+ dwFlag |= (VT_FLAG_IN);
+ else
+ dwFlag &= (DWORD) ~(VT_FLAG_IN);
+ TRCTTYIN(dwFlag);
+ SetConsoleMode(hdl, dwFlag);
+
+ alt = OutHandle();
+ dwFlag = arg->dwFlagOut;
+ if (WINCONSOLE.isTermInfoConsole)
+ dwFlag |= (VT_FLAG_OUT);
+ else
+ dwFlag |= (VT_FLAG_OUT);
+ TRCTTYOUT(dwFlag);
+ SetConsoleMode(alt, dwFlag);
+ } else {
+ dwFlag = arg->dwFlagOut;
+ if (WINCONSOLE.isTermInfoConsole)
+ dwFlag |= (VT_FLAG_OUT);
+ else
+ dwFlag |= (VT_FLAG_OUT);
+ TRCTTYOUT(dwFlag);
+ SetConsoleMode(hdl, dwFlag);
+
+ alt = WINCONSOLE.inp;
+ dwFlag = arg->dwFlagIn | ENABLE_MOUSE_INPUT;
+ if (WINCONSOLE.isTermInfoConsole)
+ dwFlag |= (VT_FLAG_IN);
+ else
+ dwFlag &= (DWORD) ~(VT_FLAG_IN);
+ TRCTTYIN(dwFlag);
+ SetConsoleMode(alt, dwFlag);
+ T(("effective mode set %s", _nc_trace_ttymode(&TRCTTY)));
+ }
+ code = OK;
+ }
+ return(code);
+}
+
+NCURSES_EXPORT(int)
+_nc_console_getmode(HANDLE hdl, TTY *arg)
+{
+ int code = ERR;
+
+ if (arg) {
+ DWORD dwFlag = 0;
+ HANDLE alt;
+
+ if (hdl==WINCONSOLE.inp) {
+ if(GetConsoleMode(hdl, &dwFlag)) {
+ arg->dwFlagIn = dwFlag;
+ alt = OutHandle();
+ if (GetConsoleMode(alt, &dwFlag)) {
+ arg->dwFlagOut = dwFlag;
+ code = OK;
+ }
+ }
+ } else {
+ if (GetConsoleMode(hdl, &dwFlag)) {
+ arg->dwFlagOut = dwFlag;
+ alt = WINCONSOLE.inp;
+ if (GetConsoleMode(alt, &dwFlag)) {
+ arg->dwFlagIn = dwFlag;
+ code = OK;
+ }
+ }
+ }
+ }
+ T(("lib_win32con:_nc_console_getmode %s", _nc_trace_ttymode(arg)));
+ return(code);
+}
+
+NCURSES_EXPORT(int)
+_nc_console_flush(HANDLE hdl)
+{
+ int code = OK;
+
+ T((T_CALLED("lib_win32con::_nc_console_flush(hdl=%p"), hdl));
+
+ if (hdl != INVALID_HANDLE_VALUE) {
+ if (hdl == WINCONSOLE.hdl ||
+ hdl == WINCONSOLE.inp ||
+ hdl == WINCONSOLE.out) {
+ if (!FlushConsoleInputBuffer(WINCONSOLE.inp))
+ code = ERR;
+ } else {
+ code = ERR;
+ T(("_nc_console_flush not requesting a handle owned by console."));
+ }
+ }
+ returnCode(code);
+}
+
+NCURSES_EXPORT(WORD)
+_nc_console_MapColor(bool fore, int color)
+{
+ static const int _cmap[] =
+ {0, 4, 2, 6, 1, 5, 3, 7};
+ int a;
+ if (color < 0 || color > 7)
+ a = fore ? 7 : 0;
+ else
+ a = _cmap[color];
+ if (!fore)
+ a = a << 4;
+ return (WORD) a;
+}
+
+
+/*
+ * Attempt to save the screen contents. PDCurses does this if
+ * PDC_RESTORE_SCREEN is set, giving the same visual appearance on
+ * restoration as if the library had allocated a console buffer. MSDN
+ * says that the data which can be read is limited to 64Kb (and may be
+ * less).
+ */
+static bool
+save_original_screen(void)
+{
+ bool result = FALSE;
+
+ WINCONSOLE.save_region.Top = 0;
+ WINCONSOLE.save_region.Left = 0;
+ WINCONSOLE.save_region.Bottom = (SHORT) (WINCONSOLE.SBI.dwSize.Y - 1);
+ WINCONSOLE.save_region.Right = (SHORT) (WINCONSOLE.SBI.dwSize.X - 1);
+
+ if (read_screen_data()) {
+ result = TRUE;
+ } else {
+
+ WINCONSOLE.save_region.Top = WINCONSOLE.SBI.srWindow.Top;
+ WINCONSOLE.save_region.Left = WINCONSOLE.SBI.srWindow.Left;
+ WINCONSOLE.save_region.Bottom = WINCONSOLE.SBI.srWindow.Bottom;
+ WINCONSOLE.save_region.Right = WINCONSOLE.SBI.srWindow.Right;
+
+ WINCONSOLE.window_only = TRUE;
+
+ if (read_screen_data()) {
+ result = TRUE;
+ }
+ }
+
+ T(("... save original screen contents %s", result ? "ok" : "err"));
+ return result;
+}
+
+static bool
+restore_original_screen(void)
+{
+ COORD bufferCoord;
+ bool result = FALSE;
+ SMALL_RECT save_region = WINCONSOLE.save_region;
+
+ T(("... restoring %s",
+ WINCONSOLE.window_only ? "window" : "entire buffer"));
+
+ bufferCoord.X = (SHORT) (WINCONSOLE.window_only ?
+ WINCONSOLE.SBI.srWindow.Left : 0);
+ bufferCoord.Y = (SHORT) (WINCONSOLE.window_only ?
+ WINCONSOLE.SBI.srWindow.Top : 0);
+
+ if (write_screen(WINCONSOLE.hdl,
+ WINCONSOLE.save_screen,
+ WINCONSOLE.save_size,
+ bufferCoord,
+ &save_region)) {
+ result = TRUE;
+ mvcur(-1, -1, LINES - 2, 0);
+ T(("... restore original screen contents ok %dx%d (%d,%d - %d,%d)",
+ WINCONSOLE.save_size.Y,
+ WINCONSOLE.save_size.X,
+ save_region.Top,
+ save_region.Left,
+ save_region.Bottom,
+ save_region.Right));
+ } else {
+ T(("... restore original screen contents err"));
+ }
+ return result;
+}
+
+static bool
+read_screen_data(void)
+{
+ bool result = FALSE;
+ COORD bufferCoord;
+ size_t want;
+
+ WINCONSOLE.save_size.X = (SHORT) (WINCONSOLE.save_region.Right
+ - WINCONSOLE.save_region.Left + 1);
+ WINCONSOLE.save_size.Y = (SHORT) (WINCONSOLE.save_region.Bottom
+ - WINCONSOLE.save_region.Top + 1);
+
+ want = (size_t) (WINCONSOLE.save_size.X * WINCONSOLE.save_size.Y);
+
+ if ((WINCONSOLE.save_screen = malloc(want * sizeof(CHAR_INFO))) != 0) {
+ bufferCoord.X = (SHORT) (WINCONSOLE.window_only ?
+ WINCONSOLE.SBI.srWindow.Left : 0);
+ bufferCoord.Y = (SHORT) (WINCONSOLE.window_only ?
+ WINCONSOLE.SBI.srWindow.Top : 0);
+
+ T(("... reading console %s %dx%d into %d,%d - %d,%d at %d,%d",
+ WINCONSOLE.window_only ? "window" : "buffer",
+ WINCONSOLE.save_size.Y, WINCONSOLE.save_size.X,
+ WINCONSOLE.save_region.Top,
+ WINCONSOLE.save_region.Left,
+ WINCONSOLE.save_region.Bottom,
+ WINCONSOLE.save_region.Right,
+ bufferCoord.Y,
+ bufferCoord.X));
+
+ if (read_screen(WINCONSOLE.hdl,
+ WINCONSOLE.save_screen,
+ WINCONSOLE.save_size,
+ bufferCoord,
+ &WINCONSOLE.save_region)) {
+ result = TRUE;
+ } else {
+ T((" error %#lx", (unsigned long) GetLastError()));
+ FreeAndNull(WINCONSOLE.save_screen);
+ }
+ }
+
+ return result;
+}
+
+NCURSES_EXPORT(bool)
+_nc_console_get_SBI(void)
+{
+ bool rc = FALSE;
+ if (GetConsoleScreenBufferInfo(WINCONSOLE.hdl, &(WINCONSOLE.SBI))) {
+ T(("GetConsoleScreenBufferInfo"));
+ T(("... buffer(X:%d Y:%d)",
+ WINCONSOLE.SBI.dwSize.X,
+ WINCONSOLE.SBI.dwSize.Y));
+ T(("... window(X:%d Y:%d)",
+ WINCONSOLE.SBI.dwMaximumWindowSize.X,
+ WINCONSOLE.SBI.dwMaximumWindowSize.Y));
+ T(("... cursor(X:%d Y:%d)",
+ WINCONSOLE.SBI.dwCursorPosition.X,
+ WINCONSOLE.SBI.dwCursorPosition.Y));
+ T(("... display(Top:%d Bottom:%d Left:%d Right:%d)",
+ WINCONSOLE.SBI.srWindow.Top,
+ WINCONSOLE.SBI.srWindow.Bottom,
+ WINCONSOLE.SBI.srWindow.Left,
+ WINCONSOLE.SBI.srWindow.Right));
+ if (WINCONSOLE.buffered) {
+ WINCONSOLE.origin.X = 0;
+ WINCONSOLE.origin.Y = 0;
+ } else {
+ WINCONSOLE.origin.X = WINCONSOLE.SBI.srWindow.Left;
+ WINCONSOLE.origin.Y = WINCONSOLE.SBI.srWindow.Top;
+ }
+ rc = TRUE;
+ } else {
+ T(("GetConsoleScreenBufferInfo ERR"));
+ }
+ return rc;
+}
+
+#define MIN_WIDE 80
+#define MIN_HIGH 24
+
+/*
+ * In "normal" mode, reset the buffer- and window-sizes back to their original values.
+ */
+NCURSES_EXPORT(void)
+_nc_console_set_scrollback(bool normal, CONSOLE_SCREEN_BUFFER_INFO * info)
+{
+ SMALL_RECT rect;
+ COORD coord;
+ bool changed = FALSE;
+
+ T((T_CALLED("lib_win32con::_nc_console_set_scrollback(%s)"),
+ (normal
+ ? "normal"
+ : "application")));
+
+ T(("... SBI.srWindow %d,%d .. %d,%d",
+ info->srWindow.Top,
+ info->srWindow.Left,
+ info->srWindow.Bottom,
+ info->srWindow.Right));
+ T(("... SBI.dwSize %dx%d",
+ info->dwSize.Y,
+ info->dwSize.X));
+
+ if (normal) {
+ rect = info->srWindow;
+ coord = info->dwSize;
+ if (memcmp(info, &WINCONSOLE.SBI, sizeof(*info)) != 0) {
+ changed = TRUE;
+ WINCONSOLE.SBI = *info;
+ }
+ } else {
+ int high = info->srWindow.Bottom - info->srWindow.Top + 1;
+ int wide = info->srWindow.Right - info->srWindow.Left + 1;
+
+ if (high < MIN_HIGH) {
+ T(("... height %d < %d", high, MIN_HIGH));
+ high = MIN_HIGH;
+ changed = TRUE;
+ }
+ if (wide < MIN_WIDE) {
+ T(("... width %d < %d", wide, MIN_WIDE));
+ wide = MIN_WIDE;
+ changed = TRUE;
+ }
+
+ rect.Left =
+ rect.Top = 0;
+ rect.Right = (SHORT) (wide - 1);
+ rect.Bottom = (SHORT) (high - 1);
+
+ coord.X = (SHORT) wide;
+ coord.Y = (SHORT) high;
+
+ if (info->dwSize.Y != high ||
+ info->dwSize.X != wide ||
+ info->srWindow.Top != 0 ||
+ info->srWindow.Left != 0) {
+ changed = TRUE;
+ }
+
+ }
+
+ if (changed) {
+ T(("... coord %d,%d", coord.Y, coord.X));
+ T(("... rect %d,%d - %d,%d",
+ rect.Top, rect.Left,
+ rect.Bottom, rect.Right));
+ SetConsoleScreenBufferSize(WINCONSOLE.hdl, coord); /* dwSize */
+ SetConsoleWindowInfo(WINCONSOLE.hdl, TRUE, &rect); /* srWindow */
+ _nc_console_get_SBI();
+ }
+ returnVoid;
+}
+
+static ULONGLONG
+tdiff(FILETIME fstart, FILETIME fend)
+{
+ ULARGE_INTEGER ustart;
+ ULARGE_INTEGER uend;
+ ULONGLONG diff;
+
+ ustart.LowPart = fstart.dwLowDateTime;
+ ustart.HighPart = fstart.dwHighDateTime;
+ uend.LowPart = fend.dwLowDateTime;
+ uend.HighPart = fend.dwHighDateTime;
+
+ diff = (uend.QuadPart - ustart.QuadPart) / 10000;
+ return diff;
+}
+
+static int
+Adjust(int milliseconds, int diff)
+{
+ if (milliseconds != INFINITY) {
+ milliseconds -= diff;
+ if (milliseconds < 0)
+ milliseconds = 0;
+ }
+ return milliseconds;
+}
+
+#define BUTTON_MASK (FROM_LEFT_1ST_BUTTON_PRESSED | \
+ FROM_LEFT_2ND_BUTTON_PRESSED | \
+ FROM_LEFT_3RD_BUTTON_PRESSED | \
+ FROM_LEFT_4TH_BUTTON_PRESSED | \
+ RIGHTMOST_BUTTON_PRESSED)
+
+static int
+decode_mouse(SCREEN *sp, int mask)
+{
+ int result = 0;
+
+ (void) sp;
+ assert(sp && console_initialized);
+
+ if (mask & FROM_LEFT_1ST_BUTTON_PRESSED)
+ result |= BUTTON1_PRESSED;
+ if (mask & FROM_LEFT_2ND_BUTTON_PRESSED)
+ result |= BUTTON2_PRESSED;
+ if (mask & FROM_LEFT_3RD_BUTTON_PRESSED)
+ result |= BUTTON3_PRESSED;
+ if (mask & FROM_LEFT_4TH_BUTTON_PRESSED)
+ result |= BUTTON4_PRESSED;
+
+ if (mask & RIGHTMOST_BUTTON_PRESSED) {
+ switch (WINCONSOLE.numButtons) {
+ case 1:
+ result |= BUTTON1_PRESSED;
+ break;
+ case 2:
+ result |= BUTTON2_PRESSED;
+ break;
+ case 3:
+ result |= BUTTON3_PRESSED;
+ break;
+ case 4:
+ result |= BUTTON4_PRESSED;
+ break;
+ }
+ }
+
+ return result;
+}
+
+#define AdjustY() (WINCONSOLE.buffered ? 0 : (int) WINCONSOLE.SBI.srWindow.Top)
+
+static bool
+handle_mouse(SCREEN *sp, MOUSE_EVENT_RECORD mer)
+{
+ MEVENT work;
+ bool result = FALSE;
+
+ assert(sp);
+
+ sp->_drv_mouse_old_buttons = sp->_drv_mouse_new_buttons;
+ sp->_drv_mouse_new_buttons = mer.dwButtonState & BUTTON_MASK;
+
+ /*
+ * We're only interested if the button is pressed or released.
+ * FIXME: implement continuous event-tracking.
+ */
+ if (sp->_drv_mouse_new_buttons != sp->_drv_mouse_old_buttons) {
+ memset(&work, 0, sizeof(work));
+
+ if (sp->_drv_mouse_new_buttons) {
+ work.bstate |=
+ (mmask_t) decode_mouse(sp,
+ sp->_drv_mouse_new_buttons);
+ } else {
+ /* cf: BUTTON_PRESSED, BUTTON_RELEASED */
+ work.bstate |=
+ (mmask_t) (decode_mouse(sp,
+ sp->_drv_mouse_old_buttons)
+ >> 1);
+ result = TRUE;
+ }
+
+ work.x = mer.dwMousePosition.X;
+ work.y = mer.dwMousePosition.Y - AdjustY();
+
+ sp->_drv_mouse_fifo[sp->_drv_mouse_tail] = work;
+ sp->_drv_mouse_tail += 1;
+ }
+ return result;
+}
+
+static int
+rkeycompare(const void *el1, const void *el2)
+{
+ WORD key1 = (LOWORD((*((const LONG *) el1)))) & 0x7fff;
+ WORD key2 = (LOWORD((*((const LONG *) el2)))) & 0x7fff;
+
+ return ((key1 < key2) ? -1 : ((key1 == key2) ? 0 : 1));
+}
+
+
+static int
+keycompare(const void *el1, const void *el2)
+{
+ WORD key1 = HIWORD((*((const LONG *) el1)));
+ WORD key2 = HIWORD((*((const LONG *) el2)));
+
+ return ((key1 < key2) ? -1 : ((key1 == key2) ? 0 : 1));
+}
+
+static int
+MapKey(WORD vKey)
+{
+ int code = -1;
+
+ if (!WINCONSOLE.isTermInfoConsole) {
+ WORD nKey = 0;
+ void *res;
+ LONG key = GenMap(vKey, 0);
+
+ res = bsearch(&key,
+ WINCONSOLE.map,
+ (size_t) (N_INI + FKEYS),
+ sizeof(keylist[0]),
+ keycompare);
+ if (res) {
+ key = *((LONG *) res);
+ nKey = LOWORD(key);
+ code = (int) (nKey & 0x7fff);
+ if (nKey & 0x8000)
+ code = -code;
+ }
+ }
+ return code;
+}
+
+static int
+AnsiKey(WORD vKey)
+{
+ int code = -1;
+
+ if (!WINCONSOLE.isTermInfoConsole) {
+ WORD nKey = 0;
+ void *res;
+ LONG key = GenMap(vKey, 0);
+
+ res = bsearch(&key,
+ WINCONSOLE.ansi_map,
+ (size_t) (N_INI + FKEYS),
+ sizeof(keylist[0]),
+ keycompare);
+ if (res) {
+ key = *((LONG *) res);
+ nKey = LOWORD(key);
+ code = (int) (nKey & 0x7fff);
+ if (nKey & 0x8000)
+ code = -code;
+ }
+ }
+ return code;
+}
+
+NCURSES_EXPORT(int)
+_nc_console_keyok(int keycode, int flag)
+{
+ int code = ERR;
+ WORD nKey;
+ WORD vKey;
+ void *res;
+ LONG key = GenMap(0, (WORD) keycode);
+
+ T((T_CALLED("lib_win32con::_nc_console_keyok(%d, %d)"), keycode, flag));
+
+ res = bsearch(&key,
+ WINCONSOLE.rmap,
+ (size_t) (N_INI + FKEYS),
+ sizeof(keylist[0]),
+ rkeycompare);
+ if (res) {
+ key = *((LONG *) res);
+ vKey = HIWORD(key);
+ nKey = (LOWORD(key)) & 0x7fff;
+ if (!flag)
+ nKey |= 0x8000;
+ *(LONG *) res = GenMap(vKey, nKey);
+ }
+ returnCode(code);
+}
+
+NCURSES_EXPORT(bool)
+_nc_console_keyExist(int keycode)
+{
+ WORD nKey;
+ void *res;
+ bool found = FALSE;
+ LONG key = GenMap(0, (WORD) keycode);
+
+ T((T_CALLED("lib_win32con::_nc_console_keyExist(%d)"), keycode));
+ res = bsearch(&key,
+ WINCONSOLE.rmap,
+ (size_t) (N_INI + FKEYS),
+ sizeof(keylist[0]),
+ rkeycompare);
+ if (res) {
+ key = *((LONG *) res);
+ nKey = LOWORD(key);
+ if (!(nKey & 0x8000))
+ found = TRUE;
+ }
+ returnCode(found);
+}
+
+NCURSES_EXPORT(int)
+_nc_console_twait(
+ SCREEN *sp,
+ HANDLE hdl,
+ int mode,
+ int milliseconds,
+ int *timeleft
+ EVENTLIST_2nd(_nc_eventlist * evl))
+{
+ INPUT_RECORD inp_rec;
+ BOOL b;
+ DWORD nRead = 0, rc = (DWORD) (-1);
+ int code = 0;
+ FILETIME fstart;
+ FILETIME fend;
+ int diff;
+ bool isNoDelay = (milliseconds == 0);
+
+#ifdef NCURSES_WGETCH_EVENTS
+ (void) evl; /* TODO: implement wgetch-events */
+#endif
+
+#define IGNORE_CTRL_KEYS (SHIFT_PRESSED|LEFT_ALT_PRESSED|RIGHT_ALT_PRESSED| \
+ LEFT_CTRL_PRESSED|RIGHT_CTRL_PRESSED)
+#define CONSUME() ReadConsoleInput(hdl, &inp_rec, 1, &nRead)
+
+ assert(sp);
+
+ TR(TRACE_IEVENT, ("start twait: hdl=%p, %d milliseconds, mode: %d",
+ hdl, milliseconds, mode));
+
+ if (milliseconds < 0)
+ milliseconds = INFINITY;
+
+ memset(&inp_rec, 0, sizeof(inp_rec));
+
+ while (true) {
+ if (!isNoDelay) {
+ GetSystemTimeAsFileTime(&fstart);
+ rc = WaitForSingleObject(hdl, (DWORD) milliseconds);
+ GetSystemTimeAsFileTime(&fend);
+ diff = (int) tdiff(fstart, fend);
+ milliseconds = Adjust(milliseconds, diff);
+ if (milliseconds< 0)
+ break;
+ }
+
+ if (isNoDelay || (rc == WAIT_OBJECT_0)) {
+ if (mode) {
+ nRead = 0;
+ b = GetNumberOfConsoleInputEvents(hdl, &nRead);
+ if (!b) {
+ T(("twait:err GetNumberOfConsoleInputEvents"));
+ }
+ if (isNoDelay && b) {
+ T(("twait: Events Available: %ld", nRead));
+ if (nRead==0) {
+ code = 0;
+ goto end;
+ } else {
+ DWORD n = 0;
+ INPUT_RECORD* pInpRec =
+ TypeAlloca(INPUT_RECORD, nRead);
+ if (pInpRec != NULL) {
+ DWORD i;
+ BOOL f;
+ memset(pInpRec, 0, sizeof(INPUT_RECORD)*nRead);
+ f = PeekConsoleInput(hdl, pInpRec, nRead, &n);
+ if (f) {
+ for(i = 0; i < n; i++) {
+ if (pInpRec[i].EventType==KEY_EVENT) {
+ if(pInpRec[i].Event.KeyEvent.bKeyDown) {
+ DWORD ctrlMask =
+ (pInpRec[i].Event.KeyEvent.dwControlKeyState &
+ IGNORE_CTRL_KEYS);
+ if (!ctrlMask) {
+ code = TW_INPUT;
+ goto end;
+ }
+ }
+ }
+ }
+ } else {
+ T(("twait:err PeekConsoleInput"));
+ }
+ code = 0;
+ goto end;
+ } else {
+ T(("twait:err could not alloca input records"));
+ }
+ }
+ }
+ if (b && nRead > 0) {
+ b = PeekConsoleInput(hdl, &inp_rec, 1, &nRead);
+ if (!b) {
+ T(("twait:err PeekConsoleInput"));
+ }
+ if (b && nRead > 0) {
+ switch (inp_rec.EventType) {
+ case KEY_EVENT:
+ if (mode & TW_INPUT) {
+ WORD vk =
+ inp_rec.Event.KeyEvent.wVirtualKeyCode;
+ char ch =
+ inp_rec.Event.KeyEvent.uChar.AsciiChar;
+ T(("twait:event KEY_EVENT"));
+ T(("twait vk=%d, ch=%d, keydown=%d",
+ vk, ch, inp_rec.Event.KeyEvent.bKeyDown));
+ if (inp_rec.Event.KeyEvent.bKeyDown) {
+ T(("twait:event KeyDown"));
+ if (!WINCONSOLE.isTermInfoConsole &&
+ (0 == ch)) {
+ int nKey = MapKey(vk);
+ if (nKey < 0) {
+ CONSUME();
+ continue;
+ }
+ }
+ code = TW_INPUT;
+ goto end;
+ } else {
+ CONSUME();
+ }
+ }
+ continue;
+ case MOUSE_EVENT:
+ T(("twait:event MOUSE_EVENT"));
+ if (decode_mouse(sp,
+ (inp_rec.Event.MouseEvent.dwButtonState
+ & BUTTON_MASK)) == 0) {
+ CONSUME();
+ } else if (mode & TW_MOUSE) {
+ code = TW_MOUSE;
+ goto end;
+ }
+ continue;
+ /* e.g., FOCUS_EVENT */
+ default:
+ T(("twait:event Tyoe %d", inp_rec.EventType));
+ CONSUME();
+ _nc_console_selectActiveHandle();
+ continue;
+ }
+ }
+ }
+ }
+ continue;
+ } else {
+ if (rc != WAIT_TIMEOUT) {
+ code = -1;
+ break;
+ } else {
+ code = 0;
+ break;
+ }
+ }
+ }
+end:
+
+ TR(TRACE_IEVENT, ("end twait: returned %d (%lu), remaining time %d msec",
+ code, GetLastError(), milliseconds));
+
+ if (timeleft)
+ *timeleft = milliseconds;
+
+ return code;
+}
+
+NCURSES_EXPORT(int)
+_nc_console_testmouse(
+ SCREEN *sp,
+ HANDLE hdl,
+ int delay
+ EVENTLIST_2nd(_nc_eventlist * evl))
+{
+ int rc = 0;
+
+ assert(sp);
+
+ if (sp->_drv_mouse_head < sp->_drv_mouse_tail) {
+ rc = TW_MOUSE;
+ } else {
+ rc = _nc_console_twait(sp,
+ hdl,
+ TWAIT_MASK,
+ delay,
+ (int *) 0
+ EVENTLIST_2nd(evl));
+ }
+ return rc;
+}
+
+NCURSES_EXPORT(int)
+_nc_console_read(
+ SCREEN *sp,
+ HANDLE hdl,
+ int *buf)
+{
+ int rc = -1;
+ INPUT_RECORD inp_rec;
+ BOOL b;
+ DWORD nRead;
+ WORD vk;
+
+ assert(sp);
+ assert(buf);
+
+ memset(&inp_rec, 0, sizeof(inp_rec));
+
+ T((T_CALLED("lib_win32con::_nc_console_read(%p)"), sp));
+
+ while ((b = ReadConsoleInput(hdl, &inp_rec, 1, &nRead))) {
+ if (b && nRead > 0) {
+ if (rc < 0)
+ rc = 0;
+ rc = rc + (int) nRead;
+ if (inp_rec.EventType == KEY_EVENT) {
+ if (!inp_rec.Event.KeyEvent.bKeyDown)
+ continue;
+ *buf = (int) inp_rec.Event.KeyEvent.uChar.AsciiChar;
+ vk = inp_rec.Event.KeyEvent.wVirtualKeyCode;
+ /*
+ * There are 24 virtual function-keys, and typically
+ * 12 function-keys on a keyboard. Use the shift-modifier
+ * to provide the remaining 12 keys.
+ */
+ if (vk >= VK_F1 && vk <= VK_F12) {
+ if (inp_rec.Event.KeyEvent.dwControlKeyState &
+ SHIFT_PRESSED) {
+ vk = (WORD) (vk + 12);
+ }
+ }
+ if (*buf == 0) {
+ int key = MapKey(vk);
+ if (key < 0)
+ continue;
+ if (sp->_keypad_on) {
+ *buf = key;
+ } else {
+ ungetch('\0');
+ *buf = AnsiKey(vk);
+ }
+ }
+ break;
+ } else if (inp_rec.EventType == MOUSE_EVENT) {
+ if (handle_mouse(sp,
+ inp_rec.Event.MouseEvent)) {
+ *buf = KEY_MOUSE;
+ break;
+ }
+ }
+ continue;
+ }
+ }
+ returnCode(rc);
+}
+
+/* Our replacement for the systems _isatty to include also
+ a test for mintty. This is called from the NC_ISATTY macro
+ defined in curses.priv.h
+
+ Return codes:
+ - 0 : Not a TTY
+ - 1 : A Windows character device detected by _isatty
+ - 2 : A future implementation may return 2 for mintty
+ */
+NCURSES_EXPORT(int)
+_nc_console_isatty(int fd)
+{
+ int result = 0;
+ T((T_CALLED("lib_win32con::_nc_console_isatty(%d"), fd));
+
+ if (_isatty(fd))
+ result = 1;
+#ifdef _NC_CHECK_MINTTY
+ else {
+ if (_nc_console_checkmintty(fd, NULL)) {
+ result = 2;
+ fprintf(stderr, "ncurses on Windows must run in a Windows console.\n");
+ fprintf(stderr, "On newer versions of Windows, the calling program should create a PTY-like.\n");
+ fprintf(stderr, "device using the CreatePseudoConsole Windows API call.\n");
+ exit(EXIT_FAILURE);
+ }
+ }
+#endif
+ returnCode(result);
+}
+
+NCURSES_EXPORT(bool)
+_nc_console_checkinit(bool initFlag, bool assumeTermInfo)
+{
+ bool res = FALSE;
+
+ T((T_CALLED("lib_win32con::_nc_console_checkinit(initFlag=%d, assumeTermInfo=%d)"),
+ initFlag, assumeTermInfo));
+
+ if (!initFlag) {
+ res = console_initialized;
+ } else {
+ /* initialize once, or not at all */
+ if (!console_initialized) {
+ int i;
+ DWORD num_buttons;
+ WORD a;
+ BOOL buffered = FALSE;
+ BOOL b;
+
+ START_TRACE();
+ WINCONSOLE.isTermInfoConsole = assumeTermInfo;
+
+ WINCONSOLE.map = (LPDWORD)malloc(sizeof(DWORD)*MAPSIZE);
+ WINCONSOLE.rmap = (LPDWORD)malloc(sizeof(DWORD)*MAPSIZE);
+ WINCONSOLE.ansi_map = (LPDWORD)malloc(sizeof(DWORD)*MAPSIZE);
+
+ for (i = 0; i < (N_INI + FKEYS); i++) {
+ if (i < N_INI) {
+ WINCONSOLE.rmap[i] = WINCONSOLE.map[i] =
+ (DWORD) keylist[i];
+ WINCONSOLE.ansi_map[i] = (DWORD) ansi_keys[i];
+ } else {
+ WINCONSOLE.rmap[i] = WINCONSOLE.map[i] =
+ (DWORD) GenMap((VK_F1 + (i - N_INI)),
+ (KEY_F(1) + (i - N_INI)));
+ WINCONSOLE.ansi_map[i] =
+ (DWORD) GenMap((VK_F1 + (i - N_INI)),
+ (';' + (i - N_INI)));
+ }
+ }
+ qsort(WINCONSOLE.ansi_map,
+ (size_t) (MAPSIZE),
+ sizeof(keylist[0]),
+ keycompare);
+ qsort(WINCONSOLE.map,
+ (size_t) (MAPSIZE),
+ sizeof(keylist[0]),
+ keycompare);
+ qsort(WINCONSOLE.rmap,
+ (size_t) (MAPSIZE),
+ sizeof(keylist[0]),
+ rkeycompare);
+
+ if (GetNumberOfConsoleMouseButtons(&num_buttons)) {
+ WINCONSOLE.numButtons = (int) num_buttons;
+ } else {
+ WINCONSOLE.numButtons = 1;
+ }
+
+ a = _nc_console_MapColor(true, COLOR_WHITE) |
+ _nc_console_MapColor(false, COLOR_BLACK);
+ for (i = 0; i < CON_NUMPAIRS; i++)
+ WINCONSOLE.pairs[i] = a;
+
+ WINCONSOLE.inp = GetStdHandle(STD_INPUT_HANDLE);
+ WINCONSOLE.out = GetStdHandle(STD_OUTPUT_HANDLE);
+ WINCONSOLE.hdl = WINCONSOLE.out;
+
+ GetConsoleMode(WINCONSOLE.inp, &WINCONSOLE.originalMode.dwFlagIn);
+ GetConsoleMode(WINCONSOLE.out, &WINCONSOLE.originalMode.dwFlagOut);
+
+ if (!WINCONSOLE.isTermInfoConsole) {
+ b = AllocConsole();
+
+ if (!b)
+ b = AttachConsole(ATTACH_PARENT_PROCESS);
+
+ if (getenv("NCGDB") || getenv("NCURSES_CONSOLE2")) {
+ T(("... will not buffer console"));
+ } else {
+ T(("... creating console buffer"));
+ WINCONSOLE.hdl =
+ CreateConsoleScreenBuffer(GENERIC_READ | GENERIC_WRITE,
+ 0,
+ NULL,
+ CONSOLE_TEXTMODE_BUFFER,
+ NULL);
+ buffered = TRUE;
+ }
+ }
+
+ /* We set binary I/O even when using the console
+ driver to cover the situation, that the
+ TERM variable is set to #win32con, but actually
+ Windows supports virtual terminal processing.
+ So if terminfo functions are used in this setup,
+ they actually may work.
+ */
+ _setmode(fileno(stdin), _O_BINARY);
+ _setmode(fileno(stdout), _O_BINARY);
+
+ if (WINCONSOLE.hdl != INVALID_HANDLE_VALUE) {
+ WINCONSOLE.buffered = buffered;
+ _nc_console_get_SBI();
+ WINCONSOLE.save_SBI = WINCONSOLE.SBI;
+ if (!buffered) {
+ save_original_screen();
+ _nc_console_set_scrollback(FALSE, &WINCONSOLE.SBI);
+ }
+ GetConsoleCursorInfo(WINCONSOLE.hdl, &WINCONSOLE.save_CI);
+ T(("... initial cursor is %svisible, %d%%",
+ (WINCONSOLE.save_CI.bVisible ? "" : "not-"),
+ (int) WINCONSOLE.save_CI.dwSize));
+ }
+
+ WINCONSOLE.initialized = TRUE;
+ console_initialized = TRUE;
+ }
+ res = (WINCONSOLE.hdl != INVALID_HANDLE_VALUE);
+ }
+ returnBool(res);
+}
+
+#endif // _NC_WINDOWS
diff --git a/ncurses/tinfo/lib_win32util.c b/ncurses/tinfo/lib_win32util.c
new file mode 100644
index 0000000..1482916
--- /dev/null
+++ b/ncurses/tinfo/lib_win32util.c
@@ -0,0 +1,134 @@
+/****************************************************************************
+ * Copyright 2020,2021 Thomas E. Dickey *
+ * Copyright 1998-2009,2010 Free Software Foundation, Inc. *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Author: Juergen Pfeifer *
+ * and: Thomas E. Dickey *
+ ****************************************************************************/
+
+#include <curses.priv.h>
+
+MODULE_ID("$Id: lib_win32util.c,v 1.2 2021/09/04 10:54:35 tom Exp $")
+
+#ifdef _NC_WINDOWS
+#include <io.h>
+
+#ifdef _NC_CHECK_MINTTY
+#define PSAPI_VERSION 2
+#include <psapi.h>
+#include <tchar.h>
+
+#define array_length(a) (sizeof(a)/sizeof(a[0]))
+
+/* This function tests, whether or not the ncurses application
+ is running as a descendant of MSYS2/cygwin mintty terminal
+ application. mintty doesn't use Windows Console for its screen
+ I/O, so the native Windows _isatty doesn't recognize it as
+ character device. But we can discover we are at the end of an
+ Pipe and can query the server side of the pipe, looking whether
+ or not this is mintty.
+ For now we terminate the program if we discover that situation.
+ Althogh in theory it would be possible, to remotely manipulate
+ the terminal state of mintty, this is out of scope for now and
+ not worth the significant effort.
+ */
+NCURSES_EXPORT(int)
+_nc_console_checkmintty(int fd, LPHANDLE pMinTTY)
+{
+ HANDLE handle = _nc_console_handle(fd);
+ DWORD dw;
+ int code = 0;
+
+ T((T_CALLED("lib_winhelper::_nc_console_checkmintty(%d, %p)"), fd, pMinTTY));
+
+ if (handle != INVALID_HANDLE_VALUE) {
+ dw = GetFileType(handle);
+ if (dw == FILE_TYPE_PIPE) {
+ if (GetNamedPipeInfo(handle, 0, 0, 0, 0)) {
+ ULONG pPid;
+ /* Requires NT6 */
+ if (GetNamedPipeServerProcessId(handle, &pPid)) {
+ TCHAR buf[MAX_PATH];
+ DWORD len = 0;
+ /* These security attributes may allow us to
+ create a remote thread in mintty to manipulate
+ the terminal state remotely */
+ HANDLE pHandle = OpenProcess(
+ PROCESS_CREATE_THREAD
+ | PROCESS_QUERY_INFORMATION
+ | PROCESS_VM_OPERATION
+ | PROCESS_VM_WRITE
+ | PROCESS_VM_READ,
+ FALSE,
+ pPid);
+ if (pMinTTY)
+ *pMinTTY = INVALID_HANDLE_VALUE;
+ if (pHandle != INVALID_HANDLE_VALUE) {
+ if ((len = GetProcessImageFileName(
+ pHandle,
+ buf,
+ (DWORD)
+ array_length(buf)))) {
+ TCHAR *pos = _tcsrchr(buf, _T('\\'));
+ if (pos) {
+ pos++;
+ if (_tcsnicmp(pos, _TEXT("mintty.exe"), 10)
+ == 0) {
+ if (pMinTTY)
+ *pMinTTY = pHandle;
+ code = 1;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ returnCode(code);
+}
+#endif /* _NC_CHECK_MINTTY */
+
+#define JAN1970 116444736000000000LL /* the value for 01/01/1970 00:00 */
+
+NCURSES_EXPORT(int)
+_nc_gettimeofday(struct timeval *tv, void *tz GCC_UNUSED)
+{
+ union {
+ FILETIME ft;
+ long long since1601; /* time since 1 Jan 1601 in 100ns units */
+ } data;
+
+ GetSystemTimeAsFileTime(&data.ft);
+ tv->tv_usec = (long) ((data.since1601 / 10LL) % 1000000LL);
+ tv->tv_sec = (long) ((data.since1601 - JAN1970) / 10000000LL);
+ return (0);
+}
+
+#endif // _NC_WINDOWS
diff --git a/ncurses/tinfo/make_keys.c b/ncurses/tinfo/make_keys.c
index 80bbf63..b8eb934 100644
--- a/ncurses/tinfo/make_keys.c
+++ b/ncurses/tinfo/make_keys.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2011,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -40,7 +40,7 @@
#define USE_TERMLIB 1
#include <build.priv.h>
-MODULE_ID("$Id: make_keys.c,v 1.22 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: make_keys.c,v 1.23 2021/08/18 20:55:25 tom Exp $")
#include <names.c>
@@ -128,11 +128,13 @@ main(int argc, char *argv[])
{
static const char *prefix[] =
{
- "#ifndef NCU_KEYS_H",
- "#define NCU_KEYS_H 1",
+ "#ifndef _INIT_KEYTRY_H",
+ "#define _INIT_KEYTRY_H 1",
"",
"/* This file was generated by MAKE_KEYS */",
"",
+ "#include <tic.h>",
+ "",
"#if BROKEN_LINKER",
"static",
"#endif",
@@ -143,7 +145,7 @@ main(int argc, char *argv[])
{
"\t{ 0, 0} };",
"",
- "#endif /* NCU_KEYS_H */",
+ "#endif /* _INIT_KEYTRY_H */",
0
};
diff --git a/ncurses/tinfo/parse_entry.c b/ncurses/tinfo/parse_entry.c
index 23574b6..a77cd0b 100644
--- a/ncurses/tinfo/parse_entry.c
+++ b/ncurses/tinfo/parse_entry.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -48,7 +48,7 @@
#include <ctype.h>
#include <tic.h>
-MODULE_ID("$Id: parse_entry.c,v 1.99 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: parse_entry.c,v 1.102 2021/09/04 10:54:35 tom Exp $")
#ifdef LINT
static short const parametrized[] =
@@ -362,7 +362,7 @@ _nc_parse_entry(ENTRY * entryp, int literal, bool silent)
_nc_get_hash_table(_nc_syntax));
/*
- * Our kluge to handle aliasing. The reason it's done
+ * Our kluge to handle aliasing. The reason it is done
* this ugly way, with a linear search, is so the hashing
* machinery doesn't have to be made really complicated
* (also we get better warnings this way). No point in
@@ -544,10 +544,14 @@ _nc_parse_entry(ENTRY * entryp, int literal, bool silent)
case STRING:
ptr = _nc_curr_token.tk_valstring;
- if (_nc_syntax == SYN_TERMCAP)
+ if (_nc_syntax == SYN_TERMCAP) {
+ int n = entry_ptr->nte_index;
ptr = _nc_captoinfo(_nc_curr_token.tk_name,
ptr,
- parametrized[entry_ptr->nte_index]);
+ (n < (int) SIZEOF(parametrized))
+ ? parametrized[n]
+ : 0);
+ }
entryp->tterm.Strings[entry_ptr->nte_index] = _nc_save_str(ptr);
break;
@@ -925,7 +929,7 @@ postprocess_termcap(TERMTYPE2 *tp, bool has_base)
if (tp->Strings[to_ptr->nte_index]) {
const char *s = tp->Strings[from_ptr->nte_index];
const char *t = tp->Strings[to_ptr->nte_index];
- /* There's no point in warning about it if it's the same
+ /* There's no point in warning about it if it is the same
* string; that's just an inefficiency.
*/
if (VALID_STRING(s) && VALID_STRING(t) && strcmp(s, t) != 0)
diff --git a/ncurses/tinfo/read_entry.c b/ncurses/tinfo/read_entry.c
index 5b570b0..41ef0d0 100644
--- a/ncurses/tinfo/read_entry.c
+++ b/ncurses/tinfo/read_entry.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -42,7 +42,7 @@
#include <tic.h>
-MODULE_ID("$Id: read_entry.c,v 1.157 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: read_entry.c,v 1.161 2021/06/26 19:43:17 tom Exp $")
#define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts))
@@ -160,11 +160,11 @@ convert_strings(char *buf, char **Strings, int count, int size, char *table)
/* make sure all strings are NUL terminated */
if (VALID_STRING(Strings[i])) {
- for (p = Strings[i]; p <= table + size; p++)
+ for (p = Strings[i]; p < table + size; p++)
if (*p == '\0')
break;
/* if there is no NUL, ignore the string */
- if (p > table + size)
+ if (p >= table + size)
Strings[i] = ABSENT_STRING;
}
}
@@ -257,7 +257,6 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
char buf[MAX_ENTRY_SIZE + 2];
char *string_table;
unsigned want, have;
- bool need_ints;
size_t (*convert_numbers) (char *, NCURSES_INT2 *, int);
int size_of_numbers;
int max_entry_size = MAX_ENTRY_SIZE;
@@ -276,7 +275,7 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
returnDB(TGETENT_NO);
}
#if NCURSES_EXT_NUMBERS
- if ((need_ints = (LOW_MSB(buf) == MAGIC2))) {
+ if (LOW_MSB(buf) == MAGIC2) {
convert_numbers = convert_32bits;
size_of_numbers = SIZEOF_INT2;
} else {
@@ -285,7 +284,7 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
size_of_numbers = SIZEOF_SHORT;
}
#else
- if ((need_ints = (LOW_MSB(buf) == MAGIC2))) {
+ if (LOW_MSB(buf) == MAGIC2) {
convert_numbers = convert_32bits;
size_of_numbers = SIZEOF_32BITS;
} else {
@@ -553,7 +552,7 @@ _nc_read_file_entry(const char *const filename, TERMTYPE2 *ptr)
int code;
if (_nc_access(filename, R_OK) < 0
- || (fp = fopen(filename, BIN_R)) == 0) {
+ || (fp = safe_fopen(filename, BIN_R)) == 0) {
TR(TRACE_DATABASE, ("cannot open terminfo %s (errno=%d)", filename, errno));
code = TGETENT_NO;
} else {
@@ -666,11 +665,10 @@ decode_hex(const char **source)
{
int result = 0;
int nibble;
- int ch;
for (nibble = 0; nibble < 2; ++nibble) {
+ int ch = UChar(**source);
result <<= 4;
- ch = UChar(**source);
*source += 1;
if (ch >= '0' && ch <= '9') {
ch -= '0';
@@ -776,7 +774,7 @@ _nc_read_tic_entry(char *filename,
* looking for compiled (binary) terminfo data.
*
* cgetent uses a two-level lookup. On the first it uses the given
- * name to return a record containing only the aliases for an entry.
+ * name to return a record containing only the aliases for an entry.
* On the second (using that list of aliases as a key), it returns the
* content of the terminal description. We expect second lookup to
* return data beginning with the same set of aliases.
@@ -833,7 +831,7 @@ _nc_read_tic_entry(char *filename,
#endif /* NCURSES_USE_DATABASE */
/*
- * Find and read the compiled entry for a given terminal type, if it exists.
+ * Find and read the compiled entry for a given terminal type, if it exists.
* We take pains here to make sure no combination of environment variables and
* terminal type name can be used to overrun the file buffer.
*/
diff --git a/ncurses/tinfo/read_termcap.c b/ncurses/tinfo/read_termcap.c
index fcb43a4..c9696b7 100644
--- a/ncurses/tinfo/read_termcap.c
+++ b/ncurses/tinfo/read_termcap.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -57,7 +57,7 @@
#include <sys/types.h>
#include <tic.h>
-MODULE_ID("$Id: read_termcap.c,v 1.98 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: read_termcap.c,v 1.102 2021/09/04 10:29:15 tom Exp $")
#if !PURE_TERMINFO
@@ -187,7 +187,7 @@ _nc_cgetcap(char *buf, const char *cap, int type)
bp = buf;
for (;;) {
/*
- * Skip past the current capability field - it's either the
+ * Skip past the current capability field - it is either the
* name field if this is the first time through the loop, or
* the remainder of a field whose name failed to match cap.
*/
@@ -803,7 +803,7 @@ _nc_tgetent(char *bp, char **sourcename, int *lineno, const char *name)
/*
* TERMCAP can have one of two things in it. It can be the name of a file
* to use instead of /etc/termcap. In this case it better start with a
- * "/". Or it can be an entry to use so we don't have to read the file.
+ * "/". Or it can be an entry to use so we don't have to read the file.
* In this case it has to already have the newlines crunched out. If
* TERMCAP does not hold a file name then a path of names is searched
* instead. The path is found in the TERMPATH variable, or becomes
@@ -1064,14 +1064,16 @@ _nc_read_termcap_entry(const char *const tn, TERMTYPE2 *const tp)
}
}
-#define PRIVATE_CAP "%s/.termcap"
+#define PRIVATE_CAP "%.*s/.termcap"
if (use_terminfo_vars() && (h = getenv("HOME")) != NULL && *h != '\0'
&& (strlen(h) + sizeof(PRIVATE_CAP)) < PATH_MAX) {
/* user's .termcap, if any, should override it */
_nc_STRCPY(envhome, h, sizeof(envhome));
_nc_SPRINTF(pathbuf, _nc_SLIMIT(sizeof(pathbuf))
- PRIVATE_CAP, envhome);
+ PRIVATE_CAP,
+ (int) (sizeof(pathbuf) - sizeof(PRIVATE_CAP)),
+ envhome);
ADD_TC(pathbuf, filecount);
}
}
@@ -1113,7 +1115,7 @@ _nc_read_termcap_entry(const char *const tn, TERMTYPE2 *const tp)
/*
* We don't suppress warning messages here. The presumption is
- * that since it's just a single entry, they won't be a pain.
+ * that since it is just a single entry, they won't be a pain.
*/
_nc_read_entry_source((FILE *) 0, tc_buf, FALSE, FALSE, NULLHOOK);
free(tc_buf);
@@ -1124,7 +1126,7 @@ _nc_read_termcap_entry(const char *const tn, TERMTYPE2 *const tp)
TR(TRACE_DATABASE, ("Looking for %s in %s", tn, termpaths[i]));
if (_nc_access(termpaths[i], R_OK) == 0
- && (fp = fopen(termpaths[i], "r")) != (FILE *) 0) {
+ && (fp = safe_fopen(termpaths[i], "r")) != (FILE *) 0) {
_nc_set_source(termpaths[i]);
/*
@@ -1164,7 +1166,7 @@ _nc_read_termcap_entry(const char *const tn, TERMTYPE2 *const tp)
_nc_free_entry(_nc_head, &(ep->tterm));
/*
- * OK, now try to write the type to user's terminfo directory.
+ * OK, now try to write the type to user's terminfo directory.
* Next time he loads this, it will come through terminfo.
*
* Advantage: Second and subsequent fetches of this entry will
diff --git a/ncurses/tinfo/tinfo_driver.c b/ncurses/tinfo/tinfo_driver.c
index 7919a9b..fb6496f 100644
--- a/ncurses/tinfo/tinfo_driver.c
+++ b/ncurses/tinfo/tinfo_driver.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2008-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -52,7 +52,7 @@
# endif
#endif
-MODULE_ID("$Id: tinfo_driver.c,v 1.67 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tinfo_driver.c,v 1.72 2021/06/17 21:30:22 tom Exp $")
/*
* SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
@@ -123,6 +123,8 @@ get_baudrate(TERMINAL *termp)
if (GET_TTY(termp->Filedes, &termp->Nttyb) == OK) {
#ifdef TERMIOS
termp->Nttyb.c_oflag &= (unsigned) (~OFLAGS_TABS);
+#elif defined(EXP_WIN32_DRIVER)
+ /* noop */
#else
termp->Nttyb.sg_flags &= (unsigned) (~XTABS);
#endif
@@ -133,6 +135,9 @@ get_baudrate(TERMINAL *termp)
#else /* !USE_OLD_TTY */
#ifdef TERMIOS
my_ospeed = (NCURSES_OSPEED) cfgetospeed(&(termp->Nttyb));
+#elif defined(EXP_WIN32_DRIVER)
+ /* noop */
+ my_ospeed = 0;
#else
my_ospeed = (NCURSES_OSPEED) termp->Nttyb.sg_ospeed;
#endif
@@ -356,23 +361,23 @@ drv_setcolor(TERMINAL_CONTROL_BLOCK * TCB,
if (set_a_foreground) {
TPUTS_TRACE("set_a_foreground");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_a_foreground, color), 1, outc);
+ TIPARM_1(set_a_foreground, color), 1, outc);
} else {
TPUTS_TRACE("set_foreground");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_foreground,
- toggled_colors(color)), 1, outc);
+ TIPARM_1(set_foreground,
+ toggled_colors(color)), 1, outc);
}
} else {
if (set_a_background) {
TPUTS_TRACE("set_a_background");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_a_background, color), 1, outc);
+ TIPARM_1(set_a_background, color), 1, outc);
} else {
TPUTS_TRACE("set_background");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_background,
- toggled_colors(color)), 1, outc);
+ TIPARM_1(set_background,
+ toggled_colors(color)), 1, outc);
}
}
}
@@ -427,12 +432,19 @@ drv_size(TERMINAL_CONTROL_BLOCK * TCB, int *linep, int *colp)
useTioctl = _nc_prescreen.use_tioctl;
}
+#ifdef EXP_WIN32_DRIVER
+ /* If we are here, then Windows console is used in terminfo mode.
+ We need to figure out the size using the console API
+ */
+ _nc_console_size(linep, colp);
+ T(("screen size: winconsole lines = %d columns = %d", *linep, *colp));
+#else
/* figure out the size of the screen */
T(("screen size: terminfo lines = %d columns = %d", lines, columns));
*linep = (int) lines;
*colp = (int) columns;
-
+#endif
if (useEnv || useTioctl) {
int value;
@@ -602,6 +614,8 @@ drv_mode(TERMINAL_CONTROL_BLOCK * TCB, int progFlag, int defFlag)
if ((drv_sgmode(TCB, FALSE, &(_term->Nttyb)) == OK)) {
#ifdef TERMIOS
_term->Nttyb.c_oflag &= (unsigned) ~OFLAGS_TABS;
+#elif defined(EXP_WIN32_DRIVER)
+ /* noop */
#else
_term->Nttyb.sg_flags &= (unsigned) ~XTABS;
#endif
@@ -627,6 +641,8 @@ drv_mode(TERMINAL_CONTROL_BLOCK * TCB, int progFlag, int defFlag)
#ifdef TERMIOS
if (_term->Ottyb.c_oflag & OFLAGS_TABS)
tab = back_tab = NULL;
+#elif defined(EXP_WIN32_DRIVER)
+ /* noop */
#else
if (_term->Ottyb.sg_flags & XTABS)
tab = back_tab = NULL;
@@ -764,10 +780,10 @@ drv_initpair(TERMINAL_CONTROL_BLOCK * TCB, int pair, int f, int b)
tp[b].red, tp[b].green, tp[b].blue));
NCURSES_PUTP2("initialize_pair",
- TPARM_7(initialize_pair,
- pair,
- tp[f].red, tp[f].green, tp[f].blue,
- tp[b].red, tp[b].green, tp[b].blue));
+ TIPARM_7(initialize_pair,
+ pair,
+ tp[f].red, tp[f].green, tp[f].blue,
+ tp[b].red, tp[b].green, tp[b].blue));
}
}
@@ -800,7 +816,7 @@ drv_initcolor(TERMINAL_CONTROL_BLOCK * TCB,
AssertTCB();
if (initialize_color != NULL) {
NCURSES_PUTP2("initialize_color",
- TPARM_4(initialize_color, color, r, g, b));
+ TIPARM_4(initialize_color, color, r, g, b));
}
}
@@ -826,7 +842,7 @@ drv_do_color(TERMINAL_CONTROL_BLOCK * TCB,
if (set_color_pair) {
TPUTS_TRACE("set_color_pair");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(set_color_pair, pair), 1, outc);
+ TIPARM_1(set_color_pair, pair), 1, outc);
return;
} else if (sp != 0) {
_nc_pair_content(SP_PARM, pair, &fg, &bg);
@@ -933,11 +949,18 @@ drv_testmouse(TERMINAL_CONTROL_BLOCK * TCB,
} else
#endif
{
+#ifdef EXP_WIN32_DRIVER
+ rc = _nc_console_testmouse(sp,
+ _nc_console_handle(sp->_ifd),
+ delay
+ EVENTLIST_2nd(evl));
+#else
rc = TCBOf(sp)->drv->td_twait(TCBOf(sp),
TWAIT_MASK,
delay,
(int *) 0
EVENTLIST_2nd(evl));
+#endif
#if USE_SYSMOUSE
if ((sp->_mouse_type == M_SYSMOUSE)
&& (sp->_sysmouse_head < sp->_sysmouse_tail)
@@ -1235,16 +1258,25 @@ drv_twait(TERMINAL_CONTROL_BLOCK * TCB,
AssertTCB();
SetSP();
-
+#ifdef EXP_WIN32_DRIVER
+ return _nc_console_twait(sp,
+ _nc_console_handle(sp->_ifd),
+ mode,
+ milliseconds,
+ timeleft EVENTLIST_2nd(evl));
+#else
return _nc_timed_wait(sp, mode, milliseconds, timeleft EVENTLIST_2nd(evl));
+#endif
}
static int
drv_read(TERMINAL_CONTROL_BLOCK * TCB, int *buf)
{
SCREEN *sp;
- unsigned char c2 = 0;
int n;
+#ifndef EXP_WIN32_DRIVER
+ unsigned char c2 = 0;
+#endif
AssertTCB();
assert(buf);
@@ -1254,11 +1286,19 @@ drv_read(TERMINAL_CONTROL_BLOCK * TCB, int *buf)
if ((pthread_self) && (pthread_kill) && (pthread_equal))
_nc_globals.read_thread = pthread_self();
# endif
+#ifdef EXP_WIN32_DRIVER
+ n = _nc_console_read(sp,
+ _nc_console_handle(sp->_ifd),
+ buf);
+#else
n = (int) read(sp->_ifd, &c2, (size_t) 1);
+#endif
#if USE_PTHREADS_EINTR
_nc_globals.read_thread = 0;
#endif
+#ifndef EXP_WIN32_DRIVER
*buf = (int) c2;
+#endif
return n;
}
@@ -1275,6 +1315,8 @@ drv_nap(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int ms)
request = remaining;
}
}
+#elif defined(EXP_WIN32_DRIVER)
+ Sleep((DWORD) ms);
#else
_nc_timed_wait(0, 0, ms, (int *) 0 EVENTLIST_2nd(0));
#endif
@@ -1452,3 +1494,66 @@ NCURSES_EXPORT_VAR (TERM_DRIVER) _nc_TINFO_DRIVER = {
drv_kyExist, /* kyExist */
drv_cursorSet /* cursorSet */
};
+
+#ifdef EXP_WIN32_DRIVER
+/*
+ * The terminfo driver is mandatory and must always be present.
+ * So this is the natural place for the driver initialisation
+ * logic.
+ */
+
+typedef struct DriverEntry {
+ const char *name;
+ TERM_DRIVER *driver;
+} DRIVER_ENTRY;
+
+static DRIVER_ENTRY DriverTable[] =
+{
+#ifdef _NC_WINDOWS
+ {"win32console", &_nc_WIN_DRIVER},
+#endif
+ {"tinfo", &_nc_TINFO_DRIVER} /* must be last */
+};
+
+NCURSES_EXPORT(int)
+_nc_get_driver(TERMINAL_CONTROL_BLOCK * TCB, const char *name, int *errret)
+{
+ int code = ERR;
+ size_t i;
+ TERM_DRIVER *res = (TERM_DRIVER *) 0;
+ TERM_DRIVER *use = 0;
+
+ T((T_CALLED("_nc_get_driver(%p, %s, %p)"),
+ (void *) TCB, NonNull(name), (void *) errret));
+
+ assert(TCB != 0);
+
+ for (i = 0; i < SIZEOF(DriverTable); i++) {
+ res = DriverTable[i].driver;
+#ifdef _NC_WINDOWS
+ if ((i + 1) == SIZEOF(DriverTable)) {
+ /* For Windows >= 10.0.17763 Windows Console interface implements
+ virtual Terminal functionality.
+ If on Windows td_CanHandle returned FALSE although the terminal
+ name is empty, we default to ms-terminal as tinfo TERM type.
+ */
+ if (name == 0 || *name == 0 || (strcmp(name, "unknown") == 0)) {
+ name = MS_TERMINAL;
+ T(("Set TERM=%s", name));
+ }
+ }
+#endif
+ if (strcmp(DriverTable[i].name, res->td_name(TCB)) == 0) {
+ if (res->td_CanHandle(TCB, name, errret)) {
+ use = res;
+ break;
+ }
+ }
+ }
+ if (use != 0) {
+ TCB->drv = use;
+ code = OK;
+ }
+ returnCode(code);
+}
+#endif /* EXP_WIN32_DRIVER */
diff --git a/ncurses/tinfo/trim_sgr0.c b/ncurses/tinfo/trim_sgr0.c
index 4d10529..22bc82f 100644
--- a/ncurses/tinfo/trim_sgr0.c
+++ b/ncurses/tinfo/trim_sgr0.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2005-2012,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -37,7 +37,7 @@
#include <tic.h>
-MODULE_ID("$Id: trim_sgr0.c,v 1.18 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: trim_sgr0.c,v 1.21 2021/06/17 21:20:30 tom Exp $")
#undef CUR
#define CUR tp->
@@ -52,7 +52,7 @@ set_attribute_9(TERMTYPE2 *tp, int flag)
const char *value;
char *result;
- value = tparm(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, flag);
+ value = TIPARM_9(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, flag);
if (PRESENT(value))
result = strdup(value);
else
@@ -222,7 +222,7 @@ compare_part(const char *part, const char *full)
}
/*
- * While 'sgr0' is the "same" as termcap 'me', there is a compatibility issue.
+ * While 'sgr0' is the "same" as termcap 'me', there is a compatibility issue.
* The sgr/sgr0 capabilities include setting/clearing alternate character set
* mode. A termcap application cannot use sgr, so sgr0 strings that reset
* alternate character set mode will be misinterpreted. Here, we remove those
diff --git a/ncurses/tinfo/write_entry.c b/ncurses/tinfo/write_entry.c
index 1385176..cab4757 100644
--- a/ncurses/tinfo/write_entry.c
+++ b/ncurses/tinfo/write_entry.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -51,7 +51,7 @@
#define TRACE_NUM(n) /* nothing */
#endif
-MODULE_ID("$Id: write_entry.c,v 1.115 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: write_entry.c,v 1.118 2021/08/15 20:07:11 tom Exp $")
static int total_written;
static int total_parts;
@@ -71,7 +71,7 @@ write_file(char *filename, TERMTYPE2 *tp)
_nc_warning("entry is larger than %u bytes", limit);
} else {
FILE *fp = ((_nc_access(filename, W_OK) == 0)
- ? fopen(filename, BIN_W)
+ ? safe_fopen(filename, BIN_W)
: 0);
size_t actual;
@@ -190,9 +190,9 @@ make_db_root(const char *path)
#else
struct stat statbuf;
- if ((rc = stat(path, &statbuf)) < 0) {
+ if ((rc = stat(path, &statbuf)) == -1) {
rc = mkdir(path
-#if !defined(_WIN32)
+#ifndef _NC_WINDOWS
,0777
#endif
);
@@ -442,7 +442,7 @@ _nc_write_entry(TERMTYPE2 *const tp)
write_file(filename, tp);
if (start_time == 0) {
- if (stat(filename, &statbuf) < 0
+ if (stat(filename, &statbuf) == -1
|| (start_time = statbuf.st_mtime) == 0) {
_nc_syserr_abort("error obtaining time from %s/%s",
_nc_tic_dir(0), filename);
diff --git a/ncurses/trace/lib_trace.c b/ncurses/trace/lib_trace.c
index 2c10b51..9acbd47 100644
--- a/ncurses/trace/lib_trace.c
+++ b/ncurses/trace/lib_trace.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -37,7 +37,7 @@
/*
* lib_trace.c - Tracing/Debugging routines
*
- * The _tracef() function is originally from pcurses (by Pavel Curtis) in 1982.
+ * The _tracef() function is originally from pcurses (by Pavel Curtis) in 1982.
* pcurses allowed one to enable/disable tracing using traceon() and traceoff()
* functions. ncurses provides a trace() function which allows one to
* selectively enable or disable several tracing features.
@@ -48,7 +48,7 @@
#include <ctype.h>
-MODULE_ID("$Id: lib_trace.c,v 1.95 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_trace.c,v 1.99 2021/06/26 20:44:59 tom Exp $")
NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0; /* always define this */
@@ -118,8 +118,9 @@ curses_trace(unsigned tracelevel)
_nc_STRCAT(MyPath, ".log", sizeof(MyPath));
}
}
+#define SAFE_MODE (O_CREAT | O_EXCL | O_RDWR)
if (_nc_access(MyPath, W_OK) < 0
- || (MyFD = open(MyPath, O_CREAT | O_EXCL | O_RDWR, 0600)) < 0
+ || (MyFD = safe_open3(MyPath, SAFE_MODE, 0600)) < 0
|| (MyFP = fdopen(MyFD, BIN_W)) == 0) {
; /* EMPTY */
}
@@ -127,7 +128,7 @@ curses_trace(unsigned tracelevel)
_nc_tracing = tracelevel;
/* Try to set line-buffered mode, or (failing that) unbuffered,
* so that the trace-output gets flushed automatically at the
- * end of each line. This is useful in case the program dies.
+ * end of each line. This is useful in case the program dies.
*/
if (MyFP != 0) {
#if HAVE_SETVBUF /* ANSI */
@@ -213,7 +214,7 @@ _nc_va_tracef(const char *fmt, va_list ap)
# if USE_WEAK_SYMBOLS
if ((pthread_self))
# endif
-#ifdef _WIN32
+#ifdef _NC_WINDOWS
fprintf(fp, "%#lx:", (long) (intptr_t) pthread_self().p);
#else
fprintf(fp, "%#lx:", (long) (intptr_t) pthread_self());
@@ -349,7 +350,7 @@ _nc_fmt_funcptr(char *target, const char *source, size_t size)
if (ch != 0 || (n + 1) >= size)
leading = FALSE;
if (!leading) {
- _nc_SPRINTF(dst, _nc_SLIMIT(TR_FUNC_LEN - (dst - target))
+ _nc_SPRINTF(dst, _nc_SLIMIT(TR_FUNC_LEN - (size_t) (dst - target))
"%02x", ch & 0xff);
dst += 2;
}
diff --git a/ncurses/trace/lib_tracebits.c b/ncurses/trace/lib_tracebits.c
index 14e5d90..4bc50f3 100644
--- a/ncurses/trace/lib_tracebits.c
+++ b/ncurses/trace/lib_tracebits.c
@@ -35,7 +35,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_tracebits.c,v 1.28 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_tracebits.c,v 1.31 2020/11/14 23:38:11 tom Exp $")
#if HAVE_SYS_TERMIO_H
#include <sys/termio.h> /* needed for ISC */
@@ -72,9 +72,15 @@ MODULE_ID("$Id: lib_tracebits.c,v 1.28 2020/02/02 23:34:34 tom Exp $")
#ifdef TRACE
+#if defined(EXP_WIN32_DRIVER)
+#define BITNAMELEN 36
+#else
+#define BITNAMELEN 8
+#endif
+
typedef struct {
unsigned int val;
- const char name[8];
+ const char name[BITNAMELEN];
} BITNAMES;
#define TRACE_BUF_SIZE(num) (_nc_globals.tracebuf_ptr[num].size)
@@ -98,7 +104,7 @@ lookup_bits(char *buf, const BITNAMES * table, const char *label, unsigned int v
}
NCURSES_EXPORT(char *)
-_nc_trace_ttymode(TTY * tty)
+_nc_trace_ttymode(const TTY * tty)
/* describe the state of the terminal control bits exactly */
{
char *buf;
@@ -212,6 +218,36 @@ _nc_trace_ttymode(TTY * tty)
if (tty->c_lflag & ALLLOCAL)
lookup_bits(buf, lflags, "lflags", tty->c_lflag);
}
+#elif defined(EXP_WIN32_DRIVER)
+#define DATA(name) { name, { #name } }
+ static const BITNAMES dwFlagsOut[] =
+ {
+ DATA(ENABLE_PROCESSED_OUTPUT),
+ DATA(ENABLE_WRAP_AT_EOL_OUTPUT),
+ DATA(ENABLE_VIRTUAL_TERMINAL_PROCESSING),
+ DATA(DISABLE_NEWLINE_AUTO_RETURN),
+ DATA(ENABLE_LVB_GRID_WORLDWIDE)
+ };
+ static const BITNAMES dwFlagsIn[] =
+ {
+ DATA(ENABLE_PROCESSED_INPUT),
+ DATA(ENABLE_LINE_INPUT),
+ DATA(ENABLE_ECHO_INPUT),
+ DATA(ENABLE_MOUSE_INPUT),
+ DATA(ENABLE_INSERT_MODE),
+ DATA(ENABLE_QUICK_EDIT_MODE),
+ DATA(ENABLE_EXTENDED_FLAGS),
+ DATA(ENABLE_AUTO_POSITION),
+ DATA(ENABLE_VIRTUAL_TERMINAL_INPUT)
+ };
+
+ buf = _nc_trace_buf(0,
+ 8 + sizeof(dwFlagsOut) +
+ 8 + sizeof(dwFlagsIn));
+ if (buf != 0) {
+ lookup_bits(buf, dwFlagsIn, "dwIn", tty->dwFlagIn);
+ lookup_bits(buf, dwFlagsOut, "dwOut", tty->dwFlagOut);
+ }
#else
/* reference: ttcompat(4M) on SunOS 4.1 */
#ifndef EVENP
diff --git a/ncurses/trace/visbuf.c b/ncurses/trace/visbuf.c
index 5f95a6b..aca8aff 100644
--- a/ncurses/trace/visbuf.c
+++ b/ncurses/trace/visbuf.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2001-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,7 +43,7 @@
#include <tic.h>
#include <ctype.h>
-MODULE_ID("$Id: visbuf.c,v 1.52 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: visbuf.c,v 1.53 2021/02/27 20:07:57 tom Exp $")
#define NUM_VISBUFS 4
@@ -283,7 +283,7 @@ _nc_viswibuf(const wint_t *buf)
/* use these functions for displaying parts of a line within a window */
NCURSES_EXPORT(const char *)
-_nc_viscbuf2(int bufnum, const NCURSES_CH_T * buf, int len)
+_nc_viscbuf2(int bufnum, const NCURSES_CH_T *buf, int len)
{
char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ);
@@ -371,7 +371,7 @@ _nc_viscbuf2(int bufnum, const NCURSES_CH_T * buf, int len)
}
NCURSES_EXPORT(const char *)
-_nc_viscbuf(const NCURSES_CH_T * buf, int len)
+_nc_viscbuf(const NCURSES_CH_T *buf, int len)
{
return _nc_viscbuf2(0, buf, len);
}
diff --git a/ncurses/tty/MKexpanded.sh b/ncurses/tty/MKexpanded.sh
index 65c6b93..77f06f2 100755
--- a/ncurses/tty/MKexpanded.sh
+++ b/ncurses/tty/MKexpanded.sh
@@ -1,6 +1,6 @@
#! /bin/sh
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -30,7 +30,7 @@
#
# Author: Thomas E. Dickey, 1997-on
#
-# $Id: MKexpanded.sh,v 1.22 2020/02/02 23:34:34 tom Exp $
+# $Id: MKexpanded.sh,v 1.23 2021/06/17 21:26:02 tom Exp $
#
# Script to generate 'expanded.c', a dummy source that contains functions
# corresponding to complex macros used in this library. By making functions,
@@ -81,7 +81,7 @@ _nc_toggle_attr_on (attr_t *S, attr_t at)
}
NCURSES_EXPORT(void)
-_nc_toggle_attr_off (attr_t *S, attr_t at)
+_nc_toggle_attr_off (attr_t *S, attr_t at)
{
toggle_attr_off(*S,at);
}
diff --git a/ncurses/tty/hashmap.c b/ncurses/tty/hashmap.c
index 9d1e482..3f124c9 100644
--- a/ncurses/tty/hashmap.c
+++ b/ncurses/tty/hashmap.c
@@ -74,7 +74,7 @@ AUTHOR
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: hashmap.c,v 1.68 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: hashmap.c,v 1.69 2020/05/31 17:50:48 tom Exp $")
#ifdef HASHDEBUG
@@ -88,7 +88,7 @@ MODULE_ID("$Id: hashmap.c,v 1.68 2020/02/02 23:34:34 tom Exp $")
# undef screen_lines
# define screen_lines(sp) MAXLINES
# define TEXTWIDTH(sp) 1
-int oldnums[MAXLINES], reallines[MAXLINES];
+static int oldnums[MAXLINES], reallines[MAXLINES];
static NCURSES_CH_T oldtext[MAXLINES][TEXTWIDTH(sp)];
static NCURSES_CH_T newtext[MAXLINES][TEXTWIDTH(sp)];
# define OLDNUM(sp,n) oldnums[n]
diff --git a/ncurses/tty/lib_mvcur.c b/ncurses/tty/lib_mvcur.c
index 5382b3b..7959227 100644
--- a/ncurses/tty/lib_mvcur.c
+++ b/ncurses/tty/lib_mvcur.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -83,8 +83,8 @@
/*
* The average overhead of a full optimization computation in character
- * transmission times. If it's too high, the algorithm will be a bit
- * over-biased toward using cup rather than local motions; if it's too
+ * transmission times. If it is too high, the algorithm will be a bit
+ * over-biased toward using cup rather than local motions; if it is too
* low, the algorithm may spend more time than is strictly optimal
* looking for non-cup motions. Profile the optimizer using the `t'
* command of the exerciser (see below), and round to the nearest integer.
@@ -98,7 +98,7 @@
/*
* LONG_DIST is the distance we consider to be just as costly to move over as a
- * cup sequence is to emit. In other words, it's the length of a cup sequence
+ * cup sequence is to emit. In other words, it is the length of a cup sequence
* adjusted for average computation overhead. The magic number is the length
* of "\033[yy;xxH", the typical cup sequence these days.
*/
@@ -148,7 +148,7 @@
* int _rep_cost; // cost of (repeat_char)
*
* The USE_HARD_TABS switch controls whether it is reliable to use tab/backtabs
- * for local motions. On many systems, it's not, due to uncertainties about
+ * for local motions. On many systems, it is not, due to uncertainties about
* tab delays and whether or not tabs will be expanded in raw mode. If you
* have parm_right_cursor, tab motions don't win you a lot anyhow.
*/
@@ -160,7 +160,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_mvcur.c,v 1.151 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_mvcur.c,v 1.156 2021/09/04 10:29:15 tom Exp $")
#define WANT_CHAR(sp, y, x) NewScreen(sp)->_line[y].text[x] /* desired state */
@@ -279,8 +279,8 @@ reset_scroll_region(NCURSES_SP_DCL0)
{
if (change_scroll_region) {
NCURSES_PUTP2("change_scroll_region",
- TPARM_2(change_scroll_region,
- 0, screen_lines(SP_PARM) - 1));
+ TIPARM_2(change_scroll_region,
+ 0, screen_lines(SP_PARM) - 1));
}
}
@@ -399,13 +399,13 @@ NCURSES_SP_NAME(_nc_mvcur_init) (NCURSES_SP_DCL0)
* All these averages depend on the assumption that all parameter values
* are equally probable.
*/
- SP_PARM->_cup_cost = CostOf(TPARM_2(SP_PARM->_address_cursor, 23, 23), 1);
- SP_PARM->_cub_cost = CostOf(TPARM_1(parm_left_cursor, 23), 1);
- SP_PARM->_cuf_cost = CostOf(TPARM_1(parm_right_cursor, 23), 1);
- SP_PARM->_cud_cost = CostOf(TPARM_1(parm_down_cursor, 23), 1);
- SP_PARM->_cuu_cost = CostOf(TPARM_1(parm_up_cursor, 23), 1);
- SP_PARM->_hpa_cost = CostOf(TPARM_1(column_address, 23), 1);
- SP_PARM->_vpa_cost = CostOf(TPARM_1(row_address, 23), 1);
+ SP_PARM->_cup_cost = CostOf(TIPARM_2(SP_PARM->_address_cursor, 23, 23), 1);
+ SP_PARM->_cub_cost = CostOf(TIPARM_1(parm_left_cursor, 23), 1);
+ SP_PARM->_cuf_cost = CostOf(TIPARM_1(parm_right_cursor, 23), 1);
+ SP_PARM->_cud_cost = CostOf(TIPARM_1(parm_down_cursor, 23), 1);
+ SP_PARM->_cuu_cost = CostOf(TIPARM_1(parm_up_cursor, 23), 1);
+ SP_PARM->_hpa_cost = CostOf(TIPARM_1(column_address, 23), 1);
+ SP_PARM->_vpa_cost = CostOf(TIPARM_1(row_address, 23), 1);
/* non-parameterized screen-update strings */
SP_PARM->_ed_cost = NormalizedCost(clr_eos, 1);
@@ -422,17 +422,16 @@ NCURSES_SP_NAME(_nc_mvcur_init) (NCURSES_SP_DCL0)
SP_PARM->_el_cost = 0;
/* parameterized screen-update strings */
- SP_PARM->_dch_cost = NormalizedCost(TPARM_1(parm_dch, 23), 1);
- SP_PARM->_ich_cost = NormalizedCost(TPARM_1(parm_ich, 23), 1);
- SP_PARM->_ech_cost = NormalizedCost(TPARM_1(erase_chars, 23), 1);
- SP_PARM->_rep_cost = NormalizedCost(TPARM_2(repeat_char, ' ', 23), 1);
-
- SP_PARM->_cup_ch_cost = NormalizedCost(
- TPARM_2(SP_PARM->_address_cursor,
- 23, 23),
- 1);
- SP_PARM->_hpa_ch_cost = NormalizedCost(TPARM_1(column_address, 23), 1);
- SP_PARM->_cuf_ch_cost = NormalizedCost(TPARM_1(parm_right_cursor, 23), 1);
+ SP_PARM->_dch_cost = NormalizedCost(TIPARM_1(parm_dch, 23), 1);
+ SP_PARM->_ich_cost = NormalizedCost(TIPARM_1(parm_ich, 23), 1);
+ SP_PARM->_ech_cost = NormalizedCost(TIPARM_1(erase_chars, 23), 1);
+ SP_PARM->_rep_cost = NormalizedCost(TIPARM_2(repeat_char, ' ', 23), 1);
+
+ SP_PARM->_cup_ch_cost = NormalizedCost(TIPARM_2(SP_PARM->_address_cursor,
+ 23, 23),
+ 1);
+ SP_PARM->_hpa_ch_cost = NormalizedCost(TIPARM_1(column_address, 23), 1);
+ SP_PARM->_cuf_ch_cost = NormalizedCost(TIPARM_1(parm_right_cursor, 23), 1);
SP_PARM->_inline_cost = min(SP_PARM->_cup_ch_cost,
min(SP_PARM->_hpa_ch_cost,
SP_PARM->_cuf_ch_cost));
@@ -563,7 +562,7 @@ relative_move(NCURSES_SP_DCLx
vcost = INFINITY;
if (row_address != 0
- && _nc_safe_strcat(target, TPARM_1(row_address, to_y))) {
+ && _nc_safe_strcat(target, TIPARM_1(row_address, to_y))) {
vcost = SP_PARM->_vpa_cost;
}
@@ -573,12 +572,12 @@ relative_move(NCURSES_SP_DCLx
if (parm_down_cursor
&& SP_PARM->_cud_cost < vcost
&& _nc_safe_strcat(_nc_str_copy(target, &save),
- TPARM_1(parm_down_cursor, n))) {
+ TIPARM_1(parm_down_cursor, n))) {
vcost = SP_PARM->_cud_cost;
}
if (cursor_down
- && (*cursor_down != '\n' || SP_PARM->_nl)
+ && (*cursor_down != '\n')
&& (n * SP_PARM->_cud1_cost < vcost)) {
vcost = repeated_append(_nc_str_copy(target, &save), 0,
SP_PARM->_cud1_cost, n, cursor_down);
@@ -589,7 +588,7 @@ relative_move(NCURSES_SP_DCLx
if (parm_up_cursor
&& SP_PARM->_cuu_cost < vcost
&& _nc_safe_strcat(_nc_str_copy(target, &save),
- TPARM_1(parm_up_cursor, n))) {
+ TIPARM_1(parm_up_cursor, n))) {
vcost = SP_PARM->_cuu_cost;
}
@@ -613,7 +612,7 @@ relative_move(NCURSES_SP_DCLx
if (column_address
&& _nc_safe_strcat(_nc_str_copy(target, &save),
- TPARM_1(column_address, to_x))) {
+ TIPARM_1(column_address, to_x))) {
hcost = SP_PARM->_hpa_cost;
}
@@ -623,7 +622,7 @@ relative_move(NCURSES_SP_DCLx
if (parm_right_cursor
&& SP_PARM->_cuf_cost < hcost
&& _nc_safe_strcat(_nc_str_copy(target, &save),
- TPARM_1(parm_right_cursor, n))) {
+ TIPARM_1(parm_right_cursor, n))) {
hcost = SP_PARM->_cuf_cost;
}
@@ -716,7 +715,7 @@ relative_move(NCURSES_SP_DCLx
if (parm_left_cursor
&& SP_PARM->_cub_cost < hcost
&& _nc_safe_strcat(_nc_str_copy(target, &save),
- TPARM_1(parm_left_cursor, n))) {
+ TIPARM_1(parm_left_cursor, n))) {
hcost = SP_PARM->_cub_cost;
}
@@ -761,7 +760,7 @@ relative_move(NCURSES_SP_DCLx
#endif /* !NO_OPTIMIZE */
/*
- * With the machinery set up above, it's conceivable that
+ * With the machinery set up above, it is conceivable that
* onscreen_mvcur could be modified into a recursive function that does
* an alpha-beta search of motion space, as though it were a chess
* move tree, with the weight function being boolean and the search
@@ -793,7 +792,8 @@ onscreen_mvcur(NCURSES_SP_DCLx
#define InitResult _nc_str_init(&result, buffer, sizeof(buffer))
/* tactic #0: use direct cursor addressing */
- if (_nc_safe_strcpy(InitResult, TPARM_2(SP_PARM->_address_cursor, ynew, xnew))) {
+ if (_nc_safe_strcpy(InitResult, TIPARM_2(SP_PARM->_address_cursor,
+ ynew, xnew))) {
tactic = 0;
usecost = SP_PARM->_cup_cost;
@@ -962,7 +962,7 @@ _nc_real_mvcur(NCURSES_SP_DCLx
NCURSES_CH_T oldattr;
int code;
- TR(TRACE_CALLS | TRACE_MOVE, (T_CALLED("_nc_tinfo_mvcur(%p,%d,%d,%d,%d)"),
+ TR(TRACE_CALLS | TRACE_MOVE, (T_CALLED("_nc_real_mvcur(%p,%d,%d,%d,%d)"),
(void *) SP_PARM, yold, xold, ynew, xnew));
if (SP_PARM == 0) {
@@ -997,37 +997,28 @@ _nc_real_mvcur(NCURSES_SP_DCLx
if (xold >= screen_columns(SP_PARM)) {
- if (SP_PARM->_nl) {
- int l = (xold + 1) / screen_columns(SP_PARM);
+ int l = (xold + 1) / screen_columns(SP_PARM);
- yold += l;
- if (yold >= screen_lines(SP_PARM))
- l -= (yold - screen_lines(SP_PARM) - 1);
+ yold += l;
+ if (yold >= screen_lines(SP_PARM))
+ l -= (yold - screen_lines(SP_PARM) - 1);
- if (l > 0) {
- if (carriage_return) {
- NCURSES_PUTP2("carriage_return", carriage_return);
- } else {
- myOutCh(NCURSES_SP_ARGx '\r');
- }
- xold = 0;
+ if (l > 0) {
+ if (carriage_return) {
+ NCURSES_PUTP2("carriage_return", carriage_return);
+ } else {
+ myOutCh(NCURSES_SP_ARGx '\r');
+ }
+ xold = 0;
- while (l > 0) {
- if (newline) {
- NCURSES_PUTP2("newline", newline);
- } else {
- myOutCh(NCURSES_SP_ARGx '\n');
- }
- l--;
+ while (l > 0) {
+ if (newline) {
+ NCURSES_PUTP2("newline", newline);
+ } else {
+ myOutCh(NCURSES_SP_ARGx '\n');
}
+ l--;
}
- } else {
- /*
- * If caller set nonl(), we cannot really use newlines to
- * position to the next row.
- */
- xold = -1;
- yold = -1;
}
}
diff --git a/ncurses/tty/lib_tstp.c b/ncurses/tty/lib_tstp.c
index 43a58e6..a20e72a 100644
--- a/ncurses/tty/lib_tstp.c
+++ b/ncurses/tty/lib_tstp.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,7 +43,7 @@
#include <SigAction.h>
-MODULE_ID("$Id: lib_tstp.c,v 1.50 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_tstp.c,v 1.51 2021/09/04 10:54:35 tom Exp $")
#if defined(SIGTSTP) && (HAVE_SIGACTION || HAVE_SIGVEC)
#define USE_SIGTSTP 1
@@ -130,7 +130,7 @@ signal_name(int sig)
* (this may include XENIX).
*
* This implementation will probably be changed to use signal(3) in
- * the future. If nothing else, it's simpler...
+ * the future. If nothing else, it is simpler...
*/
#if USE_SIGTSTP
diff --git a/ncurses/tty/lib_twait.c b/ncurses/tty/lib_twait.c
index 3ab168d..a7604b3 100644
--- a/ncurses/tty/lib_twait.c
+++ b/ncurses/tty/lib_twait.c
@@ -71,12 +71,12 @@
# include <sys/select.h>
# endif
#endif
-#ifdef _WIN32
+#if HAVE_SYS_TIME_H
# include <sys/time.h>
#endif
#undef CUR
-MODULE_ID("$Id: lib_twait.c,v 1.74 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_twait.c,v 1.75 2020/02/29 15:46:00 anonymous.maarten Exp $")
static long
_nc_gettime(TimeType * t0, int first)
diff --git a/ncurses/tty/lib_vidattr.c b/ncurses/tty/lib_vidattr.c
index c752919..15e7397 100644
--- a/ncurses/tty/lib_vidattr.c
+++ b/ncurses/tty/lib_vidattr.c
@@ -70,7 +70,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_vidattr.c,v 1.76 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_vidattr.c,v 1.78 2020/05/27 23:56:32 tom Exp $")
#define doPut(mode) \
TPUTS_TRACE(#mode); \
@@ -258,16 +258,16 @@ NCURSES_SP_NAME(vidputs) (NCURSES_SP_DCLx
if (turn_on || turn_off) {
TPUTS_TRACE("set_attributes");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- tparm(set_attributes,
- (newmode & A_STANDOUT) != 0,
- (newmode & A_UNDERLINE) != 0,
- (newmode & A_REVERSE) != 0,
- (newmode & A_BLINK) != 0,
- (newmode & A_DIM) != 0,
- (newmode & A_BOLD) != 0,
- (newmode & A_INVIS) != 0,
- (newmode & A_PROTECT) != 0,
- (newmode & A_ALTCHARSET) != 0),
+ TIPARM_9(set_attributes,
+ (newmode & A_STANDOUT) != 0,
+ (newmode & A_UNDERLINE) != 0,
+ (newmode & A_REVERSE) != 0,
+ (newmode & A_BLINK) != 0,
+ (newmode & A_DIM) != 0,
+ (newmode & A_BOLD) != 0,
+ (newmode & A_INVIS) != 0,
+ (newmode & A_PROTECT) != 0,
+ (newmode & A_ALTCHARSET) != 0),
1, outc);
PreviousAttr &= ALL_BUT_COLOR;
}
diff --git a/ncurses/tty/tty_update.c b/ncurses/tty/tty_update.c
index 8626c79..bdd673b 100644
--- a/ncurses/tty/tty_update.c
+++ b/ncurses/tty/tty_update.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -85,7 +85,7 @@
#include <ctype.h>
-MODULE_ID("$Id: tty_update.c,v 1.305 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tty_update.c,v 1.312 2021/09/04 10:29:59 tom Exp $")
/*
* This define controls the line-breakout optimization. Every once in a
@@ -117,14 +117,14 @@ static int ClrBottom(SCREEN *, int total);
static void ClearScreen(SCREEN *, NCURSES_CH_T blank);
static void ClrUpdate(SCREEN *);
static void DelChar(SCREEN *, int count);
-static void InsStr(SCREEN *, NCURSES_CH_T * line, int count);
+static void InsStr(SCREEN *, NCURSES_CH_T *line, int count);
static void TransformLine(SCREEN *, int const lineno);
#else
static int ClrBottom(int total);
static void ClearScreen(NCURSES_CH_T blank);
static void ClrUpdate(void);
static void DelChar(int count);
-static void InsStr(NCURSES_CH_T * line, int count);
+static void InsStr(NCURSES_CH_T *line, int count);
static void TransformLine(int const lineno);
#endif
@@ -136,7 +136,7 @@ static void TransformLine(int const lineno);
****************************************************************************/
static void
-position_check(NCURSES_SP_DCLx int expected_y, int expected_x, char *legend)
+position_check(NCURSES_SP_DCLx int expected_y, int expected_x, const char *legend)
/* check to see if the real cursor position matches the virtual */
{
char buf[20];
@@ -170,9 +170,9 @@ position_check(NCURSES_SP_DCLx int expected_y, int expected_x, char *legend)
if (y - 1 != expected_y || x - 1 != expected_x) {
NCURSES_SP_NAME(beep) (NCURSES_SP_ARG);
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- tparm("\033[%d;%dH",
- expected_y + 1,
- expected_x + 1),
+ TIPARM_2("\033[%d;%dH",
+ expected_y + 1,
+ expected_x + 1),
1, NCURSES_SP_NAME(_nc_outch));
_tracef("position seen (%d, %d) doesn't match expected one (%d, %d) in %s",
y - 1, x - 1, expected_y, expected_x, legend);
@@ -429,11 +429,12 @@ PutCharLR(NCURSES_SP_DCLx const ARG_CH_T ch)
/* we can put the char directly */
PutAttrChar(NCURSES_SP_ARGx ch);
} else if (enter_am_mode && exit_am_mode) {
+ int oldcol = SP_PARM->_curscol;
/* we can suppress automargin */
NCURSES_PUTP2("exit_am_mode", exit_am_mode);
PutAttrChar(NCURSES_SP_ARGx ch);
- SP_PARM->_curscol--;
+ SP_PARM->_curscol = oldcol;
position_check(NCURSES_SP_ARGx
SP_PARM->_cursrow,
SP_PARM->_curscol,
@@ -472,7 +473,7 @@ wrap_cursor(NCURSES_SP_DCL0)
* An aggressive way to handle this would be to emit CR/LF after the
* char and then assume the wrap is done, you're on the first position
* of the next line, and the terminal out of its weird state. Here
- * it's safe to just tell the code that the cursor is in hyperspace and
+ * it is safe to just tell the code that the cursor is in hyperspace and
* let the next mvcur() call straighten things out.
*/
SP_PARM->_curscol = -1;
@@ -567,7 +568,7 @@ can_clear_with(NCURSES_SP_DCLx ARG_CH_T ch)
* This code is optimized using ech and rep.
*/
static int
-EmitRange(NCURSES_SP_DCLx const NCURSES_CH_T * ntext, int num)
+EmitRange(NCURSES_SP_DCLx const NCURSES_CH_T *ntext, int num)
{
int i;
@@ -605,7 +606,7 @@ EmitRange(NCURSES_SP_DCLx const NCURSES_CH_T * ntext, int num)
&& runcount > SP_PARM->_ech_cost + SP_PARM->_cup_ch_cost
&& can_clear_with(NCURSES_SP_ARGx CHREF(ntext0))) {
UpdateAttrs(SP_PARM, ntext0);
- NCURSES_PUTP2("erase_chars", TPARM_1(erase_chars, runcount));
+ NCURSES_PUTP2("erase_chars", TIPARM_1(erase_chars, runcount));
/*
* If this is the last part of the given interval,
@@ -620,6 +621,9 @@ EmitRange(NCURSES_SP_DCLx const NCURSES_CH_T * ntext, int num)
return 1; /* cursor stays in the middle */
}
} else if (repeat_char != 0 &&
+#if BSD_TPUTS
+ !isdigit(UChar(CharOf(ntext0))) &&
+#endif
#if USE_WIDEC_SUPPORT
(!SP_PARM->_screen_unicode &&
(CharOf(ntext0) < ((AttrOf(ntext0) & A_ALTCHARSET)
@@ -645,9 +649,9 @@ EmitRange(NCURSES_SP_DCLx const NCURSES_CH_T * ntext, int num)
AttrOf(ntext0) | A_ALTCHARSET);
}
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_2(repeat_char,
- CharOf(temp),
- rep_count),
+ TIPARM_2(repeat_char,
+ CharOf(temp),
+ rep_count),
1,
NCURSES_SP_NAME(_nc_outch));
SP_PARM->_curscol += rep_count;
@@ -679,8 +683,8 @@ EmitRange(NCURSES_SP_DCLx const NCURSES_CH_T * ntext, int num)
*/
static int
PutRange(NCURSES_SP_DCLx
- const NCURSES_CH_T * otext,
- const NCURSES_CH_T * ntext,
+ const NCURSES_CH_T *otext,
+ const NCURSES_CH_T *ntext,
int row,
int first, int last)
{
@@ -819,7 +823,7 @@ TINFO_DOUPDATE(NCURSES_SP_DCL0)
/*
* This is the support for magic-cookie terminals. The theory: we scan
* the virtual screen looking for attribute turnons. Where we find one,
- * check to make sure it's realizable by seeing if the required number of
+ * check to make sure it is realizable by seeing if the required number of
* un-attributed blanks are present before and after the attributed range;
* try to shift the range boundaries over blanks (not changing the screen
* display) so this becomes true. If it is, shift the beginning attribute
@@ -881,7 +885,7 @@ TINFO_DOUPDATE(NCURSES_SP_DCL0)
bool end_onscreen = FALSE;
int m, n = j;
- /* find end of span, if it's onscreen */
+ /* find end of span, if it is onscreen */
for (m = i; m < screen_lines(SP_PARM); m++) {
for (; n < screen_columns(SP_PARM); n++) {
attr_t testattr =
@@ -1321,8 +1325,8 @@ TransformLine(NCURSES_SP_DCLx int const lineno)
newPair = GetPair(newLine[n]);
if (oldPair != newPair
&& unColor(oldLine[n]) == unColor(newLine[n])) {
- if (oldPair < SP_PARM->_pair_limit
- && newPair < SP_PARM->_pair_limit
+ if (oldPair < SP_PARM->_pair_alloc
+ && newPair < SP_PARM->_pair_alloc
&& (isSamePair(SP_PARM->_color_pairs[oldPair],
SP_PARM->_color_pairs[newPair]))) {
SetPair(oldLine[n], GetPair(newLine[n]));
@@ -1701,7 +1705,7 @@ ClearScreen(NCURSES_SP_DCLx NCURSES_CH_T blank)
*/
static void
-InsStr(NCURSES_SP_DCLx NCURSES_CH_T * line, int count)
+InsStr(NCURSES_SP_DCLx NCURSES_CH_T *line, int count)
{
TR(TRACE_UPDATE, ("InsStr(%p, %p,%d) called",
(void *) SP_PARM,
@@ -1713,7 +1717,7 @@ InsStr(NCURSES_SP_DCLx NCURSES_CH_T * line, int count)
if (parm_ich) {
TPUTS_TRACE("parm_ich");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(parm_ich, count),
+ TIPARM_1(parm_ich, count),
1,
NCURSES_SP_NAME(_nc_outch));
while (count > 0) {
@@ -1766,7 +1770,7 @@ DelChar(NCURSES_SP_DCLx int count)
if (parm_dch) {
TPUTS_TRACE("parm_dch");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_1(parm_dch, count),
+ TIPARM_1(parm_dch, count),
1,
NCURSES_SP_NAME(_nc_outch));
} else {
@@ -1835,7 +1839,7 @@ scroll_csr_forward(NCURSES_SP_DCLx
UpdateAttrs(SP_PARM, blank);
TPUTS_TRACE("parm_index");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_2(parm_index, n, 0),
+ TIPARM_1(parm_index, n),
n,
NCURSES_SP_NAME(_nc_outch));
} else if (parm_delete_line && bot == maxy) {
@@ -1843,7 +1847,7 @@ scroll_csr_forward(NCURSES_SP_DCLx
UpdateAttrs(SP_PARM, blank);
TPUTS_TRACE("parm_delete_line");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_2(parm_delete_line, n, 0),
+ TIPARM_1(parm_delete_line, n),
n,
NCURSES_SP_NAME(_nc_outch));
} else if (scroll_forward && top == miny && bot == maxy) {
@@ -1900,7 +1904,7 @@ scroll_csr_backward(NCURSES_SP_DCLx
UpdateAttrs(SP_PARM, blank);
TPUTS_TRACE("parm_rindex");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_2(parm_rindex, n, 0),
+ TIPARM_1(parm_rindex, n),
n,
NCURSES_SP_NAME(_nc_outch));
} else if (parm_insert_line && bot == maxy) {
@@ -1908,7 +1912,7 @@ scroll_csr_backward(NCURSES_SP_DCLx
UpdateAttrs(SP_PARM, blank);
TPUTS_TRACE("parm_insert_line");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_2(parm_insert_line, n, 0),
+ TIPARM_1(parm_insert_line, n),
n,
NCURSES_SP_NAME(_nc_outch));
} else if (scroll_reverse && top == miny && bot == maxy) {
@@ -1956,7 +1960,7 @@ scroll_idl(NCURSES_SP_DCLx int n, int del, int ins, NCURSES_CH_T blank)
} else if (parm_delete_line) {
TPUTS_TRACE("parm_delete_line");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_2(parm_delete_line, n, 0),
+ TIPARM_1(parm_delete_line, n),
n,
NCURSES_SP_NAME(_nc_outch));
} else { /* if (delete_line) */
@@ -1972,7 +1976,7 @@ scroll_idl(NCURSES_SP_DCLx int n, int del, int ins, NCURSES_CH_T blank)
} else if (parm_insert_line) {
TPUTS_TRACE("parm_insert_line");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_2(parm_insert_line, n, 0),
+ TIPARM_1(parm_insert_line, n),
n,
NCURSES_SP_NAME(_nc_outch));
} else { /* if (insert_line) */
@@ -2037,7 +2041,7 @@ NCURSES_SP_NAME(_nc_scrolln) (NCURSES_SP_DCLx
NCURSES_PUTP2("save_cursor", save_cursor);
}
NCURSES_PUTP2("change_scroll_region",
- TPARM_2(change_scroll_region, top, bot));
+ TIPARM_2(change_scroll_region, top, bot));
if (cursor_saved) {
NCURSES_PUTP2("restore_cursor", restore_cursor);
} else {
@@ -2047,7 +2051,7 @@ NCURSES_SP_NAME(_nc_scrolln) (NCURSES_SP_DCLx
res = scroll_csr_forward(NCURSES_SP_ARGx n, top, bot, top, bot, blank);
NCURSES_PUTP2("change_scroll_region",
- TPARM_2(change_scroll_region, 0, maxy));
+ TIPARM_2(change_scroll_region, 0, maxy));
SP_PARM->_cursrow = SP_PARM->_curscol = -1;
}
@@ -2083,7 +2087,7 @@ NCURSES_SP_NAME(_nc_scrolln) (NCURSES_SP_DCLx
NCURSES_PUTP2("save_cursor", save_cursor);
}
NCURSES_PUTP2("change_scroll_region",
- TPARM_2(change_scroll_region, top, bot));
+ TIPARM_2(change_scroll_region, top, bot));
if (cursor_saved) {
NCURSES_PUTP2("restore_cursor", restore_cursor);
} else {
@@ -2094,7 +2098,7 @@ NCURSES_SP_NAME(_nc_scrolln) (NCURSES_SP_DCLx
-n, top, bot, top, bot, blank);
NCURSES_PUTP2("change_scroll_region",
- TPARM_2(change_scroll_region, 0, maxy));
+ TIPARM_2(change_scroll_region, 0, maxy));
SP_PARM->_cursrow = SP_PARM->_curscol = -1;
}
diff --git a/ncurses/wcwidth.h b/ncurses/wcwidth.h
index e261170..76673da 100644
--- a/ncurses/wcwidth.h
+++ b/ncurses/wcwidth.h
@@ -59,6 +59,16 @@
* Latest version: http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
*/
+#ifndef _WCWIDTH_H_incl
+#define _WCWIDTH_H_incl 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <ncurses_cfg.h>
+#include <ncurses_dll.h>
+
#include <wchar.h>
struct interval {
@@ -119,7 +129,7 @@ static int bisearch(wchar_t ucs, const struct interval *table, int max) {
* in ISO 10646.
*/
-int mk_wcwidth(wchar_t ucs)
+NCURSES_EXPORT(int) mk_wcwidth(wchar_t ucs)
{
/* sorted list of non-overlapping intervals of non-spacing characters */
/* generated by "uniset +cat=Me +cat=Mn +cat=Cf -00AD +1160-11FF +200B c" */
@@ -187,7 +197,7 @@ int mk_wcwidth(wchar_t ucs)
/* if we arrive here, ucs is not a combining or C0/C1 control character */
- return 1 +
+ return 1 +
(ucs >= 0x1100 &&
(ucs <= 0x115f || /* Hangul Jamo init. consonants */
ucs == 0x2329 || ucs == 0x232a ||
@@ -207,7 +217,7 @@ int mk_wcwidth(wchar_t ucs)
}
-int mk_wcswidth(const wchar_t *pwcs, size_t n)
+NCURSES_EXPORT(int) mk_wcswidth(const wchar_t *pwcs, size_t n)
{
int w, width = 0;
@@ -230,7 +240,7 @@ int mk_wcswidth(const wchar_t *pwcs, size_t n)
* the traditional terminal character-width behaviour. It is not
* otherwise recommended for general use.
*/
-int mk_wcwidth_cjk(wchar_t ucs)
+NCURSES_EXPORT(int) mk_wcwidth_cjk(wchar_t ucs)
{
/* sorted list of non-overlapping intervals of East Asian Ambiguous
* characters, generated by "uniset +WIDTH-A -cat=Me -cat=Mn -cat=Cf c" */
@@ -298,7 +308,7 @@ int mk_wcwidth_cjk(wchar_t ucs)
}
-int mk_wcswidth_cjk(const wchar_t *pwcs, size_t n)
+NCURSES_EXPORT(int) mk_wcswidth_cjk(const wchar_t *pwcs, size_t n)
{
int w, width = 0;
@@ -310,3 +320,9 @@ int mk_wcswidth_cjk(const wchar_t *pwcs, size_t n)
return width;
}
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WCWIDTH_H_incl 1 */
diff --git a/ncurses/widechar/lib_add_wch.c b/ncurses/widechar/lib_add_wch.c
index 5d6d554..b817647 100644
--- a/ncurses/widechar/lib_add_wch.c
+++ b/ncurses/widechar/lib_add_wch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2004-2011,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -40,7 +40,7 @@
#include <wctype.h>
#endif
-MODULE_ID("$Id: lib_add_wch.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_add_wch.c,v 1.17 2021/06/17 21:26:02 tom Exp $")
/* clone/adapt lib_addch.c */
static const cchar_t blankchar = NewChar(BLANK_TEXT);
@@ -133,7 +133,7 @@ newline_forces_scroll(WINDOW *win, NCURSES_SIZE_T *ypos)
* wrapped the cursor. We don't do anything with this flag except set it when
* wrapping, and clear it whenever we move the cursor. If we try to wrap at
* the lower-right corner of a window, we cannot move the cursor (since that
- * wouldn't be legal). So we return an error (which is what SVr4 does).
+ * wouldn't be legal). So we return an error (which is what SVr4 does).
* Unlike SVr4, we can successfully add a character to the lower-right corner
* (Solaris 2.6 does this also, however).
*/
diff --git a/ncurses/widechar/lib_cchar.c b/ncurses/widechar/lib_cchar.c
index ed1d236..714be3b 100644
--- a/ncurses/widechar/lib_cchar.c
+++ b/ncurses/widechar/lib_cchar.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2001-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,10 +35,11 @@
*/
#include <curses.priv.h>
+#include <wchar.h>
-MODULE_ID("$Id: lib_cchar.c,v 1.33 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_cchar.c,v 1.37 2021/06/17 21:11:08 tom Exp $")
-/*
+/*
* The SuSv2 description leaves some room for interpretation. We'll assume wch
* points to a string which is L'\0' terminated, contains at least one
* character with strictly positive width, which must be the first, and
@@ -55,7 +56,7 @@ setcchar(cchar_t *wcval,
int color_pair = pair_arg;
unsigned len;
- TR(TRACE_CCALLS, (T_CALLED("setcchar(%p,%s,%lu,%d,%p)"),
+ TR(TRACE_CCALLS, (T_CALLED("setcchar(%p,%s,attrs=%lu,pair=%d,%p)"),
(void *) wcval, _nc_viswbuf(wch),
(unsigned long) attrs, color_pair, opts));
@@ -104,7 +105,6 @@ getcchar(const cchar_t *wcval,
void *opts)
{
int code = ERR;
- int color_pair;
TR(TRACE_CCALLS, (T_CALLED("getcchar(%p,%p,%p,%p,%p)"),
(const void *) wcval,
@@ -113,7 +113,12 @@ getcchar(const cchar_t *wcval,
(void *) pair_arg,
opts));
- if (opts == NULL && wcval != NULL) {
+#if !NCURSES_EXT_COLORS
+ if (opts != NULL) {
+ ; /* empty */
+ } else
+#endif
+ if (wcval != NULL) {
wchar_t *wp;
int len;
@@ -130,6 +135,10 @@ getcchar(const cchar_t *wcval,
} else if (attrs == 0 || pair_arg == 0) {
code = ERR;
} else if (len >= 0) {
+ int color_pair;
+
+ TR(TRACE_CCALLS, ("copy %d wchars, first is %s", len,
+ _tracecchar_t(wcval)));
*attrs = AttrOf(*wcval) & A_ATTRIBUTES;
color_pair = GetPair(*wcval);
get_extended_pair(opts, color_pair);
diff --git a/ncurses/widechar/lib_erasewchar.c b/ncurses/widechar/lib_erasewchar.c
index f49d641..197f80b 100644
--- a/ncurses/widechar/lib_erasewchar.c
+++ b/ncurses/widechar/lib_erasewchar.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2002-2010,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,46 +33,64 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_erasewchar.c,v 1.4 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_erasewchar.c,v 1.5 2021/05/22 23:51:14 tom Exp $")
/*
* erasewchar()
*
* Return erase character as given in cur_term->Ottyb.
- *
*/
NCURSES_EXPORT(int)
-erasewchar(wchar_t *wch)
+NCURSES_SP_NAME(erasewchar) (NCURSES_SP_DCLx wchar_t *wch);
+NCURSES_EXPORT(int)
+NCURSES_SP_NAME(erasewchar) (NCURSES_SP_DCLx wchar_t *wch)
{
int value;
int result = ERR;
T((T_CALLED("erasewchar()")));
- if ((value = erasechar()) != ERR) {
+ if ((value = NCURSES_SP_NAME(erasechar) (NCURSES_SP_ARG)) != ERR) {
*wch = (wchar_t) value;
result = OK;
}
returnCode(result);
}
+#if NCURSES_SP_FUNCS
+NCURSES_EXPORT(int)
+erasewchar(wchar_t *wch)
+{
+ return NCURSES_SP_NAME(erasewchar) (CURRENT_SCREEN, wch);
+}
+#endif
+
/*
* killwchar()
*
* Return kill character as given in cur_term->Ottyb.
- *
*/
NCURSES_EXPORT(int)
-killwchar(wchar_t *wch)
+NCURSES_SP_NAME(killwchar) (NCURSES_SP_DCLx wchar_t *wch);
+NCURSES_EXPORT(int)
+NCURSES_SP_NAME(killwchar) (NCURSES_SP_DCLx wchar_t *wch)
{
int value;
int result = ERR;
T((T_CALLED("killwchar()")));
- if ((value = killchar()) != ERR) {
+ if ((value = NCURSES_SP_NAME(killchar) (NCURSES_SP_ARG)) != ERR) {
*wch = (wchar_t) value;
result = OK;
}
returnCode(result);
}
+
+#if NCURSES_SP_FUNCS
+NCURSES_EXPORT(int)
+killwchar(wchar_t *wch)
+{
+ return NCURSES_SP_NAME(killwchar) (CURRENT_SCREEN, wch);
+}
+#endif
diff --git a/ncurses/widechar/lib_get_wch.c b/ncurses/widechar/lib_get_wch.c
index 2bd4918..9f10d3b 100644
--- a/ncurses/widechar/lib_get_wch.c
+++ b/ncurses/widechar/lib_get_wch.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2002-2011,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -41,7 +41,7 @@
#include <curses.priv.h>
#include <ctype.h>
-MODULE_ID("$Id: lib_get_wch.c,v 1.25 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_get_wch.c,v 1.26 2021/04/17 16:12:54 tom Exp $")
NCURSES_EXPORT(int)
wget_wch(WINDOW *win, wint_t *result)
@@ -49,7 +49,6 @@ wget_wch(WINDOW *win, wint_t *result)
SCREEN *sp;
int code;
int value = 0;
- wchar_t wch;
#ifndef state_unused
mbstate_t state;
#endif
@@ -98,6 +97,7 @@ wget_wch(WINDOW *win, wint_t *result)
reset_mbytes(state);
status = count_mbytes(buffer, count, state);
if (status >= 0) {
+ wchar_t wch;
reset_mbytes(state);
if (check_mbytes(wch, buffer, count, state) != status) {
code = ERR; /* the two calls should match */
diff --git a/ncurses/widechar/lib_get_wstr.c b/ncurses/widechar/lib_get_wstr.c
index 695b526..83baaed 100644
--- a/ncurses/widechar/lib_get_wstr.c
+++ b/ncurses/widechar/lib_get_wstr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2002-2009,2011 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -40,7 +40,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_get_wstr.c,v 1.16 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_get_wstr.c,v 1.19 2021/09/04 10:29:59 tom Exp $")
static int
wadd_wint(WINDOW *win, wint_t *src)
@@ -89,8 +89,8 @@ wgetn_wstr(WINDOW *win, wint_t *str, int maxlen)
SCREEN *sp = _nc_screen_of(win);
TTY buf;
bool oldnl, oldecho, oldraw, oldcbreak;
- wint_t erasec;
- wint_t killc;
+ wchar_t erasec = 0;
+ wchar_t killc = 0;
wint_t *oldstr = str;
wint_t *tmpstr = str;
wint_t ch;
@@ -109,13 +109,12 @@ wgetn_wstr(WINDOW *win, wint_t *str, int maxlen)
oldecho = sp->_echo;
oldraw = sp->_raw;
oldcbreak = sp->_cbreak;
- nl();
- noecho();
- noraw();
- cbreak();
+ NCURSES_SP_NAME(nl) (NCURSES_SP_ARG);
+ NCURSES_SP_NAME(noecho) (NCURSES_SP_ARG);
+ NCURSES_SP_NAME(raw) (NCURSES_SP_ARG);
- erasec = (wint_t) erasechar();
- killc = (wint_t) killchar();
+ NCURSES_SP_NAME(erasewchar) (NCURSES_SP_ARGx &erasec);
+ NCURSES_SP_NAME(killwchar) (NCURSES_SP_ARGx &killc);
getyx(win, y, x);
@@ -132,12 +131,12 @@ wgetn_wstr(WINDOW *win, wint_t *str, int maxlen)
code = KEY_CODE_YES;
ch = KEY_ENTER;
}
- if (ch < KEY_MIN) {
- if (ch == erasec) {
+ if (ch != 0 && ch < KEY_MIN) {
+ if (ch == (wint_t) erasec) {
ch = KEY_BACKSPACE;
code = KEY_CODE_YES;
}
- if (ch == killc) {
+ if (ch == (wint_t) killc) {
ch = KEY_EOL;
code = KEY_CODE_YES;
}
@@ -145,7 +144,7 @@ wgetn_wstr(WINDOW *win, wint_t *str, int maxlen)
if (code == KEY_CODE_YES) {
/*
* Some terminals (the Wyse-50 is the most common) generate a \n
- * from the down-arrow key. With this logic, it's the user's
+ * from the down-arrow key. With this logic, it is the user's
* choice whether to set kcud=\n for wget_wch(); terminating
* *getn_wstr() with \n should work either way.
*/
diff --git a/ncurses/widechar/lib_ins_wch.c b/ncurses/widechar/lib_ins_wch.c
index a744f5b..f753610 100644
--- a/ncurses/widechar/lib_ins_wch.c
+++ b/ncurses/widechar/lib_ins_wch.c
@@ -40,7 +40,7 @@
#include <curses.priv.h>
-MODULE_ID("$Id: lib_ins_wch.c,v 1.24 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_ins_wch.c,v 1.25 2020/12/05 20:04:59 tom Exp $")
/*
* Insert the given character, updating the current location to simplify
@@ -111,7 +111,7 @@ wins_nwstr(WINDOW *win, const wchar_t *wstr, int n)
if (win != 0
&& wstr != 0) {
if (n < 1)
- n = (int) wcslen(wstr);
+ n = INT_MAX;
code = OK;
if (n > 0) {
@@ -120,7 +120,7 @@ wins_nwstr(WINDOW *win, const wchar_t *wstr, int n)
NCURSES_SIZE_T oy = win->_cury;
NCURSES_SIZE_T ox = win->_curx;
- for (cp = wstr; ((cp - wstr) < n) && *cp; cp++) {
+ for (cp = wstr; (*cp != L'\0') && ((cp - wstr) < n); cp++) {
int len = _nc_wacs_width(*cp);
if ((len >= 0 && len != 1) || !is7bits(*cp)) {
diff --git a/ncurses/widechar/lib_vid_attr.c b/ncurses/widechar/lib_vid_attr.c
index e167beb..2d9531f 100644
--- a/ncurses/widechar/lib_vid_attr.c
+++ b/ncurses/widechar/lib_vid_attr.c
@@ -37,7 +37,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_vid_attr.c,v 1.28 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_vid_attr.c,v 1.30 2020/05/27 23:54:31 tom Exp $")
#define doPut(mode) \
TPUTS_TRACE(#mode); \
@@ -191,16 +191,16 @@ NCURSES_SP_NAME(vid_puts) (NCURSES_SP_DCLx
if (turn_on || turn_off) {
TPUTS_TRACE("set_attributes");
NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
- TPARM_9(set_attributes,
- (newmode & A_STANDOUT) != 0,
- (newmode & A_UNDERLINE) != 0,
- (newmode & A_REVERSE) != 0,
- (newmode & A_BLINK) != 0,
- (newmode & A_DIM) != 0,
- (newmode & A_BOLD) != 0,
- (newmode & A_INVIS) != 0,
- (newmode & A_PROTECT) != 0,
- (newmode & A_ALTCHARSET) != 0),
+ TIPARM_9(set_attributes,
+ (newmode & A_STANDOUT) != 0,
+ (newmode & A_UNDERLINE) != 0,
+ (newmode & A_REVERSE) != 0,
+ (newmode & A_BLINK) != 0,
+ (newmode & A_DIM) != 0,
+ (newmode & A_BOLD) != 0,
+ (newmode & A_INVIS) != 0,
+ (newmode & A_PROTECT) != 0,
+ (newmode & A_ALTCHARSET) != 0),
1, outc);
previous_attr &= ALL_BUT_COLOR;
previous_pair = 0;
@@ -264,7 +264,6 @@ NCURSES_SP_NAME(vid_puts) (NCURSES_SP_DCLx
TurnOn(A_VERTICAL, enter_vertical_hl_mode);
#endif
/* *INDENT-ON* */
-
}
if (reverse)
diff --git a/ncurses/widechar/widechars.c b/ncurses/widechar/widechars.c
index 3577479..d05ba98 100644
--- a/ncurses/widechar/widechars.c
+++ b/ncurses/widechar/widechars.c
@@ -31,9 +31,9 @@
#if USE_WIDEC_SUPPORT
-MODULE_ID("$Id: widechars.c,v 1.7 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: widechars.c,v 1.9 2020/08/29 16:22:03 juergen Exp $")
-#if defined(_WIN32)
+#if (defined(_NC_WINDOWS)) && !defined(_NC_MSC)
/*
* MinGW has wide-character functions, but they do not work correctly.
*/
@@ -148,6 +148,6 @@ _nc_wctomb(char *s, wchar_t wc)
return result;
}
-#endif /* _WIN32 */
+#endif /* _NC_WINDOWS */
#endif /* USE_WIDEC_SUPPORT */
diff --git a/ncurses/win32con/gettimeofday.c b/ncurses/win32con/gettimeofday.c
index 8fad9a6..94be7b5 100644
--- a/ncurses/win32con/gettimeofday.c
+++ b/ncurses/win32con/gettimeofday.c
@@ -36,11 +36,11 @@
#include <windows.h>
-MODULE_ID("$Id: gettimeofday.c,v 1.4 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: gettimeofday.c,v 1.6 2020/07/11 21:03:53 tom Exp $")
#define JAN1970 116444736000000000LL /* the value for 01/01/1970 00:00 */
-int
+NCURSES_EXPORT(int)
gettimeofday(struct timeval *tv, void *tz GCC_UNUSED)
{
union {
diff --git a/ncurses/win32con/wcwidth.c b/ncurses/win32con/wcwidth.c
index 17ebaa6..5584366 100644
--- a/ncurses/win32con/wcwidth.c
+++ b/ncurses/win32con/wcwidth.c
@@ -28,7 +28,7 @@
****************************************************************************/
#include <curses.priv.h>
-MODULE_ID("$Id: wcwidth.c,v 1.3 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: wcwidth.c,v 1.4 2020/07/11 21:02:10 tom Exp $")
#if USE_WIDEC_SUPPORT
#define mk_wcwidth(ucs) _nc_wcwidth(ucs)
@@ -36,10 +36,10 @@ MODULE_ID("$Id: wcwidth.c,v 1.3 2020/02/02 23:34:34 tom Exp $")
#define mk_wcwidth_cjk(ucs) _nc_wcwidth_cjk(ucs)
#define mk_wcswidth_cjk(pwcs, n) _nc_wcswidth_cjk(pwcs, n)
-extern int mk_wcwidth(wchar_t);
-extern int mk_wcswidth(const wchar_t *, size_t);
-extern int mk_wcwidth_cjk(wchar_t);
-extern int mk_wcswidth_cjk(const wchar_t *, size_t);
+NCURSES_EXPORT(int) mk_wcwidth(wchar_t);
+NCURSES_EXPORT(int) mk_wcswidth(const wchar_t *, size_t);
+NCURSES_EXPORT(int) mk_wcwidth_cjk(wchar_t);
+NCURSES_EXPORT(int) mk_wcswidth_cjk(const wchar_t *, size_t);
#include <wcwidth.h>
#else
diff --git a/ncurses/win32con/win32_driver.c b/ncurses/win32con/win32_driver.c
new file mode 100644
index 0000000..45aadf2
--- /dev/null
+++ b/ncurses/win32con/win32_driver.c
@@ -0,0 +1,1221 @@
+/****************************************************************************
+ * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2008-2016,2017 Free Software Foundation, Inc. *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Author: Juergen Pfeifer *
+ * and: Thomas E. Dickey *
+ ****************************************************************************/
+
+/*
+ * TODO - improve screen-repainting performance, using implied wraparound to reduce write's
+ * TODO - make it optional whether screen is restored or not when non-buffered
+ */
+
+#include <curses.priv.h>
+#ifdef _NC_WINDOWS
+#if (defined(__MINGW32__) || defined(__MINGW64__))
+#include <wchar.h>
+#else
+#include <tchar.h>
+#endif
+#include <io.h>
+
+#define CUR TerminalType(my_term).
+
+MODULE_ID("$Id: win32_driver.c,v 1.2 2020/11/21 23:35:56 tom Exp $")
+
+#define WINMAGIC NCDRV_MAGIC(NCDRV_WINCONSOLE)
+#define EXP_OPTIMIZE 0
+
+static bool console_initialized = FALSE;
+
+#define AssertTCB() assert(TCB != 0 && (TCB->magic == WINMAGIC))
+#define validateConsoleHandle() (AssertTCB() , console_initialized ||\
+ (console_initialized=\
+ _nc_console_checkinit(TRUE,FALSE)))
+#define SetSP() assert(TCB->csp != 0); sp = TCB->csp; (void) sp
+#define AdjustY() (WINCONSOLE.buffered ?\
+ 0 : (int) WINCONSOLE.SBI.srWindow.Top)
+#define RevAttr(attr) (WORD) (((attr) & 0xff00) | \
+ ((((attr) & 0x07) << 4) | \
+ (((attr) & 0x70) >> 4)))
+
+#if USE_WIDEC_SUPPORT
+#define write_screen WriteConsoleOutputW
+#define read_screen ReadConsoleOutputW
+#else
+#define write_screen WriteConsoleOutput
+#define read_screen ReadConsoleOutput
+#endif
+
+static WORD
+MapAttr(WORD res, attr_t ch)
+{
+ if (ch & A_COLOR) {
+ int p;
+
+ p = PairNumber(ch);
+ if (p > 0 && p < CON_NUMPAIRS) {
+ WORD a;
+ a = WINCONSOLE.pairs[p];
+ res = (WORD) ((res & 0xff00) | a);
+ }
+ }
+
+ if (ch & A_REVERSE) {
+ res = RevAttr(res);
+ }
+
+ if (ch & A_STANDOUT) {
+ res = RevAttr(res) | BACKGROUND_INTENSITY;
+ }
+
+ if (ch & A_BOLD)
+ res |= FOREGROUND_INTENSITY;
+
+ if (ch & A_DIM)
+ res |= BACKGROUND_INTENSITY;
+
+ return res;
+}
+
+#if 0 /* def TRACE */
+static void
+dump_screen(const char *fn, int ln)
+{
+ int max_cells = (WINCONSOLE.SBI.dwSize.Y *
+ (1 + WINCONSOLE.SBI.dwSize.X)) + 1;
+ char output[max_cells];
+ CHAR_INFO save_screen[max_cells];
+ COORD save_size;
+ SMALL_RECT save_region;
+ COORD bufferCoord;
+
+ T(("dump_screen %s@%d", fn, ln));
+
+ save_region.Top = WINCONSOLE.SBI.srWindow.Top;
+ save_region.Left = WINCONSOLE.SBI.srWindow.Left;
+ save_region.Bottom = WINCONSOLE.SBI.srWindow.Bottom;
+ save_region.Right = WINCONSOLE.SBI.srWindow.Right;
+
+ save_size.X = (SHORT) (save_region.Right - save_region.Left + 1);
+ save_size.Y = (SHORT) (save_region.Bottom - save_region.Top + 1);
+
+ bufferCoord.X = bufferCoord.Y = 0;
+
+ if (read_screen(WINCONSOLE.hdl,
+ save_screen,
+ save_size,
+ bufferCoord,
+ &save_region)) {
+ int i, j;
+ int ij = 0;
+ int k = 0;
+
+ for (i = save_region.Top; i <= save_region.Bottom; ++i) {
+ for (j = save_region.Left; j <= save_region.Right; ++j) {
+ output[k++] = save_screen[ij++].Char.AsciiChar;
+ }
+ output[k++] = '\n';
+ }
+ output[k] = 0;
+
+ T(("DUMP: %d,%d - %d,%d",
+ save_region.Top,
+ save_region.Left,
+ save_region.Bottom,
+ save_region.Right));
+ T(("%s", output));
+ }
+}
+
+#else
+#define dump_screen(fn,ln) /* nothing */
+#endif
+
+#if USE_WIDEC_SUPPORT
+/*
+ * TODO: support surrogate pairs
+ * TODO: support combining characters
+ * TODO: support acsc
+ * TODO: _nc_wacs should be part of sp.
+ */
+static BOOL
+con_write16(TERMINAL_CONTROL_BLOCK * TCB,
+ int y, int x, cchar_t *str, int limit)
+{
+ int actual = 0;
+ CHAR_INFO *ci = TypeAlloca(CHAR_INFO, limit);
+ COORD loc, siz;
+ SMALL_RECT rec;
+ int i;
+ cchar_t ch;
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+
+ for (i = actual = 0; i < limit; i++) {
+ ch = str[i];
+ if (isWidecExt(ch))
+ continue;
+ ci[actual].Char.UnicodeChar = CharOf(ch);
+ ci[actual].Attributes = MapAttr(WINCONSOLE.SBI.wAttributes,
+ AttrOf(ch));
+ if (AttrOf(ch) & A_ALTCHARSET) {
+ if (_nc_wacs) {
+ int which = CharOf(ch);
+ if (which > 0
+ && which < ACS_LEN
+ && CharOf(_nc_wacs[which]) != 0) {
+ ci[actual].Char.UnicodeChar = CharOf(_nc_wacs[which]);
+ } else {
+ ci[actual].Char.UnicodeChar = ' ';
+ }
+ }
+ }
+ ++actual;
+ }
+
+ loc.X = (SHORT) 0;
+ loc.Y = (SHORT) 0;
+ siz.X = (SHORT) actual;
+ siz.Y = 1;
+
+ rec.Left = (SHORT) x;
+ rec.Top = (SHORT) (y + AdjustY());
+ rec.Right = (SHORT) (x + limit - 1);
+ rec.Bottom = rec.Top;
+
+ return write_screen(WINCONSOLE.hdl, ci, siz, loc, &rec);
+}
+#define con_write(tcb, y, x, str, n) con_write16(tcb, y, x, str, n)
+#else
+static BOOL
+con_write8(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, chtype *str, int n)
+{
+ CHAR_INFO *ci = TypeAlloca(CHAR_INFO, n);
+ COORD loc, siz;
+ SMALL_RECT rec;
+ int i;
+ chtype ch;
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+
+ for (i = 0; i < n; i++) {
+ ch = str[i];
+ ci[i].Char.AsciiChar = ChCharOf(ch);
+ ci[i].Attributes = MapAttr(WINCONSOLE.SBI.wAttributes,
+ ChAttrOf(ch));
+ if (ChAttrOf(ch) & A_ALTCHARSET) {
+ if (sp->_acs_map)
+ ci[i].Char.AsciiChar =
+ ChCharOf(NCURSES_SP_NAME(_nc_acs_char) (sp, ChCharOf(ch)));
+ }
+ }
+
+ loc.X = (short) 0;
+ loc.Y = (short) 0;
+ siz.X = (short) n;
+ siz.Y = 1;
+
+ rec.Left = (short) x;
+ rec.Top = (short) y;
+ rec.Right = (short) (x + n - 1);
+ rec.Bottom = rec.Top;
+
+ return write_screen(WINCONSOLE.hdl, ci, siz, loc, &rec);
+}
+#define con_write(tcb, y, x, str, n) con_write8(tcb, y, x, str, n)
+#endif
+
+#if EXP_OPTIMIZE
+/*
+ * Comparing new/current screens, determine the last column-index for a change
+ * beginning on the given row,col position. Unlike a serial terminal, there is
+ * no cost for "moving" the "cursor" on the line as we update it.
+ */
+static int
+find_end_of_change(SCREEN *sp, int row, int col)
+{
+ int result = col;
+ struct ldat *curdat = CurScreen(sp)->_line + row;
+ struct ldat *newdat = NewScreen(sp)->_line + row;
+
+ while (col <= newdat->lastchar) {
+#if USE_WIDEC_SUPPORT
+ if (isWidecExt(curdat->text[col]) ||
+ isWidecExt(newdat->text[col])) {
+ result = col;
+ } else if (memcmp(&curdat->text[col],
+ &newdat->text[col],
+ sizeof(curdat->text[0]))) {
+ result = col;
+ } else {
+ break;
+ }
+#else
+ if (curdat->text[col] != newdat->text[col]) {
+ result = col;
+ } else {
+ break;
+ }
+#endif
+ ++col;
+ }
+ return result;
+}
+
+/*
+ * Given a row,col position at the end of a change-chunk, look for the
+ * beginning of the next change-chunk.
+ */
+static int
+find_next_change(SCREEN *sp, int row, int col)
+{
+ struct ldat *curdat = CurScreen(sp)->_line + row;
+ struct ldat *newdat = NewScreen(sp)->_line + row;
+ int result = newdat->lastchar + 1;
+
+ while (++col <= newdat->lastchar) {
+#if USE_WIDEC_SUPPORT
+ if (isWidecExt(curdat->text[col]) !=
+ isWidecExt(newdat->text[col])) {
+ result = col;
+ break;
+ } else if (memcmp(&curdat->text[col],
+ &newdat->text[col],
+ sizeof(curdat->text[0]))) {
+ result = col;
+ break;
+ }
+#else
+ if (curdat->text[col] != newdat->text[col]) {
+ result = col;
+ break;
+ }
+#endif
+ }
+ return result;
+}
+
+#define EndChange(first) \
+ find_end_of_change(sp, y, first)
+#define NextChange(last) \
+ find_next_change(sp, y, last)
+
+#endif /* EXP_OPTIMIZE */
+
+#define MARK_NOCHANGE(win,row) \
+ win->_line[row].firstchar = _NOCHANGE; \
+ win->_line[row].lastchar = _NOCHANGE
+
+static bool
+restore_original_screen(void)
+{
+ COORD bufferCoord;
+ bool result = FALSE;
+ SMALL_RECT save_region = WINCONSOLE.save_region;
+
+ T(("... restoring %s", WINCONSOLE.window_only ?
+ "window" : "entire buffer"));
+
+ bufferCoord.X = (SHORT) (WINCONSOLE.window_only ?
+ WINCONSOLE.SBI.srWindow.Left : 0);
+ bufferCoord.Y = (SHORT) (WINCONSOLE.window_only ?
+ WINCONSOLE.SBI.srWindow.Top : 0);
+
+ if (write_screen(WINCONSOLE.hdl,
+ WINCONSOLE.save_screen,
+ WINCONSOLE.save_size,
+ bufferCoord,
+ &save_region)) {
+ result = TRUE;
+ mvcur(-1, -1, LINES - 2, 0);
+ T(("... restore original screen contents ok %dx%d (%d,%d - %d,%d)",
+ WINCONSOLE.save_size.Y,
+ WINCONSOLE.save_size.X,
+ save_region.Top,
+ save_region.Left,
+ save_region.Bottom,
+ save_region.Right));
+ } else {
+ T(("... restore original screen contents err"));
+ }
+ return result;
+}
+
+static const char *
+wcon_name(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ (void) TCB;
+ return "win32console";
+}
+
+static int
+wcon_doupdate(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ int result = ERR;
+ int y, nonempty, n, x0, x1, Width, Height;
+ SCREEN *sp;
+
+ T((T_CALLED("win32con::wcon_doupdate(%p)"), TCB));
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ Width = screen_columns(sp);
+ Height = screen_lines(sp);
+ nonempty = min(Height, NewScreen(sp)->_maxy + 1);
+
+ T(("... %dx%d clear cur:%d new:%d",
+ Height, Width,
+ CurScreen(sp)->_clear,
+ NewScreen(sp)->_clear));
+
+ if (SP_PARM->_endwin == ewSuspend) {
+
+ T(("coming back from shell mode"));
+ NCURSES_SP_NAME(reset_prog_mode) (NCURSES_SP_ARG);
+
+ NCURSES_SP_NAME(_nc_mvcur_resume) (NCURSES_SP_ARG);
+ NCURSES_SP_NAME(_nc_screen_resume) (NCURSES_SP_ARG);
+ SP_PARM->_mouse_resume(SP_PARM);
+
+ SP_PARM->_endwin = ewRunning;
+ }
+
+ if ((CurScreen(sp)->_clear || NewScreen(sp)->_clear)) {
+ int x;
+#if USE_WIDEC_SUPPORT
+ cchar_t *empty = TypeAlloca(cchar_t, Width);
+ wchar_t blank[2] =
+ {
+ L' ', L'\0'
+ };
+
+ for (x = 0; x < Width; x++)
+ setcchar(&empty[x], blank, 0, 0, 0);
+#else
+ chtype *empty = TypeAlloca(chtype, Width);
+
+ for (x = 0; x < Width; x++)
+ empty[x] = ' ';
+#endif
+
+ for (y = 0; y < nonempty; y++) {
+ con_write(TCB, y, 0, empty, Width);
+ memcpy(empty,
+ CurScreen(sp)->_line[y].text,
+ (size_t) Width * sizeof(empty[0]));
+ }
+ CurScreen(sp)->_clear = FALSE;
+ NewScreen(sp)->_clear = FALSE;
+ touchwin(NewScreen(sp));
+ T(("... cleared %dx%d lines @%d of screen", nonempty, Width,
+ AdjustY()));
+ }
+
+ for (y = 0; y < nonempty; y++) {
+ x0 = NewScreen(sp)->_line[y].firstchar;
+ if (x0 != _NOCHANGE) {
+#if EXP_OPTIMIZE
+ int x2;
+ int limit = NewScreen(sp)->_line[y].lastchar;
+ while ((x1 = EndChange(x0)) <= limit) {
+ while ((x2 = NextChange(x1)) <=
+ limit && x2 <= (x1 + 2)) {
+ x1 = x2;
+ }
+ n = x1 - x0 + 1;
+ memcpy(&CurScreen(sp)->_line[y].text[x0],
+ &NewScreen(sp)->_line[y].text[x0],
+ n * sizeof(CurScreen(sp)->_line[y].text[x0]));
+ con_write(TCB,
+ y,
+ x0,
+ &CurScreen(sp)->_line[y].text[x0], n);
+ x0 = NextChange(x1);
+ }
+
+ /* mark line changed successfully */
+ if (y <= NewScreen(sp)->_maxy) {
+ MARK_NOCHANGE(NewScreen(sp), y);
+ }
+ if (y <= CurScreen(sp)->_maxy) {
+ MARK_NOCHANGE(CurScreen(sp), y);
+ }
+#else
+ x1 = NewScreen(sp)->_line[y].lastchar;
+ n = x1 - x0 + 1;
+ if (n > 0) {
+ memcpy(&CurScreen(sp)->_line[y].text[x0],
+ &NewScreen(sp)->_line[y].text[x0],
+ (size_t) n *
+ sizeof(CurScreen(sp)->_line[y].text[x0]));
+ con_write(TCB,
+ y,
+ x0,
+ &CurScreen(sp)->_line[y].text[x0], n);
+
+ /* mark line changed successfully */
+ if (y <= NewScreen(sp)->_maxy) {
+ MARK_NOCHANGE(NewScreen(sp), y);
+ }
+ if (y <= CurScreen(sp)->_maxy) {
+ MARK_NOCHANGE(CurScreen(sp), y);
+ }
+ }
+#endif
+ }
+ }
+
+ /* put everything back in sync */
+ for (y = nonempty; y <= NewScreen(sp)->_maxy; y++) {
+ MARK_NOCHANGE(NewScreen(sp), y);
+ }
+ for (y = nonempty; y <= CurScreen(sp)->_maxy; y++) {
+ MARK_NOCHANGE(CurScreen(sp), y);
+ }
+
+ if (!NewScreen(sp)->_leaveok) {
+ CurScreen(sp)->_curx = NewScreen(sp)->_curx;
+ CurScreen(sp)->_cury = NewScreen(sp)->_cury;
+
+ TCB->drv->td_hwcur(TCB,
+ 0,
+ 0,
+ CurScreen(sp)->_cury,
+ CurScreen(sp)->_curx);
+ }
+ _nc_console_selectActiveHandle();
+ result = OK;
+ }
+ returnCode(result);
+}
+
+static bool
+wcon_CanHandle(TERMINAL_CONTROL_BLOCK * TCB,
+ const char *tname,
+ int *errret GCC_UNUSED)
+{
+ bool code = FALSE;
+
+ T((T_CALLED("win32con::wcon_CanHandle(%p)"), TCB));
+
+ assert((TCB != 0) && (tname != 0));
+
+ TCB->magic = WINMAGIC;
+
+ if (tname == 0 || *tname == 0) {
+ if (!_nc_console_vt_supported())
+ code = TRUE;
+ } else if (tname != 0 && *tname == '#') {
+ /*
+ * Use "#" (a character which cannot begin a terminal's name) to
+ * select specific driver from the table.
+ *
+ * In principle, we could have more than one non-terminfo driver,
+ * e.g., "win32gui".
+ */
+ size_t n = strlen(tname + 1);
+ if (n != 0
+ && ((strncmp(tname + 1, "win32console", n) == 0)
+ || (strncmp(tname + 1, "win32con", n) == 0))) {
+ code = TRUE;
+ }
+ } else if (tname != 0 && stricmp(tname, "unknown") == 0) {
+ code = TRUE;
+ }
+
+ /*
+ * This is intentional, to avoid unnecessary breakage of applications
+ * using <term.h> symbols.
+ */
+ if (code && (TerminalType(&TCB->term).Booleans == 0)) {
+ _nc_init_termtype(&TerminalType(&TCB->term));
+#if NCURSES_EXT_NUMBERS
+ _nc_export_termtype2(&TCB->term.type, &TerminalType(&TCB->term));
+#endif
+ }
+
+ if (!code) {
+ if (_nc_console_test(0)) {
+ T(("isTermInfoConsole=TRUE"));
+ WINCONSOLE.isTermInfoConsole = TRUE;
+ }
+ }
+ returnBool(code);
+}
+
+static int
+wcon_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB,
+ int beepFlag)
+{
+ SCREEN *sp;
+ int res = ERR;
+
+ int high = (WINCONSOLE.SBI.srWindow.Bottom -
+ WINCONSOLE.SBI.srWindow.Top + 1);
+ int wide = (WINCONSOLE.SBI.srWindow.Right -
+ WINCONSOLE.SBI.srWindow.Left + 1);
+ int max_cells = (high * wide);
+ int i;
+
+ CHAR_INFO *this_screen = TypeAlloca(CHAR_INFO, max_cells);
+ CHAR_INFO *that_screen = TypeAlloca(CHAR_INFO, max_cells);
+ COORD this_size;
+ SMALL_RECT this_region;
+ COORD bufferCoord;
+
+ if (validateConsoleHandle()) {
+ SetSP();
+ this_region.Top = WINCONSOLE.SBI.srWindow.Top;
+ this_region.Left = WINCONSOLE.SBI.srWindow.Left;
+ this_region.Bottom = WINCONSOLE.SBI.srWindow.Bottom;
+ this_region.Right = WINCONSOLE.SBI.srWindow.Right;
+
+ this_size.X = (SHORT) wide;
+ this_size.Y = (SHORT) high;
+
+ bufferCoord.X = this_region.Left;
+ bufferCoord.Y = this_region.Top;
+
+ if (!beepFlag &&
+ read_screen(WINCONSOLE.hdl,
+ this_screen,
+ this_size,
+ bufferCoord,
+ &this_region)) {
+
+ memcpy(that_screen,
+ this_screen,
+ sizeof(CHAR_INFO) * (size_t) max_cells);
+
+ for (i = 0; i < max_cells; i++) {
+ that_screen[i].Attributes =
+ RevAttr(that_screen[i].Attributes);
+ }
+
+ write_screen(WINCONSOLE.hdl, that_screen, this_size,
+ bufferCoord, &this_region);
+ Sleep(200);
+ write_screen(WINCONSOLE.hdl, this_screen, this_size,
+ bufferCoord, &this_region);
+
+ } else {
+ MessageBeep(MB_ICONWARNING); /* MB_OK might be better */
+ }
+ res = OK;
+ }
+ return res;
+}
+
+static int
+wcon_print(TERMINAL_CONTROL_BLOCK * TCB,
+ char *data GCC_UNUSED,
+ int len GCC_UNUSED)
+{
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+
+ return ERR;
+}
+
+static int
+wcon_defaultcolors(TERMINAL_CONTROL_BLOCK * TCB,
+ int fg GCC_UNUSED,
+ int bg GCC_UNUSED)
+{
+ SCREEN *sp;
+ int code = ERR;
+
+ AssertTCB();
+ SetSP();
+
+ return (code);
+}
+
+static void
+wcon_setcolor(TERMINAL_CONTROL_BLOCK * TCB,
+ int fore,
+ int color,
+ int (*outc) (SCREEN *, int) GCC_UNUSED)
+{
+ (void) TCB;
+ if (validateConsoleHandle()) {
+ WORD a = _nc_console_MapColor(fore, color);
+ a |= (WORD) ((WINCONSOLE.SBI.wAttributes) & (fore ? 0xfff8 : 0xff8f));
+ SetConsoleTextAttribute(WINCONSOLE.hdl, a);
+ _nc_console_get_SBI();
+ }
+}
+
+static bool
+wcon_rescol(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ bool res = FALSE;
+
+ (void) TCB;
+ if (validateConsoleHandle()) {
+ WORD a = FOREGROUND_BLUE | FOREGROUND_RED | FOREGROUND_GREEN;
+ SetConsoleTextAttribute(WINCONSOLE.hdl, a);
+ _nc_console_get_SBI();
+ res = TRUE;
+ }
+ return res;
+}
+
+static bool
+wcon_rescolors(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ int result = FALSE;
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+
+ return result;
+}
+
+static int
+wcon_size(TERMINAL_CONTROL_BLOCK * TCB, int *Lines, int *Cols)
+{
+ int result = ERR;
+
+ T((T_CALLED("win32con::wcon_size(%p)"), TCB));
+
+ if (validateConsoleHandle() &&
+ (Lines != NULL) && (Cols != NULL)) {
+ _nc_console_size(Lines, Cols);
+ result = OK;
+ }
+ returnCode(result);
+}
+
+static int
+wcon_setsize(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED,
+ int l GCC_UNUSED,
+ int c GCC_UNUSED)
+{
+ AssertTCB();
+ return ERR;
+}
+
+static int
+wcon_sgmode(TERMINAL_CONTROL_BLOCK * TCB, int setFlag, TTY * buf)
+{
+ int result = ERR;
+
+ T((T_CALLED("win32con::wcon_sgmode(TCB=(%p),setFlag=%d,TTY=(%p)"),
+ TCB, setFlag, buf));
+ if (buf != NULL && validateConsoleHandle()) {
+
+ if (setFlag) {
+ _nc_console_setmode(WINCONSOLE.hdl, buf);
+ TCB->term.Nttyb = *buf;
+ } else {
+ _nc_console_getmode(WINCONSOLE.hdl, &(TCB->term.Nttyb));
+ *buf = TCB->term.Nttyb;
+ }
+ result = OK;
+ }
+ returnCode(result);
+}
+
+#define MIN_WIDE 80
+#define MIN_HIGH 24
+
+static int
+wcon_mode(TERMINAL_CONTROL_BLOCK * TCB, int progFlag, int defFlag)
+{
+ SCREEN *sp;
+ TERMINAL *_term = (TERMINAL *) TCB;
+ int code = ERR;
+
+ if (validateConsoleHandle()) {
+ sp = TCB->csp;
+
+ T((T_CALLED("win32con::wcon_mode(%p, progFlag=%d, defFlag=%d)"),
+ TCB, progFlag, defFlag));
+
+ WINCONSOLE.progMode = progFlag;
+ WINCONSOLE.lastOut = progFlag ? WINCONSOLE.hdl : WINCONSOLE.out;
+ SetConsoleActiveScreenBuffer(WINCONSOLE.lastOut);
+
+ if (progFlag) /* prog mode */ {
+ if (defFlag) {
+ if ((wcon_sgmode(TCB, FALSE, &(_term->Nttyb)) == OK)) {
+ code = OK;
+ }
+ } else {
+ /* reset_prog_mode */
+ if (wcon_sgmode(TCB, TRUE, &(_term->Nttyb)) == OK) {
+ if (sp) {
+ if (sp->_keypad_on)
+ _nc_keypad(sp, TRUE);
+ }
+ if (!WINCONSOLE.buffered) {
+ _nc_console_set_scrollback(FALSE, &WINCONSOLE.SBI);
+ }
+ code = OK;
+ }
+ }
+ T(("... buffered:%d, clear:%d",
+ WINCONSOLE.buffered, CurScreen(sp)->_clear));
+ } else { /* shell mode */
+ if (defFlag) {
+ /* def_shell_mode */
+ if (wcon_sgmode(TCB, FALSE, &(_term->Ottyb)) == OK) {
+ code = OK;
+ }
+ } else {
+ /* reset_shell_mode */
+ if (sp) {
+ _nc_keypad(sp, FALSE);
+ NCURSES_SP_NAME(_nc_flush) (sp);
+ }
+ code = wcon_sgmode(TCB, TRUE, &(_term->Ottyb));
+ if (!WINCONSOLE.buffered) {
+ _nc_console_set_scrollback(TRUE, &WINCONSOLE.save_SBI);
+ if (!restore_original_screen())
+ code = ERR;
+ }
+ SetConsoleCursorInfo(WINCONSOLE.hdl, &WINCONSOLE.save_CI);
+ }
+ }
+
+ }
+ returnCode(code);
+}
+
+static void
+wcon_screen_init(SCREEN *sp GCC_UNUSED)
+{
+}
+
+static void
+wcon_wrap(SCREEN *sp GCC_UNUSED)
+{
+}
+
+static void
+wcon_release(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ T((T_CALLED("win32con::wcon_release(%p)"), TCB));
+
+ AssertTCB();
+ if (TCB->prop)
+ free(TCB->prop);
+
+ returnVoid;
+}
+
+static void
+wcon_init(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ T((T_CALLED("win32con::wcon_init(%p)"), TCB));
+
+ AssertTCB();
+
+ if (!(console_initialized = _nc_console_checkinit(TRUE, FALSE))) {
+ returnVoid;
+ }
+
+ if (TCB) {
+ TCB->info.initcolor = TRUE;
+ TCB->info.canchange = FALSE;
+ TCB->info.hascolor = TRUE;
+ TCB->info.caninit = TRUE;
+
+ TCB->info.maxpairs = CON_NUMPAIRS;
+ TCB->info.maxcolors = 8;
+ TCB->info.numlabels = 0;
+ TCB->info.labelwidth = 0;
+ TCB->info.labelheight = 0;
+ TCB->info.nocolorvideo = 1;
+ TCB->info.tabsize = 8;
+
+ TCB->info.numbuttons = WINCONSOLE.numButtons;
+ TCB->info.defaultPalette = _nc_cga_palette;
+
+ }
+ returnVoid;
+}
+
+static void
+wcon_initpair(TERMINAL_CONTROL_BLOCK * TCB,
+ int pair,
+ int f,
+ int b)
+{
+ SCREEN *sp;
+
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ if ((pair > 0) && (pair < CON_NUMPAIRS) && (f >= 0) && (f < 8)
+ && (b >= 0) && (b < 8)) {
+ WINCONSOLE.pairs[pair] =
+ _nc_console_MapColor(true, f) |
+ _nc_console_MapColor(false, b);
+ }
+ }
+}
+
+static void
+wcon_initcolor(TERMINAL_CONTROL_BLOCK * TCB,
+ int color GCC_UNUSED,
+ int r GCC_UNUSED,
+ int g GCC_UNUSED,
+ int b GCC_UNUSED)
+{
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+}
+
+static void
+wcon_do_color(TERMINAL_CONTROL_BLOCK * TCB,
+ int old_pair GCC_UNUSED,
+ int pair GCC_UNUSED,
+ int reverse GCC_UNUSED,
+ int (*outc) (SCREEN *, int) GCC_UNUSED
+)
+{
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+}
+
+static void
+wcon_initmouse(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ SCREEN *sp;
+
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ sp->_mouse_type = M_TERM_DRIVER;
+ }
+}
+
+static int
+wcon_testmouse(TERMINAL_CONTROL_BLOCK * TCB,
+ int delay
+ EVENTLIST_2nd(_nc_eventlist * evl))
+{
+ int rc = 0;
+ SCREEN *sp;
+
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ if (sp->_drv_mouse_head < sp->_drv_mouse_tail) {
+ rc = TW_MOUSE;
+ } else {
+ rc = TCBOf(sp)->drv->td_twait(TCBOf(sp),
+ TWAIT_MASK,
+ delay,
+ (int *) 0
+ EVENTLIST_2nd(evl));
+ }
+ }
+
+ return rc;
+}
+
+static int
+wcon_mvcur(TERMINAL_CONTROL_BLOCK * TCB,
+ int yold GCC_UNUSED, int xold GCC_UNUSED,
+ int y, int x)
+{
+ int ret = ERR;
+
+ (void) TCB;
+ if (validateConsoleHandle()) {
+ COORD loc;
+ loc.X = (short) x;
+ loc.Y = (short) (y + AdjustY());
+ SetConsoleCursorPosition(WINCONSOLE.hdl, loc);
+ ret = OK;
+ }
+ return ret;
+}
+
+static void
+wcon_hwlabel(TERMINAL_CONTROL_BLOCK * TCB,
+ int labnum GCC_UNUSED,
+ char *text GCC_UNUSED)
+{
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+}
+
+static void
+wcon_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB,
+ int OnFlag GCC_UNUSED)
+{
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+}
+
+static chtype
+wcon_conattr(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED)
+{
+ chtype res = A_NORMAL;
+ res |= (A_BOLD | A_DIM | A_REVERSE | A_STANDOUT | A_COLOR);
+ return res;
+}
+
+static void
+wcon_setfilter(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ SCREEN *sp;
+
+ AssertTCB();
+ SetSP();
+}
+
+static void
+wcon_initacs(TERMINAL_CONTROL_BLOCK * TCB,
+ chtype *real_map GCC_UNUSED,
+ chtype *fake_map GCC_UNUSED)
+{
+#define DATA(a,b) { a, b }
+ static struct {
+ int acs_code;
+ int use_code;
+ } table[] = {
+ DATA('a', 0xb1), /* ACS_CKBOARD */
+ DATA('f', 0xf8), /* ACS_DEGREE */
+ DATA('g', 0xf1), /* ACS_PLMINUS */
+ DATA('j', 0xd9), /* ACS_LRCORNER */
+ DATA('l', 0xda), /* ACS_ULCORNER */
+ DATA('k', 0xbf), /* ACS_URCORNER */
+ DATA('m', 0xc0), /* ACS_LLCORNER */
+ DATA('n', 0xc5), /* ACS_PLUS */
+ DATA('q', 0xc4), /* ACS_HLINE */
+ DATA('t', 0xc3), /* ACS_LTEE */
+ DATA('u', 0xb4), /* ACS_RTEE */
+ DATA('v', 0xc1), /* ACS_BTEE */
+ DATA('w', 0xc2), /* ACS_TTEE */
+ DATA('x', 0xb3), /* ACS_VLINE */
+ DATA('y', 0xf3), /* ACS_LEQUAL */
+ DATA('z', 0xf2), /* ACS_GEQUAL */
+ DATA('0', 0xdb), /* ACS_BLOCK */
+ DATA('{', 0xe3), /* ACS_PI */
+ DATA('}', 0x9c), /* ACS_STERLING */
+ DATA(',', 0xae), /* ACS_LARROW */
+ DATA('+', 0xaf), /* ACS_RARROW */
+ DATA('~', 0xf9), /* ACS_BULLET */
+ };
+#undef DATA
+ unsigned n;
+
+ SCREEN *sp;
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ for (n = 0; n < SIZEOF(table); ++n) {
+ real_map[table[n].acs_code] =
+ (chtype) table[n].use_code | A_ALTCHARSET;
+ if (sp != 0)
+ sp->_screen_acs_map[table[n].acs_code] = TRUE;
+ }
+ }
+}
+
+static int
+wcon_twait(TERMINAL_CONTROL_BLOCK * TCB,
+ int mode,
+ int milliseconds,
+ int *timeleft
+ EVENTLIST_2nd(_nc_eventlist * evl))
+{
+ SCREEN *sp;
+ int code = 0;
+
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ code = _nc_console_twait(sp,
+ WINCONSOLE.inp,
+ mode,
+ milliseconds,
+ timeleft EVENTLIST_2nd(evl));
+ }
+ return code;
+}
+
+static int
+wcon_read(TERMINAL_CONTROL_BLOCK * TCB, int *buf)
+{
+ SCREEN *sp;
+ int n = -1;
+
+ T((T_CALLED("win32con::wcon_read(%p)"), TCB));
+
+ assert(buf);
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ n = _nc_console_read(sp, WINCONSOLE.inp, buf);
+ }
+ returnCode(n);
+}
+
+static int
+wcon_nap(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int ms)
+{
+ T((T_CALLED("win32con::wcon_nap(%p, %d)"), TCB, ms));
+ Sleep((DWORD) ms);
+ returnCode(OK);
+}
+
+static int
+wcon_cursorSet(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int mode)
+{
+ int res = -1;
+
+ T((T_CALLED("win32con:wcon_cursorSet(%d)"), mode));
+ if (validateConsoleHandle()) {
+ CONSOLE_CURSOR_INFO this_CI = WINCONSOLE.save_CI;
+ switch (mode) {
+ case 0:
+ this_CI.bVisible = FALSE;
+ break;
+ case 1:
+ break;
+ case 2:
+ this_CI.dwSize = 100;
+ break;
+ }
+ SetConsoleCursorInfo(WINCONSOLE.hdl, &this_CI);
+ }
+ returnCode(res);
+}
+
+static bool
+wcon_kyExist(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int keycode)
+{
+ bool found = FALSE;
+
+ T((T_CALLED("win32con::wcon_kyExist(%d)"), keycode));
+ found = _nc_console_keyExist(keycode);
+ returnBool(found);
+}
+
+static int
+wcon_kpad(TERMINAL_CONTROL_BLOCK * TCB, int flag GCC_UNUSED)
+{
+ SCREEN *sp;
+ int code = ERR;
+
+ T((T_CALLED("win32con::wcon_kpad(%p, %d)"), TCB, flag));
+
+ if (validateConsoleHandle()) {
+ SetSP();
+
+ if (sp) {
+ code = OK;
+ }
+ }
+ returnCode(code);
+}
+
+static int
+wcon_keyok(TERMINAL_CONTROL_BLOCK * TCB,
+ int keycode,
+ int flag)
+{
+ int code = ERR;
+ SCREEN *sp;
+
+ T((T_CALLED("win32con::wcon_keyok(%p, %d, %d)"), TCB, keycode, flag));
+
+ if (validateConsoleHandle()) {
+ SetSP();
+ if (sp) {
+ code = _nc_console_keyok(keycode, flag);
+ }
+ }
+ returnCode(code);
+}
+
+NCURSES_EXPORT_VAR (TERM_DRIVER) _nc_WIN_DRIVER = {
+ FALSE,
+ wcon_name, /* Name */
+ wcon_CanHandle, /* CanHandle */
+ wcon_init, /* init */
+ wcon_release, /* release */
+ wcon_size, /* size */
+ wcon_sgmode, /* sgmode */
+ wcon_conattr, /* conattr */
+ wcon_mvcur, /* hwcur */
+ wcon_mode, /* mode */
+ wcon_rescol, /* rescol */
+ wcon_rescolors, /* rescolors */
+ wcon_setcolor, /* color */
+ wcon_dobeepflash, /* DoBeepFlash */
+ wcon_initpair, /* initpair */
+ wcon_initcolor, /* initcolor */
+ wcon_do_color, /* docolor */
+ wcon_initmouse, /* initmouse */
+ wcon_testmouse, /* testmouse */
+ wcon_setfilter, /* setfilter */
+ wcon_hwlabel, /* hwlabel */
+ wcon_hwlabelOnOff, /* hwlabelOnOff */
+ wcon_doupdate, /* update */
+ wcon_defaultcolors, /* defaultcolors */
+ wcon_print, /* print */
+ wcon_size, /* getsize */
+ wcon_setsize, /* setsize */
+ wcon_initacs, /* initacs */
+ wcon_screen_init, /* scinit */
+ wcon_wrap, /* scexit */
+ wcon_twait, /* twait */
+ wcon_read, /* read */
+ wcon_nap, /* nap */
+ wcon_kpad, /* kpad */
+ wcon_keyok, /* kyOk */
+ wcon_kyExist, /* kyExist */
+ wcon_cursorSet /* cursorSet */
+};
+
+#endif /* _NC_WINDOWS */
diff --git a/ncurses/win32con/win_driver.c b/ncurses/win32con/win_driver.c
index 280aa6d..ad9e629 100644
--- a/ncurses/win32con/win_driver.c
+++ b/ncurses/win32con/win_driver.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2008-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -55,11 +55,9 @@
#define CUR TerminalType(my_term).
-MODULE_ID("$Id: win_driver.c,v 1.63 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: win_driver.c,v 1.67 2021/09/04 10:54:35 tom Exp $")
-#ifndef __GNUC__
-# error We need GCC to compile for MinGW
-#endif
+#define TypeAlloca(type,count) (type*) _alloca(sizeof(type) * (size_t) (count))
#define WINMAGIC NCDRV_MAGIC(NCDRV_WINCONSOLE)
@@ -116,7 +114,7 @@ static const LONG ansi_keys[] =
#define MAPSIZE (FKEYS + N_INI)
#define NUMPAIRS 64
-/* A process can only have a single console, so it's safe
+/* A process can only have a single console, so it is safe
to maintain all the information about it in a single
static structure.
*/
@@ -262,7 +260,7 @@ static BOOL
con_write16(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, cchar_t *str, int limit)
{
int actual = 0;
- CHAR_INFO ci[limit];
+ CHAR_INFO *ci = TypeAlloca(CHAR_INFO, limit);
COORD loc, siz;
SMALL_RECT rec;
int i;
@@ -311,7 +309,7 @@ con_write16(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, cchar_t *str, int limit)
static BOOL
con_write8(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, chtype *str, int n)
{
- CHAR_INFO ci[n];
+ CHAR_INFO *ci = TypeAlloca(CHAR_INFO, n);
COORD loc, siz;
SMALL_RECT rec;
int i;
@@ -510,7 +508,7 @@ wcon_doupdate(TERMINAL_CONTROL_BLOCK * TCB)
if ((CurScreen(sp)->_clear || NewScreen(sp)->_clear)) {
int x;
#if USE_WIDEC_SUPPORT
- cchar_t empty[Width];
+ cchar_t *empty = TypeAlloca(cchar_t, Width);
wchar_t blank[2] =
{
L' ', L'\0'
@@ -519,7 +517,7 @@ wcon_doupdate(TERMINAL_CONTROL_BLOCK * TCB)
for (x = 0; x < Width; x++)
setcchar(&empty[x], blank, 0, 0, 0);
#else
- chtype empty[Width];
+ chtype *empty = TypeAlloca(chtype, Width);
for (x = 0; x < Width; x++)
empty[x] = ' ';
@@ -675,8 +673,8 @@ wcon_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB,
int max_cells = (high * wide);
int i;
- CHAR_INFO this_screen[max_cells];
- CHAR_INFO that_screen[max_cells];
+ CHAR_INFO *this_screen = TypeAlloca(CHAR_INFO, max_cells);
+ CHAR_INFO *that_screen = TypeAlloca(CHAR_INFO, max_cells);
COORD this_size;
SMALL_RECT this_region;
COORD bufferCoord;
@@ -701,7 +699,9 @@ wcon_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB,
bufferCoord,
&this_region)) {
- memcpy(that_screen, this_screen, sizeof(that_screen));
+ memcpy(that_screen,
+ this_screen,
+ sizeof(CHAR_INFO) * (size_t) max_cells);
for (i = 0; i < max_cells; i++) {
that_screen[i].Attributes = RevAttr(that_screen[i].Attributes);
@@ -1867,7 +1867,7 @@ get_handle(int fd)
#if WINVER >= 0x0600
/* This function tests, whether or not the ncurses application
is running as a descendant of MSYS2/cygwin mintty terminal
- application. mintty doesn't use Windows Console for it's screen
+ application. mintty doesn't use Windows Console for its screen
I/O, so the native Windows _isatty doesn't recognize it as
character device. But we can discover we are at the end of an
Pipe and can query to server side of the pipe, looking whether
@@ -1974,7 +1974,7 @@ _nc_mingw_isatty(int fd)
/* This is used when running in terminfo mode to discover,
whether or not the "terminal" is actually a Windows
- Console. It's the responsibility of the console to deal
+ Console. It is the responsibility of the console to deal
with the terminal escape sequences that are sent by
terminfo.
*/
diff --git a/package/debian-mingw/changelog b/package/debian-mingw/changelog
index 4401f1a..ddce3cf 100644
--- a/package/debian-mingw/changelog
+++ b/package/debian-mingw/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200212) unstable; urgency=low
+ncurses6 (6.3+20211021) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 09 Feb 2020 18:35:50 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Wed, 20 Oct 2021 18:43:08 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
diff --git a/package/debian-mingw/compat b/package/debian-mingw/compat
index ec63514..f599e28 100644
--- a/package/debian-mingw/compat
+++ b/package/debian-mingw/compat
@@ -1 +1 @@
-9
+10
diff --git a/package/debian-mingw/copyright b/package/debian-mingw/copyright
index 1ce7099..a01b3ee 100644
--- a/package/debian-mingw/copyright
+++ b/package/debian-mingw/copyright
@@ -5,11 +5,12 @@ Current ncurses maintainer: Thomas Dickey <dickey@invisible-island.net>
-------------------------------------------------------------------------------
Files: *
-Copyright: 1998-2019,2020 Free Software Foundation, Inc.
+Copyright: 2017-2020,2021 by Thomas E. Dickey
+Copyright: 1998-2016,2017 Free Software Foundation, Inc.
Licence: X11
Files: aclocal.m4 package
-Copyright: 1996-2019,2020 by Thomas E. Dickey
+Copyright: 1996-2020,2021 by Thomas E. Dickey
Licence: X11
Files: doc/html/NCURSES-Programming-HOWTO.html
diff --git a/package/debian-mingw64/changelog b/package/debian-mingw64/changelog
index 4401f1a..ddce3cf 100644
--- a/package/debian-mingw64/changelog
+++ b/package/debian-mingw64/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200212) unstable; urgency=low
+ncurses6 (6.3+20211021) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 09 Feb 2020 18:35:50 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Wed, 20 Oct 2021 18:43:08 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
diff --git a/package/debian-mingw64/compat b/package/debian-mingw64/compat
index ec63514..f599e28 100644
--- a/package/debian-mingw64/compat
+++ b/package/debian-mingw64/compat
@@ -1 +1 @@
-9
+10
diff --git a/package/debian-mingw64/copyright b/package/debian-mingw64/copyright
index 1ce7099..a01b3ee 100644
--- a/package/debian-mingw64/copyright
+++ b/package/debian-mingw64/copyright
@@ -5,11 +5,12 @@ Current ncurses maintainer: Thomas Dickey <dickey@invisible-island.net>
-------------------------------------------------------------------------------
Files: *
-Copyright: 1998-2019,2020 Free Software Foundation, Inc.
+Copyright: 2017-2020,2021 by Thomas E. Dickey
+Copyright: 1998-2016,2017 Free Software Foundation, Inc.
Licence: X11
Files: aclocal.m4 package
-Copyright: 1996-2019,2020 by Thomas E. Dickey
+Copyright: 1996-2020,2021 by Thomas E. Dickey
Licence: X11
Files: doc/html/NCURSES-Programming-HOWTO.html
diff --git a/package/debian/changelog b/package/debian/changelog
index 4bc6392..da9c2dc 100644
--- a/package/debian/changelog
+++ b/package/debian/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200212) unstable; urgency=low
+ncurses6 (6.3+20211021) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 09 Feb 2020 18:35:50 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Wed, 20 Oct 2021 18:43:08 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
diff --git a/package/debian/compat b/package/debian/compat
index ec63514..f599e28 100644
--- a/package/debian/compat
+++ b/package/debian/compat
@@ -1 +1 @@
-9
+10
diff --git a/package/debian/copyright b/package/debian/copyright
index 1ce7099..a01b3ee 100644
--- a/package/debian/copyright
+++ b/package/debian/copyright
@@ -5,11 +5,12 @@ Current ncurses maintainer: Thomas Dickey <dickey@invisible-island.net>
-------------------------------------------------------------------------------
Files: *
-Copyright: 1998-2019,2020 Free Software Foundation, Inc.
+Copyright: 2017-2020,2021 by Thomas E. Dickey
+Copyright: 1998-2016,2017 Free Software Foundation, Inc.
Licence: X11
Files: aclocal.m4 package
-Copyright: 1996-2019,2020 by Thomas E. Dickey
+Copyright: 1996-2020,2021 by Thomas E. Dickey
Licence: X11
Files: doc/html/NCURSES-Programming-HOWTO.html
diff --git a/package/debian/rules b/package/debian/rules
index 06c088a..287c758 100755
--- a/package/debian/rules
+++ b/package/debian/rules
@@ -1,7 +1,5 @@
#!/usr/bin/make -f
-# Made with the aid of dh_make, by Craig Small
-# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
-# Some lines taken from debmake, by Cristoph Lameter.
+# $Id: rules,v 1.41 2021/10/11 18:18:08 tom Exp $
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
@@ -69,6 +67,7 @@ configure = \
--enable-opaque-menu \
--enable-opaque-panel \
--enable-pc-files \
+ --enable-stdnoreturn \
--enable-warnings \
--enable-wgetch-events \
--enable-widec \
@@ -90,6 +89,7 @@ configure = \
--with-xterm-kbs=DEL \
--without-ada \
--without-debug \
+ --without-manpage-aliases \
--without-normal
NCURSES6_DIR = $(CURDIR)/debian/ncurses6
@@ -120,14 +120,29 @@ build-arch: $(PACKAGES.arch:%=build-%-stamp)
install-indep: $(PACKAGES.indep:%=install-%-stamp)
install-arch: $(PACKAGES.arch:%=install-%-stamp)
-config-ncurses6-stamp:
+# make the doc-package installable by renaming everything to avoid clashing
+patch-ncurses6-stamp:
+ dh_testdir
+ sed -i.bak \
+ -e 's/-config\.1$$/dev-config.1/;t' \
+ -e 's/\.3ncurses$$/.3ncurses6/' \
+ -e 's/\.3curses$$/.3curses6/' \
+ -e 's/\.3form$$/.3form6/' \
+ -e 's/\.3menu$$/.3menu6/' \
+ -e 's/\.3panel$$/.3panel6/' \
+ -e 's/\.\([157]\)$$/6.\1/' \
+ man/man_db.renames
+ diff -u man/man_db.renames.bak man/man_db.renames || true
+ touch $@
+
+config-ncurses6-stamp: patch-ncurses6-stamp
dh_testdir
rm -rf t/ncurses6
mkdir -p t/ncurses6
cd t/ncurses6; $(configure)
touch $@
-config-ncursest6-stamp:
+config-ncursest6-stamp: patch-ncurses6-stamp
dh_testdir
rm -rf t/ncursest6
mkdir -p t/ncursest6
@@ -194,6 +209,8 @@ install-ncurses6-doc-stamp: build-ncurses6-stamp
$(MAKE) -C t/ncurses6 install.man DESTDIR=$(NCURSES6_DIR)-doc
+ cd $(NCURSES6_DIR)-doc/usr/share/man/man1 && ln -sf tset6.1.gz reset6.1.gz
+
touch $@
HTML_DESTDIR=$(NCURSES6_DIR)-doc-html/usr/share/ncurses6-doc-html
diff --git a/package/mingw-ncurses.nsi b/package/mingw-ncurses.nsi
index f608756..cf26efb 100644
--- a/package/mingw-ncurses.nsi
+++ b/package/mingw-ncurses.nsi
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.377 2020/02/09 23:35:50 tom Exp $
+; $Id: mingw-ncurses.nsi,v 1.486 2021/10/20 22:43:08 tom Exp $
; TODO add examples
; TODO bump ABI to 6
@@ -8,9 +8,9 @@
!define EXENAME "ncurses.exe"
!define VERSION_MAJOR "6"
-!define VERSION_MINOR "2"
-!define VERSION_YYYY "2020"
-!define VERSION_MMDD "0212"
+!define VERSION_MINOR "3"
+!define VERSION_YYYY "2021"
+!define VERSION_MMDD "1021"
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
!define MY_ABI "5"
@@ -32,7 +32,7 @@ CRCCheck on
SetCompressor /SOLID lzma
VIAddVersionKey ProductName "${SUBKEY}"
-VIAddVersionKey CompanyName "http://invisible-island.net"
+VIAddVersionKey CompanyName "https://invisible-island.net"
VIAddVersionKey FileDescription "NCurses Installer (MinGW)"
VIAddVersionKey FileVersion ${VERSION_FULL}
VIAddVersionKey ProductVersion ${VERSION_FULL}
diff --git a/package/mingw-ncurses.spec b/package/mingw-ncurses.spec
index d529dfb..7dd1f8e 100644
--- a/package/mingw-ncurses.spec
+++ b/package/mingw-ncurses.spec
@@ -2,8 +2,8 @@
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
-Version: 6.2
-Release: 20200212
+Version: 6.3
+Release: 20211021
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
diff --git a/package/ncurses.map b/package/ncurses.map
index 1c400de..7eb1ed1 100644
--- a/package/ncurses.map
+++ b/package/ncurses.map
@@ -1,4 +1,4 @@
-# $Id: ncurses.map,v 1.51 2020/02/04 11:44:12 tom Exp $
+# $Id: ncurses.map,v 1.55 2021/10/10 15:22:33 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
@@ -1206,6 +1206,14 @@ NCURSES_TINFO_6.2.20200212 {
_nc_wacs_width;
curses_trace;
exit_terminfo;
+} NCURSES_TINFO_6.1.20171230;
+
+NCURSES_TINFO_6.2.20211010 {
+ global:
+ _nc_reset_tparm;
+ _nc_safe_fopen;
+ _nc_safe_open3;
+ _nc_tiparm;
local:
_*;
-} NCURSES_TINFO_6.1.20171230;
+} NCURSES_TINFO_6.2.20200212;
diff --git a/package/ncurses.spec b/package/ncurses.spec
index b628790..e7d1945 100644
--- a/package/ncurses.spec
+++ b/package/ncurses.spec
@@ -1,7 +1,7 @@
Summary: shared libraries for terminal handling
Name: ncurses6
-Version: 6.2
-Release: 20200212
+Version: 6.3
+Release: 20211021
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
@@ -77,7 +77,8 @@ This package is used for testing ABI %{MY_ABI}.
--enable-opaque-menu \\\
--enable-opaque-panel \\\
--enable-pc-files \\\
- --enable-rpath \\\
+ --disable-rpath \\\
+ --enable-stdnoreturn \\\
--enable-warnings \\\
--enable-wgetch-events \\\
--enable-widec \\\
@@ -139,6 +140,9 @@ exit 0
%changelog
+* Sat Oct 16 2021 Thomas Dickey
+- disable rpath to address QA_RPATHS=1 warning.
+
* Tue Dec 24 2019 Thomas Dickey
- drop custom CC_NORMAL warning flags because setting CFLAGS interferes with
matching Fedora's PIE/PIC configuration. Also, generate debug/debug-source
diff --git a/package/ncurses.sym b/package/ncurses.sym
index d9f8b93..d2f6fbc 100644
--- a/package/ncurses.sym
+++ b/package/ncurses.sym
@@ -1,4 +1,4 @@
-# $Id: ncurses.sym,v 1.35 2019/12/14 22:40:34 tom Exp $
+# $Id: ncurses.sym,v 1.37 2021/08/19 23:50:26 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
@@ -176,6 +176,7 @@ _nc_read_entry_source
_nc_read_file_entry
_nc_read_termtype
_nc_reset_input
+_nc_reset_tparm
_nc_resolve_uses
_nc_resolve_uses2
_nc_retrace_attr_t
@@ -192,6 +193,8 @@ _nc_retrace_void_ptr
_nc_retrace_win
_nc_ripoffline
_nc_rootname
+_nc_safe_fopen
+_nc_safe_open3
_nc_safe_strcat
_nc_safe_strcpy
_nc_screen_chain
@@ -220,6 +223,7 @@ _nc_tic_written
_nc_timed_wait
_nc_tinfo_fkeys
_nc_tinfo_fkeysf
+_nc_tiparm
_nc_tparm_analyze
_nc_tparm_err
_nc_tputs_trace
diff --git a/package/ncursest.map b/package/ncursest.map
index 643dc8e..205265d 100644
--- a/package/ncursest.map
+++ b/package/ncursest.map
@@ -1,4 +1,4 @@
-# $Id: ncursest.map,v 1.49 2020/02/04 11:44:12 tom Exp $
+# $Id: ncursest.map,v 1.53 2021/10/10 15:22:33 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
@@ -485,9 +485,17 @@ NCURSES_TINFO_6.2.20200212 {
_nc_wacs_width;
curses_trace;
exit_terminfo;
+} NCURSES_TINFO_6.1.20171230;
+
+NCURSES_TINFO_6.2.20211010 {
+ global:
+ _nc_reset_tparm;
+ _nc_safe_fopen;
+ _nc_safe_open3;
+ _nc_tiparm;
local:
_*;
-} NCURSES_TINFO_6.1.20171230;
+} NCURSES_TINFO_6.2.20200212;
NCURSEST_5.7.20081102 {
global:
diff --git a/package/ncursest.spec b/package/ncursest.spec
index 709539e..35a70b2 100644
--- a/package/ncursest.spec
+++ b/package/ncursest.spec
@@ -1,7 +1,7 @@
Summary: Curses library with POSIX thread support.
Name: ncursest6
-Version: 6.2
-Release: 20200212
+Version: 6.3
+Release: 20211021
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
diff --git a/package/ncursest.sym b/package/ncursest.sym
index 021b819..f50ce3d 100644
--- a/package/ncursest.sym
+++ b/package/ncursest.sym
@@ -1,4 +1,4 @@
-# $Id: ncursest.sym,v 1.39 2019/12/14 22:42:32 tom Exp $
+# $Id: ncursest.sym,v 1.41 2021/08/19 23:50:26 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
@@ -183,6 +183,7 @@ _nc_read_entry_source
_nc_read_file_entry
_nc_read_termtype
_nc_reset_input
+_nc_reset_tparm
_nc_resolve_uses
_nc_resolve_uses2
_nc_retrace_attr_t
@@ -199,6 +200,8 @@ _nc_retrace_void_ptr
_nc_retrace_win
_nc_ripoffline
_nc_rootname
+_nc_safe_fopen
+_nc_safe_open3
_nc_safe_strcat
_nc_safe_strcpy
_nc_screen
@@ -234,6 +237,7 @@ _nc_tic_written
_nc_timed_wait
_nc_tinfo_fkeys
_nc_tinfo_fkeysf
+_nc_tiparm
_nc_tparm_analyze
_nc_tparm_err
_nc_trace_buf
diff --git a/package/ncursestw.map b/package/ncursestw.map
index 0c932b9..f514b97 100644
--- a/package/ncursestw.map
+++ b/package/ncursestw.map
@@ -1,4 +1,4 @@
-# $Id: ncursestw.map,v 1.51 2020/02/04 11:44:12 tom Exp $
+# $Id: ncursestw.map,v 1.56 2021/10/10 15:22:33 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
@@ -491,9 +491,19 @@ NCURSES_TINFO_6.2.20200212 {
_nc_wacs_width;
curses_trace;
exit_terminfo;
+} NCURSES_TINFO_6.1.20171230;
+
+NCURSES_TINFO_6.2.20211010 {
+ global:
+ _nc_reset_tparm;
+ _nc_tiparm;
+ _nc_safe_fopen;
+ _nc_safe_open3;
+ erasewchar_sp;
+ killwchar_sp;
local:
_*;
-} NCURSES_TINFO_6.1.20171230;
+} NCURSES_TINFO_6.2.20200212;
NCURSESTW_5.7.20081102 {
global:
diff --git a/package/ncursestw.sym b/package/ncursestw.sym
index 5d12a53..1668f40 100644
--- a/package/ncursestw.sym
+++ b/package/ncursestw.sym
@@ -1,4 +1,4 @@
-# $Id: ncursestw.sym,v 1.38 2019/12/14 22:44:31 tom Exp $
+# $Id: ncursestw.sym,v 1.41 2021/08/19 23:50:26 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
@@ -183,6 +183,7 @@ _nc_read_entry_source
_nc_read_file_entry
_nc_read_termtype
_nc_reset_input
+_nc_reset_tparm
_nc_resolve_uses
_nc_resolve_uses2
_nc_retrace_attr_t
@@ -199,6 +200,8 @@ _nc_retrace_void_ptr
_nc_retrace_win
_nc_ripoffline
_nc_rootname
+_nc_safe_fopen
+_nc_safe_open3
_nc_safe_strcat
_nc_safe_strcpy
_nc_screen
@@ -234,6 +237,7 @@ _nc_tic_written
_nc_timed_wait
_nc_tinfo_fkeys
_nc_tinfo_fkeysf
+_nc_tiparm
_nc_tparm_analyze
_nc_tparm_err
_nc_trace_buf
@@ -355,6 +359,7 @@ erase
erasechar
erasechar_sp
erasewchar
+erasewchar_sp
exit_curses
exit_terminfo
extended_color_content
@@ -524,6 +529,7 @@ keypad
killchar
killchar_sp
killwchar
+killwchar_sp
leaveok
link_field
link_fieldtype
diff --git a/package/ncursesw.map b/package/ncursesw.map
index da68b73..13e8faf 100644
--- a/package/ncursesw.map
+++ b/package/ncursesw.map
@@ -1,4 +1,4 @@
-# $Id: ncursesw.map,v 1.54 2020/02/04 11:44:12 tom Exp $
+# $Id: ncursesw.map,v 1.59 2021/10/10 15:22:33 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
@@ -485,9 +485,19 @@ NCURSES_TINFO_6.2.20200212 {
_nc_wacs_width;
curses_trace;
exit_terminfo;
+} NCURSES_TINFO_6.1.20171230;
+
+NCURSES_TINFO_6.2.20211010 {
+ global:
+ _nc_reset_tparm;
+ _nc_tiparm;
+ _nc_safe_fopen;
+ _nc_safe_open3;
+ erasewchar_sp;
+ killwchar_sp;
local:
_*;
-} NCURSES_TINFO_6.1.20171230;
+} NCURSES_TINFO_6.2.20200212;
NCURSESW_5.1.20000708 {
global:
diff --git a/package/ncursesw.sym b/package/ncursesw.sym
index d8d3fd8..a17fd79 100644
--- a/package/ncursesw.sym
+++ b/package/ncursesw.sym
@@ -1,4 +1,4 @@
-# $Id: ncursesw.sym,v 1.37 2019/12/14 22:45:41 tom Exp $
+# $Id: ncursesw.sym,v 1.40 2021/08/19 23:50:26 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
@@ -172,6 +172,7 @@ _nc_read_entry_source
_nc_read_file_entry
_nc_read_termtype
_nc_reset_input
+_nc_reset_tparm
_nc_resolve_uses
_nc_resolve_uses2
_nc_retrace_attr_t
@@ -188,6 +189,8 @@ _nc_retrace_void_ptr
_nc_retrace_win
_nc_ripoffline
_nc_rootname
+_nc_safe_fopen
+_nc_safe_open3
_nc_safe_strcat
_nc_safe_strcpy
_nc_screen_chain
@@ -215,6 +218,7 @@ _nc_tic_expand
_nc_tic_written
_nc_timed_wait
_nc_tinfo_fkeys
+_nc_tiparm
_nc_tparm_analyze
_nc_tparm_err
_nc_tputs_trace
@@ -232,11 +236,11 @@ _nc_visbuf
_nc_visbuf2
_nc_visbufn
_nc_viscbuf
-_nc_wacs_width
_nc_viswbuf
_nc_viswbufn
_nc_viswibuf
_nc_wacs
+_nc_wacs_width
_nc_warning
_nc_wchstrlen
_nc_wcrtomb
@@ -343,6 +347,7 @@ erase
erasechar
erasechar_sp
erasewchar
+erasewchar_sp
exit_curses
exit_terminfo
extended_color_content
@@ -512,6 +517,7 @@ keypad
killchar
killchar_sp
killwchar
+killwchar_sp
leaveok
link_field
link_fieldtype
diff --git a/panel/Makefile.in b/panel/Makefile.in
index 5f7b5b9..380f80c 100644
--- a/panel/Makefile.in
+++ b/panel/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.71 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.76 2021/07/03 15:45:33 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -92,16 +92,18 @@ ETAGS = @ETAGS@
CC = @CC@
CPP = @CPP@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
-CPPFLAGS = -I${top_srcdir}/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
+INCDIR = $(top_srcdir)/include
+BASE_DIR = $(top_srcdir)/ncurses
+CPPFLAGS = -I$(BASE_DIR) -DHAVE_CONFIG_H -DBUILDING_PANEL @CPPFLAGS@
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
CFLAGS_LIBTOOL = $(CCFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -134,6 +136,19 @@ AUTO_SRC = \
../include/panel.h
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+
all \
libs \
install :: $(AUTO_SRC) $(LIBRARIES)
@@ -151,6 +166,20 @@ $(DESTDIR)$(libdir) :
cp $(srcdir)/panel.h $@
HEADER_DEPS = \
+ ../include/curses.h \
+ ../include/ncurses_cfg.h \
+ ../include/ncurses_def.h \
+ ../include/ncurses_dll.h \
+ ../include/term.h \
+ ../include/unctrl.h \
+ $(BASE_DIR)/curses.priv.h \
+ $(BASE_DIR)/new_pair.h \
+ $(INCDIR)/nc_alloc.h \
+ $(INCDIR)/nc_panel.h \
+ $(INCDIR)/nc_string.h \
+ $(INCDIR)/nc_termios.h \
+ $(INCDIR)/nc_tparm.h \
+ $(INCDIR)/term_entry.h \
$(srcdir)/panel.priv.h \
$(srcdir)/panel.h
diff --git a/panel/llib-lpanel b/panel/llib-lpanel
index a3cf6f0..afdea20 100644
--- a/panel/llib-lpanel
+++ b/panel/llib-lpanel
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,19 +43,20 @@ PANEL *_nc_retrace_panel(
#undef _nc_my_visbuf
const char *_nc_my_visbuf(
- const void *ptr)
+ const void *ptr,
+ int n)
{ return(*(const char **)0); }
#undef _nc_dPanel
void _nc_dPanel(
- const char *text,
+ const char *text,
const PANEL *pan)
{ /* void */ }
#undef _nc_dStack
void _nc_dStack(
- const char *fmt,
- int num,
+ const char *fmt,
+ int num,
const PANEL *pan)
{ /* void */ }
@@ -71,8 +72,8 @@ void _nc_Touchpan(
#undef _nc_Touchline
void _nc_Touchline(
- const PANEL *pan,
- int start,
+ const PANEL *pan,
+ int start,
int count)
{ /* void */ }
@@ -132,8 +133,8 @@ int panel_hidden(
#undef move_panel
int move_panel(
- PANEL *pan,
- int starty,
+ PANEL *pan,
+ int starty,
int startx)
{ return(*(int *)0); }
@@ -148,7 +149,7 @@ PANEL *new_panel(
#undef replace_panel
int replace_panel(
- PANEL *pan,
+ PANEL *pan,
WINDOW *win)
{ return(*(int *)0); }
@@ -181,7 +182,7 @@ void update_panels(void)
#undef set_panel_userptr
int set_panel_userptr(
- PANEL *pan,
+ PANEL *pan,
const void *uptr)
{ return(*(int *)0); }
diff --git a/panel/llib-lpanelt b/panel/llib-lpanelt
index 331e87a..0b99683 100644
--- a/panel/llib-lpanelt
+++ b/panel/llib-lpanelt
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,19 +43,20 @@ PANEL *_nc_retrace_panel(
#undef _nc_my_visbuf
const char *_nc_my_visbuf(
- const void *ptr)
+ const void *ptr,
+ int n)
{ return(*(const char **)0); }
#undef _nc_dPanel
void _nc_dPanel(
- const char *text,
+ const char *text,
const PANEL *pan)
{ /* void */ }
#undef _nc_dStack
void _nc_dStack(
- const char *fmt,
- int num,
+ const char *fmt,
+ int num,
const PANEL *pan)
{ /* void */ }
@@ -71,8 +72,8 @@ void _nc_Touchpan(
#undef _nc_Touchline
void _nc_Touchline(
- const PANEL *pan,
- int start,
+ const PANEL *pan,
+ int start,
int count)
{ /* void */ }
@@ -132,8 +133,8 @@ int panel_hidden(
#undef move_panel
int move_panel(
- PANEL *pan,
- int starty,
+ PANEL *pan,
+ int starty,
int startx)
{ return(*(int *)0); }
@@ -148,7 +149,7 @@ PANEL *new_panel(
#undef replace_panel
int replace_panel(
- PANEL *pan,
+ PANEL *pan,
WINDOW *win)
{ return(*(int *)0); }
@@ -181,7 +182,7 @@ void update_panels(void)
#undef set_panel_userptr
int set_panel_userptr(
- PANEL *pan,
+ PANEL *pan,
const void *uptr)
{ return(*(int *)0); }
diff --git a/panel/llib-lpaneltw b/panel/llib-lpaneltw
index 331e87a..0b99683 100644
--- a/panel/llib-lpaneltw
+++ b/panel/llib-lpaneltw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,19 +43,20 @@ PANEL *_nc_retrace_panel(
#undef _nc_my_visbuf
const char *_nc_my_visbuf(
- const void *ptr)
+ const void *ptr,
+ int n)
{ return(*(const char **)0); }
#undef _nc_dPanel
void _nc_dPanel(
- const char *text,
+ const char *text,
const PANEL *pan)
{ /* void */ }
#undef _nc_dStack
void _nc_dStack(
- const char *fmt,
- int num,
+ const char *fmt,
+ int num,
const PANEL *pan)
{ /* void */ }
@@ -71,8 +72,8 @@ void _nc_Touchpan(
#undef _nc_Touchline
void _nc_Touchline(
- const PANEL *pan,
- int start,
+ const PANEL *pan,
+ int start,
int count)
{ /* void */ }
@@ -132,8 +133,8 @@ int panel_hidden(
#undef move_panel
int move_panel(
- PANEL *pan,
- int starty,
+ PANEL *pan,
+ int starty,
int startx)
{ return(*(int *)0); }
@@ -148,7 +149,7 @@ PANEL *new_panel(
#undef replace_panel
int replace_panel(
- PANEL *pan,
+ PANEL *pan,
WINDOW *win)
{ return(*(int *)0); }
@@ -181,7 +182,7 @@ void update_panels(void)
#undef set_panel_userptr
int set_panel_userptr(
- PANEL *pan,
+ PANEL *pan,
const void *uptr)
{ return(*(int *)0); }
diff --git a/panel/llib-lpanelw b/panel/llib-lpanelw
index 463a02e..7ed8b3c 100644
--- a/panel/llib-lpanelw
+++ b/panel/llib-lpanelw
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2002-2010,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,19 +43,20 @@ PANEL *_nc_retrace_panel(
#undef _nc_my_visbuf
const char *_nc_my_visbuf(
- const void *ptr)
+ const void *ptr,
+ int n)
{ return(*(const char **)0); }
#undef _nc_dPanel
void _nc_dPanel(
- const char *text,
+ const char *text,
const PANEL *pan)
{ /* void */ }
#undef _nc_dStack
void _nc_dStack(
- const char *fmt,
- int num,
+ const char *fmt,
+ int num,
const PANEL *pan)
{ /* void */ }
@@ -71,8 +72,8 @@ void _nc_Touchpan(
#undef _nc_Touchline
void _nc_Touchline(
- const PANEL *pan,
- int start,
+ const PANEL *pan,
+ int start,
int count)
{ /* void */ }
@@ -132,8 +133,8 @@ int panel_hidden(
#undef move_panel
int move_panel(
- PANEL *pan,
- int starty,
+ PANEL *pan,
+ int starty,
int startx)
{ return(*(int *)0); }
@@ -148,7 +149,7 @@ PANEL *new_panel(
#undef replace_panel
int replace_panel(
- PANEL *pan,
+ PANEL *pan,
WINDOW *win)
{ return(*(int *)0); }
@@ -181,7 +182,7 @@ void update_panels(void)
#undef set_panel_userptr
int set_panel_userptr(
- PANEL *pan,
+ PANEL *pan,
const void *uptr)
{ return(*(int *)0); }
diff --git a/panel/p_above.c b/panel/p_above.c
index 12b5b87..2a6fde5 100644
--- a/panel/p_above.c
+++ b/panel/p_above.c
@@ -37,10 +37,10 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_above.c,v 1.10 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_above.c,v 1.11 2020/05/24 01:40:20 anonymous.maarten Exp $")
#if NCURSES_SP_FUNCS
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
ground_panel(SCREEN * sp)
{
T((T_CALLED("ground_panel(%p)"), (void *)sp));
@@ -63,7 +63,7 @@ ground_panel(SCREEN * sp)
}
#endif
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
panel_above(const PANEL * pan)
{
PANEL *result;
diff --git a/panel/p_below.c b/panel/p_below.c
index a8b1ef4..100393d 100644
--- a/panel/p_below.c
+++ b/panel/p_below.c
@@ -37,10 +37,10 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_below.c,v 1.10 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_below.c,v 1.11 2020/05/24 01:40:20 anonymous.maarten Exp $")
#if NCURSES_SP_FUNCS
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
ceiling_panel(SCREEN * sp)
{
T((T_CALLED("ceiling_panel(%p)"), (void *)sp));
@@ -61,7 +61,7 @@ ceiling_panel(SCREEN * sp)
}
#endif
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
panel_below(const PANEL * pan)
{
PANEL *result;
diff --git a/panel/p_bottom.c b/panel/p_bottom.c
index a69ac9f..3ca9c77 100644
--- a/panel/p_bottom.c
+++ b/panel/p_bottom.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2008,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -34,13 +34,13 @@
****************************************************************************/
/* p_bottom.c
- * Place a panel on bottom of the stack; may already be in the stack
+ * Place a panel on bottom of the stack; may already be in the stack
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_bottom.c,v 1.14 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_bottom.c,v 1.17 2021/06/17 21:20:30 tom Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
bottom_panel(PANEL * pan)
{
int err = OK;
@@ -52,7 +52,7 @@ bottom_panel(PANEL * pan)
if (!Is_Bottom(pan))
{
- dBug(("--> bottom_panel %s", USER_PTR(pan->user)));
+ dBug(("--> bottom_panel %s", USER_PTR(pan->user, 1)));
HIDE_PANEL(pan, err, OK);
assert(_nc_bottom_panel == _nc_stdscr_pseudo_panel);
diff --git a/panel/p_delete.c b/panel/p_delete.c
index 6b122a6..da3dcdf 100644
--- a/panel/p_delete.c
+++ b/panel/p_delete.c
@@ -38,22 +38,21 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_delete.c,v 1.11 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_delete.c,v 1.17 2020/12/26 18:25:34 tom Exp $")
-NCURSES_EXPORT(int)
-del_panel(PANEL * pan)
+PANEL_EXPORT(int)
+del_panel(PANEL *pan)
{
int err = OK;
T((T_CALLED("del_panel(%p)"), (void *)pan));
if (pan)
{
- dBug(("--> del_panel %s", USER_PTR(pan->user)));
- {
- GetHook(pan);
- HIDE_PANEL(pan, err, OK);
- free((void *)pan);
- }
+ GetHook(pan);
+ HIDE_PANEL(pan, err, OK);
+ dBug(("...discard ptr=%s", USER_PTR(pan->user, 1)));
+ dBug(("...deleted pan=%p", (void *)pan));
+ free((void *)pan);
}
else
err = ERR;
diff --git a/panel/p_hidden.c b/panel/p_hidden.c
index ddb23b1..43057fa 100644
--- a/panel/p_hidden.c
+++ b/panel/p_hidden.c
@@ -38,9 +38,9 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_hidden.c,v 1.10 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_hidden.c,v 1.11 2020/05/24 01:40:20 anonymous.maarten Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
panel_hidden(const PANEL * pan)
{
int rc = ERR;
diff --git a/panel/p_hide.c b/panel/p_hide.c
index fc26f75..6a372ac 100644
--- a/panel/p_hide.c
+++ b/panel/p_hide.c
@@ -37,9 +37,9 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_hide.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_hide.c,v 1.14 2020/09/26 18:02:35 tom Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
hide_panel(register PANEL * pan)
{
int err = ERR;
@@ -50,7 +50,7 @@ hide_panel(register PANEL * pan)
{
GetHook(pan);
- dBug(("--> hide_panel %s", USER_PTR(pan->user)));
+ dBug(("--> hide_panel %s", USER_PTR(pan->user, 1)));
dStack("<u%d>", 1, pan);
HIDE_PANEL(pan, err, ERR);
diff --git a/panel/p_move.c b/panel/p_move.c
index 02830bf..7ff6fa7 100644
--- a/panel/p_move.c
+++ b/panel/p_move.c
@@ -38,9 +38,9 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_move.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_move.c,v 1.13 2020/05/24 01:40:20 anonymous.maarten Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
move_panel(PANEL * pan, int starty, int startx)
{
int rc = ERR;
diff --git a/panel/p_new.c b/panel/p_new.c
index d2f8d03..37f851d 100644
--- a/panel/p_new.c
+++ b/panel/p_new.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -35,15 +35,33 @@
****************************************************************************/
/* p_new.c
- * Creation of a new panel
+ * Creation of a new panel
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_new.c,v 1.17 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_new.c,v 1.23 2021/06/17 21:20:30 tom Exp $")
#ifdef TRACE
static char *stdscr_id;
static char *new_id;
+
+static PANEL *
+AllocPanel(const char *name)
+{
+ PANEL *result = typeMalloc(PANEL, 1);
+
+ _tracef("create :%s %p", name, (void *)result);
+ return result;
+}
+#define InitUser(name) \
+ if (!name ## _id) \
+ name ## _id = strdup(#name); \
+ pan->user = name ## _id; \
+ _tracef("create :user_ptr %p", pan->user)
+#else
+#define AllocPanel(name) typeMalloc(PANEL, 1)
+#define InitUser(name) \
+ pan->user = (void *)0
#endif
/*+-------------------------------------------------------------------------
@@ -60,39 +78,33 @@ root_panel(NCURSES_SP_DCL0)
struct panelhook *ph = _nc_panelhook();
#endif
- if (_nc_stdscr_pseudo_panel == (PANEL *) 0)
+ if (_nc_stdscr_pseudo_panel == (PANEL *)0)
{
assert(SP_PARM && SP_PARM->_stdscr && !_nc_bottom_panel && !_nc_top_panel);
#if NO_LEAKS
ph->destroy = del_panel;
#endif
- _nc_stdscr_pseudo_panel = typeMalloc(PANEL, 1);
+ _nc_stdscr_pseudo_panel = AllocPanel("root_panel");
if (_nc_stdscr_pseudo_panel != 0)
{
PANEL *pan = _nc_stdscr_pseudo_panel;
WINDOW *win = SP_PARM->_stdscr;
pan->win = win;
- pan->below = (PANEL *) 0;
- pan->above = (PANEL *) 0;
-#ifdef TRACE
- if (!stdscr_id)
- stdscr_id = strdup("stdscr");
- pan->user = stdscr_id;
-#else
- pan->user = (void *)0;
-#endif
+ pan->below = (PANEL *)0;
+ pan->above = (PANEL *)0;
+ InitUser(stdscr);
_nc_bottom_panel = _nc_top_panel = pan;
}
}
return _nc_stdscr_pseudo_panel;
}
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
new_panel(WINDOW *win)
{
- PANEL *pan = (PANEL *) 0;
+ PANEL *pan = (PANEL *)0;
GetWindowHook(win);
@@ -105,18 +117,12 @@ new_panel(WINDOW *win)
(void)root_panel(NCURSES_SP_ARG);
assert(_nc_stdscr_pseudo_panel);
- if (!(win->_flags & _ISPAD) && (pan = typeMalloc(PANEL, 1)))
+ if (!(win->_flags & _ISPAD) && (pan = AllocPanel("new_panel")))
{
pan->win = win;
- pan->above = (PANEL *) 0;
- pan->below = (PANEL *) 0;
-#ifdef TRACE
- if (!new_id)
- new_id = strdup("new");
- pan->user = new_id;
-#else
- pan->user = (char *)0;
-#endif
+ pan->above = (PANEL *)0;
+ pan->below = (PANEL *)0;
+ InitUser(new);
(void)show_panel(pan);
}
returnPanel(pan);
diff --git a/panel/p_replace.c b/panel/p_replace.c
index 5acbccf..a2d56ae 100644
--- a/panel/p_replace.c
+++ b/panel/p_replace.c
@@ -37,9 +37,9 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_replace.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_replace.c,v 1.13 2020/05/24 01:40:20 anonymous.maarten Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
replace_panel(PANEL * pan, WINDOW *win)
{
int rc = ERR;
diff --git a/panel/p_show.c b/panel/p_show.c
index 933bf5a..3503bec 100644
--- a/panel/p_show.c
+++ b/panel/p_show.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,13 +33,13 @@
****************************************************************************/
/* p_show.c
- * Place a panel on top of the stack; may already be in the stack
+ * Place a panel on top of the stack; may already be in the stack
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_show.c,v 1.14 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_show.c,v 1.17 2021/06/17 21:20:30 tom Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
show_panel(PANEL * pan)
{
int err = ERR;
@@ -53,7 +53,7 @@ show_panel(PANEL * pan)
if (Is_Top(pan))
returnCode(OK);
- dBug(("--> show_panel %s", USER_PTR(pan->user)));
+ dBug(("--> show_panel %s", USER_PTR(pan->user, 1)));
HIDE_PANEL(pan, err, OK);
diff --git a/panel/p_top.c b/panel/p_top.c
index 09e89fc..17abd76 100644
--- a/panel/p_top.c
+++ b/panel/p_top.c
@@ -37,9 +37,9 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_top.c,v 1.7 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_top.c,v 1.8 2020/05/24 01:40:20 anonymous.maarten Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
top_panel(PANEL * pan)
{
T((T_CALLED("top_panel(%p)"), (void *)pan));
diff --git a/panel/p_update.c b/panel/p_update.c
index 3fe4770..4021296 100644
--- a/panel/p_update.c
+++ b/panel/p_update.c
@@ -38,9 +38,9 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_update.c,v 1.12 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_update.c,v 1.13 2020/05/24 01:40:20 anonymous.maarten Exp $")
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
NCURSES_SP_NAME(update_panels) (NCURSES_SP_DCL0)
{
PANEL *pan;
@@ -71,7 +71,7 @@ NCURSES_SP_NAME(update_panels) (NCURSES_SP_DCL0)
}
#if NCURSES_SP_FUNCS
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
update_panels(void)
{
NCURSES_SP_NAME(update_panels) (CURRENT_SCREEN);
diff --git a/panel/p_user.c b/panel/p_user.c
index 633431e..8d65097 100644
--- a/panel/p_user.c
+++ b/panel/p_user.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2005,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -33,13 +33,13 @@
****************************************************************************/
/* p_user.c
- * Set/Get panels user pointer
+ * Set/Get panels user pointer
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_user.c,v 1.9 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_user.c,v 1.11 2021/06/17 21:20:30 tom Exp $")
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
set_panel_userptr(PANEL * pan, NCURSES_CONST void *uptr)
{
T((T_CALLED("set_panel_userptr(%p,%p)"), (void *)pan, (NCURSES_CONST void *)uptr));
@@ -49,7 +49,7 @@ set_panel_userptr(PANEL * pan, NCURSES_CONST void *uptr)
returnCode(OK);
}
-NCURSES_EXPORT(NCURSES_CONST void *)
+PANEL_EXPORT(NCURSES_CONST void *)
panel_userptr(const PANEL * pan)
{
T((T_CALLED("panel_userptr(%p)"), (const void *)pan));
diff --git a/panel/p_win.c b/panel/p_win.c
index 023a71c..d188988 100644
--- a/panel/p_win.c
+++ b/panel/p_win.c
@@ -37,9 +37,9 @@
*/
#include "panel.priv.h"
-MODULE_ID("$Id: p_win.c,v 1.7 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: p_win.c,v 1.8 2020/05/24 01:40:20 anonymous.maarten Exp $")
-NCURSES_EXPORT(WINDOW *)
+PANEL_EXPORT(WINDOW *)
panel_window(const PANEL * pan)
{
T((T_CALLED("panel_window(%p)"), (const void *)pan));
diff --git a/panel/panel.c b/panel/panel.c
index a0e632d..1b2d6e8 100644
--- a/panel/panel.c
+++ b/panel/panel.c
@@ -37,13 +37,13 @@
/* panel.c -- implementation of panels library, some core routines */
#include "panel.priv.h"
-MODULE_ID("$Id: panel.c,v 1.27 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: panel.c,v 1.30 2020/09/26 18:05:17 tom Exp $")
/*+-------------------------------------------------------------------------
_nc_retrace_panel (pan)
--------------------------------------------------------------------------*/
#ifdef TRACE
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
_nc_retrace_panel(PANEL * pan)
{
T((T_RETURN("%p"), (void *)pan));
@@ -56,16 +56,16 @@ _nc_retrace_panel(PANEL * pan)
--------------------------------------------------------------------------*/
#ifdef TRACE
#ifndef TRACE_TXT
-NCURSES_EXPORT(const char *)
-_nc_my_visbuf(const void *ptr)
+PANEL_EXPORT(const char *)
+_nc_my_visbuf(const void *ptr, int n)
{
char temp[32];
if (ptr != 0)
- _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "ptr:%p", ptr);
+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "%p", ptr);
else
_nc_STRCPY(temp, "<null>", sizeof(temp));
- return _nc_visbuf(temp);
+ return _nc_visbuf2(n, temp);
}
#endif
#endif
@@ -74,13 +74,13 @@ _nc_my_visbuf(const void *ptr)
dPanel(text,pan)
--------------------------------------------------------------------------*/
#ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
_nc_dPanel(const char *text, const PANEL * pan)
{
_tracef("%s id=%s b=%s a=%s y=%d x=%d",
- text, USER_PTR(pan->user),
- (pan->below) ? USER_PTR(pan->below->user) : "--",
- (pan->above) ? USER_PTR(pan->above->user) : "--",
+ text, USER_PTR(pan->user, 1),
+ (pan->below) ? USER_PTR(pan->below->user, 2) : "--",
+ (pan->above) ? USER_PTR(pan->above->user, 3) : "--",
PSTARTY(pan), PSTARTX(pan));
}
#endif
@@ -89,7 +89,7 @@ _nc_dPanel(const char *text, const PANEL * pan)
dStack(fmt,num,pan)
--------------------------------------------------------------------------*/
#ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
_nc_dStack(const char *fmt, int num, const PANEL * pan)
{
char s80[80];
@@ -98,10 +98,10 @@ _nc_dStack(const char *fmt, int num, const PANEL * pan)
_nc_SPRINTF(s80, _nc_SLIMIT(sizeof(s80)) fmt, num, pan);
_tracef("%s b=%s t=%s", s80,
- (_nc_bottom_panel) ? USER_PTR(_nc_bottom_panel->user) : "--",
- (_nc_top_panel) ? USER_PTR(_nc_top_panel->user) : "--");
+ (_nc_bottom_panel) ? USER_PTR(_nc_bottom_panel->user, 1) : "--",
+ (_nc_top_panel) ? USER_PTR(_nc_top_panel->user, 2) : "--");
if (pan)
- _tracef("pan id=%s", USER_PTR(pan->user));
+ _tracef("pan id=%s", USER_PTR(pan->user, 1));
pan = _nc_bottom_panel;
while (pan)
{
@@ -115,7 +115,7 @@ _nc_dStack(const char *fmt, int num, const PANEL * pan)
Wnoutrefresh(pan) - debugging hook for wnoutrefresh
--------------------------------------------------------------------------*/
#ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
_nc_Wnoutrefresh(const PANEL * pan)
{
dPanel("wnoutrefresh", pan);
@@ -127,7 +127,7 @@ _nc_Wnoutrefresh(const PANEL * pan)
Touchpan(pan)
--------------------------------------------------------------------------*/
#ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
_nc_Touchpan(const PANEL * pan)
{
dPanel("Touchpan", pan);
@@ -139,7 +139,7 @@ _nc_Touchpan(const PANEL * pan)
Touchline(pan,start,count)
--------------------------------------------------------------------------*/
#ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
_nc_Touchline(const PANEL * pan, int start, int count)
{
char s80[80];
diff --git a/panel/panel.h b/panel/panel.h
index 2eebe17..62acc8f 100644
--- a/panel/panel.h
+++ b/panel/panel.h
@@ -33,7 +33,7 @@
* and: Juergen Pfeifer 1996-1999,2008 *
****************************************************************************/
-/* $Id: panel.h,v 1.13 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: panel.h,v 1.14 2020/07/04 20:38:43 tom Exp $ */
/* panel.h -- interface file for panels library */
@@ -57,27 +57,38 @@ PANEL;
extern "C" {
#endif
-extern NCURSES_EXPORT(WINDOW*) panel_window (const PANEL *);
-extern NCURSES_EXPORT(void) update_panels (void);
-extern NCURSES_EXPORT(int) hide_panel (PANEL *);
-extern NCURSES_EXPORT(int) show_panel (PANEL *);
-extern NCURSES_EXPORT(int) del_panel (PANEL *);
-extern NCURSES_EXPORT(int) top_panel (PANEL *);
-extern NCURSES_EXPORT(int) bottom_panel (PANEL *);
-extern NCURSES_EXPORT(PANEL*) new_panel (WINDOW *);
-extern NCURSES_EXPORT(PANEL*) panel_above (const PANEL *);
-extern NCURSES_EXPORT(PANEL*) panel_below (const PANEL *);
-extern NCURSES_EXPORT(int) set_panel_userptr (PANEL *, NCURSES_CONST void *);
-extern NCURSES_EXPORT(NCURSES_CONST void*) panel_userptr (const PANEL *);
-extern NCURSES_EXPORT(int) move_panel (PANEL *, int, int);
-extern NCURSES_EXPORT(int) replace_panel (PANEL *,WINDOW *);
-extern NCURSES_EXPORT(int) panel_hidden (const PANEL *);
+#if defined(BUILDING_PANEL)
+# define PANEL_IMPEXP NCURSES_EXPORT_GENERAL_EXPORT
+#else
+# define PANEL_IMPEXP NCURSES_EXPORT_GENERAL_IMPORT
+#endif
+
+#define PANEL_WRAPPED_VAR(type,name) extern PANEL_IMPEXP type NCURSES_PUBLIC_VAR(name)(void)
+
+#define PANEL_EXPORT(type) PANEL_IMPEXP type NCURSES_API
+#define PANEL_EXPORT_VAR(type) PANEL_IMPEXP type
+
+extern PANEL_EXPORT(WINDOW*) panel_window (const PANEL *);
+extern PANEL_EXPORT(void) update_panels (void);
+extern PANEL_EXPORT(int) hide_panel (PANEL *);
+extern PANEL_EXPORT(int) show_panel (PANEL *);
+extern PANEL_EXPORT(int) del_panel (PANEL *);
+extern PANEL_EXPORT(int) top_panel (PANEL *);
+extern PANEL_EXPORT(int) bottom_panel (PANEL *);
+extern PANEL_EXPORT(PANEL*) new_panel (WINDOW *);
+extern PANEL_EXPORT(PANEL*) panel_above (const PANEL *);
+extern PANEL_EXPORT(PANEL*) panel_below (const PANEL *);
+extern PANEL_EXPORT(int) set_panel_userptr (PANEL *, NCURSES_CONST void *);
+extern PANEL_EXPORT(NCURSES_CONST void*) panel_userptr (const PANEL *);
+extern PANEL_EXPORT(int) move_panel (PANEL *, int, int);
+extern PANEL_EXPORT(int) replace_panel (PANEL *,WINDOW *);
+extern PANEL_EXPORT(int) panel_hidden (const PANEL *);
#if NCURSES_SP_FUNCS
-extern NCURSES_EXPORT(PANEL *) ground_panel(SCREEN *);
-extern NCURSES_EXPORT(PANEL *) ceiling_panel(SCREEN *);
+extern PANEL_EXPORT(PANEL *) ground_panel(SCREEN *);
+extern PANEL_EXPORT(PANEL *) ceiling_panel(SCREEN *);
-extern NCURSES_EXPORT(void) NCURSES_SP_NAME(update_panels) (SCREEN*);
+extern PANEL_EXPORT(void) NCURSES_SP_NAME(update_panels) (SCREEN*);
#endif
#if defined(__cplusplus)
diff --git a/panel/panel.priv.h b/panel/panel.priv.h
index c8e3ea7..029a4f3 100644
--- a/panel/panel.priv.h
+++ b/panel/panel.priv.h
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
-/* $Id: panel.priv.h,v 1.28 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: panel.priv.h,v 1.30 2020/09/26 18:05:32 tom Exp $ */
#ifndef NCURSES_PANEL_PRIV_H
#define NCURSES_PANEL_PRIV_H 1
@@ -50,21 +50,21 @@ struct screen; /* forward declaration */
#include "panel.h"
#ifdef TRACE
- extern NCURSES_EXPORT(const char *) _nc_my_visbuf (const void *);
+ extern PANEL_EXPORT(const char *) _nc_my_visbuf (const void *, int);
# ifdef TRACE_TXT
-# define USER_PTR(ptr) _nc_visbuf((const char *)ptr)
+# define USER_PTR(ptr,n) _nc_visbuf2(n, (const char *)ptr)
# else
-# define USER_PTR(ptr) _nc_my_visbuf((const char *)ptr)
+# define USER_PTR(ptr,n) _nc_my_visbuf((const char *)ptr, n)
# endif
# define returnPanel(code) TRACE_RETURN1(code,panel)
- extern NCURSES_EXPORT(PANEL *) _nc_retrace_panel (PANEL *);
- extern NCURSES_EXPORT(void) _nc_dPanel (const char*, const PANEL*);
- extern NCURSES_EXPORT(void) _nc_dStack (const char*, int, const PANEL*);
- extern NCURSES_EXPORT(void) _nc_Wnoutrefresh (const PANEL*);
- extern NCURSES_EXPORT(void) _nc_Touchpan (const PANEL*);
- extern NCURSES_EXPORT(void) _nc_Touchline (const PANEL*, int, int);
+ extern PANEL_EXPORT(PANEL *) _nc_retrace_panel (PANEL *);
+ extern PANEL_EXPORT(void) _nc_dPanel (const char*, const PANEL*);
+ extern PANEL_EXPORT(void) _nc_dStack (const char*, int, const PANEL*);
+ extern PANEL_EXPORT(void) _nc_Wnoutrefresh (const PANEL*);
+ extern PANEL_EXPORT(void) _nc_Touchpan (const PANEL*);
+ extern PANEL_EXPORT(void) _nc_Touchline (const PANEL*, int, int);
# define dBug(x) _tracef x
# define dPanel(text,pan) _nc_dPanel(text,pan)
@@ -205,7 +205,7 @@ struct screen; /* forward declaration */
#if NCURSES_SP_FUNCS
/* These may become later renamed and part of panel.h and the public API */
-extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_update_panels)(SCREEN*);
+extern PANEL_EXPORT(void) NCURSES_SP_NAME(_nc_update_panels)(SCREEN*);
#endif
/* *INDENT-ON* */
diff --git a/progs/MKtermsort.sh b/progs/MKtermsort.sh
index 7206bc1..ca3232d 100755..100644
--- a/progs/MKtermsort.sh
+++ b/progs/MKtermsort.sh
@@ -1,10 +1,10 @@
#!/bin/sh
-# $Id: MKtermsort.sh,v 1.13 2020/02/02 23:34:34 tom Exp $
+# $Id: MKtermsort.sh,v 1.16 2021/04/18 20:12:50 tom Exp $
#
# MKtermsort.sh -- generate indirection vectors for the various sort methods
#
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2015,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -48,14 +48,25 @@ DATA=${2-../include/Caps}
data=data$$
trap 'rm -f $data' 1 2 3 15
-sed -e 's/[ ][ ]*/ /g' < $DATA >$data
+sed -e 's/[ ][ ]*/ /g' < "$DATA" >$data
DATA=$data
-echo "/*";
-echo " * termsort.c --- sort order arrays for use by infocmp.";
-echo " *";
-echo " * Note: this file is generated using MKtermsort.sh, do not edit by hand.";
-echo " */";
+cat <<EOF
+/*
+ * termsort.h --- sort order arrays for use by infocmp.
+ *
+ * Note: this file is generated using MKtermsort.sh, do not edit by hand.
+ */
+#ifndef _TERMSORT_H
+#define _TERMSORT_H 1
+#include <curses.h>
+
+#ifndef DUMP_ENTRY_H
+typedef unsigned PredType;
+typedef unsigned PredIdx;
+#endif
+
+EOF
echo "static const PredIdx bool_terminfo_sort[] = {";
$AWK <$DATA '
@@ -165,7 +176,11 @@ $3 == "str" && substr($7, 1, 1) == "-" {print "\tFALSE,\t/* ", $2, " */";
$3 == "str" && substr($7, 1, 1) == "Y" {print "\tTRUE,\t/* ", $2, " */"; valid = count++; }
END { printf "#define OK_str_from_termcap %d\n", valid; }
'
-echo "};";
-echo "";
+
+cat <<EOF
+};
+
+#endif /* _TERMSORT_H */
+EOF
rm -f $data
diff --git a/progs/Makefile.in b/progs/Makefile.in
index 79cbc99..d818af4 100644
--- a/progs/Makefile.in
+++ b/progs/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.103 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.111 2021/07/03 15:45:33 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2016,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -47,7 +47,7 @@ SHELL = @SHELL@
VPATH = @srcdir@
THIS = Makefile
-CF_MFLAGS = @cf_cv_makeflags@
+TOP_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)" RPATH_LIST="$(RPATH_LIST)"
@SET_MAKE@
x = @EXEEXT@
@@ -90,7 +90,7 @@ ETAGS = @ETAGS@
CC = @CC@
CPP = @CPP@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
INCDIR = $(top_srcdir)/include
CPPFLAGS = -DHAVE_CONFIG_H -I../progs @CPPFLAGS@
@@ -98,9 +98,9 @@ CPPFLAGS = -DHAVE_CONFIG_H -I../progs @CPPFLAGS@
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
CFLAGS_LIBTOOL = $(CCFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -133,7 +133,7 @@ LINT_OPTS = @LINT_OPTS@
LINT_LIBS = -lncurses @LIBS@
AUTO_SRC = \
- termsort.c \
+ termsort.h \
transform.h
# tic relies on direct access to the terminfo database
@@ -151,6 +151,23 @@ HEADER_DEPS = \
$(INCDIR)/nc_alloc.h
################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+@MAKE_PHONY@.PHONY : clean
+@MAKE_PHONY@.PHONY : distclean
+@MAKE_PHONY@.PHONY : install
+@MAKE_PHONY@.PHONY : install.libs
+@MAKE_PHONY@.PHONY : install.progs
+@MAKE_PHONY@.PHONY : libs
+@MAKE_PHONY@.PHONY : lint
+@MAKE_PHONY@.PHONY : mostlyclean
+@MAKE_PHONY@.PHONY : realclean
+@MAKE_PHONY@.PHONY : sources
+@MAKE_PHONY@.PHONY : uninstall
+@MAKE_PHONY@.PHONY : uninstall.libs
+@MAKE_PHONY@.PHONY : uninstall.progs
+
all: $(AUTO_SRC) $(PROGS)
sources: $(AUTO_SRC)
@@ -203,10 +220,10 @@ install.progs: $(AUTO_SRC) $(PROGS) $(DESTDIR)$(bindir)
@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) toe$x $(DESTDIR)$(bindir)/$(actual_toe)
@MAKE_TERMINFO@ @echo "linking $(actual_infotocap) to $(actual_tic)"
@MAKE_TERMINFO@ -@rm -f $(DESTDIR)$(bindir)/$(actual_infotocap)
-@MAKE_TERMINFO@ (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_infotocap))
+@MAKE_TERMINFO@ ( cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_infotocap) )
@MAKE_TERMINFO@ @echo "linking $(actual_captoinfo) to $(actual_tic)"
@MAKE_TERMINFO@ -@rm -f $(DESTDIR)$(bindir)/$(actual_captoinfo)
-@MAKE_TERMINFO@ (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_captoinfo))
+@MAKE_TERMINFO@ ( cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_captoinfo) )
$(LIBTOOL_INSTALL) $(INSTALL_PROG) infocmp$x $(DESTDIR)$(bindir)/$(actual_infocmp)
$(LIBTOOL_INSTALL) $(INSTALL_PROG) clear$x $(DESTDIR)$(bindir)/$(actual_clear)
$(LIBTOOL_INSTALL) $(INSTALL_PROG) tabs$x $(DESTDIR)$(bindir)/$(actual_tabs)
@@ -214,7 +231,7 @@ install.progs: $(AUTO_SRC) $(PROGS) $(DESTDIR)$(bindir)
$(LIBTOOL_INSTALL) $(INSTALL_PROG) tset$x $(DESTDIR)$(bindir)/$(actual_tset)
@echo "linking $(actual_reset) to $(actual_tset)"
-@rm -f $(DESTDIR)$(bindir)/$(actual_reset)
- (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tset) $(actual_reset))
+ ( cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tset) $(actual_reset) )
uninstall.progs:
@MAKE_TERMINFO@ -@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(bindir)/$(actual_tic)
@@ -292,7 +309,7 @@ DEPS_TSET = \
tset$x: $(DEPS_TSET) $(DEPS_CURSES) transform.h
@ECHO_LD@ $(LINK) $(DEPS_TSET) $(LDFLAGS_TINFO) -o $@
-termsort.c: $(srcdir)/MKtermsort.sh
+termsort.h: $(srcdir)/MKtermsort.sh
$(SHELL) $(srcdir)/MKtermsort.sh $(AWK) $(srcdir)/../include/@TERMINFO_CAPS@ >$@
#
@@ -323,18 +340,29 @@ realclean :: distclean
../include/hashsize.h \
../include/parametrized.h \
../include/term.h :
- cd ../include; $(MAKE) $(CF_MFLAGS)
+ ( cd ../include && $(MAKE) $(TOP_MFLAGS) )
$(DEPS_CURSES) :
- cd ../ncurses; $(MAKE) $(CF_MFLAGS)
+ ( cd ../ncurses && $(MAKE) $(TOP_MFLAGS) )
lint:
@MAKE_TERMINFO@ $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/tic.c $(srcdir)/dump_entry.c $(LINT_LIBS)
-@MAKE_TERMINFO@ $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/toe.c $(srcdir)/dump_entry.c $(LINT_LIBS)
+@MAKE_TERMINFO@ $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/toe.c $(LINT_LIBS)
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/clear.c $(LINT_LIBS)
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/infocmp.c $(srcdir)/dump_entry.c $(LINT_LIBS)
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/tabs.c $(LINT_LIBS)
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/tput.c $(LINT_LIBS)
- $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/tset.c $(srcdir)/dump_entry.c $(LINT_LIBS)
+ $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/tset.c $(LINT_LIBS)
+
+# Verify that each header-file can be compiled without including another.
+check:
+ @$(SHELL) -c "for header in *.h;\
+ do \
+ echo \"** testing \$${header}\" ; \
+ echo \"#include <\$${header}>\" >headers.c; \
+ echo \"int main(void) { return 0; }\" >>headers.c; \
+ $(CC) -c $(CFLAGS) $(CPPFLAGS) headers.c; \
+ done"
+ -@rm -f headers.*
###############################################################################
# The remainder of this file is automatically generated during configuration
diff --git a/progs/capconvert b/progs/capconvert
index bcd56d3..c73c368 100755
--- a/progs/capconvert
+++ b/progs/capconvert
@@ -1,6 +1,6 @@
#!/bin/sh
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 1998-2011,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -27,7 +27,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: capconvert,v 1.9 2020/02/02 23:34:34 tom Exp $
+# $Id: capconvert,v 1.10 2021/09/04 10:55:04 tom Exp $
#
# capconvert -- automated conversion from termcap to terminfo
#
@@ -95,7 +95,7 @@ else
fi
echo "";
-# Check if test -x works (it's not portable, but useful)
+# Check if test -x works (it is not portable, but useful)
OPT="-x"
TMP=test$$; touch $TMP && chmod 755 $TMP
if test $OPT $TMP ; then
@@ -227,7 +227,7 @@ fi
# OK, here comes the nasty case...user has a TERMCAP. Instead of
# trying to follow all the convolutions of the relationship between
-# TERM and TERMCAP (partly because it's too painful, and partly because
+# TERM and TERMCAP (partly because it is too painful, and partly because
# we don't actually know what TERM will be nor even if it always has
# the same value for this user) we do the following three steps...
diff --git a/progs/clear.c b/progs/clear.c
index 85a5ea5..97cb0f3 100644
--- a/progs/clear.c
+++ b/progs/clear.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -41,11 +41,11 @@
#include <clear_cmd.h>
#include <tty_settings.h>
-MODULE_ID("$Id: clear.c,v 1.23 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: clear.c,v 1.24 2021/03/20 18:23:14 tom Exp $")
const char *_nc_progname = "clear";
-static void
+static GCC_NORETURN void
usage(void)
{
#define KEEP(s) s "\n"
diff --git a/progs/clear.sh b/progs/clear.sh
index 1d899f1..1d899f1 100755..100644
--- a/progs/clear.sh
+++ b/progs/clear.sh
diff --git a/progs/dump_entry.c b/progs/dump_entry.c
index 85d56eb..860eccc 100644
--- a/progs/dump_entry.c
+++ b/progs/dump_entry.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -36,11 +36,11 @@
#define __INTERNAL_CAPS_VISIBLE
#include <progs.priv.h>
-#include "dump_entry.h"
-#include "termsort.c" /* this C file is generated */
+#include <dump_entry.h>
+#include <termsort.h> /* this C file is generated */
#include <parametrized.h> /* so is this */
-MODULE_ID("$Id: dump_entry.c,v 1.176 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: dump_entry.c,v 1.189 2021/09/04 10:29:59 tom Exp $")
#define DISCARD(string) string = ABSENT_STRING
#define PRINTF (void) printf
@@ -85,7 +85,7 @@ static int indent = 8;
/* cover various ports and variants of terminfo */
#define V_ALLCAPS 0 /* all capabilities (SVr4, XSI, ncurses) */
#define V_SVR1 1 /* SVR1, Ultrix */
-#define V_HPUX 2 /* HP/UX */
+#define V_HPUX 2 /* HP-UX */
#define V_AIX 3 /* AIX */
#define V_BSD 4 /* BSD */
@@ -107,9 +107,7 @@ static int indent = 8;
#define StrIndirect(j) ((sortmode == S_NOSORT) ? (j) : str_indirect[j])
#endif
-static void failed(const char *) GCC_NORETURN;
-
-static void
+static GCC_NORETURN void
failed(const char *s)
{
perror(s);
@@ -433,10 +431,12 @@ static int
op_length(const char *src, int offset)
{
int result = 0;
- int ch;
+
if (offset > 0 && src[offset - 1] == '\\') {
result = 0;
} else {
+ int ch;
+
result++; /* for '%' mark */
ch = src[offset + result];
if (TcOutput()) {
@@ -477,10 +477,12 @@ static int
find_split(const char *src, int step, int size)
{
int result = size;
- int n;
+
if (size > 0) {
/* check if that would split a backslash-sequence */
int mark = size;
+ int n;
+
for (n = size - 1; n > 0; --n) {
int ch = UChar(src[step + n]);
if (ch == '\\') {
@@ -526,13 +528,13 @@ fill_spaces(const char *src)
size_t size = strlen(fill);
char *result = 0;
int pass;
- int s, d;
+ size_t s, d;
for (pass = 0; pass < 2; ++pass) {
for (s = d = 0; src[s] != '\0'; ++s) {
if (src[s] == ' ') {
if (pass) {
_nc_STRCPY(&result[d], fill, need + 1 - d);
- d += (int) size;
+ d += size;
} else {
need += size;
}
@@ -547,7 +549,7 @@ fill_spaces(const char *src)
if (pass) {
result[d] = '\0';
} else {
- result = malloc(need + 1);
+ result = calloc(need + 1, sizeof(char));
if (result == 0)
failed("fill_spaces");
}
@@ -585,7 +587,6 @@ wrap_concat(const char *src, int need, unsigned mode)
(column + want) > width) {
int step = 0;
int used = width > WRAPPED ? width : WRAPPED;
- int size;
int base = 0;
char *p, align[9];
const char *my_t = trailer;
@@ -619,7 +620,7 @@ wrap_concat(const char *src, int need, unsigned mode)
}
while ((column + (need + gaps)) > used) {
- size = used - tag;
+ int size = used - tag;
if (step) {
strcpy_DYN(&outbuf, align);
size -= base;
@@ -747,7 +748,7 @@ leading_DYN(DYNBUF * buffer, const char *leading)
}
bool
-has_params(const char *src)
+has_params(const char *src, bool formatting)
{
bool result = FALSE;
int len = (int) strlen(src);
@@ -765,7 +766,11 @@ has_params(const char *src)
}
}
if (!ifthen) {
- result = ((len > 50) && params);
+ if (formatting) {
+ result = ((len > 50) && params);
+ } else {
+ result = params;
+ }
}
return result;
}
@@ -774,7 +779,7 @@ static char *
fmt_complex(TERMTYPE2 *tterm, const char *capability, char *src, int level)
{
bool percent = FALSE;
- bool params = has_params(src);
+ bool params = has_params(src, TRUE);
while (*src != '\0') {
switch (*src) {
@@ -801,7 +806,7 @@ fmt_complex(TERMTYPE2 *tterm, const char *capability, char *src, int level)
strncpy_DYN(&tmpbuf, "%", (size_t) 1);
strncpy_DYN(&tmpbuf, src, (size_t) 1);
src++;
- params = has_params(src);
+ params = has_params(src, TRUE);
if (!params && *src != '\0' && *src != '%') {
strncpy_DYN(&tmpbuf, "\n", (size_t) 1);
indent_DYN(&tmpbuf, level + 1);
@@ -878,12 +883,15 @@ static const char *
number_format(int value)
{
const char *result = "%d";
+
if ((outform != F_TERMCAP) && (value > 255)) {
unsigned long lv = (unsigned long) value;
- unsigned long mm;
int bits = sizeof(unsigned long) * 8;
int nn;
+
for (nn = 8; nn < bits; ++nn) {
+ unsigned long mm;
+
mm = 1UL << nn;
if ((mm - 16) <= lv && (mm + 16) > lv) {
result = "%#x";
@@ -907,7 +915,6 @@ fmt_entry(TERMTYPE2 *tterm,
{
PredIdx i, j;
char buffer[MAX_TERMINFO_LENGTH + EXTRA_CAP];
- char *capability;
NCURSES_CONST char *name;
int predval, len;
PredIdx num_bools = 0;
@@ -1027,6 +1034,7 @@ fmt_entry(TERMTYPE2 *tterm,
}
for_each_string(j, tterm) {
+ char *capability;
i = StrIndirect(j);
name = ExtStrname(tterm, (int) i, str_names);
assert(strlen(name) < sizeof(buffer) - EXTRA_CAP);
@@ -1110,7 +1118,7 @@ fmt_entry(TERMTYPE2 *tterm,
? parametrized[i]
: ((*srccap == 'k')
? 0
- : has_params(srccap)));
+ : has_params(srccap, FALSE)));
char *cv = _nc_infotocap(name, srccap, params);
if (cv == 0) {
@@ -1125,7 +1133,7 @@ fmt_entry(TERMTYPE2 *tterm,
char *s = srccap, *d = buffer;
int need = 3 + (int) strlen(name);
while ((*d = *s++) != 0) {
- if ((d - buffer + 1) >= (int) sizeof(buffer)) {
+ if ((d - buffer + 2) >= (int) sizeof(buffer)) {
fprintf(stderr,
"%s: value for %s is too long\n",
_nc_progname,
@@ -1342,10 +1350,11 @@ kill_labels(TERMTYPE2 *tterm, int target)
{
int n;
int result = 0;
- char *cap;
- char name[10];
+ char name[20];
for (n = 0; n <= 10; ++n) {
+ char *cap;
+
_nc_SPRINTF(name, _nc_SLIMIT(sizeof(name)) "lf%d", n);
cap = find_string(tterm, name);
if (VALID_STRING(cap)
@@ -1368,10 +1377,11 @@ kill_fkeys(TERMTYPE2 *tterm, int target)
{
int n;
int result = 0;
- char *cap;
- char name[10];
+ char name[20];
for (n = 60; n >= 0; --n) {
+ char *cap;
+
_nc_SPRINTF(name, _nc_SLIMIT(sizeof(name)) "kf%d", n);
cap = find_string(tterm, name);
if (VALID_STRING(cap)
@@ -1473,19 +1483,22 @@ dump_entry(TERMTYPE2 *tterm,
PredFunc pred)
{
TERMTYPE2 save_tterm;
- int len, critlen;
+ int critlen;
const char *legend;
bool infodump;
if (quickdump) {
char bigbuf[65536];
- unsigned n;
unsigned offset = 0;
+
separator = "";
trailer = "\n";
indent = 0;
+
if (_nc_write_object(tterm, bigbuf, &offset, sizeof(bigbuf)) == OK) {
char numbuf[80];
+ unsigned n;
+
if (quickdump & 1) {
if (outbuf.used)
wrap_concat1("\n");
@@ -1500,6 +1513,7 @@ dump_entry(TERMTYPE2 *tterm,
static char padding[] =
{0, 0};
int value = 0;
+
if (outbuf.used)
wrap_concat1("\n");
wrap_concat1("b64:");
@@ -1550,7 +1564,7 @@ dump_entry(TERMTYPE2 *tterm,
}
if (FMT_ENTRY() > critlen) {
/*
- * We pick on sgr because it's a nice long string capability that
+ * We pick on sgr because it is a nice long string capability that
* is really just an optimization hack. Another good candidate is
* acsc since it is both long and unused by BSD termcap.
*/
@@ -1595,6 +1609,7 @@ dump_entry(TERMTYPE2 *tterm,
}
if (!changed || (FMT_ENTRY() > critlen)) {
int oldversion = tversion;
+ int len;
tversion = V_BSD;
SHOW_WHY("# (terminfo-only capabilities suppressed to fit entry within %d bytes)\n",
@@ -1757,9 +1772,8 @@ void
repair_acsc(TERMTYPE2 *tp)
{
if (VALID_STRING(acs_chars)) {
- size_t n, m;
+ size_t n;
char mapped[256];
- char extra = 0;
unsigned source;
unsigned target;
bool fix_needed = FALSE;
@@ -1774,7 +1788,11 @@ repair_acsc(TERMTYPE2 *tp)
if (acs_chars[n + 1])
n++;
}
+
if (fix_needed) {
+ size_t m;
+ char extra = 0;
+
memset(mapped, 0, sizeof(mapped));
for (n = 0; acs_chars[n] != 0; n++) {
source = UChar(acs_chars[n]);
diff --git a/progs/dump_entry.h b/progs/dump_entry.h
index 984fee7..39e856f 100644
--- a/progs/dump_entry.h
+++ b/progs/dump_entry.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -34,7 +34,7 @@
****************************************************************************/
/*
- * $Id: dump_entry.h,v 1.42 2020/02/02 23:34:34 tom Exp $
+ * $Id: dump_entry.h,v 1.44 2021/04/18 19:56:09 tom Exp $
*
* Dump control definitions and variables
*/
@@ -67,13 +67,16 @@
#define CMP_STRING 2 /* comparison on strings */
#define CMP_USE 3 /* comparison on use capabilities */
+#ifndef _TERMSORT_H
typedef unsigned PredType;
typedef unsigned PredIdx;
+#endif
+
typedef int (*PredFunc) (PredType, PredIdx);
typedef void (*PredHook) (PredType, PredIdx, const char *);
extern NCURSES_CONST char *nametrans(const char *);
-extern bool has_params(const char *src);
+extern bool has_params(const char *, bool);
extern int fmt_entry(TERMTYPE2 *, PredFunc, int, int, int, int);
extern int show_entry(void);
extern void compare_entry(PredHook, TERMTYPE2 *, bool);
diff --git a/progs/infocmp.c b/progs/infocmp.c
index f42ff34..d98c676 100644
--- a/progs/infocmp.c
+++ b/progs/infocmp.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -43,7 +43,7 @@
#include <dump_entry.h>
-MODULE_ID("$Id: infocmp.c,v 1.144 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: infocmp.c,v 1.151 2021/06/17 21:11:08 tom Exp $")
#define MAX_STRING 1024 /* maximum formatted string */
@@ -94,7 +94,7 @@ typedef struct {
static ENTERED *entered;
#undef ExitProgram
-static void ExitProgram(int code) GCC_NORETURN;
+static GCC_NORETURN void ExitProgram(int code);
/* prototype is to get gcc to accept the noreturn attribute */
static void
ExitProgram(int code)
@@ -322,16 +322,17 @@ static void
print_uses(ENTRY * ep, FILE *fp)
/* print an entry's use references */
{
- unsigned i;
-
- if (!ep->nuses)
+ if (!ep->nuses) {
fputs("NULL", fp);
- else
+ } else {
+ unsigned i;
+
for (i = 0; i < ep->nuses; i++) {
fputs(ep->uses[i].name, fp);
if (i < ep->nuses - 1)
fputs(" ", fp);
}
+ }
}
static const char *
@@ -418,7 +419,7 @@ show_comparing(char **names)
/*
* ncurses stores two types of non-standard capabilities:
- * a) capabilities listed past the "STOP-HERE" comment in the Caps file.
+ * a) capabilities listed past the "STOP-HERE" comment in the Caps file.
* These are used in the terminfo source file to provide data for termcaps,
* e.g., when there is no equivalent capability in terminfo, as well as for
* widely-used non-standard capabilities.
@@ -835,6 +836,8 @@ analyze_string(const char *name, const char *cap, TERMTYPE2 *tp)
char *cp = tp->Strings[i];
/* don't use function-key capabilities */
+ if (strnames[i] == NULL)
+ continue;
if (strnames[i][0] == 'k' && strnames[i][1] == 'f')
continue;
@@ -1194,8 +1197,9 @@ usage(void)
DATA("Options:")
};
#undef DATA
+ /* length is given here so the compiler can make everything readonly */
#define DATA(s) s
- static const char options[][45] =
+ static const char options[][46] =
{
" -0 print single-row"
," -1 print single-column"
@@ -1304,9 +1308,9 @@ dump_initializers(TERMTYPE2 *term)
name_initializer("alias"), entries->tterm.term_names);
for_each_string(n, term) {
- char buf[MAX_STRING], *sp, *tp;
-
if (VALID_STRING(term->Strings[n])) {
+ char buf[MAX_STRING], *sp, *tp;
+
tp = buf;
#define TP_LIMIT ((MAX_STRING - 5) - (size_t)(tp - buf))
*tp++ = '"';
@@ -1509,6 +1513,8 @@ show_databases(void)
#if NO_LEAKS
#define MAIN_LEAKS() \
+ _nc_free_termtype2(&entries[0].tterm); \
+ _nc_free_termtype2(&entries[1].tterm); \
free(myargv); \
free(tfile); \
free(tname)
@@ -1528,7 +1534,7 @@ main(int argc, char *argv[])
char **myargv;
char *firstdir, *restdir;
- int c, i, len;
+ int c;
bool formatted = FALSE;
bool filecompare = FALSE;
int initdump = 0;
@@ -1835,8 +1841,8 @@ main(int argc, char *argv[])
tname[termcount]);
status = _nc_read_entry2(tname[termcount],
- tfile[termcount],
- &entries[termcount].tterm);
+ tfile[termcount],
+ &entries[termcount].tterm);
}
if (status <= 0) {
@@ -1880,6 +1886,8 @@ main(int argc, char *argv[])
analyze_string("rmkx", keypad_local, &entries[0].tterm);
#undef CUR
} else {
+ int i;
+ int len;
/*
* Here's where the real work gets done
diff --git a/progs/modules b/progs/modules
index f2bba15..349061f 100644
--- a/progs/modules
+++ b/progs/modules
@@ -1,7 +1,7 @@
-# $Id: modules,v 1.22 2020/02/02 23:34:34 tom Exp $
+# $Id: modules,v 1.25 2021/04/18 17:21:03 tom Exp $
# Program modules (some are in ncurses lib!)
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2014,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -37,13 +37,13 @@ clear progs $(srcdir) $(HEADER_DEPS) tty_settings.h
tic progs $(srcdir) $(HEADER_DEPS) transform.h $(srcdir)/dump_entry.h $(srcdir)/tparm_type.h
toe progs $(srcdir) $(HEADER_DEPS) $(INCDIR)/hashed_db.h
clear_cmd progs $(srcdir) $(HEADER_DEPS) clear_cmd.h
-dump_entry progs $(srcdir) $(HEADER_DEPS) $(srcdir)/dump_entry.h ../include/parametrized.h $(INCDIR)/capdefaults.c termsort.c
+dump_entry progs $(srcdir) $(HEADER_DEPS) $(srcdir)/dump_entry.h ../include/parametrized.h $(INCDIR)/capdefaults.c termsort.h
infocmp progs $(srcdir) $(HEADER_DEPS) $(srcdir)/dump_entry.h
reset_cmd progs $(srcdir) $(HEADER_DEPS) reset_cmd.h tty_settings.h
tabs progs $(srcdir) $(HEADER_DEPS)
tparm_type progs $(srcdir) $(HEADER_DEPS) $(srcdir)/tparm_type.h
-tput progs $(srcdir) $(HEADER_DEPS) transform.h $(srcdir)/dump_entry.h $(srcdir)/tparm_type.h termsort.c reset_cmd.h tty_settings.h
-tset progs $(srcdir) $(HEADER_DEPS) transform.h $(srcdir)/dump_entry.h ../include/termcap.h reset_cmd.h tty_settings.h
+tput progs $(srcdir) $(HEADER_DEPS) transform.h $(srcdir)/tparm_type.h reset_cmd.h tty_settings.h
+tset progs $(srcdir) $(HEADER_DEPS) transform.h ../include/termcap.h reset_cmd.h tty_settings.h
transform progs $(srcdir) $(HEADER_DEPS) transform.h
tty_settings progs $(srcdir) $(HEADER_DEPS) tty_settings.h
diff --git a/progs/progs.priv.h b/progs/progs.priv.h
index da7a515..32f4e4e 100644
--- a/progs/progs.priv.h
+++ b/progs/progs.priv.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -31,7 +31,7 @@
* Author: Thomas E. Dickey 1997-on *
****************************************************************************/
/*
- * $Id: progs.priv.h,v 1.48 2020/02/02 23:34:34 tom Exp $
+ * $Id: progs.priv.h,v 1.53 2021/06/26 20:43:19 tom Exp $
*
* progs.priv.h
*
@@ -58,10 +58,6 @@
#include <unistd.h>
#endif
-#if HAVE_SYS_BSDTYPES_H
-#include <sys/bsdtypes.h> /* needed for ISC */
-#endif
-
#if HAVE_LIMITS_H
# include <limits.h>
#elif HAVE_SYS_PARAM_H
@@ -119,10 +115,20 @@ extern char *optarg;
extern int optind;
#endif /* HAVE_GETOPT_H */
+#undef _NC_WINDOWS
+#if (defined(_WIN32) || defined(_WIN64))
+#define _NC_WINDOWS 1
+#endif
+
#define NCURSES_INTERNALS 1
#define NCURSES_OPAQUE 0
#include <curses.h>
+
+#if !(defined(NCURSES_WGETCH_EVENTS) && defined(NEED_KEY_EVENT))
+#undef KEY_EVENT /* reduce compiler-warnings with Visual C++ */
+#endif
+
#include <term_entry.h>
#include <nc_termios.h>
#include <tic.h>
@@ -130,6 +136,7 @@ extern int optind;
#include <nc_string.h>
#include <nc_alloc.h>
+#include <nc_access.h>
#if HAVE_NC_FREEALL
#undef ExitProgram
@@ -155,6 +162,10 @@ extern int optind;
#endif /* gcc workarounds */
/* usually in <unistd.h> */
+#ifndef STDIN_FILENO
+#define STDIN_FILENO 0
+#endif
+
#ifndef STDOUT_FILENO
#define STDOUT_FILENO 1
#endif
diff --git a/progs/reset_cmd.c b/progs/reset_cmd.c
index 9d23cd0..eff3af7 100644
--- a/progs/reset_cmd.c
+++ b/progs/reset_cmd.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -47,13 +47,13 @@
#endif
#if NEED_PTEM_H
-/* they neglected to define struct winsize in termios.h -- it's only
+/* they neglected to define struct winsize in termios.h -- it is only
in termio.h */
#include <sys/stream.h>
#include <sys/ptem.h>
#endif
-MODULE_ID("$Id: reset_cmd.c,v 1.19 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: reset_cmd.c,v 1.28 2021/10/02 18:08:44 tom Exp $")
/*
* SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
@@ -80,7 +80,7 @@ static FILE *my_file;
static bool use_reset = FALSE; /* invoked as reset */
static bool use_init = FALSE; /* invoked as init */
-static void
+static GCC_NORETURN void
failed(const char *msg)
{
int code = errno;
@@ -102,7 +102,7 @@ cat_file(char *file)
bool sent = FALSE;
if (file != 0) {
- if ((fp = fopen(file, "r")) == 0)
+ if ((fp = safe_fopen(file, "r")) == 0)
failed(file);
while ((nr = fread(buf, sizeof(char), sizeof(buf), fp)) != 0) {
@@ -193,7 +193,7 @@ out_char(int c)
* a child program dies in raw mode.
*/
void
-reset_tty_settings(int fd, TTY * tty_settings)
+reset_tty_settings(int fd, TTY * tty_settings, int noset)
{
GET_TTY(fd, tty_settings);
@@ -329,7 +329,9 @@ reset_tty_settings(int fd, TTY * tty_settings)
);
#endif
- SET_TTY(fd, tty_settings);
+ if (!noset) {
+ SET_TTY(fd, tty_settings);
+ }
}
/*
@@ -363,6 +365,13 @@ default_erase(void)
void
set_control_chars(TTY * tty_settings, int my_erase, int my_intr, int my_kill)
{
+#if defined(EXP_WIN32_DRIVER)
+ /* noop */
+ (void) tty_settings;
+ (void) my_erase;
+ (void) my_intr;
+ (void) my_kill;
+#else
if (DISABLED(tty_settings->c_cc[VERASE]) || my_erase >= 0) {
tty_settings->c_cc[VERASE] = UChar((my_erase >= 0)
? my_erase
@@ -380,6 +389,7 @@ set_control_chars(TTY * tty_settings, int my_erase, int my_intr, int my_kill)
? my_kill
: CKILL);
}
+#endif
}
/*
@@ -389,6 +399,9 @@ set_control_chars(TTY * tty_settings, int my_erase, int my_intr, int my_kill)
void
set_conversions(TTY * tty_settings)
{
+#if defined(EXP_WIN32_DRIVER)
+ /* FIXME */
+#else
#ifdef ONLCR
tty_settings->c_oflag |= ONLCR;
#endif
@@ -412,6 +425,7 @@ set_conversions(TTY * tty_settings)
tty_settings->c_oflag &= ~OXTABS;
#endif /* OXTABS */
tty_settings->c_lflag |= (ECHOE | ECHOK);
+#endif
}
static bool
@@ -501,16 +515,15 @@ send_init_strings(int fd GCC_UNUSED, TTY * old_settings)
} else
#if defined(set_lr_margin)
if (VALID_STRING(set_lr_margin)) {
- need_flush |= sent_string(TPARM_2(set_lr_margin, 0,
- columns - 1));
+ need_flush |= sent_string(TIPARM_2(set_lr_margin, 0, columns - 1));
} else
#endif
#if defined(set_left_margin_parm) && defined(set_right_margin_parm)
if (VALID_STRING(set_left_margin_parm)
&& VALID_STRING(set_right_margin_parm)) {
- need_flush |= sent_string(TPARM_1(set_left_margin_parm, 0));
- need_flush |= sent_string(TPARM_1(set_right_margin_parm,
- columns - 1));
+ need_flush |= sent_string(TIPARM_1(set_left_margin_parm, 0));
+ need_flush |= sent_string(TIPARM_1(set_right_margin_parm,
+ columns - 1));
} else
#endif
if (VALID_STRING(set_left_margin)
@@ -518,8 +531,8 @@ send_init_strings(int fd GCC_UNUSED, TTY * old_settings)
need_flush |= to_left_margin();
need_flush |= sent_string(set_left_margin);
if (VALID_STRING(parm_right_cursor)) {
- need_flush |= sent_string(TPARM_1(parm_right_cursor,
- columns - 1));
+ need_flush |= sent_string(TIPARM_1(parm_right_cursor,
+ columns - 1));
} else {
for (i = 0; i < columns - 1; i++) {
out_char(' ');
@@ -552,15 +565,23 @@ show_tty_change(TTY * old_settings,
int which,
unsigned def)
{
- unsigned older, newer;
+ unsigned older = 0, newer = 0;
char *p;
+#if defined(EXP_WIN32_DRIVER)
+ /* noop */
+ (void) old_settings;
+ (void) new_settings;
+ (void) name;
+ (void) which;
+ (void) def;
+#else
newer = new_settings->c_cc[which];
older = old_settings->c_cc[which];
if (older == newer && older == def)
return;
-
+#endif
(void) fprintf(stderr, "%s %s ", name, older == newer ? "is" : "set to");
if (DISABLED(newer)) {
@@ -604,9 +625,13 @@ reset_flush(void)
void
print_tty_chars(TTY * old_settings, TTY * new_settings)
{
+#if defined(EXP_WIN32_DRIVER)
+ /* noop */
+#else
show_tty_change(old_settings, new_settings, "Erase", VERASE, CERASE);
show_tty_change(old_settings, new_settings, "Kill", VKILL, CKILL);
show_tty_change(old_settings, new_settings, "Interrupt", VINTR, CINTR);
+#endif
}
#if HAVE_SIZECHANGE
diff --git a/progs/reset_cmd.h b/progs/reset_cmd.h
index 7d45715..91a637c 100644
--- a/progs/reset_cmd.h
+++ b/progs/reset_cmd.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -32,7 +32,7 @@
****************************************************************************/
/*
- * $Id: reset_cmd.h,v 1.8 2020/02/02 23:34:34 tom Exp $
+ * $Id: reset_cmd.h,v 1.9 2021/10/02 20:58:58 tom Exp $
*
* Utility functions for resetting terminal.
*/
@@ -51,7 +51,7 @@ extern bool send_init_strings(int /* fd */, TTY * /* old_settings */);
extern void print_tty_chars(TTY * /* old_settings */, TTY * /* new_settings */);
extern void reset_flush(void);
extern void reset_start(FILE * /* fp */, bool /* is_reset */, bool /* is_init */ );
-extern void reset_tty_settings(int /* fd */, TTY * /* tty_settings */);
+extern void reset_tty_settings(int /* fd */, TTY * /* tty_settings */, int /* noset */);
extern void set_control_chars(TTY * /* tty_settings */, int /* erase */, int /* intr */, int /* kill */);
extern void set_conversions(TTY * /* tty_settings */);
diff --git a/progs/tabs.c b/progs/tabs.c
index 8a3bc10..02de31c 100644
--- a/progs/tabs.c
+++ b/progs/tabs.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2008-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -39,9 +39,9 @@
#include <progs.priv.h>
#include <tty_settings.h>
-MODULE_ID("$Id: tabs.c,v 1.42 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tabs.c,v 1.50 2021/10/10 00:54:41 tom Exp $")
-static void usage(void) GCC_NORETURN;
+static GCC_NORETURN void usage(void);
const char *_nc_progname;
static int max_cols;
@@ -59,14 +59,44 @@ putch(int c)
return putchar(c);
}
+static char *
+skip_csi(char *value)
+{
+ if (UChar(*value) == 0x9b)
+ ++value;
+ else if (!strncmp(value, "\033[", 2))
+ value += 2;
+ return value;
+}
+
+/*
+ * If the terminal uses ANSI clear_all_tabs, then it is not necessary to first
+ * move to the left margin before clearing tabs.
+ */
+static bool
+ansi_clear_tabs(void)
+{
+ bool result = FALSE;
+ if (VALID_STRING(clear_all_tabs)) {
+ char *param = skip_csi(clear_all_tabs);
+ if (!strcmp(param, "3g"))
+ result = TRUE;
+ }
+ return result;
+}
+
static void
do_tabs(int *tab_list)
{
int last = 1;
int stop;
+ bool first = TRUE;
- putchar('\r');
while ((stop = *tab_list++) > 0) {
+ if (first) {
+ first = FALSE;
+ putchar('\r');
+ }
if (last < stop) {
while (last++ < stop) {
if (last > max_cols)
@@ -75,7 +105,7 @@ do_tabs(int *tab_list)
}
}
if (stop <= max_cols) {
- tputs(tparm(set_tab, stop), 1, putch);
+ tputs(set_tab, 1, putch);
last = stop;
} else {
break;
@@ -84,8 +114,13 @@ do_tabs(int *tab_list)
putchar('\r');
}
+/*
+ * Decode a list of tab-stops from a string, returning an array of integers.
+ * If the margin is positive (because the terminal does not support margins),
+ * work around this by adding the margin to the decoded values.
+ */
static int *
-decode_tabs(const char *tab_list)
+decode_tabs(const char *tab_list, int margin)
{
int *result = typeCalloc(int, strlen(tab_list) + (unsigned) max_cols);
int n = 0;
@@ -96,12 +131,15 @@ decode_tabs(const char *tab_list)
if (result == 0)
failed("decode_tabs");
+ if (margin < 0)
+ margin = 0;
+
while ((ch = *tab_list++) != '\0') {
if (isdigit(UChar(ch))) {
value *= 10;
value += (ch - '0');
} else if (ch == ',') {
- result[n] = value + prior;
+ result[n] = value + prior + margin;
if (n > 0 && result[n] <= result[n - 1]) {
fprintf(stderr,
"%s: tab-stops are not in increasing order: %d %d\n",
@@ -127,7 +165,7 @@ decode_tabs(const char *tab_list)
int step = value;
value = 1;
while (n < max_cols - 1) {
- result[n++] = value;
+ result[n++] = value + margin;
value += step;
}
}
@@ -135,7 +173,7 @@ decode_tabs(const char *tab_list)
/*
* Add the last value, if any.
*/
- result[n++] = value + prior;
+ result[n++] = value + prior + margin;
result[n] = 0;
}
@@ -143,10 +181,9 @@ decode_tabs(const char *tab_list)
}
static void
-print_ruler(int *tab_list)
+print_ruler(int *tab_list, const char *new_line)
{
int last = 0;
- int stop;
int n;
/* first print a readable ruler */
@@ -160,11 +197,12 @@ print_ruler(int *tab_list)
: (ch + 'A' - 10)));
printf("%.*s", ((max_cols - n) > 10) ? 10 : (max_cols - n), buffer);
}
- putchar('\n');
+ printf("%s", new_line);
/* now, print '*' for each stop */
for (n = 0, last = 0; (tab_list[n] > 0) && (last < max_cols); ++n) {
- stop = tab_list[n];
+ int stop = tab_list[n];
+
while (++last < stop) {
if (last <= max_cols) {
putchar('-');
@@ -181,7 +219,7 @@ print_ruler(int *tab_list)
}
while (++last <= max_cols)
putchar('-');
- putchar('\n');
+ printf("%s", new_line);
}
/*
@@ -189,7 +227,7 @@ print_ruler(int *tab_list)
* ruler.
*/
static void
-write_tabs(int *tab_list)
+write_tabs(int *tab_list, const char *new_line)
{
int stop;
@@ -199,7 +237,7 @@ write_tabs(int *tab_list)
/* also show a tab _past_ the stops */
if (stop < max_cols)
fputs("\t+", stdout);
- putchar('\n');
+ fputs(new_line, stdout);
}
/*
@@ -210,11 +248,11 @@ static char *
trimmed_tab_list(const char *source)
{
char *result = strdup(source);
- int ch, j, k, last;
-
if (result != 0) {
+ int j, k, last;
+
for (j = k = last = 0; result[j] != 0; ++j) {
- ch = UChar(result[j]);
+ int ch = UChar(result[j]);
if (isspace(ch)) {
if (last == '\0') {
continue;
@@ -295,6 +333,60 @@ add_to_tab_list(char **append, const char *value)
}
/*
+ * If the terminal supports it, (re)set the left margin and return true.
+ * Otherwise, return false.
+ */
+static bool
+do_set_margin(int margin, bool no_op)
+{
+ bool result = FALSE;
+
+ if (margin == 0) { /* 0 is special case for resetting */
+ if (VALID_STRING(clear_margins)) {
+ result = TRUE;
+ if (!no_op)
+ tputs(clear_margins, 1, putch);
+ }
+ } else if (margin-- < 0) { /* margin will be 0-based from here on */
+ result = TRUE;
+ } else if (VALID_STRING(set_left_margin)) {
+ result = TRUE;
+ if (!no_op) {
+ /*
+ * assuming we're on the first column of the line, move the cursor
+ * to the column at which we will set a margin.
+ */
+ if (VALID_STRING(column_address)) {
+ tputs(TIPARM_1(column_address, margin), 1, putch);
+ } else if (margin >= 1) {
+ if (VALID_STRING(parm_right_cursor)) {
+ tputs(TIPARM_1(parm_right_cursor, margin), 1, putch);
+ } else {
+ while (margin-- > 0)
+ putch(' ');
+ }
+ }
+ tputs(set_left_margin, 1, putch);
+ }
+ } else if (VALID_STRING(set_left_margin_parm)) {
+ result = TRUE;
+ if (!no_op) {
+ if (VALID_STRING(set_right_margin_parm)) {
+ tputs(TIPARM_1(set_left_margin_parm, margin), 1, putch);
+ } else {
+ tputs(TIPARM_2(set_left_margin_parm, margin, max_cols), 1, putch);
+ }
+ }
+ } else if (VALID_STRING(set_lr_margin)) {
+ result = TRUE;
+ if (!no_op) {
+ tputs(TIPARM_2(set_lr_margin, margin, max_cols), 1, putch);
+ }
+ }
+ return result;
+}
+
+/*
* Check for illegal characters in the tab-list.
*/
static bool
@@ -304,9 +396,11 @@ legal_tab_list(const char *tab_list)
if (tab_list != 0 && *tab_list != '\0') {
if (comma_is_needed(tab_list)) {
- int n, ch;
+ int n;
+
for (n = 0; tab_list[n] != '\0'; ++n) {
- ch = UChar(tab_list[n]);
+ int ch = UChar(tab_list[n]);
+
if (!(isdigit(ch) || ch == ',' || ch == '+')) {
fprintf(stderr,
"%s: unexpected character found '%c'\n",
@@ -320,8 +414,7 @@ legal_tab_list(const char *tab_list)
result = FALSE;
}
} else {
- fprintf(stderr, "%s: no tab-list given\n", _nc_progname);
- result = FALSE;
+ /* if no list given, default to "tabs -8" */
}
return result;
}
@@ -379,17 +472,18 @@ main(int argc, char *argv[])
int rc = EXIT_FAILURE;
bool debug = FALSE;
bool no_op = FALSE;
+ bool change_tty = FALSE;
int n, ch;
NCURSES_CONST char *term_name = 0;
char *append = 0;
const char *tab_list = 0;
+ const char *new_line = "\n";
+ int margin = -1;
TTY tty_settings;
int fd;
_nc_progname = _nc_rootname(argv[0]);
- fd = save_tty_settings(&tty_settings, FALSE);
-
if ((term_name = getenv("TERM")) == 0)
term_name = "ansi+tabs";
@@ -481,7 +575,10 @@ main(int argc, char *argv[])
}
break;
case '+':
- while ((ch = *++option) != '\0') {
+ if ((ch = *++option) != '\0') {
+ int digits = 0;
+ int number = 0;
+
switch (ch) {
case 'm':
/*
@@ -489,6 +586,17 @@ main(int argc, char *argv[])
* att510d implements smgl, which is needed to support
* this option.
*/
+ while ((ch = *++option) != '\0') {
+ if (isdigit(UChar(ch))) {
+ ++digits;
+ number = number * 10 + (ch - '0');
+ } else {
+ usage();
+ }
+ }
+ if (digits == 0)
+ number = 10;
+ margin = number;
break;
default:
/* special case of relative stops separated by spaces? */
@@ -512,9 +620,13 @@ main(int argc, char *argv[])
}
}
+ fd = save_tty_settings(&tty_settings, FALSE);
+
setupterm(term_name, fd, (int *) 0);
max_cols = (columns > 0) ? columns : 80;
+ if (margin > 0)
+ max_cols -= margin;
if (!VALID_STRING(clear_all_tabs)) {
fprintf(stderr,
@@ -525,24 +637,61 @@ main(int argc, char *argv[])
"%s: terminal type '%s' cannot set tabs\n",
_nc_progname, term_name);
} else if (legal_tab_list(tab_list)) {
- int *list = decode_tabs(tab_list);
+ int *list;
+
+ if (tab_list == NULL)
+ tab_list = add_to_tab_list(&append, "8");
+
+ if (!no_op) {
+#if defined(TERMIOS) && defined(OCRNL)
+ /* set tty modes to -ocrnl to allow \r */
+ if (isatty(STDOUT_FILENO)) {
+ TTY new_settings = tty_settings;
+ new_settings.c_oflag &= (unsigned)~OCRNL;
+ update_tty_settings(&tty_settings, &new_settings);
+ change_tty = TRUE;
+ new_line = "\r\n";
+ }
+#endif
- if (!no_op)
+ if (!ansi_clear_tabs())
+ putch('\r');
tputs(clear_all_tabs, 1, putch);
+ }
+
+ if (margin >= 0) {
+ putch('\r');
+ if (margin > 0) {
+ /* reset existing margin before setting margin, to reduce
+ * problems moving left of the current margin.
+ */
+ if (do_set_margin(0, no_op))
+ putch('\r');
+ }
+ if (do_set_margin(margin, no_op))
+ margin = -1;
+ }
+
+ list = decode_tabs(tab_list, margin);
if (list != 0) {
if (!no_op)
do_tabs(list);
if (debug) {
fflush(stderr);
- printf("tabs %s\n", tab_list);
- print_ruler(list);
- write_tabs(list);
+ printf("tabs %s%s", tab_list, new_line);
+ print_ruler(list, new_line);
+ write_tabs(list, new_line);
}
free(list);
} else if (debug) {
fflush(stderr);
- printf("tabs %s\n", tab_list);
+ printf("tabs %s%s", tab_list, new_line);
+ }
+ if (!no_op) {
+ if (change_tty) {
+ restore_tty_settings();
+ }
}
rc = EXIT_SUCCESS;
}
diff --git a/progs/tic.c b/progs/tic.c
index 328bcd6..dba2890 100644
--- a/progs/tic.c
+++ b/progs/tic.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -49,7 +49,7 @@
#include <parametrized.h>
#include <transform.h>
-MODULE_ID("$Id: tic.c,v 1.282 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tic.c,v 1.307 2021/10/05 08:07:05 tom Exp $")
#define STDIN_NAME "<stdin>"
@@ -116,8 +116,6 @@ free_namelist(char **src)
static void
cleanup(void)
{
- int rc;
-
#if NO_LEAKS
free_namelist(namelst);
_nc_leaks_dump_entry();
@@ -125,6 +123,8 @@ cleanup(void)
if (tmp_fp != 0)
fclose(tmp_fp);
if (to_remove != 0) {
+ int rc;
+
#if HAVE_REMOVE
rc = remove(to_remove);
#else
@@ -304,15 +304,17 @@ put_translate(int c)
/* emit a comment char, translating terminfo names to termcap names */
{
static bool in_name = FALSE;
- static size_t have, used;
- static char *namebuf, *suffix;
+ static size_t used;
if (in_name) {
+ static size_t have;
+ static char *namebuf, *suffix;
+
if (used + 1 >= have) {
have += 132;
- if ((namebuf = typeRealloc(char, have, namebuf)) == 0)
+ if ((namebuf = typeRealloc(char, have, namebuf)) == NULL)
failed("put_translate namebuf");
- if ((suffix = typeRealloc(char, have, suffix)) == 0)
+ if ((suffix = typeRealloc(char, have, suffix)) == NULL)
failed("put_translate suffix");
}
if (c == '\n' || c == '@') {
@@ -371,12 +373,10 @@ stripped(char *src)
src++;
if (*src != '\0') {
- size_t len;
-
if ((dst = strdup(src)) == NULL) {
failed("strdup");
} else {
- len = strlen(dst);
+ size_t len = strlen(dst);
while (--len != 0 && isspace(UChar(dst[len])))
dst[len] = '\0';
}
@@ -400,7 +400,7 @@ open_tempfile(char *filename)
}
#else
if (tmpnam(filename) != 0)
- result = fopen(filename, "w");
+ result = safe_fopen(filename, "w");
#endif
return result;
}
@@ -410,15 +410,15 @@ copy_input(FILE *source, const char *filename, char *alt_file)
{
char my_altfile[PATH_MAX];
FILE *result = 0;
- FILE *target = 0;
+ FILE *target;
int ch;
- if (alt_file == 0)
+ if (alt_file == NULL)
alt_file = my_altfile;
- if (source == 0) {
+ if (source == NULL) {
failed("copy_input (source)");
- } else if ((target = open_tempfile(alt_file)) == 0) {
+ } else if ((target = open_tempfile(alt_file)) == NULL) {
failed("copy_input (target)");
} else {
clearerr(source);
@@ -442,7 +442,7 @@ copy_input(FILE *source, const char *filename, char *alt_file)
* the one that we were writing on before starting to read from the
* second stream.
*/
- result = fopen(alt_file, "r+");
+ result = safe_fopen(alt_file, "r+");
fclose(target);
to_remove = strdup(alt_file);
}
@@ -458,7 +458,7 @@ open_input(const char *filename, char *alt_file)
if (!strcmp(filename, "-")) {
fp = copy_input(stdin, STDIN_NAME, alt_file);
- } else if (stat(filename, &sb) < 0) {
+ } else if (stat(filename, &sb) == -1) {
fprintf(stderr, "%s: %s %s\n", _nc_progname, filename, strerror(errno));
ExitProgram(EXIT_FAILURE);
} else if ((mode = (sb.st_mode & S_IFMT)) == S_IFDIR
@@ -466,9 +466,9 @@ open_input(const char *filename, char *alt_file)
fprintf(stderr, "%s: %s is not a file\n", _nc_progname, filename);
ExitProgram(EXIT_FAILURE);
} else {
- fp = fopen(filename, "r");
+ fp = safe_fopen(filename, "r");
- if (fp == 0) {
+ if (fp == NULL) {
fprintf(stderr, "%s: Can't open %s\n", _nc_progname, filename);
ExitProgram(EXIT_FAILURE);
}
@@ -495,7 +495,7 @@ make_namelist(char *src)
unsigned pass, n, nn;
char buffer[BUFSIZ];
- if (src == 0) {
+ if (src == NULL) {
/* EMPTY */ ;
} else if (strchr(src, '/') != 0) { /* a filename */
FILE *fp = open_input(src, (char *) 0);
@@ -512,7 +512,7 @@ make_namelist(char *src)
}
}
if (pass == 1) {
- if ((dst = typeCalloc(char *, nn + 1)) == 0)
+ if ((dst = typeCalloc(char *, nn + 1)) == NULL)
failed("make_namelist");
rewind(fp);
}
@@ -536,7 +536,7 @@ make_namelist(char *src)
break;
}
if (pass == 1) {
- if ((dst = typeCalloc(char *, nn + 1)) == 0)
+ if ((dst = typeCalloc(char *, nn + 1)) == NULL)
failed("make_namelist");
}
}
@@ -554,9 +554,10 @@ matches(char **needle, const char *haystack)
/* does entry in needle list match |-separated field in haystack? */
{
bool code = FALSE;
- size_t n;
if (needle != 0) {
+ size_t n;
+
for (n = 0; needle[n] != 0; n++) {
if (_nc_name_match(haystack, needle[n], "|")) {
code = TRUE;
@@ -577,7 +578,7 @@ valid_db_path(const char *nominal)
size_t need = strlen(nominal) + sizeof(suffix);
char *result = malloc(need);
- if (result == 0)
+ if (result == NULL)
failed("valid_db_path");
_nc_STRCPY(result, nominal, need);
if (strcmp(result + need - sizeof(suffix), suffix)) {
@@ -642,7 +643,7 @@ show_databases(const char *outdir)
char *result;
const char *tried = 0;
- if (outdir == 0) {
+ if (outdir == NULL) {
outdir = _nc_tic_dir(0);
}
if ((result = valid_db_path(outdir)) != 0) {
@@ -877,7 +878,7 @@ main(int argc, char *argv[])
* One problem with immedhook is it means we can't do -e. Problem
* is that we can't guarantee that for each terminal listed, all the
* terminals it depends on will have been kept in core for reference
- * resolution -- in fact it's certain the primitive types at the end
+ * resolution -- in fact it is certain the primitive types at the end
* of reference chains *won't* be in core unless they were explicitly
* in the select list themselves.
*/
@@ -931,7 +932,7 @@ main(int argc, char *argv[])
}
}
- if (tmp_fp == 0) {
+ if (tmp_fp == NULL) {
tmp_fp = open_input(source_file, my_altfile);
if (!strcmp(source_file, "-")) {
source_file = STDIN_NAME;
@@ -1179,6 +1180,14 @@ check_acs(TERMTYPE2 *tp)
}
}
+static char *
+safe_strdup(const char *value)
+{
+ if (value == NULL)
+ value = "";
+ return strdup(value);
+}
+
static bool
same_color(NCURSES_CONST char *oldcap, NCURSES_CONST char *newcap, int limit)
{
@@ -1189,8 +1198,8 @@ same_color(NCURSES_CONST char *oldcap, NCURSES_CONST char *newcap, int limit)
int n;
int same;
for (n = same = 0; n < limit; ++n) {
- char *oldvalue = strdup(TPARM_1(oldcap, n));
- char *newvalue = strdup(TPARM_1(newcap, n));
+ char *oldvalue = safe_strdup(TIPARM_1(oldcap, n));
+ char *newvalue = safe_strdup(TIPARM_1(newcap, n));
same += !strcmp(oldvalue, newvalue);
free(oldvalue);
free(newvalue);
@@ -1209,7 +1218,7 @@ check_colors(TERMTYPE2 *tp)
char *value;
if ((max_colors > 0) != (max_pairs > 0)
- || ((max_colors > max_pairs) && (initialize_pair == 0)))
+ || ((max_colors > max_pairs) && !VALID_STRING(initialize_pair)))
_nc_warning("inconsistent values for max_colors (%d) and max_pairs (%d)",
max_colors, max_pairs);
@@ -1298,13 +1307,12 @@ keypad_final(const char *string)
static long
keypad_index(const char *string)
{
- char *test;
- const char *list = "PQRSwxymtuvlqrsPpn"; /* app-keypad except "Enter" */
int ch;
long result = -1;
if ((ch = keypad_final(string)) != '\0') {
- test = (strchr) (list, ch);
+ const char *list = "PQRSwxymtuvlqrsPpn"; /* app-keypad except "Enter" */
+ char *test = (strchr) (list, ch);
if (test != 0)
result = (long) (test - list);
}
@@ -1321,8 +1329,6 @@ static void
check_ansi_cursor(char *list[4])
{
int j, k;
- int want;
- size_t suffix;
bool skip[4];
bool repeated = FALSE;
@@ -1332,7 +1338,7 @@ check_ansi_cursor(char *list[4])
if (j != k
&& !strcmp(list[j], list[k])) {
char *value = _nc_tic_expand(list[k], TRUE, 0);
- _nc_warning("repeated cursor control %s\n", value);
+ _nc_warning("repeated cursor control %s", value);
repeated = TRUE;
}
}
@@ -1340,6 +1346,7 @@ check_ansi_cursor(char *list[4])
if (!repeated) {
char *up = list[1];
size_t prefix = (size_t) csi_length(up);
+ size_t suffix;
if (prefix) {
suffix = prefix;
@@ -1354,23 +1361,25 @@ check_ansi_cursor(char *list[4])
skip[2] = TRUE;
for (j = 0; j < 4; ++j) {
+ int want;
+
if (skip[j] || strlen(list[j]) == 1)
continue;
if (memcmp(list[j], up, prefix)) {
char *value = _nc_tic_expand(list[j], TRUE, 0);
- _nc_warning("inconsistent prefix for %s\n", value);
+ _nc_warning("inconsistent prefix for %s", value);
continue;
}
if (strlen(list[j]) < suffix) {
char *value = _nc_tic_expand(list[j], TRUE, 0);
- _nc_warning("inconsistent length for %s, expected %d\n",
+ _nc_warning("inconsistent length for %s, expected %d",
value, (int) suffix + 1);
continue;
}
want = "BADC"[j];
if (list[j][suffix] != want) {
char *value = _nc_tic_expand(list[j], TRUE, 0);
- _nc_warning("inconsistent suffix for %s, expected %c, have %c\n",
+ _nc_warning("inconsistent suffix for %s, expected %c, have %c",
value, want, list[j][suffix]);
}
}
@@ -1403,7 +1412,7 @@ check_cursor(TERMTYPE2 *tp)
check_noaddress(tp, "hard_copy");
} else if (generic_type) {
check_noaddress(tp, "generic_type");
- } else if (strchr(tp->term_names, '+') == 0) {
+ } else if (strchr(tp->term_names, '+') == NULL) {
int y = 0;
int x = 0;
if (PRESENT(column_address))
@@ -1525,9 +1534,7 @@ check_keypad(TERMTYPE2 *tp)
char final[MAX_KP + 1];
long list[MAX_KP];
int increase = 0;
- int j, k, kk;
- long last;
- long test;
+ int j;
final[0] = keypad_final(key_a1);
final[1] = keypad_final(key_a3);
@@ -1560,10 +1567,17 @@ check_keypad(TERMTYPE2 *tp)
++increase;
}
}
+
if (increase != (MAX_KP - 1)) {
+ long last;
+
show[0] = '\0';
for (j = 0, last = -1; j < MAX_KP; ++j) {
+ int k;
+ int kk;
+ long test;
+
for (k = 0, kk = -1, test = 100; k < 5; ++k) {
if (list[k] > last &&
list[k] < test) {
@@ -1655,20 +1669,10 @@ check_printer(TERMTYPE2 *tp)
ANDMISSING(start_char_set_def, stop_char_set_def);
#endif
- /* if we have a parameterized form, then the non-parameterized is easy */
-#if defined(set_bottom_margin_parm) && defined(set_bottom_margin)
- ANDMISSING(set_bottom_margin_parm, set_bottom_margin);
-#endif
-#if defined(set_left_margin_parm) && defined(set_left_margin)
- ANDMISSING(set_left_margin_parm, set_left_margin);
-#endif
-#if defined(set_right_margin_parm) && defined(set_right_margin)
- ANDMISSING(set_right_margin_parm, set_right_margin);
-#endif
-#if defined(set_top_margin_parm) && defined(set_top_margin)
- ANDMISSING(set_top_margin_parm, set_top_margin);
-#endif
-
+ /*
+ * If we have a parameterized form, then the non-parameterized is easy.
+ * note: parameterized/non-parameterized margin settings are unrelated.
+ */
#if defined(parm_down_micro) && defined(micro_down)
ANDMISSING(parm_down_micro, micro_down);
#endif
@@ -1703,10 +1707,11 @@ check_screen(TERMTYPE2 *tp)
int have_bce = back_color_erase;
bool have_kmouse = FALSE;
bool use_sgr_39_49 = FALSE;
+ const char *name_39_49 = "orig_pair or orig_colors";
char *name = _nc_first_name(tp->term_names);
bool is_screen = !strncmp(name, "screen", 6);
bool screen_base = (is_screen
- && strchr(name, '.') == 0);
+ && strchr(name, '.') == NULL);
if (!VALID_BOOLEAN(have_bce)) {
have_bce = FALSE;
@@ -1720,10 +1725,15 @@ check_screen(TERMTYPE2 *tp)
if (VALID_STRING(key_mouse)) {
have_kmouse = !strcmp("\033[M", key_mouse);
}
- if (VALID_STRING(orig_colors)) {
- use_sgr_39_49 = uses_SGR_39_49(orig_colors);
- } else if (VALID_STRING(orig_pair)) {
- use_sgr_39_49 = uses_SGR_39_49(orig_pair);
+ if (have_bce) {
+ if (VALID_STRING(orig_pair)) {
+ name_39_49 = "orig_pair";
+ use_sgr_39_49 = uses_SGR_39_49(orig_pair);
+ }
+ if (!use_sgr_39_49 && VALID_STRING(orig_colors)) {
+ name_39_49 = "orig_colors";
+ use_sgr_39_49 = uses_SGR_39_49(orig_colors);
+ }
}
if (have_XM && have_XT) {
@@ -1738,16 +1748,20 @@ check_screen(TERMTYPE2 *tp)
_nc_warning("expected kmous capability with XT");
}
}
- if (!have_bce && max_colors > 0)
- _nc_warning("expected bce capability with XT");
- if (!use_sgr_39_49 && have_bce && max_colors > 0)
- _nc_warning("expected orig_colors capability with XT to have 39/49 parameters");
+ if (max_colors > 0) {
+ if (!have_bce) {
+ _nc_warning("expected bce capability with XT");
+ } else if (!use_sgr_39_49) {
+ _nc_warning("expected %s capability with XT "
+ "to have 39/49 parameters", name_39_49);
+ }
+ }
if (VALID_STRING(to_status_line))
_nc_warning("\"tsl\" capability is redundant, given XT");
} else {
if (have_kmouse
&& !have_XM
- && !screen_base && strchr(name, '+') == 0) {
+ && !screen_base && strchr(name, '+') == NULL) {
_nc_warning("expected XT to be set, given kmous");
}
}
@@ -1835,7 +1849,6 @@ expected_params(const char *name)
DATA( "wingo", 1 ),
};
/* *INDENT-ON* */
-
#undef DATA
unsigned n;
@@ -1899,27 +1912,86 @@ is_user_capability(const char *name)
return result;
}
+static bool
+line_capability(const char *name)
+{
+ bool result = FALSE;
+ static const char *table[] =
+ {
+ "csr", /* change_scroll_region */
+ "clear", /* clear_screen */
+ "ed", /* clr_eos */
+ "cwin", /* create_window */
+ "cup", /* cursor_address */
+ "cud1", /* cursor_down */
+ "home", /* cursor_home */
+ "mrcup", /* cursor_mem_address */
+ "ll", /* cursor_to_ll */
+ "cuu1", /* cursor_up */
+ "dl1", /* delete_line */
+ "hd", /* down_half_line */
+ "flash", /* flash_screen */
+ "ff", /* form_feed */
+ "il1", /* insert_line */
+ "nel", /* newline */
+ "dl", /* parm_delete_line */
+ "cud", /* parm_down_cursor */
+ "indn", /* parm_index */
+ "il", /* parm_insert_line */
+ "rin", /* parm_rindex */
+ "cuu", /* parm_up_cursor */
+ "mc0", /* print_screen */
+ "vpa", /* row_address */
+ "ind", /* scroll_forward */
+ "ri", /* scroll_reverse */
+ "hu", /* up_half_line */
+ };
+ size_t n;
+ for (n = 0; n < SIZEOF(table); ++n) {
+ if (!strcmp(name, table[n])) {
+ result = TRUE;
+ break;
+ }
+ }
+ return result;
+}
+
/*
* Make a quick sanity check for the parameters which are used in the given
* strings. If there are no "%p" tokens, then there should be no other "%"
* markers.
*/
static void
-check_params(TERMTYPE2 *tp, const char *name, char *value, int extended)
+check_params(TERMTYPE2 *tp, const char *name, const char *value, int extended)
{
int expected = expected_params(name);
int actual = 0;
int n;
- bool params[NUM_PARM];
- char *s = value;
+ bool params[1 + NUM_PARM];
+ const char *s = value;
+#ifdef set_left_margin_parm
+ if (!strcmp(name, "smgrp")
+ && !VALID_STRING(set_left_margin_parm))
+ expected = 2;
+#endif
+#ifdef set_right_margin_parm
+ if (!strcmp(name, "smglp")
+ && !VALID_STRING(set_right_margin_parm))
+ expected = 2;
+#endif
#ifdef set_top_margin_parm
if (!strcmp(name, "smgbp")
- && set_top_margin_parm == 0)
+ && !VALID_STRING(set_top_margin_parm))
+ expected = 2;
+#endif
+#ifdef set_bottom_margin_parm
+ if (!strcmp(name, "smgtp")
+ && !VALID_STRING(set_bottom_margin_parm))
expected = 2;
#endif
- for (n = 0; n < NUM_PARM; n++)
+ for (n = 0; n <= NUM_PARM; n++)
params[n] = FALSE;
while (*s != 0) {
@@ -1977,10 +2049,11 @@ check_params(TERMTYPE2 *tp, const char *name, char *value, int extended)
* may not have been fully translated. Also, tparm does its own analysis.
* Report differences here.
*/
+ _nc_reset_tparm(NULL);
if (actual >= 0) {
char *p_is_s[NUM_PARM];
int popcount;
- int analyzed = _nc_tparm_analyze(value, p_is_s, &popcount);
+ int analyzed = _nc_tparm_analyze(NULL, value, p_is_s, &popcount);
if (analyzed < popcount) {
analyzed = popcount;
}
@@ -1998,54 +2071,37 @@ check_params(TERMTYPE2 *tp, const char *name, char *value, int extended)
_nc_warning("tparm analyzed %d parameters for %s, expected %d",
analyzed, name, actual);
}
+ } else if (expected > 0
+ && actual == expected
+ && guess_tparm_type(expected, p_is_s) == Numbers) {
+ int limit = 1;
+
+ if (!strcmp(name, "setf")
+ || !strcmp(name, "setb")
+ || !strcmp(name, "setaf")
+ || !strcmp(name, "setab")) {
+ if ((limit = max_colors) > 256)
+ limit = 256;
+ } else if (line_capability(name)) {
+ limit = 24;
+ } else if (is_user_capability(name) < 0) {
+ limit = 80;
+ }
+ for (n = 0; n < limit; ++n) {
+ _nc_reset_tparm(NULL);
+ (void) TPARM_9(value, n, n, n, n, n, n, n, n, n);
+ if (_nc_tparm_err) {
+ _nc_warning("problem%s in tparm(%s, %d, ...)",
+ (_nc_tparm_err == 1) ? "" : "s",
+ name, n);
+ if (debug_level < 2)
+ break;
+ }
+ }
}
}
}
-static bool
-line_capability(const char *name)
-{
- bool result = FALSE;
- static const char *table[] =
- {
- "csr", /* change_scroll_region */
- "clear", /* clear_screen */
- "ed", /* clr_eos */
- "cwin", /* create_window */
- "cup", /* cursor_address */
- "cud1", /* cursor_down */
- "home", /* cursor_home */
- "mrcup", /* cursor_mem_address */
- "ll", /* cursor_to_ll */
- "cuu1", /* cursor_up */
- "dl1", /* delete_line */
- "hd", /* down_half_line */
- "flash", /* flash_screen */
- "ff", /* form_feed */
- "il1", /* insert_line */
- "nel", /* newline */
- "dl", /* parm_delete_line */
- "cud", /* parm_down_cursor */
- "indn", /* parm_index */
- "il", /* parm_insert_line */
- "rin", /* parm_rindex */
- "cuu", /* parm_up_cursor */
- "mc0", /* print_screen */
- "vpa", /* row_address */
- "ind", /* scroll_forward */
- "ri", /* scroll_reverse */
- "hu", /* up_half_line */
- };
- size_t n;
- for (n = 0; n < SIZEOF(table); ++n) {
- if (!strcmp(name, table[n])) {
- result = TRUE;
- break;
- }
- }
- return result;
-}
-
/*
* Check for DEC VT100 private mode for reverse video.
*/
@@ -2080,7 +2136,6 @@ check_delays(TERMTYPE2 *tp, const char *name, const char *value)
if (p[0] == '$' && p[1] == '<') {
const char *base = p + 2;
const char *mark = 0;
- bool maybe = TRUE;
bool mixed = FALSE;
int proportional = 0;
int mandatory = 0;
@@ -2089,7 +2144,7 @@ check_delays(TERMTYPE2 *tp, const char *name, const char *value)
for (q = base; *q != '\0'; ++q) {
if (*q == '>') {
- if (mark == 0)
+ if (mark == NULL)
mark = q;
break;
} else if (*q == '*' || *q == '/') {
@@ -2097,23 +2152,20 @@ check_delays(TERMTYPE2 *tp, const char *name, const char *value)
++proportional;
if (*q == '/')
++mandatory;
- if (mark == 0)
+ if (mark == NULL)
mark = q;
} else if (!(isalnum(UChar(*q)) || strchr("+-.", *q) != 0)) {
- maybe = FALSE;
break;
} else if (proportional || mandatory) {
mixed = TRUE;
}
}
last = *q ? (q + 1) : q;
- if (*q == '\0') {
- maybe = FALSE; /* just an isolated "$<" */
- } else if (maybe) {
+ if (*q != '\0') {
float check_f;
char check_c;
int rc = sscanf(base, "%f%c", &check_f, &check_c);
- if ((rc != 2) || (check_c != *mark) || mixed) {
+ if ((rc != 2) || (mark != NULL && (check_c != *mark)) || mixed) {
_nc_warning("syntax error in %s delay '%.*s'", name,
(int) (q - base), base);
} else if (*name == 'k') {
@@ -2122,7 +2174,7 @@ check_delays(TERMTYPE2 *tp, const char *name, const char *value)
_nc_warning("non-line capability using proportional delay: %s", name);
} else if (!xon_xoff &&
!mandatory &&
- strchr(_nc_first_name(tp->term_names), '+') == 0) {
+ strchr(_nc_first_name(tp->term_names), '+') == NULL) {
_nc_warning("%s in %s is used since no xon/xoff",
(proportional
? "proportional delay"
@@ -2154,7 +2206,7 @@ check_delays(TERMTYPE2 *tp, const char *name, const char *value)
*/
if ((p = skip_DECSCNM(value, &flag)) != 0 &&
flag > 0 &&
- (q = skip_DECSCNM(p, &flag)) != 0 &&
+ skip_DECSCNM(p, &flag) != 0 &&
flag == 0) {
_nc_warning("expected a delay in %s", name);
}
@@ -2173,6 +2225,9 @@ check_1_infotocap(const char *name, NCURSES_CONST char *value, int count)
char *result;
char blob[NUM_PARM * 10];
char *next = blob;
+ TParams expect;
+ TParams actual;
+ int nparam;
*next++ = '\0';
for (k = 1; k <= NUM_PARM; k++) {
@@ -2184,7 +2239,18 @@ check_1_infotocap(const char *name, NCURSES_CONST char *value, int count)
next += strlen(next) + 1;
}
- switch (tparm_type(name)) {
+ _nc_reset_tparm(NULL);
+ expect = tparm_type(name);
+ nparam = _nc_tparm_analyze(NULL, value, p_is_s, &ignored);
+ actual = guess_tparm_type(nparam, p_is_s);
+
+ if (expect != actual) {
+ _nc_warning("%s has mismatched parameters", name);
+ actual = Other;
+ }
+
+ _nc_reset_tparm(NULL);
+ switch (actual) {
case Num_Str:
result = TPARM_2(value, numbers[1], strings[2]);
break;
@@ -2192,8 +2258,21 @@ check_1_infotocap(const char *name, NCURSES_CONST char *value, int count)
result = TPARM_3(value, numbers[1], strings[2], strings[3]);
break;
case Numbers:
+#define myParam(n) numbers[n]
+ result = TIPARM_9(value,
+ myParam(1),
+ myParam(2),
+ myParam(3),
+ myParam(4),
+ myParam(5),
+ myParam(6),
+ myParam(7),
+ myParam(8),
+ myParam(9));
+#undef myParam
+ break;
+ case Other:
default:
- (void) _nc_tparm_analyze(value, p_is_s, &ignored);
#define myParam(n) (p_is_s[n - 1] != 0 ? ((TPARM_ARG) strings[n]) : numbers[n])
result = TPARM_9(value,
myParam(1),
@@ -2205,6 +2284,7 @@ check_1_infotocap(const char *name, NCURSES_CONST char *value, int count)
myParam(7),
myParam(8),
myParam(9));
+#undef myParam
break;
}
return strdup(result);
@@ -2234,7 +2314,7 @@ parse_delay_value(const char *src, double *delays, int *always)
}
}
while (*src == '*' || *src == '/') {
- if (always == 0 && *src == '/')
+ if (always == NULL && *src == '/')
break;
if (*src++ == '*') {
star = 1;
@@ -2339,14 +2419,13 @@ check_infotocap(TERMTYPE2 *tp, int i, const char *value)
? parametrized[i]
: ((*value == 'k')
? 0
- : has_params(value)));
- int to_char = 0;
- char *ti_value;
+ : has_params(value, FALSE)));
+ char *ti_value = NULL;
char *tc_value;
bool embedded;
assert(SIZEOF(parametrized) == STRCOUNT);
- if ((ti_value = _nc_tic_expand(value, TRUE, to_char)) == ABSENT_STRING) {
+ if (!VALID_STRING(value) || (ti_value = strdup(value)) == NULL) {
_nc_warning("tic-expansion of %s failed", name);
} else if ((tc_value = _nc_infotocap(name, ti_value, params)) == ABSENT_STRING) {
_nc_warning("tic-conversion of %s failed", name);
@@ -2359,8 +2438,8 @@ check_infotocap(TERMTYPE2 *tp, int i, const char *value)
|| !strcmp(name, "setb")
|| !strcmp(name, "setaf")
|| !strcmp(name, "setab")) {
- if ((limit = max_colors) > 16)
- limit = 16;
+ if ((limit = max_colors) > 256)
+ limit = 256;
}
for (count = 0; count < limit; ++count) {
char *ti_check = check_1_infotocap(name, ti_value, count);
@@ -2369,12 +2448,14 @@ check_infotocap(TERMTYPE2 *tp, int i, const char *value)
if (strcmp(ti_check, tc_check)) {
if (first) {
fprintf(stderr, "check_infotocap(%s)\n", name);
- fprintf(stderr, "...ti '%s'\n", ti_value);
- fprintf(stderr, "...tc '%s'\n", tc_value);
+ fprintf(stderr, "...ti '%s'\n", _nc_visbuf2(0, ti_value));
+ fprintf(stderr, "...tc '%s'\n", _nc_visbuf2(0, tc_value));
first = FALSE;
}
_nc_warning("tparm-conversion of %s(%d) differs between\n\tterminfo %s\n\ttermcap %s",
- name, count, ti_check, tc_check);
+ name, count,
+ _nc_visbuf2(0, ti_check),
+ _nc_visbuf2(1, tc_check));
}
free(ti_check);
free(tc_check);
@@ -2387,6 +2468,7 @@ check_infotocap(TERMTYPE2 *tp, int i, const char *value)
name, ti_value, tc_value);
}
}
+ free(ti_value);
}
static char *
@@ -2509,22 +2591,29 @@ similar_sgr(int num, char *a, char *b)
return ((num != 0) || (*a == 0));
}
+static void
+check_tparm_err(int num)
+{
+ if (_nc_tparm_err)
+ _nc_warning("tparam error in sgr(%d): %s", num, sgr_names[num]);
+}
+
static char *
check_sgr(TERMTYPE2 *tp, char *zero, int num, char *cap, const char *name)
{
char *test;
_nc_tparm_err = 0;
- test = TPARM_9(set_attributes,
- num == 1,
- num == 2,
- num == 3,
- num == 4,
- num == 5,
- num == 6,
- num == 7,
- num == 8,
- num == 9);
+ test = TIPARM_9(set_attributes,
+ num == 1,
+ num == 2,
+ num == 3,
+ num == 4,
+ num == 5,
+ num == 6,
+ num == 7,
+ num == 8,
+ num == 9);
if (test != 0) {
if (PRESENT(cap)) {
if (!similar_sgr(num, test, cap)) {
@@ -2539,8 +2628,7 @@ check_sgr(TERMTYPE2 *tp, char *zero, int num, char *cap, const char *name)
} else if (PRESENT(cap)) {
_nc_warning("sgr(%d) missing, but %s present", num, name);
}
- if (_nc_tparm_err)
- _nc_warning("stack error in sgr(%d) string", num);
+ check_tparm_err(num);
return test;
}
@@ -2583,7 +2671,7 @@ get_fkey_list(TERMTYPE2 *tp)
int used = 0;
unsigned j;
- if (result == 0)
+ if (result == NULL)
failed("get_fkey_list");
for (j = 0; all_fkeys[j].code; j++) {
@@ -2630,13 +2718,13 @@ static void
check_conflict(TERMTYPE2 *tp)
{
bool conflict = FALSE;
- unsigned j, k;
if (!(_nc_syntax == SYN_TERMCAP && capdump)) {
char *check = calloc((size_t) (NUM_STRINGS(tp) + 1), sizeof(char));
NAME_VALUE *given = get_fkey_list(tp);
+ unsigned j, k;
- if (check == 0)
+ if (check == NULL)
failed("check_conflict");
for (j = 0; given[j].keycode; ++j) {
@@ -2695,7 +2783,6 @@ check_conflict(TERMTYPE2 *tp)
{ NULL, NULL },
};
/* *INDENT-ON* */
-
/*
* SVr4 curses defines the "xcurses" names listed above except for
* the special cases in the "shifted" column. When using these
@@ -2973,10 +3060,9 @@ check_termtype(TERMTYPE2 *tp, bool literal)
if (PRESENT(exit_attribute_mode)) {
zero = strdup(CHECK_SGR(0, exit_attribute_mode));
} else {
- zero = strdup(TPARM_9(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ zero = strdup(TIPARM_9(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, 0));
}
- if (_nc_tparm_err)
- _nc_warning("stack error in sgr(0) string");
+ check_tparm_err(0);
if (zero != 0) {
CHECK_SGR(1, enter_standout_mode);
@@ -3001,7 +3087,7 @@ check_termtype(TERMTYPE2 *tp, bool literal)
if (PRESENT(exit_attribute_mode)) {
char *check_sgr0 = _nc_trim_sgr0(tp);
- if (check_sgr0 == 0 || *check_sgr0 == '\0') {
+ if (check_sgr0 == NULL || *check_sgr0 == '\0') {
_nc_warning("trimmed sgr0 is empty");
} else {
show_where(2);
diff --git a/progs/toe.c b/progs/toe.c
index f3856f0..92819c1 100644
--- a/progs/toe.c
+++ b/progs/toe.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2013,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -45,7 +45,7 @@
#include <hashed_db.h>
#endif
-MODULE_ID("$Id: toe.c,v 1.79 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: toe.c,v 1.86 2021/10/10 00:55:32 tom Exp $")
#define isDotname(name) (!strcmp(name, ".") || !strcmp(name, ".."))
@@ -64,7 +64,7 @@ static size_t len_termdata; /* allocated size of ptr_termdata[] */
#if NO_LEAKS
#undef ExitProgram
-static void ExitProgram(int code) GCC_NORETURN;
+static GCC_NORETURN void ExitProgram(int code);
static void
ExitProgram(int code)
{
@@ -73,7 +73,7 @@ ExitProgram(int code)
}
#endif
-static void failed(const char *) GCC_NORETURN;
+static GCC_NORETURN void failed(const char *);
static void
failed(const char *msg)
@@ -127,12 +127,15 @@ compare_termdata(const void *a, const void *b)
static void
show_termdata(int eargc, char **eargv)
{
- int j, k;
- size_t n;
-
if (use_termdata) {
+ size_t n;
+
if (eargc > 1) {
+ int j;
+
for (j = 0; j < eargc; ++j) {
+ int k;
+
for (k = 0; k <= j; ++k) {
printf("--");
}
@@ -143,14 +146,20 @@ show_termdata(int eargc, char **eargv)
if (use_termdata > 1)
qsort(ptr_termdata, use_termdata, sizeof(TERMDATA), compare_termdata);
for (n = 0; n < use_termdata; ++n) {
+ int nk = -1;
/*
* If there is more than one database, show how they differ.
*/
if (eargc > 1) {
unsigned long check = 0;
- k = 0;
+ int k = 0;
for (;;) {
+ char mark = ((check == 0
+ || (check != ptr_termdata[n].checksum))
+ ? '*'
+ : '+');
+
for (; k < ptr_termdata[n].db_index; ++k) {
printf("--");
}
@@ -160,11 +169,10 @@ show_termdata(int eargc, char **eargv)
* from the first entry's checksum, print "*". Otherwise
* it looks enough like a duplicate to print "+".
*/
- printf("%c-", ((check == 0
- || (check != ptr_termdata[n].checksum))
- ? '*'
- : '+'));
+ printf("%c-", mark);
check = ptr_termdata[n].checksum;
+ if (mark == '*' && nk < 0)
+ nk = (int) n;
++k;
if ((n + 1) >= use_termdata
@@ -179,10 +187,12 @@ show_termdata(int eargc, char **eargv)
}
printf(":\t");
}
+ if (nk < 0)
+ nk = (int) n;
(void) printf("%-10s\t%s\n",
ptr_termdata[n].term_name,
- ptr_termdata[n].description);
+ ptr_termdata[nk].description);
}
}
}
@@ -242,7 +252,9 @@ make_db_name(char *dst, const char *src, unsigned limit)
&& !strcmp(src + size - lens, suffix)) {
_nc_STRCPY(dst, src, PATH_MAX);
} else {
- _nc_SPRINTF(dst, _nc_SLIMIT(PATH_MAX) "%s%s", src, suffix);
+ _nc_SPRINTF(dst, _nc_SLIMIT(PATH_MAX) "%.*s%s",
+ (int) (PATH_MAX - sizeof(suffix)),
+ src, suffix);
}
result = TRUE;
}
@@ -325,6 +337,26 @@ sorthook(int db_index, int db_limit, const char *term_name, TERMTYPE2 *tp)
}
#if NCURSES_USE_TERMCAP
+/*
+ * Check if the buffer contents are printable ASCII, ensuring that we do not
+ * accidentally pick up incompatible binary content from a hashed database.
+ */
+static bool
+is_termcap(char *buffer)
+{
+ bool result = TRUE;
+ while (*buffer != '\0') {
+ int ch = UChar(*buffer++);
+ if (ch == '\t')
+ continue;
+ if (ch < ' ' || ch > '~') {
+ result = FALSE;
+ break;
+ }
+ }
+ return result;
+}
+
static void
show_termcap(int db_index, int db_limit, char *buffer, DescHook hook)
{
@@ -513,11 +545,13 @@ typelist(int eargc, char *eargv[],
db_array[1] = 0;
if (cgetfirst(&buffer, db_array) > 0) {
- show_termcap(i, eargc, buffer, hook);
- free(buffer);
- while (cgetnext(&buffer, db_array) > 0) {
+ if (is_termcap(buffer)) {
show_termcap(i, eargc, buffer, hook);
free(buffer);
+ while (cgetnext(&buffer, db_array) > 0) {
+ show_termcap(i, eargc, buffer, hook);
+ free(buffer);
+ }
}
cgetclose();
continue;
@@ -532,8 +566,10 @@ typelist(int eargc, char *eargv[],
if (verbosity)
(void) printf("#\n#%s:\n#\n", eargv[i]);
- if ((fp = fopen(eargv[i], "r")) != 0) {
+ if ((fp = safe_fopen(eargv[i], "r")) != 0) {
while (fgets(buffer, sizeof(buffer), fp) != 0) {
+ if (!is_termcap(buffer))
+ break;
if (*buffer == '#')
continue;
if (isspace(*buffer))
@@ -570,7 +606,6 @@ main(int argc, char *argv[])
bool invert_dependencies = FALSE;
bool header = FALSE;
char *report_file = 0;
- unsigned i;
int code;
int this_opt, last_opt = '?';
unsigned v_opt = 0;
@@ -658,11 +693,13 @@ main(int argc, char *argv[])
/* maybe we want a reverse-dependency listing? */
if (invert_dependencies) {
ENTRY *qp, *rp;
- int matchcount;
for_entry_list(qp) {
- matchcount = 0;
+ int matchcount = 0;
+
for_entry_list(rp) {
+ unsigned i;
+
if (rp->nuses == 0)
continue;
@@ -692,12 +729,12 @@ main(int argc, char *argv[])
DBDIRS state;
int offset;
int pass;
- const char *path;
char **eargv = 0;
code = EXIT_FAILURE;
for (pass = 0; pass < 2; ++pass) {
size_t count = 0;
+ const char *path;
_nc_first_db(&state, &offset);
while ((path = _nc_next_db(&state, &offset)) != 0) {
diff --git a/progs/tparm_type.c b/progs/tparm_type.c
index da681ce..3da4a07 100644
--- a/progs/tparm_type.c
+++ b/progs/tparm_type.c
@@ -33,7 +33,7 @@
#include <tparm_type.h>
-MODULE_ID("$Id: tparm_type.c,v 1.3 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tparm_type.c,v 1.4 2020/10/24 17:30:32 tom Exp $")
/*
* Lookup the type of call we should make to tparm(). This ignores the actual
@@ -70,3 +70,31 @@ tparm_type(const char *name)
}
return result;
}
+
+TParams
+guess_tparm_type(int nparam, char **p_is_s)
+{
+ TParams result = Other;
+ switch (nparam) {
+ case 0:
+ case 1:
+ if (!p_is_s[0])
+ result = Numbers;
+ break;
+ case 2:
+ if (!p_is_s[0] && !p_is_s[1])
+ result = Numbers;
+ if (!p_is_s[0] && p_is_s[1])
+ result = Num_Str;
+ break;
+ case 3:
+ if (!p_is_s[0] && !p_is_s[1] && !p_is_s[2])
+ result = Numbers;
+ if (!p_is_s[0] && p_is_s[1] && p_is_s[2])
+ result = Num_Str_Str;
+ break;
+ default:
+ break;
+ }
+ return result;
+}
diff --git a/progs/tparm_type.h b/progs/tparm_type.h
index 77f4f21..7c102a3 100644
--- a/progs/tparm_type.h
+++ b/progs/tparm_type.h
@@ -32,7 +32,7 @@
****************************************************************************/
/*
- * $Id: tparm_type.h,v 1.2 2020/02/02 23:34:34 tom Exp $
+ * $Id: tparm_type.h,v 1.3 2020/10/24 17:11:33 tom Exp $
*
* determine expected/actual number of parameters to setup for tparm
*/
@@ -43,11 +43,13 @@
#include <progs.priv.h>
typedef enum {
- Numbers = 0
+ Other = -1
+ ,Numbers = 0
,Num_Str
,Num_Str_Str
} TParams;
extern TParams tparm_type(const char *name);
+extern TParams guess_tparm_type(int nparam, char **p_is_s);
#endif /* TPARM_TYPE_H */
diff --git a/progs/tput.c b/progs/tput.c
index 295b83f..8ac478e 100644
--- a/progs/tput.c
+++ b/progs/tput.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -44,39 +44,34 @@
#include <clear_cmd.h>
#include <reset_cmd.h>
-#if !PURE_TERMINFO
-#include <dump_entry.h>
-#include <termsort.c>
-#endif
#include <transform.h>
#include <tty_settings.h>
-MODULE_ID("$Id: tput.c,v 1.81 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tput.c,v 1.97 2021/10/02 18:09:23 tom Exp $")
#define PUTS(s) fputs(s, stdout)
const char *_nc_progname = "tput";
-static char *prg_name;
static bool is_init = FALSE;
static bool is_reset = FALSE;
static bool is_clear = FALSE;
-static void
-quit(int status, const char *fmt,...)
+static GCC_NORETURN void
+quit(int status, const char *fmt, ...)
{
va_list argp;
va_start(argp, fmt);
- fprintf(stderr, "%s: ", prg_name);
+ fprintf(stderr, "%s: ", _nc_progname);
vfprintf(stderr, fmt, argp);
fprintf(stderr, "\n");
va_end(argp);
ExitProgram(status);
}
-static void
-usage(void)
+static GCC_NORETURN void
+usage(const char *optstring)
{
#define KEEP(s) s "\n"
static const char msg[] =
@@ -95,8 +90,21 @@ usage(void)
KEEP(" capname unlike clear/init/reset, print value for capability \"capname\"")
};
#undef KEEP
- (void) fprintf(stderr, "Usage: %s [options] [command]\n", prg_name);
- fputs(msg, stderr);
+ (void) fprintf(stderr, "Usage: %s [options] [command]\n", _nc_progname);
+ if (optstring != NULL) {
+ const char *s = msg;
+ while (*s != '\0') {
+ fputc(UChar(*s), stderr);
+ if (!strncmp(s, " -", 3)) {
+ if (strchr(optstring, s[3]) == NULL)
+ s = strchr(s, '\n') + 1;
+ } else if (!strncmp(s, "\n\nC", 3))
+ break;
+ ++s;
+ }
+ } else {
+ fputs(msg, stderr);
+ }
ExitProgram(ErrUsage);
}
@@ -140,7 +148,7 @@ exit_code(int token, int value)
* Returns nonzero on error.
*/
static int
-tput_cmd(int fd, TTY * saved_settings, bool opt_x, int argc, char *argv[])
+tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
{
NCURSES_CONST char *name;
char *s;
@@ -150,6 +158,7 @@ tput_cmd(int fd, TTY * saved_settings, bool opt_x, int argc, char *argv[])
#endif
name = check_aliases(argv[0], FALSE);
+ *used = 1;
if (is_reset || is_init) {
TTY oldmode;
@@ -159,7 +168,7 @@ tput_cmd(int fd, TTY * saved_settings, bool opt_x, int argc, char *argv[])
if (is_reset) {
reset_start(stdout, TRUE, FALSE);
- reset_tty_settings(fd, saved_settings);
+ reset_tty_settings(fd, settings, FALSE);
} else {
reset_start(stdout, FALSE, TRUE);
}
@@ -169,13 +178,13 @@ tput_cmd(int fd, TTY * saved_settings, bool opt_x, int argc, char *argv[])
#else
(void) fd;
#endif
- set_control_chars(saved_settings, terasechar, intrchar, tkillchar);
- set_conversions(saved_settings);
+ set_control_chars(settings, terasechar, intrchar, tkillchar);
+ set_conversions(settings);
if (send_init_strings(fd, &oldmode)) {
reset_flush();
}
- update_tty_settings(&oldmode, saved_settings);
+ update_tty_settings(&oldmode, settings);
return 0;
}
@@ -221,17 +230,19 @@ tput_cmd(int fd, TTY * saved_settings, bool opt_x, int argc, char *argv[])
} else if (VALID_STRING(s)) {
if (argc > 1) {
int k;
- int ignored;
+ int analyzed;
+ int popcount;
long numbers[1 + NUM_PARM];
char *strings[1 + NUM_PARM];
char *p_is_s[NUM_PARM];
+ TParams paramType;
/* Nasty hack time. The tparm function needs to see numeric
* parameters as numbers, not as pointers to their string
* representations
*/
- for (k = 1; (k < argc) && (k < NUM_PARM); k++) {
+ for (k = 1; (k < argc) && (k <= NUM_PARM); k++) {
char *tmp = 0;
strings[k] = argv[k];
numbers[k] = strtol(argv[k], &tmp, 0);
@@ -243,16 +254,50 @@ tput_cmd(int fd, TTY * saved_settings, bool opt_x, int argc, char *argv[])
strings[k] = 0;
}
- switch (tparm_type(name)) {
+ paramType = tparm_type(name);
+#if NCURSES_XNAMES
+ /*
+ * If the capability is an extended one, analyze the string.
+ */
+ if (paramType == Numbers) {
+ struct name_table_entry const *entry_ptr;
+ entry_ptr = _nc_find_type_entry(name, STRING, FALSE);
+ if (entry_ptr == NULL) {
+ paramType = Other;
+ }
+ }
+#endif
+
+ popcount = 0;
+ _nc_reset_tparm(NULL);
+ switch (paramType) {
case Num_Str:
s = TPARM_2(s, numbers[1], strings[2]);
+ analyzed = 2;
break;
case Num_Str_Str:
s = TPARM_3(s, numbers[1], strings[2], strings[3]);
+ analyzed = 3;
break;
case Numbers:
+ analyzed = _nc_tparm_analyze(NULL, s, p_is_s, &popcount);
+#define myParam(n) numbers[n]
+ s = TIPARM_9(s,
+ myParam(1),
+ myParam(2),
+ myParam(3),
+ myParam(4),
+ myParam(5),
+ myParam(6),
+ myParam(7),
+ myParam(8),
+ myParam(9));
+#undef myParam
+ break;
+ case Other:
+ /* FALLTHRU */
default:
- (void) _nc_tparm_analyze(s, p_is_s, &ignored);
+ analyzed = _nc_tparm_analyze(NULL, s, p_is_s, &popcount);
#define myParam(n) (p_is_s[n - 1] != 0 ? ((TPARM_ARG) strings[n]) : numbers[n])
s = TPARM_9(s,
myParam(1),
@@ -264,8 +309,13 @@ tput_cmd(int fd, TTY * saved_settings, bool opt_x, int argc, char *argv[])
myParam(7),
myParam(8),
myParam(9));
+#undef myParam
break;
}
+ if (analyzed < popcount) {
+ analyzed = popcount;
+ }
+ *used += analyzed;
}
/* use putp() in order to perform padding */
@@ -285,16 +335,18 @@ main(int argc, char **argv)
char buf[BUFSIZ];
int result = 0;
int fd;
+ int used;
TTY tty_settings;
bool opt_x = FALSE; /* clear scrollback if possible */
bool is_alias;
bool need_tty;
- prg_name = check_aliases(_nc_rootname(argv[0]), TRUE);
+ _nc_progname = check_aliases(_nc_rootname(argv[0]), TRUE);
+ is_alias = (is_clear || is_reset || is_init);
term = getenv("TERM");
- while ((c = getopt(argc, argv, "ST:Vx")) != -1) {
+ while ((c = getopt(argc, argv, is_alias ? "T:Vx" : "ST:Vx")) != -1) {
switch (c) {
case 'S':
cmdline = FALSE;
@@ -311,12 +363,11 @@ main(int argc, char **argv)
opt_x = TRUE;
break;
default:
- usage();
+ usage(is_alias ? "TVx" : NULL);
/* NOTREACHED */
}
}
- is_alias = (is_clear || is_reset || is_init);
need_tty = ((is_reset || is_init) ||
(optind < argc &&
(!strcmp(argv[optind], "reset") ||
@@ -330,7 +381,7 @@ main(int argc, char **argv)
argc -= optind;
argv += optind;
}
- argv[0] = prg_name;
+ argv[0] = strdup(_nc_progname);
} else {
argc -= optind;
argv += optind;
@@ -345,34 +396,53 @@ main(int argc, char **argv)
quit(ErrTermType, "unknown terminal \"%s\"", term);
if (cmdline) {
+ int code = 0;
if ((argc <= 0) && !is_alias)
- usage();
- ExitProgram(tput_cmd(fd, &tty_settings, opt_x, argc, argv));
+ usage(NULL);
+ while (argc > 0) {
+ code = tput_cmd(fd, &tty_settings, opt_x, argc, argv, &used);
+ if (code != 0)
+ break;
+ argc -= used;
+ argv += used;
+ }
+ ExitProgram(code);
}
while (fgets(buf, sizeof(buf), stdin) != 0) {
- char *argvec[16]; /* command, 9 parms, null, & slop */
+ size_t need = strlen(buf);
+ char **argvec = typeCalloc(char *, need + 1);
+ char **argnow;
int argnum = 0;
char *cp;
- /* crack the argument list into a dope vector */
+ if (argvec == NULL) {
+ quit(ErrSystem(1), strerror(errno));
+ }
+
+ /* split the buffer into tokens */
for (cp = buf; *cp; cp++) {
if (isspace(UChar(*cp))) {
*cp = '\0';
- } else if (cp == buf || cp[-1] == 0) {
+ } else if (cp == buf || cp[-1] == '\0') {
argvec[argnum++] = cp;
- if (argnum >= (int) SIZEOF(argvec) - 1)
+ if (argnum >= (int) need)
break;
}
}
- argvec[argnum] = 0;
- if (argnum != 0
- && tput_cmd(fd, &tty_settings, opt_x, argnum, argvec) != 0) {
- if (result == 0)
- result = ErrSystem(0); /* will return value >4 */
- ++result;
+ argnow = argvec;
+ while (argnum > 0) {
+ int code = tput_cmd(fd, &tty_settings, opt_x, argnum, argnow, &used);
+ if (code != 0) {
+ if (result == 0)
+ result = ErrSystem(0); /* will return value >4 */
+ ++result;
+ }
+ argnum -= used;
+ argnow += used;
}
+ free(argvec);
}
ExitProgram(result);
diff --git a/progs/tset.c b/progs/tset.c
index ca0520e..62611b3 100644
--- a/progs/tset.c
+++ b/progs/tset.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -98,7 +98,7 @@
char *ttyname(int fd);
#endif
-MODULE_ID("$Id: tset.c,v 1.121 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tset.c,v 1.130 2021/10/02 18:08:09 tom Exp $")
#ifndef environ
extern char **environ;
@@ -108,7 +108,7 @@ const char *_nc_progname = "tset";
#define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
-static void exit_error(void) GCC_NORETURN;
+static GCC_NORETURN void exit_error(void);
static int
CaselessCmp(const char *a, const char *b)
@@ -122,7 +122,7 @@ CaselessCmp(const char *a, const char *b)
return LOWERCASE(*a) - LOWERCASE(*b);
}
-static void
+static GCC_NORETURN void
exit_error(void)
{
restore_tty_settings();
@@ -132,8 +132,8 @@ exit_error(void)
/* NOTREACHED */
}
-static void
-err(const char *fmt,...)
+static GCC_NORETURN void
+err(const char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
@@ -144,7 +144,7 @@ err(const char *fmt,...)
/* NOTREACHED */
}
-static void
+static GCC_NORETURN void
failed(const char *msg)
{
char temp[BUFSIZ];
@@ -167,7 +167,6 @@ static const char *
askuser(const char *dflt)
{
static char answer[256];
- char *p;
/* We can get recalled; if so, don't continue uselessly. */
clearerr(stdin);
@@ -176,7 +175,10 @@ askuser(const char *dflt)
exit_error();
/* NOTREACHED */
}
+
for (;;) {
+ char *p;
+
if (dflt)
(void) fprintf(stderr, "Terminal type? [%s] ", dflt);
else
@@ -227,10 +229,16 @@ static MAP *cur, *maplist;
#define DATA(name,value) { { name }, value }
typedef struct speeds {
- const char string[7];
+ const char string[8];
int speed;
} SPEEDS;
+#if defined(EXP_WIN32_DRIVER)
+static const SPEEDS speeds[] =
+{
+ {"0", 0}
+};
+#else
static const SPEEDS speeds[] =
{
DATA("0", B0),
@@ -331,6 +339,7 @@ static const SPEEDS speeds[] =
#endif
};
#undef DATA
+#endif
static int
tbaudrate(char *rate)
@@ -766,7 +775,7 @@ main(int argc, char **argv)
bool opt_w = FALSE; /* set window-size */
TTY mode, oldmode;
- my_fd = STDERR_FILENO;
+ _nc_progname = _nc_rootname(*argv);
obsolete(argv);
noinit = noset = quiet = Sflag = sflag = showterm = 0;
while ((ch = getopt(argc, argv, "a:cd:e:Ii:k:m:p:qQrSsVw")) != -1) {
@@ -825,7 +834,6 @@ main(int argc, char **argv)
}
}
- _nc_progname = _nc_rootname(*argv);
argc -= optind;
argv += optind;
@@ -839,13 +847,15 @@ main(int argc, char **argv)
oldmode = mode;
#ifdef TERMIOS
ospeed = (NCURSES_OSPEED) cfgetospeed(&mode);
+#elif defined(EXP_WIN32_DRIVER)
+ ospeed = 0;
#else
ospeed = (NCURSES_OSPEED) mode.sg_ospeed;
#endif
if (same_program(_nc_progname, PROG_RESET)) {
reset_start(stderr, TRUE, FALSE);
- reset_tty_settings(my_fd, &mode);
+ reset_tty_settings(my_fd, &mode, noset);
} else {
reset_start(stderr, FALSE, TRUE);
}
diff --git a/progs/tty_settings.c b/progs/tty_settings.c
index 274de9f..a9eb8cd 100644
--- a/progs/tty_settings.c
+++ b/progs/tty_settings.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -36,7 +36,7 @@
#include <fcntl.h>
-MODULE_ID("$Id: tty_settings.c,v 1.6 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: tty_settings.c,v 1.7 2021/10/08 23:53:32 tom Exp $")
static int my_fd;
static TTY original_settings;
@@ -74,10 +74,12 @@ save_tty_settings(TTY * tty_settings, bool need_tty)
{
if (!get_tty_settings(STDERR_FILENO, tty_settings) &&
!get_tty_settings(STDOUT_FILENO, tty_settings) &&
- !get_tty_settings(STDIN_FILENO, tty_settings) &&
- !get_tty_settings(open("/dev/tty", O_RDWR), tty_settings)) {
+ !get_tty_settings(STDIN_FILENO, tty_settings)) {
if (need_tty) {
- failed("terminal attributes");
+ int fd = open("/dev/tty", O_RDWR);
+ if (!get_tty_settings(fd, tty_settings)) {
+ failed("terminal attributes");
+ }
} else {
my_fd = fileno(stdout);
}
diff --git a/test/Makefile.in b/test/Makefile.in
index 16bfc45..2931b98 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.121 2020/02/02 23:34:34 tom Exp $
+# $Id: Makefile.in,v 1.129 2021/07/03 15:45:33 tom Exp $
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 1998-2017,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -90,9 +90,9 @@ CPPFLAGS = -I. -I$(srcdir) -I../test -DHAVE_CONFIG_H -DDATA_DIR=\"$(datadir)\" @
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
CFLAGS_LIBTOOL = $(CCFLAGS)
-CFLAGS_NORMAL = $(CCFLAGS)
-CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
-CFLAGS_PROFILE = $(CCFLAGS) -pg
+CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
+CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
+CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@@ -118,27 +118,57 @@ LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
# use these for linking with all of the libraries
-LIBS_DEFAULT = $(TEST_ARGS) @LIBS@ $(TEST_LIBS) $(MATH_LIB)
+LIBS_DEFAULT = $(TEST_ARGS) @LIBS@ $(TEST_LIBS)
LDFLAGS_DEFAULT = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_DEFAULT)
# use these for linking with the (n)curses library and possibly pthreads
-LIBS_THREADS = `echo "$(TEST_ARGS) @LIBS@" | sed -e 's/-lform.*-lpanel[^ ]*//'` $(TEST_LIBS) $(MATH_LIB) @PTHREAD@
+LIBS_THREADS = `echo "$(TEST_ARGS) @LIBS@" | sed -e 's/-l@FORM_NAME@.*-l@PANEL_NAME@[^ ]*//'` $(TEST_LIBS) @PTHREAD@
LDFLAGS_THREADS = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_THREADS)
# use these for linking with the (n)curses library
-LIBS_CURSES = `echo "$(TEST_ARGS) @LIBS@" | sed -e 's/-lform.*-lpanel[^ ]*//'` $(TEST_LIBS) $(MATH_LIB)
+LIBS_CURSES = `echo "$(TEST_ARGS) @LIBS@" | sed -e 's/-l@FORM_NAME@.*-l@PANEL_NAME@[^ ]*//'` $(TEST_LIBS)
LDFLAGS_CURSES = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_CURSES)
+# use these when we need the math library
+LDFLAGS_CURSES_M= $(LDFLAGS_CURSES) $(MATH_LIB)
+
# use these for linking with the tinfo library if we have it, or curses library if not
-LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LIBS@ $(TEST_LIBS) $(MATH_LIB)
+LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LIBS@ $(TEST_LIBS)
LDFLAGS_TINFO = @TINFO_LDFLAGS@ $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO)
LINT = @LINT@
LINT_OPTS = @LINT_OPTS@
LINT_LIBS = -lform -lmenu -lpanel -lncurses @LIBS@
+INCDIR = $(top_srcdir)/include
+incdir = ../include
+
HEADER_DEPS = \
- ../include/curses.h \
- ../include/term.h
+ $(incdir)/curses.h \
+ $(incdir)/term.h \
+ $(incdir)/ncurses_cfg.h \
+ $(incdir)/ncurses_def.h \
+ $(incdir)/ncurses_dll.h \
+ $(incdir)/term.h \
+ $(incdir)/unctrl.h \
+ $(INCDIR)/nc_alloc.h
+
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+
+all::
+
+# Verify that each header-file can be compiled without including another.
+check::
+ @$(SHELL) -c "for header in *.h;\
+ do \
+ echo \"** testing \$${header}\" ; \
+ echo \"#include <\$${header}>\" >headers.c; \
+ echo \"int main(void) { return 0; }\" >>headers.c; \
+ $(CC) -c $(CFLAGS) $(CPPFLAGS) headers.c; \
+ done"
+ -@rm -f headers.*
# The rest is generated from the "programs" and "modules" files...
diff --git a/test/README b/test/README
index 310b7b3..0963346 100644
--- a/test/README
+++ b/test/README
@@ -1,5 +1,5 @@
-------------------------------------------------------------------------------
--- Copyright 2018-2019,2020 Thomas E. Dickey --
+-- Copyright 2018-2020,2021 Thomas E. Dickey --
-- Copyright 1998-2017,2018 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
@@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README,v 1.69 2020/02/02 23:34:34 tom Exp $
+-- $Id: README,v 1.73 2021/03/07 00:08:58 tom Exp $
-------------------------------------------------------------------------------
The programs in this directory are used to test and demonstrate ncurses.
@@ -74,17 +74,16 @@ to list the options.
These programs provide examples of use, but do not comprise a complete set of
tests. Here is a list of library externals, noting those that are used:
-
libform:
-------
TYPE_ALNUM test: demo_forms
-TYPE_ALPHA test: demo_forms ncurses
+TYPE_ALPHA test: demo_forms dup_field move_field ncurses
TYPE_ENUM test: demo_forms
TYPE_INTEGER test: demo_forms
TYPE_IPV4 test: demo_forms
TYPE_NUMERIC test: demo_forms
TYPE_REGEXP test: demo_forms
-current_field test: demo_forms edit_field ncurses
+current_field test: demo_forms dup_field edit_field move_field ncurses
data_ahead test: demo_forms
data_behind test: demo_forms
dup_field -
@@ -92,63 +91,63 @@ dynamic_field_info test: demo_forms
field_arg test: demo_forms
field_back test: demo_forms edit_field
field_buffer test: cardfile demo_forms ncurses
-field_count test: demo_forms
+field_count test: demo_forms move_field
field_fore test: demo_forms
field_index test: demo_forms
field_info test: edit_field ncurses
field_init -
field_just -
-field_opts test: demo_forms ncurses
+field_opts test: demo_forms dup_field move_field ncurses
field_opts_off test: cardfile demo_forms form_driver_w
field_opts_on test: demo_forms
field_pad test: demo_forms
field_status test: demo_forms
field_term -
field_type test: demo_forms
-field_userptr test: edit_field ncurses
-form_driver test: cardfile demo_forms edit_field ncurses
+field_userptr test: dup_field edit_field move_field ncurses
+form_driver test: cardfile demo_forms dup_field edit_field move_field ncurses
form_driver_w test: form_driver_w
-form_fields test: cardfile demo_forms
+form_fields test: cardfile demo_forms move_field
form_init -
form_opts -
form_opts_off -
form_opts_on -
form_page test: demo_forms
form_request_by_name -
-form_request_name test: edit_field
-form_sub test: cardfile demo_forms ncurses
+form_request_name test: dup_field edit_field move_field
+form_sub test: cardfile demo_forms dup_field move_field ncurses
form_term -
form_userptr -
-form_win test: cardfile demo_forms edit_field form_driver_w ncurses
-free_field test: cardfile demo_forms form_driver_w ncurses
+form_win test: cardfile demo_forms dup_field edit_field form_driver_w move_field ncurses
+free_field test: cardfile demo_forms dup_field form_driver_w move_field ncurses
free_fieldtype test: ncurses
-free_form test: cardfile demo_forms form_driver_w ncurses
+free_form test: cardfile demo_forms dup_field form_driver_w move_field ncurses
link_field -
link_fieldtype -
-move_field -
-new_field test: cardfile demo_forms form_driver_w ncurses
+move_field test: move_field
+new_field test: cardfile demo_forms dup_field form_driver_w move_field ncurses
new_fieldtype test: ncurses
-new_form test: cardfile demo_forms form_driver_w ncurses
+new_form test: cardfile demo_forms dup_field form_driver_w move_field ncurses
new_form_sp -
new_page test: demo_forms
pos_form_cursor -
-post_form test: cardfile demo_forms form_driver_w ncurses
+post_form test: cardfile demo_forms dup_field form_driver_w move_field ncurses
scale_form test: demo_forms ncurses
set_current_field test: demo_forms
-set_field_back test: cardfile demo_forms edit_field form_driver_w ncurses
-set_field_buffer test: cardfile demo_forms edit_field ncurses
+set_field_back test: cardfile demo_forms dup_field edit_field form_driver_w move_field ncurses
+set_field_buffer test: cardfile demo_forms dup_field edit_field move_field ncurses
set_field_fore test: demo_forms
set_field_init -
set_field_just test: cardfile demo_forms
-set_field_opts test: demo_forms ncurses
+set_field_opts test: demo_forms dup_field move_field ncurses
set_field_pad test: demo_forms
set_field_status test: demo_forms
set_field_term -
-set_field_type test: demo_forms ncurses
+set_field_type test: demo_forms dup_field move_field ncurses
set_field_userptr test: edit_field ncurses
set_fieldtype_arg -
set_fieldtype_choice -
-set_form_fields -
+set_form_fields test: move_field
set_form_init -
set_form_opts -
set_form_page -
@@ -159,7 +158,7 @@ set_form_win test: cardfile demo_forms ncurses
set_max_field test: demo_forms
set_new_page test: demo_forms
unfocus_current_field -
-unpost_form test: cardfile demo_forms form_driver_w ncurses
+unpost_form test: cardfile demo_forms dup_field form_driver_w move_field ncurses
libmenu:
-------
@@ -233,21 +232,21 @@ libncurses:
----------
BC test: demo_termcap
COLORS test: color_content demo_new_pair dots_curses dots_xcurses echochar ncurses pair_content picsmap savescreen xmas
-COLOR_PAIR test: background blue bs cardfile clip_printw demo_forms demo_menus demo_panels dots_curses echochar filter firework gdc hanoi ins_wide insdelln inserts knight ncurses newdemo padview picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testaddch testcurs view worm xmas
+COLOR_PAIR test: background blue bs cardfile clip_printw demo_forms demo_menus demo_panels dots_curses dup_field echochar filter firework gdc hanoi ins_wide insdelln inserts knight move_field ncurses newdemo padview picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testaddch testcurs view worm xmas
COLOR_PAIRS test: demo_new_pair dots_curses dots_xcurses echochar ncurses newdemo pair_content
-COLS test: cardfile demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_panels ditto dots_curses dots_xcurses echochar filter firework foldkeys hashtest inch_wide inchs ins_wide inserts lrtest movewindow ncurses newdemo padview picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm
+COLS test: cardfile demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_panels demo_tabs ditto dots_curses dots_xcurses echochar filter firework foldkeys hashtest inch_wide inchs ins_wide inserts lrtest movewindow ncurses newdemo padview picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm
ESCDELAY test: test_opaque
-LINES test: cardfile demo_defkey demo_keyok demo_menus demo_panels ditto dots_curses dots_xcurses echochar firework hanoi hashtest inch_wide inchs ins_wide inserts lrtest movewindow ncurses newdemo padview picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm xmas
+LINES test: cardfile demo_defkey demo_keyok demo_menus demo_panels demo_tabs ditto dots_curses dots_xcurses echochar firework hanoi hashtest inch_wide inchs ins_wide inserts lrtest move_field movewindow ncurses newdemo padview picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm xmas
PAIR_NUMBER test: dump_window ncurses
PC test: demo_termcap
SP lib: form
TABSIZE test: test_opaque
UP test: demo_termcap
-acs_map test: background gdc ins_wide inserts knight movewindow ncurses newdemo savescreen test_add_wchstr test_addchstr test_addstr test_addwstr testcurs
+acs_map test: back_ground background gdc ins_wide inserts knight movewindow ncurses newdemo savescreen test_add_wchstr test_addchstr test_addstr test_addwstr testcurs
add_wch test: demo_new_pair demo_panels ncurses picsmap savescreen test_add_wchstr test_addwstr
add_wchnstr test: test_add_wchstr
add_wchstr test: test_add_wchstr view
-addch test: background blue bs color_content dots_curses echochar hashtest ncurses padview pair_content picsmap savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_opaque testaddch view worm
+addch test: back_ground background blue bs color_content demo_tabs dots_curses echochar hashtest ncurses padview pair_content picsmap savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_opaque testaddch view worm
addchnstr test: test_addchstr
addchstr test: test_addchstr
addnstr test: test_addstr
@@ -256,7 +255,7 @@ addstr test: blue bs cardfile filter gdc hanoi lrtest ncurses test_addstr
addwstr test: blue test_addwstr
alloc_pair test: demo_new_pair dots_xcurses
alloc_pair_sp -
-assume_default_colors test: background ncurses
+assume_default_colors test: back_ground background ncurses
assume_default_colors_sp -
attr_get -
attr_off test: dots_xcurses ncurses
@@ -267,12 +266,12 @@ attron test: blue bs dots_curses echochar filter gdc ncurses
attrset test: bs filter firework gdc hanoi insdelln ncurses picsmap rain tclock testaddch testcurs
baudrate test: ncurses
baudrate_sp test: sp_tinfo
-beep test: blue bs cardfile chgat clip_printw demo_forms demo_menus demo_new_pair demo_panels edit_field firstlast hanoi inch_wide inchs ins_wide insdelln inserts knight movewindow ncurses padview popup_msg rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view xmas
+beep test: blue bs cardfile chgat clip_printw demo_forms demo_menus demo_new_pair demo_panels dup_field edit_field firstlast hanoi inch_wide inchs ins_wide insdelln inserts knight move_field movewindow ncurses padview popup_msg rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view xmas
beep_sp lib: ncurses
-bkgd test: background cardfile demo_forms ncurses padview savescreen tclock view
+bkgd test: background cardfile demo_forms dup_field move_field ncurses padview savescreen tclock view
bkgdset test: background ncurses testaddch
bkgrnd test: ncurses
-bkgrndset test: ncurses
+bkgrndset test: back_ground ncurses
boolcodes test: demo_termcap test_arrays progs: dump_entry
boolfnames test: demo_terminfo test_arrays progs: dump_entry
boolnames test: demo_terminfo test_arrays progs: dump_entry infocmp
@@ -282,21 +281,22 @@ box test: cardfile chgat clip_printw demo_forms demo_menus demo_panels ditto
box_set test: ncurses
can_change_color test: color_content extended_color ncurses
can_change_color_sp test: extended_color
-cbreak test: background blue bs cardfile chgat clip_printw color_content color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels ditto extended_color filter firework foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts knight lrtest movewindow ncurses newdemo padview pair_content picsmap savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm xmas
+cbreak test: back_ground background blue bs cardfile chgat clip_printw color_content color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels demo_tabs ditto dup_field extended_color filter firework foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts knight lrtest move_field movewindow ncurses newdemo padview pair_content picsmap savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm xmas
cbreak_sp test: sp_tinfo
chgat test: chgat
clear test: blue bs filter gdc ncurses padview testcurs xmas
clearok test: bs knight
-clrtobot test: demo_menus ncurses view
+clrtobot test: demo_menus move_field ncurses view
clrtoeol test: blue bs demo_altkeys filter foldkeys form_driver_w hanoi hashtest movewindow ncurses padview view
color_content test: color_content ncurses picsmap
color_content_sp -
color_set test: color_set dots_xcurses extended_color ncurses
copywin test: ncurses testcurs
-cur_term test: demo_termcap demo_terminfo dots dots_mvcur filter list_keys lrtest sp_tinfo test_sgr test_vid_puts test_vidputs progs: clear_cmd reset_cmd tabs tput tset
+cur_term test: demo_termcap demo_terminfo dots dots_mvcur filter list_keys lrtest sp_tinfo test_sgr test_tparm test_vid_puts test_vidputs progs: clear_cmd reset_cmd tabs tput tset
curs_set test: demo_new_pair echochar firework gdc hanoi lrtest ncurses newdemo picsmap rain savescreen tclock testcurs worm xmas
curs_set_sp test: sp_tinfo
curscr test: demo_panels knight lrtest ncurses popup_msg savescreen tclock
+curses_trace test: demo_menus hashtest lrtest ncurses padview redraw test_sgr test_termattrs test_vid_puts test_vidputs testcurs view worm
curses_version test: ncurses progs: clear infocmp tabs tic toe tput tset
def_prog_mode test: bs ncurses
def_prog_mode_sp test: sp_tinfo
@@ -304,14 +304,14 @@ def_shell_mode -
def_shell_mode_sp test: sp_tinfo
define_key test: demo_altkeys demo_defkey foldkeys
define_key_sp test: sp_tinfo
-del_curterm test: demo_terminfo sp_tinfo test_sgr
+del_curterm test: demo_terminfo sp_tinfo test_sgr test_tparm
del_curterm_sp lib: ncurses
delay_output test: newdemo
delay_output_sp test: sp_tinfo
delch -
deleteln test: insdelln
delscreen test: ditto dots_mvcur
-delwin test: cardfile chgat clip_printw demo_forms demo_panels inch_wide inchs ins_wide insdelln inserts ncurses newdemo popup_msg redraw test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view
+delwin test: cardfile chgat clip_printw demo_forms demo_panels dup_field inch_wide inchs ins_wide insdelln inserts move_field ncurses newdemo popup_msg redraw test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view
derwin test: cardfile chgat clip_printw demo_forms demo_menus ditto inch_wide inchs ins_wide insdelln inserts movewindow ncurses test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque
doupdate test: cardfile demo_menus demo_panels ditto ins_wide inserts knight movewindow ncurses padview popup_msg redraw savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr
doupdate_sp lib: ncurses
@@ -320,12 +320,14 @@ echo test: bs hanoi ncurses test_get_wstr test_getstr testcurs testscanw
echo_sp lib: ncurses
echo_wchar test: ncurses
echochar test: echochar ncurses
-endwin test: background blue bs cardfile chgat clip_printw color_content color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels ditto dots_curses dots_mvcur dots_xcurses echochar extended_color filter firework firstlast foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest movewindow ncurses newdemo padview pair_content picsmap rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testaddch testcurs testscanw view worm xmas
+endwin test: back_ground background blue bs cardfile chgat clip_printw color_content color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels demo_tabs ditto dots_curses dots_mvcur dots_xcurses dup_field echochar extended_color filter firework firstlast foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest move_field movewindow ncurses newdemo padview pair_content picsmap rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testaddch testcurs testscanw view worm xmas
endwin_sp lib: ncurses
erase test: cardfile demo_menus filter firework firstlast hanoi lrtest ncurses picsmap tclock test_opaque testcurs
erasechar test: ncurses
erasechar_sp test: sp_tinfo
erasewchar test: ncurses
+exit_curses test: back_ground background blue bs cardfile chgat clip_printw color_content color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels demo_tabs demo_termcap demo_terminfo ditto dots dots_curses dots_mvcur dots_termcap dots_xcurses dup_field echochar extended_color filter firework firstlast foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight list_keys lrtest move_field movewindow ncurses newdemo padview pair_content picsmap railroad rain redraw savescreen sp_tinfo tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_arrays test_get_wstr test_getstr test_instr test_inwstr test_opaque test_setupterm test_sgr test_termattrs test_tparm test_vid_puts test_vidputs testaddch testcurs testscanw view worm xmas
+exit_terminfo lib: ncurses
extended_color_content test: color_content extended_color
extended_color_content_sp test: extended_color
extended_pair_content test: extended_color pair_content
@@ -347,14 +349,14 @@ get_escdelay_sp -
get_wch test: form_driver_w
get_wstr test: test_get_wstr
getattrs -
-getbegx test: chgat clip_printw demo_menus demo_panels dump_window insdelln movewindow ncurses newdemo redraw testcurs
-getbegy test: chgat clip_printw demo_menus demo_panels dump_window insdelln movewindow ncurses newdemo redraw testcurs
+getbegx test: chgat clip_printw demo_menus demo_panels dump_window insdelln move_field movewindow ncurses newdemo redraw testcurs
+getbegy test: chgat clip_printw demo_menus demo_panels dump_window insdelln move_field movewindow ncurses newdemo redraw testcurs
getbkgd test: ncurses
getbkgrnd test: ncurses
-getcchar test: ncurses savescreen view
-getch test: background blue bs chgat color_content color_set demo_altkeys demo_new_pair extended_color filter firework firstlast foldkeys hanoi hashtest insdelln lrtest padview pair_content picsmap savescreen tclock test_opaque testaddch testcurs view xmas
-getcurx test: bs chgat clip_printw demo_altkeys demo_defkey demo_panels dump_window extended_color filter firstlast foldkeys insdelln movewindow ncurses redraw savescreen test_get_wstr test_getstr test_opaque testcurs view
-getcury test: bs chgat clip_printw demo_altkeys demo_defkey demo_panels dump_window extended_color filter firstlast foldkeys insdelln movewindow ncurses popup_msg redraw savescreen test_opaque testcurs view
+getcchar test: demo_new_pair ncurses savescreen view
+getch test: back_ground background blue bs chgat color_content color_set demo_altkeys demo_new_pair demo_tabs extended_color filter firework firstlast foldkeys hanoi hashtest insdelln lrtest padview pair_content picsmap savescreen tclock test_opaque testaddch testcurs view xmas
+getcurx test: bs chgat clip_printw demo_altkeys demo_defkey demo_panels dump_window extended_color filter firstlast foldkeys insdelln move_field movewindow ncurses redraw savescreen test_get_wstr test_getstr test_opaque testcurs view
+getcury test: bs chgat clip_printw demo_altkeys demo_defkey demo_panels dump_window extended_color filter firstlast foldkeys insdelln move_field movewindow ncurses popup_msg redraw savescreen test_opaque testcurs view
getmaxx test: chgat clip_printw demo_panels dump_window firstlast inch_wide inchs insdelln movewindow ncurses newdemo popup_msg redraw test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs
getmaxy test: chgat clip_printw demo_forms demo_panels dump_window firstlast inch_wide inchs insdelln movewindow ncurses newdemo popup_msg redraw test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs
getmouse test: bs demo_menus knight movewindow ncurses testcurs
@@ -368,7 +370,7 @@ getwin test: ncurses
getwin_sp -
halfdelay test: padview view
halfdelay_sp test: sp_tinfo
-has_colors test: background bs cardfile chgat clip_printw color_content color_set demo_forms demo_menus demo_new_pair demo_panels dots_curses dots_xcurses echochar extended_color filter firework gdc hanoi ins_wide insdelln inserts knight ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testcurs view worm xmas
+has_colors test: back_ground background bs cardfile chgat clip_printw color_content color_set demo_forms demo_menus demo_new_pair demo_panels dots_curses dots_xcurses dup_field echochar extended_color filter firework gdc hanoi ins_wide insdelln inserts knight move_field ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testcurs view worm xmas
has_colors_sp lib: ncurses
has_ic test: lrtest ncurses
has_ic_sp test: sp_tinfo
@@ -395,9 +397,9 @@ init_extended_color test: color_content extended_color
init_extended_color_sp test: extended_color
init_extended_pair test: extended_color ncurses pair_content picsmap
init_extended_pair_sp test: extended_color
-init_pair test: background blue bs cardfile chgat clip_printw color_set demo_forms demo_menus demo_new_pair demo_panels dots_curses dots_xcurses echochar filter firework gdc hanoi ins_wide insdelln inserts knight ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testaddch testcurs view worm xmas
+init_pair test: back_ground background blue bs cardfile chgat clip_printw color_set demo_forms demo_menus demo_new_pair demo_panels dots_curses dots_xcurses dup_field echochar filter firework gdc hanoi ins_wide insdelln inserts knight move_field ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testaddch testcurs view worm xmas
init_pair_sp -
-initscr test: background blue bs cardfile chgat clip_printw color_content color_set demo_defkey demo_forms demo_keyok demo_menus demo_panels dots_curses dots_xcurses echochar filter firework firstlast form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts knight lrtest movewindow ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testaddch testcurs testscanw view worm xmas
+initscr test: back_ground background blue bs cardfile chgat clip_printw color_content color_set demo_defkey demo_forms demo_keyok demo_menus demo_panels demo_tabs dots_curses dots_xcurses dup_field echochar filter firework firstlast form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts knight lrtest move_field movewindow ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testaddch testcurs testscanw view worm xmas
innstr test: test_instr
innwstr test: test_inwstr
ins_nwstr test: ins_wide
@@ -409,7 +411,7 @@ insertln test: insdelln
insnstr test: inserts
insstr test: inserts
instr test: test_instr
-intrflush test: demo_forms movewindow
+intrflush test: demo_forms dup_field move_field movewindow
intrflush_sp test: sp_tinfo
inwstr test: test_inwstr
is_cleared test: test_opaque
@@ -421,9 +423,9 @@ is_leaveok test: test_opaque
is_linetouched lib: form
is_nodelay test: test_opaque
is_notimeout test: test_opaque
-is_pad -
+is_pad test: test_opaque
is_scrollok test: ncurses test_opaque
-is_subwin -
+is_subwin test: test_opaque
is_syncok test: test_opaque
is_term_resized -
is_term_resized_sp -
@@ -435,11 +437,11 @@ key_defined_sp test: sp_tinfo
key_name test: key_names ncurses
keybound test: demo_altkeys demo_defkey
keybound_sp test: sp_tinfo
-keyname test: demo_altkeys demo_defkey demo_keyok demo_menus edit_field foldkeys keynames movewindow ncurses padview redraw test_getstr testcurs view progs: tic
+keyname test: demo_altkeys demo_defkey demo_keyok demo_menus dup_field edit_field foldkeys keynames move_field movewindow ncurses padview redraw test_getstr testcurs view progs: tic
keyname_sp test: sp_tinfo
keyok test: demo_keyok foldkeys
keyok_sp test: sp_tinfo
-keypad test: bs cardfile chgat clip_printw demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels ditto filter firework foldkeys form_driver_w hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest movewindow ncurses padview popup_msg redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs testscanw view
+keypad test: bs cardfile chgat clip_printw demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels ditto dup_field filter firework foldkeys form_driver_w hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest move_field movewindow ncurses padview popup_msg redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs testscanw view
killchar test: ncurses
killchar_sp test: sp_tinfo
killwchar test: ncurses
@@ -454,7 +456,7 @@ mouseinterval -
mouseinterval_sp -
mousemask test: bs demo_forms demo_menus knight movewindow ncurses testcurs
mousemask_sp -
-move test: blue bs cardfile chgat demo_altkeys demo_menus demo_new_pair dots_curses dots_xcurses echochar filter foldkeys gdc hanoi hashtest inch_wide inchs ins_wide inserts knight lrtest movewindow ncurses picsmap savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testscanw view xmas
+move test: blue bs cardfile chgat demo_altkeys demo_menus demo_new_pair demo_tabs dots_curses dots_xcurses echochar filter foldkeys gdc hanoi hashtest inch_wide inchs ins_wide inserts knight lrtest move_field movewindow ncurses picsmap savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testscanw view xmas
mvadd_wch test: ncurses test_add_wchstr test_addwstr
mvadd_wchnstr test: test_add_wchstr
mvadd_wchstr test: test_add_wchstr
@@ -494,7 +496,7 @@ mvinsnstr test: inserts
mvinsstr test: inserts
mvinstr test: test_instr
mvinwstr test: test_inwstr
-mvprintw test: background bs firework form_driver_w hanoi ncurses padview savescreen tclock view
+mvprintw test: back_ground background bs firework form_driver_w hanoi move_field ncurses padview savescreen tclock view
mvscanw -
mvvline test: ncurses
mvvline_set test: ncurses
@@ -549,20 +551,20 @@ newterm test: demo_altkeys demo_new_pair ditto dots_mvcur extended_color filt
newterm_sp -
newwin test: cardfile chgat clip_printw demo_defkey demo_forms demo_keyok demo_menus demo_panels ditto firstlast inch_wide inchs ins_wide insdelln inserts knight movewindow ncurses newdemo popup_msg redraw test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view xmas
newwin_sp lib: ncurses
-nl test: demo_forms ncurses rain testcurs
+nl test: demo_forms dup_field move_field ncurses rain testcurs
nl_sp lib: ncurses
nocbreak test: testcurs
nocbreak_sp test: sp_tinfo
nodelay test: demo_new_pair ditto extended_color firework gdc lrtest ncurses newdemo padview rain tclock test_opaque view worm xmas
-noecho test: background bs cardfile chgat clip_printw color_content color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels ditto extended_color firework firstlast foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts knight lrtest movewindow ncurses padview pair_content picsmap rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm xmas
+noecho test: back_ground background bs cardfile chgat clip_printw color_content color_set demo_altkeys demo_defkey demo_forms demo_keyok demo_menus demo_new_pair demo_panels demo_tabs ditto dup_field extended_color firework firstlast foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts knight lrtest move_field movewindow ncurses padview pair_content picsmap rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs view worm xmas
noecho_sp lib: ncurses
nofilter -
nofilter_sp -
-nonl test: bs demo_forms hashtest movewindow ncurses padview view worm xmas
+nonl test: bs demo_forms dup_field hashtest move_field movewindow ncurses padview view worm xmas
nonl_sp lib: ncurses
noqiflush -
noqiflush_sp test: sp_tinfo
-noraw test: demo_forms demo_menus ncurses testcurs
+noraw test: demo_forms demo_menus dup_field move_field ncurses testcurs
noraw_sp test: sp_tinfo
notimeout test: ncurses test_opaque
numcodes test: demo_termcap test_arrays progs: dump_entry
@@ -571,22 +573,22 @@ numnames test: demo_terminfo test_arrays progs: dump_entry infocmp
ospeed test: demo_termcap progs: tset
overlay test: ncurses testcurs xmas
overwrite test: ncurses savescreen
-pair_content test: background color_set pair_content
+pair_content test: back_ground background color_set pair_content
pair_content_sp lib: ncurses
pecho_wchar -
pechochar -
pnoutrefresh test: ncurses padview popup_msg
prefresh test: testcurs
-printw test: background blue bs color_content color_set demo_altkeys demo_defkey demo_keyok extended_color filter foldkeys ncurses pair_content savescreen testcurs testscanw view
+printw test: back_ground background blue bs color_content color_set demo_altkeys demo_defkey demo_keyok demo_tabs extended_color filter foldkeys ncurses pair_content savescreen testcurs testscanw view
putp test: filter test_sgr progs: tput
putp_sp test: sp_tinfo
putwin test: ncurses
qiflush -
qiflush_sp test: sp_tinfo
-raw test: demo_forms ncurses redraw testcurs
+raw test: demo_forms dup_field move_field ncurses redraw testcurs
raw_sp test: sp_tinfo
redrawwin test: padview redraw view
-refresh test: blue bs color_content demo_defkey demo_forms demo_keyok demo_menus demo_panels dots_curses dots_mvcur dots_xcurses echochar filter firstlast form_driver_w gdc hanoi hashtest lrtest movewindow ncurses pair_content picsmap savescreen tclock testcurs view xmas
+refresh test: blue bs color_content demo_defkey demo_forms demo_keyok demo_menus demo_panels demo_tabs dots_curses dots_mvcur dots_xcurses dup_field echochar filter firstlast form_driver_w gdc hanoi hashtest lrtest move_field movewindow ncurses pair_content picsmap savescreen tclock testcurs view xmas
reset_color_pairs test: picsmap
reset_color_pairs_sp -
reset_prog_mode test: filter ncurses
@@ -620,12 +622,12 @@ set_curterm test: list_keys sp_tinfo
set_curterm_sp test: sp_tinfo
set_escdelay test: test_opaque
set_escdelay_sp lib: ncurses
-set_tabsize test: test_opaque
+set_tabsize test: demo_tabs test_opaque
set_tabsize_sp test: sp_tinfo
set_term lib: ncurses
-setcchar test: demo_new_pair demo_panels ins_wide ncurses picsmap savescreen test_add_wchstr test_addwstr
+setcchar test: back_ground demo_new_pair demo_panels ins_wide ncurses picsmap savescreen test_add_wchstr test_addwstr
setscrreg test: view
-setupterm test: demo_terminfo dots list_keys sp_tinfo test_setupterm test_sgr test_termattrs test_vid_puts test_vidputs progs: clear tabs tput tset
+setupterm test: demo_terminfo dots list_keys sp_tinfo test_setupterm test_sgr test_termattrs test_tparm test_vid_puts test_vidputs progs: clear tabs tput tset
slk_attr -
slk_attr_off -
slk_attr_on -
@@ -659,12 +661,12 @@ slk_touch_sp lib: ncurses
slk_wset test: ncurses
standend test: blue gdc ncurses
standout test: blue ncurses
-start_color test: background blue bs cardfile chgat clip_printw color_content color_set demo_forms demo_menus demo_new_pair demo_panels dots_curses dots_xcurses echochar extended_color filter firework gdc hanoi ins_wide insdelln inserts knight ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testaddch testcurs view worm xmas
+start_color test: back_ground background blue bs cardfile chgat clip_printw color_content color_set demo_forms demo_menus demo_new_pair demo_panels dots_curses dots_xcurses dup_field echochar extended_color filter firework gdc hanoi ins_wide insdelln inserts knight move_field ncurses newdemo padview pair_content picsmap rain savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testaddch testcurs view worm xmas
start_color_sp -
-stdscr test: background bs chgat clip_printw color_content demo_altkeys demo_forms demo_menus demo_new_pair demo_panels ditto edit_field extended_color filter firework foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest movewindow ncurses padview pair_content picsmap rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs testscanw view worm xmas
+stdscr test: back_ground background bs chgat clip_printw color_content demo_altkeys demo_forms demo_menus demo_new_pair demo_panels ditto dup_field edit_field extended_color filter firework foldkeys form_driver_w gdc hanoi hashtest inch_wide inchs ins_wide insdelln inserts key_names keynames knight lrtest move_field movewindow ncurses padview pair_content picsmap rain redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs testscanw view worm xmas
strcodes test: demo_termcap test_arrays progs: dump_entry
strfnames test: demo_terminfo list_keys test_arrays progs: dump_entry
-strnames test: demo_terminfo foldkeys list_keys test_arrays progs: dump_entry infocmp tic
+strnames test: demo_terminfo foldkeys list_keys test_arrays test_tparm progs: dump_entry infocmp tic
subpad test: testcurs
subwin test: movewindow ncurses newdemo testcurs
syncok test: test_opaque
@@ -685,18 +687,18 @@ tgetstr_sp test: sp_tinfo
tgoto test: dots_termcap railroad progs: tic
tigetflag test: demo_terminfo savescreen progs: tic tput
tigetflag_sp test: sp_tinfo
-tigetnum test: demo_terminfo dots dots_mvcur ncurses savescreen progs: tput
+tigetnum test: demo_tabs demo_terminfo dots dots_mvcur ncurses savescreen progs: tput
tigetnum_sp test: sp_tinfo
-tigetstr test: blue demo_defkey demo_new_pair demo_terminfo foldkeys list_keys savescreen test_sgr testcurs progs: clear_cmd tput
+tigetstr test: blue demo_defkey demo_new_pair demo_terminfo foldkeys list_keys savescreen test_sgr test_tparm testcurs progs: clear_cmd tic tput
tigetstr_sp test: sp_tinfo
timeout test: filter rain savescreen
tiparm -
touchline test: chgat clip_printw insdelln
touchwin test: chgat clip_printw demo_menus filter firstlast inch_wide inchs ins_wide insdelln inserts movewindow ncurses popup_msg redraw test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque xmas
-tparm test: dots dots_mvcur test_sgr progs: reset_cmd tabs tic tput
-tputs test: dots dots_mvcur dots_termcap railroad test_vid_puts test_vidputs progs: clear_cmd reset_cmd tabs
+tparm test: dots dots_mvcur test_sgr test_tparm progs: tic tput
+tputs test: dots dots_mvcur dots_termcap railroad test_tparm test_vid_puts test_vidputs progs: clear_cmd reset_cmd tabs
tputs_sp test: sp_tinfo
-trace test: demo_menus hashtest lrtest ncurses padview redraw test_sgr test_termattrs test_vid_puts test_vidputs testcurs view worm
+trace -
ttytype test: demo_terminfo test_sgr
typeahead test: testcurs
typeahead_sp test: sp_tinfo
@@ -709,7 +711,7 @@ ungetch_sp lib: ncurses
ungetmouse lib: menu
ungetmouse_sp -
untouchwin lib: form
-use_default_colors test: background dots_curses dots_xcurses filter firework gdc hanoi knight ncurses picsmap rain tclock worm xmas
+use_default_colors test: back_ground background dots_curses dots_xcurses filter firework gdc hanoi knight ncurses picsmap rain tclock worm xmas
use_default_colors_sp -
use_env test: dots dots_curses dots_mvcur dots_xcurses ncurses progs: clear tput
use_env_sp test: sp_tinfo
@@ -768,12 +770,12 @@ wdeleteln test: insdelln testcurs
wecho_wchar lib: ncurses
wechochar lib: ncurses
wenclose test: ncurses
-werase test: cardfile demo_forms demo_menus demo_panels firstlast knight ncurses newdemo popup_msg test_get_wstr test_getstr test_opaque testcurs view xmas
+werase test: cardfile demo_forms demo_menus demo_panels dup_field firstlast knight move_field ncurses newdemo popup_msg test_get_wstr test_getstr test_opaque testcurs view xmas
wget_wch test: ins_wide ncurses test_add_wchstr test_addwstr
wget_wstr test: test_get_wstr
wgetbkgrnd lib: ncurses
-wgetch test: cardfile chgat clip_printw demo_defkey demo_keyok demo_menus demo_panels ditto dump_window edit_field gdc insdelln inserts knight movewindow ncurses newdemo popup_msg rain redraw test_addchstr test_addstr test_opaque testcurs worm
-wgetdelay -
+wgetch test: cardfile chgat clip_printw demo_defkey demo_keyok demo_menus demo_panels ditto dump_window dup_field edit_field gdc insdelln inserts knight move_field movewindow ncurses newdemo popup_msg rain redraw test_addchstr test_addstr test_opaque testcurs worm
+wgetdelay test: test_opaque
wgetn_wstr test: ncurses test_get_wstr
wgetnstr test: ncurses test_getstr
wgetparent test: test_opaque
@@ -804,7 +806,7 @@ wmove test: chgat clip_printw demo_altkeys demo_defkey demo_keyok demo_menus
wnoutrefresh test: demo_menus ditto inch_wide inchs ins_wide inserts knight movewindow ncurses padview popup_msg redraw test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque
wprintw test: chgat clip_printw demo_defkey demo_forms demo_keyok demo_menus demo_panels inch_wide inchs ins_wide insdelln inserts knight ncurses test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs
wredrawln test: redraw
-wrefresh test: chgat clip_printw demo_forms demo_keyok demo_menus demo_panels firstlast ins_wide insdelln inserts knight lrtest movewindow ncurses newdemo popup_msg redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testcurs worm xmas
+wrefresh test: chgat clip_printw demo_forms demo_keyok demo_menus demo_panels dup_field firstlast ins_wide insdelln inserts knight lrtest move_field movewindow ncurses newdemo popup_msg redraw savescreen tclock test_add_wchstr test_addchstr test_addstr test_addwstr testcurs worm xmas
wresize test: cardfile demo_menus ncurses
wscanw test: testcurs
wscrl test: ncurses testcurs
diff --git a/test/aclocal.m4 b/test/aclocal.m4
index 788c1bb..6836f43 100644
--- a/test/aclocal.m4
+++ b/test/aclocal.m4
@@ -1,5 +1,5 @@
dnl***************************************************************************
-dnl Copyright 2018-2019,2020 Thomas E. Dickey *
+dnl Copyright 2018-2020,2021 Thomas E. Dickey *
dnl Copyright 2003-2017,2018 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@ dnl sale, use or other dealings in this Software without prior written *
dnl authorization. *
dnl***************************************************************************
dnl
-dnl $Id: aclocal.m4,v 1.176 2020/02/09 02:02:53 tom Exp $
+dnl $Id: aclocal.m4,v 1.202 2021/10/11 00:18:09 tom Exp $
dnl
dnl Author: Thomas E. Dickey
dnl
@@ -43,7 +43,7 @@ dnl https://invisible-island.net/autoconf/my-autoconf.html
dnl
dnl ---------------------------------------------------------------------------
dnl ---------------------------------------------------------------------------
-dnl AM_LANGINFO_CODESET version: 4 updated: 2015/04/18 08:56:57
+dnl AM_LANGINFO_CODESET version: 6 updated: 2021/01/01 16:53:59
dnl -------------------
dnl Inserted as requested by gettext 0.10.40
dnl File from /usr/share/aclocal
@@ -56,11 +56,11 @@ AC_DEFUN([AM_LANGINFO_CODESET],
[
AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
[AC_TRY_LINK([#include <langinfo.h>],
- [char* cs = nl_langinfo(CODESET);],
+ [char* cs = nl_langinfo(CODESET); (void)cs],
am_cv_langinfo_codeset=yes,
am_cv_langinfo_codeset=no)
])
- if test $am_cv_langinfo_codeset = yes; then
+ if test "$am_cv_langinfo_codeset" = yes; then
AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
[Define if you have <langinfo.h> and nl_langinfo(CODESET).])
fi
@@ -92,10 +92,11 @@ define([CF_ACVERSION_COMPARE],
[ifelse([$8], , ,[$8])],
[ifelse([$9], , ,[$9])])])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_CFLAGS version: 13 updated: 2017/02/25 18:57:40
+dnl CF_ADD_CFLAGS version: 15 updated: 2020/12/31 10:54:15
dnl -------------
dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
-dnl The second parameter if given makes this macro verbose.
+dnl $1 = flags to add
+dnl $2 = if given makes this macro verbose.
dnl
dnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS,
dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easily
@@ -109,19 +110,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $1
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
continue
elif test "${cf_tst_cflags}" = "\"'" ; then
@@ -134,7 +135,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,$cf_tst_cppflags)
@@ -152,7 +153,7 @@ case $cf_fix_cppflags in
(yes)
CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[[^"]]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -180,9 +181,9 @@ AC_SUBST(EXTRA_CPPFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_INCDIR version: 15 updated: 2018/06/20 20:23:13
+dnl CF_ADD_INCDIR version: 17 updated: 2021/09/04 06:35:04
dnl -------------
-dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it's
+dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it is
dnl redundant. We don't normally need to add -I/usr/local/include for gcc,
dnl but old versions (and some misinstalled ones) need that. To make things
dnl worse, gcc 3.x may give error messages if -I/usr/local/include is added to
@@ -192,9 +193,9 @@ AC_DEFUN([CF_ADD_INCDIR],
if test -n "$1" ; then
for cf_add_incdir in $1
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -225,7 +226,7 @@ if test -n "$1" ; then
CF_VERBOSE(adding $cf_add_incdir to include-path)
ifelse([$2],,CPPFLAGS,[$2])="$ifelse([$2],,CPPFLAGS,[$2]) -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -247,7 +248,7 @@ dnl $1 = library to add, without the "-l"
dnl $2 = variable to update (default $LIBS)
AC_DEFUN([CF_ADD_LIB],[CF_ADD_LIBS(-l$1,ifelse($2,,LIBS,[$2]))])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_LIBDIR version: 10 updated: 2015/04/18 08:56:57
+dnl CF_ADD_LIBDIR version: 11 updated: 2020/12/31 20:19:42
dnl -------------
dnl Adds to the library-path
dnl
@@ -261,9 +262,9 @@ AC_DEFUN([CF_ADD_LIBDIR],
if test -n "$1" ; then
for cf_add_libdir in $1
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -322,7 +323,7 @@ LIBS=`echo "$LIBS" | sed -e "s/[[ ]][[ ]]*/ /g" -e "s%$1 %$1 $2 %" -e 's% % %
CF_VERBOSE(...after $LIBS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05
+dnl CF_ADD_SUBDIR_PATH version: 5 updated: 2020/12/31 20:19:42
dnl ------------------
dnl Append to a search-list for a nonstandard header/lib-file
dnl $1 = the variable to return as result
@@ -334,16 +335,35 @@ AC_DEFUN([CF_ADD_SUBDIR_PATH],
[
test "x$4" != "x$5" && \
test -d "$4" && \
-ifelse([$5],NONE,,[(test -z "$5" || test x$5 = xNONE || test "x$4" != "x$5") &&]) {
+ifelse([$5],NONE,,[{ test -z "$5" || test "x$5" = xNONE || test "x$4" != "x$5"; } &&]) {
test -n "$verbose" && echo " ... testing for $3-directories under $4"
- test -d $4/$3 && $1="[$]$1 $4/$3"
- test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2"
- test -d $4/$3/$2/$3 && $1="[$]$1 $4/$3/$2/$3"
- test -d $4/$2/$3 && $1="[$]$1 $4/$2/$3"
- test -d $4/$2/$3/$2 && $1="[$]$1 $4/$2/$3/$2"
+ test -d "$4/$3" && $1="[$]$1 $4/$3"
+ test -d "$4/$3/$2" && $1="[$]$1 $4/$3/$2"
+ test -d "$4/$3/$2/$3" && $1="[$]$1 $4/$3/$2/$3"
+ test -d "$4/$2/$3" && $1="[$]$1 $4/$2/$3"
+ test -d "$4/$2/$3/$2" && $1="[$]$1 $4/$2/$3/$2"
}
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_APPEND_CFLAGS version: 3 updated: 2021/09/05 17:25:40
+dnl ----------------
+dnl Use CF_ADD_CFLAGS after first checking for potential redefinitions.
+dnl $1 = flags to add
+dnl $2 = if given makes this macro verbose.
+define([CF_APPEND_CFLAGS],
+[
+for cf_add_cflags in $1
+do
+ case "x$cf_add_cflags" in
+ (x-[[DU]]*)
+ CF_REMOVE_CFLAGS($cf_add_cflags,CFLAGS,[$2])
+ CF_REMOVE_CFLAGS($cf_add_cflags,CPPFLAGS,[$2])
+ ;;
+ esac
+ CF_ADD_CFLAGS([$cf_add_cflags],[$2])
+done
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_APPEND_TEXT version: 1 updated: 2017/02/25 18:58:55
dnl --------------
dnl use this macro for appending text without introducing an extra blank at
@@ -389,7 +409,46 @@ ifelse([$3],,[ :]dnl
])dnl
])])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CC_ENV_FLAGS version: 9 updated: 2018/07/29 18:03:26
+dnl CF_C11_NORETURN version: 3 updated: 2021/03/28 11:36:23
+dnl ---------------
+AC_DEFUN([CF_C11_NORETURN],
+[
+AC_MSG_CHECKING(if you want to use C11 _Noreturn feature)
+CF_ARG_ENABLE(stdnoreturn,
+ [ --enable-stdnoreturn enable C11 _Noreturn feature for diagnostics],
+ [enable_stdnoreturn=yes],
+ [enable_stdnoreturn=no])
+AC_MSG_RESULT($enable_stdnoreturn)
+
+if test $enable_stdnoreturn = yes; then
+AC_CACHE_CHECK([for C11 _Noreturn feature], cf_cv_c11_noreturn,
+ [AC_TRY_COMPILE([
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdnoreturn.h>
+static _Noreturn void giveup(void) { exit(0); }
+ ],
+ [if (feof(stdin)) giveup()],
+ cf_cv_c11_noreturn=yes,
+ cf_cv_c11_noreturn=no)
+ ])
+else
+ cf_cv_c11_noreturn=no,
+fi
+
+if test "$cf_cv_c11_noreturn" = yes; then
+ AC_DEFINE(HAVE_STDNORETURN_H, 1,[Define if <stdnoreturn.h> header is available and working])
+ AC_DEFINE_UNQUOTED(STDC_NORETURN,_Noreturn,[Define if C11 _Noreturn keyword is supported])
+ HAVE_STDNORETURN_H=1
+else
+ HAVE_STDNORETURN_H=0
+fi
+
+AC_SUBST(HAVE_STDNORETURN_H)
+AC_SUBST(STDC_NORETURN)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CC_ENV_FLAGS version: 10 updated: 2020/12/31 18:40:20
dnl ---------------
dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content
dnl into CC. This will not help with broken scripts that wrap the compiler
@@ -404,7 +463,7 @@ dnl outweighs that limitation.
AC_DEFUN([CF_CC_ENV_FLAGS],
[
# This should have been defined by AC_PROG_CC
-: ${CC:=cc}
+: "${CC:=cc}"
AC_MSG_CHECKING(\$CFLAGS variable)
case "x$CFLAGS" in
@@ -453,7 +512,7 @@ case "$CC" in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03
+dnl CF_CHECK_CACHE version: 13 updated: 2020/12/31 10:54:15
dnl --------------
dnl Check if we're accidentally using a cache from a different machine.
dnl Derive the system name, as a check for reusing the autoconf cache.
@@ -467,7 +526,7 @@ dnl Note: we would use $ac_config_sub, but that is one of the places where
dnl autoconf 2.5x broke compatibility with autoconf 2.13
AC_DEFUN([CF_CHECK_CACHE],
[
-if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
+if test -f "$srcdir/config.guess" || test -f "$ac_aux_dir/config.guess" ; then
ifelse([$1],,[AC_CANONICAL_HOST],[$1])
system_name="$host_os"
else
@@ -488,7 +547,7 @@ if test ".$system_name" != ".$cf_cv_system_name" ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_CFLAGS version: 3 updated: 2014/07/22 05:32:57
+dnl CF_CHECK_CFLAGS version: 4 updated: 2021/01/02 19:22:58
dnl ---------------
dnl Conditionally add to $CFLAGS and $CPPFLAGS values which are derived from
dnl a build-configuration such as imake. These have the pitfall that they
@@ -506,11 +565,11 @@ AC_TRY_LINK([#include <stdio.h>],[printf("Hello world");],,
if test "x$cf_check_cppflags" != "x$CPPFLAGS" ; then
CF_VERBOSE(but keeping change to \$CPPFLAGS)
fi
- CFLAGS="$cf_check_flags"])
+ CFLAGS="$cf_check_cflags"])
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_CURSES_LIB version: 2 updated: 2018/01/03 04:47:33
+dnl CF_CHECK_CURSES_LIB version: 4 updated: 2021/09/05 17:25:40
dnl -------------------
dnl $1 = nominal library name, used also for header lookup
dnl $2 = suffix to append to library name
@@ -527,16 +586,17 @@ if test "x${NCURSES_CONFIG_PKG}" = xnone; then
:
elif test "x${PKG_CONFIG:=none}" != xnone; then
AC_MSG_CHECKING(pkg-config for $1$2)
- if "$PKG_CONFIG" --exists $1$2 ; then
+ if "$PKG_CONFIG" --exists "$1$2" ; then
AC_MSG_RESULT(yes)
AC_MSG_CHECKING(if the $1$2 package files work)
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
- CF_ADD_CFLAGS(`$PKG_CONFIG --cflags $1$2`)
- CF_ADD_LIBS(`$PKG_CONFIG --libs $1$2`)
+ CF_APPEND_CFLAGS(`$PKG_CONFIG --cflags "$1$2"`)
+ CF_ADD_LIBS(`$PKG_CONFIG --libs "$1$2"`)
AC_TRY_LINK([#include <$1.h>],
[(void) $3 ( ]ifelse([$4],,,[[$4]])[ );],
@@ -549,13 +609,14 @@ elif test "x${PKG_CONFIG:=none}" != xnone; then
[cf_have_curses_lib=no])
AC_MSG_RESULT($cf_have_curses_lib)
test "$cf_have_curses_lib" = maybe && cf_have_curses_lib=yes
- if test "$cf_have_curses_lib" != "yes"
+ if test "$cf_have_curses_lib" = "yes"
then
- CPPFLAGS="$cf_save_CPPFLAGS"
- LIBS="$cf_save_LIBS"
- else
CF_UPPER(cf_upper,have_lib$1)
AC_DEFINE_UNQUOTED($cf_upper,1)
+ else
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
fi
fi
fi
@@ -567,7 +628,7 @@ if test "$cf_have_curses_lib" = no; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35
+dnl CF_CLANG_COMPILER version: 8 updated: 2021/01/01 13:31:04
dnl -----------------
dnl Check if the given compiler is really clang. clang's C driver defines
dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does
@@ -586,21 +647,56 @@ ifelse([$2],,CLANG_COMPILER,[$2])=no
if test "$ifelse([$1],,[$1],GCC)" = yes ; then
AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler)
cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
- ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments"
AC_TRY_COMPILE([],[
#ifdef __clang__
#else
make an error
#endif
],[ifelse([$2],,CLANG_COMPILER,[$2])=yes
-cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
],[])
ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2]))
fi
+
+CLANG_VERSION=none
+
+if test "x$ifelse([$2],,CLANG_COMPILER,[$2])" = "xyes" ; then
+ case "$CC" in
+ (c[[1-9]][[0-9]]|*/c[[1-9]][[0-9]])
+ AC_MSG_WARN(replacing broken compiler alias $CC)
+ CFLAGS="$CFLAGS -std=`echo "$CC" | sed -e 's%.*/%%'`"
+ CC=clang
+ ;;
+ esac
+
+ AC_MSG_CHECKING(version of $CC)
+ CLANG_VERSION="`$CC --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(CLANG[[^)]]*) //' -e 's/^.*(Debian[[^)]]*) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
+ test -z "$CLANG_VERSION" && CLANG_VERSION=unknown
+ AC_MSG_RESULT($CLANG_VERSION)
+
+ for cf_clang_opt in \
+ -Qunused-arguments \
+ -Wno-error=implicit-function-declaration
+ do
+ AC_MSG_CHECKING(if option $cf_clang_opt works)
+ cf_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $cf_clang_opt"
+ AC_TRY_LINK([
+ #include <stdio.h>],[
+ printf("hello!\\n");],[
+ cf_clang_optok=yes],[
+ cf_clang_optok=no])
+ AC_MSG_RESULT($cf_clang_optok)
+ CFLAGS="$cf_save_CFLAGS"
+ if test "$cf_clang_optok" = yes; then
+ CF_VERBOSE(adding option $cf_clang_opt)
+ CF_APPEND_TEXT(CFLAGS,$cf_clang_opt)
+ fi
+ done
+fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_CONST_X_STRING version: 3 updated: 2020/01/11 18:39:22
+dnl CF_CONST_X_STRING version: 7 updated: 2021/06/07 17:39:17
dnl -----------------
dnl The X11R4-X11R6 Xt specification uses an ambiguous String type for most
dnl character-strings.
@@ -612,7 +708,7 @@ dnl did not take into account the use of const for telling the compiler that
dnl string literals would be in readonly memory.
dnl
dnl As a workaround, one could (starting with X11R5) define XTSTRINGDEFINES, to
-dnl let the compiler decide how to represent Xt's strings which were #define'd.
+dnl let the compiler decide how to represent Xt's strings which were #define'd.
dnl That does not solve the problem of using the block of Xt's strings which
dnl are compiled into the library (and is less efficient than one might want).
dnl
@@ -630,7 +726,7 @@ AC_TRY_COMPILE(
#include <stdlib.h>
#include <X11/Intrinsic.h>
],
-[String foo = malloc(1)],[
+[String foo = malloc(1); free((void*)foo)],[
AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
AC_TRY_COMPILE(
@@ -648,7 +744,7 @@ AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
CF_RESTORE_XTRA_FLAGS([CF_CONST_X_STRING])
-case $cf_cv_const_x_string in
+case "$cf_cv_const_x_string" in
(no)
CF_APPEND_TEXT(CPPFLAGS,-DXTSTRINGDEFINES)
;;
@@ -660,7 +756,7 @@ esac
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_ACS_MAP version: 7 updated: 2012/10/06 16:39:58
+dnl CF_CURSES_ACS_MAP version: 8 updated: 2021/01/04 19:45:09
dnl -----------------
dnl Check for likely values of acs_map[]:
AC_DEFUN([CF_CURSES_ACS_MAP],
@@ -673,7 +769,7 @@ do
AC_TRY_LINK([
#include <${cf_cv_ncurses_header:-curses.h}>
],[
-$name['k'] = ACS_PLUS
+${name}['k'] = ACS_PLUS
],[cf_cv_curses_acs_map=$name; break])
done
])
@@ -681,7 +777,7 @@ done
test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map,[Define as needed to override ncurses prefix _nc_])
])
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_CHECK_DATA version: 9 updated: 2020/02/08 21:00:26
+dnl CF_CURSES_CHECK_DATA version: 10 updated: 2021/01/04 19:45:09
dnl --------------------
dnl Check if curses.h defines the given data/variable.
dnl Use this after CF_NCURSES_CONFIG or CF_CURSES_CONFIG.
@@ -700,7 +796,7 @@ CF__CURSES_DATA(foo,$cf_data)
],[cf_result=no])
AC_MSG_RESULT($cf_result)
-if test $cf_result = yes ; then
+if test "$cf_result" = yes ; then
CF_UPPER(cf_result,have_curses_data_$cf_data)
AC_DEFINE_UNQUOTED($cf_result)
ifelse($2,,,[$2])
@@ -726,7 +822,7 @@ int main(void)
],[cf_result=yes],[cf_result=no])
])
AC_MSG_RESULT($cf_result)
- if test $cf_result = yes ; then
+ if test "$cf_result" = yes ; then
CF_UPPER(cf_result,decl_curses_data_$cf_data)
AC_DEFINE_UNQUOTED($cf_result)
# do not exit loop here, since we prefer system's declarations
@@ -735,7 +831,7 @@ fi
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_CHECK_TYPE version: 4 updated: 2012/10/06 16:39:58
+dnl CF_CURSES_CHECK_TYPE version: 5 updated: 2021/01/04 19:45:09
dnl --------------------
dnl Check if curses.h defines the given type
AC_DEFUN([CF_CURSES_CHECK_TYPE],
@@ -749,7 +845,7 @@ AC_TRY_COMPILE([
$1 foo
],cf_result=yes,cf_result=no)
AC_MSG_RESULT($cf_result)
-if test $cf_result = yes ; then
+if test "$cf_result" = yes ; then
CF_UPPER(cf_result,have_type_$1)
AC_DEFINE_UNQUOTED($cf_result,1,[Define to 1 if we have type $1])
else
@@ -769,14 +865,14 @@ CF_NCURSES_VERSION
CF_CURSES_LIBS
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_CPPFLAGS version: 13 updated: 2018/06/20 20:23:13
+dnl CF_CURSES_CPPFLAGS version: 14 updated: 2021/01/02 09:31:20
dnl ------------------
dnl Look for the curses headers.
AC_DEFUN([CF_CURSES_CPPFLAGS],[
AC_CACHE_CHECK(for extra include directories,cf_cv_curses_incdir,[
cf_cv_curses_incdir=no
-case $host_os in
+case "$host_os" in
(hpux10.*)
if test "x$cf_cv_screen" = "xcurses_colr"
then
@@ -803,7 +899,7 @@ CF_CURSES_HEADER
CF_TERM_HEADER
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_FUNCS version: 19 updated: 2018/01/03 04:47:33
+dnl CF_CURSES_FUNCS version: 20 updated: 2020/12/31 20:19:42
dnl ---------------
dnl Curses-functions are a little complicated, since a lot of them are macros.
AC_DEFUN([CF_CURSES_FUNCS],
@@ -824,7 +920,7 @@ do
[
#ifndef ${cf_func}
long foo = (long)(&${cf_func});
-fprintf(stderr, "testing linkage of $cf_func:%p\n", (void *)foo);
+fprintf(stderr, "testing linkage of $cf_func:%p\\n", (void *)foo);
if (foo + 1234L > 5678L)
${cf_cv_main_return:-return}(foo != 0);
#endif
@@ -832,12 +928,12 @@ if (foo + 1234L > 5678L)
[cf_result=yes],
[cf_result=no])
fi
- eval 'cf_cv_func_'$cf_func'=$cf_result'
+ eval 'cf_cv_func_'$cf_func'="$cf_result"'
])
# use the computed/retrieved cache-value:
eval 'cf_result=$cf_cv_func_'$cf_func
AC_MSG_RESULT($cf_result)
- if test $cf_result != no; then
+ if test "$cf_result" != no; then
AC_DEFINE_UNQUOTED(HAVE_${cf_tr_func})
fi
done
@@ -870,7 +966,7 @@ fi
AC_CHECK_HEADERS($cf_cv_ncurses_header)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_LIBS version: 42 updated: 2018/06/20 20:23:13
+dnl CF_CURSES_LIBS version: 44 updated: 2021/01/02 09:31:20
dnl --------------
dnl Look for the curses libraries. Older curses implementations may require
dnl termcap/termlib to be linked as well. Call CF_CURSES_CPPFLAGS first.
@@ -885,7 +981,7 @@ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
AC_MSG_RESULT($cf_result)
if test "$cf_result" = no ; then
-case $host_os in
+case "$host_os" in
(freebsd*)
AC_CHECK_LIB(mytinfo,tgoto,[CF_ADD_LIBS(-lmytinfo)])
;;
@@ -953,7 +1049,7 @@ if test ".$ac_cv_func_initscr" != .yes ; then
for cf_term_lib in $cf_check_list otermcap termcap tinfo termlib unknown
do
AC_CHECK_LIB($cf_term_lib,tgoto,[
- : ${cf_nculib_root:=$cf_term_lib}
+ : "${cf_nculib_root:=$cf_term_lib}"
break
])
done
@@ -974,7 +1070,7 @@ if test ".$ac_cv_func_initscr" != .yes ; then
[cf_result=yes],
[cf_result=no])
AC_MSG_RESULT($cf_result)
- test $cf_result = yes && break
+ test "$cf_result" = yes && break
elif test "$cf_curs_lib" = "$cf_term_lib" ; then
cf_result=no
elif test "$cf_term_lib" != predefined ; then
@@ -990,17 +1086,17 @@ if test ".$ac_cv_func_initscr" != .yes ; then
[cf_result=error])
])
AC_MSG_RESULT($cf_result)
- test $cf_result != error && break
+ test "$cf_result" != error && break
fi
done
fi
- test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found)
+ test "$cf_curs_lib" = unknown && AC_MSG_ERROR(no curses library found)
fi
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_TERM_H version: 11 updated: 2015/04/15 19:08:48
+dnl CF_CURSES_TERM_H version: 15 updated: 2021/01/02 09:31:20
dnl ----------------
dnl SVr4 curses should have term.h as well (where it puts the definitions of
dnl the low-level interface). This may not be true in old/broken implementations,
@@ -1017,9 +1113,9 @@ AC_CACHE_CHECK(for term.h, cf_cv_term_header,[
cf_header_list="term.h ncurses/term.h ncursesw/term.h"
-case ${cf_cv_ncurses_header:-curses.h} in
+case "${cf_cv_ncurses_header:-curses.h}" in
(*/*)
- cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h
+ cf_header_item=`echo "${cf_cv_ncurses_header:-curses.h}" | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h
cf_header_list="$cf_header_item $cf_header_list"
;;
esac
@@ -1029,13 +1125,13 @@ do
AC_TRY_COMPILE([
#include <${cf_cv_ncurses_header:-curses.h}>
#include <${cf_header}>],
- [WINDOW *x],
+ [WINDOW *x; (void)x],
[cf_cv_term_header=$cf_header
break],
[cf_cv_term_header=no])
done
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(no)
# If curses is ncurses, some packagers still mess it up by trying to make
# us use GNU termcap. This handles the most common case.
@@ -1048,7 +1144,7 @@ case $cf_cv_term_header in
#else
make an error
#endif],
- [WINDOW *x],
+ [WINDOW *x; (void)x],
[cf_cv_term_header=$cf_header
break],
[cf_cv_term_header=no])
@@ -1057,7 +1153,7 @@ make an error
esac
])
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(term.h)
AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h])
;;
@@ -1070,7 +1166,7 @@ case $cf_cv_term_header in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_UNCTRL_H version: 4 updated: 2015/04/15 19:08:48
+dnl CF_CURSES_UNCTRL_H version: 8 updated: 2021/01/02 09:31:20
dnl ------------------
dnl Any X/Open curses implementation must have unctrl.h, but ncurses packages
dnl may put it in a subdirectory (along with ncurses' other headers, of
@@ -1087,9 +1183,9 @@ AC_CACHE_CHECK(for unctrl.h, cf_cv_unctrl_header,[
cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h"
-case ${cf_cv_ncurses_header:-curses.h} in
+case "${cf_cv_ncurses_header:-curses.h}" in
(*/*)
- cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h
+ cf_header_item=`echo "${cf_cv_ncurses_header:-curses.h}" | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h
cf_header_list="$cf_header_item $cf_header_list"
;;
esac
@@ -1099,20 +1195,20 @@ do
AC_TRY_COMPILE([
#include <${cf_cv_ncurses_header:-curses.h}>
#include <${cf_header}>],
- [WINDOW *x],
+ [WINDOW *x; (void)x],
[cf_cv_unctrl_header=$cf_header
break],
[cf_cv_unctrl_header=no])
done
])
-case $cf_cv_unctrl_header in
+case "$cf_cv_unctrl_header" in
(no)
AC_MSG_WARN(unctrl.h header not found)
;;
esac
-case $cf_cv_unctrl_header in
+case "$cf_cv_unctrl_header" in
(unctrl.h)
AC_DEFINE(HAVE_UNCTRL_H,1,[Define to 1 if we have unctrl.h])
;;
@@ -1125,7 +1221,7 @@ case $cf_cv_unctrl_header in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_WACS_MAP version: 6 updated: 2012/10/06 08:57:51
+dnl CF_CURSES_WACS_MAP version: 8 updated: 2021/01/04 19:45:09
dnl ------------------
dnl Check for likely values of wacs_map[].
AC_DEFUN([CF_CURSES_WACS_MAP],
@@ -1139,7 +1235,7 @@ AC_CACHE_CHECK(for wide alternate character set array, cf_cv_curses_wacs_map,[
#define _XOPEN_SOURCE_EXTENDED
#endif
#include <${cf_cv_ncurses_header:-curses.h}>],
- [void *foo = &($name['k'])],
+ [void *foo = &(${name}['k']); (void)foo],
[cf_cv_curses_wacs_map=$name
break])
done])
@@ -1147,7 +1243,7 @@ AC_CACHE_CHECK(for wide alternate character set array, cf_cv_curses_wacs_map,[
test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map,[Define to name of (n)curses wide-character array])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_WACS_SYMBOLS version: 2 updated: 2012/10/06 08:57:51
+dnl CF_CURSES_WACS_SYMBOLS version: 4 updated: 2021/01/04 19:45:09
dnl ----------------------
dnl Do a check to see if the WACS_xxx constants are defined compatibly with
dnl X/Open Curses. In particular, NetBSD's implementation of the WACS_xxx
@@ -1166,7 +1262,7 @@ then
#endif
#include <${cf_cv_ncurses_header:-curses.h}>],
[cchar_t *foo = WACS_PLUS;
- $cf_cv_curses_wacs_map['k'] = *WACS_PLUS],
+ ${cf_cv_curses_wacs_map}['k'] = *WACS_PLUS; (void)foo],
[cf_cv_curses_wacs_symbols=yes])
else
AC_TRY_LINK([
@@ -1174,7 +1270,7 @@ else
#define _XOPEN_SOURCE_EXTENDED
#endif
#include <${cf_cv_ncurses_header:-curses.h}>],
- [cchar_t *foo = WACS_PLUS],
+ [cchar_t *foo = WACS_PLUS; (void)foo],
[cf_cv_curses_wacs_symbols=yes])
fi
])
@@ -1182,14 +1278,14 @@ fi
test "$cf_cv_curses_wacs_symbols" != no && AC_DEFINE(CURSES_WACS_SYMBOLS,1,[Define to 1 if (n)curses supports wide-character WACS_ symbols])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52
+dnl CF_DIRNAME version: 5 updated: 2020/12/31 20:19:42
dnl ----------
dnl "dirname" is not portable, so we fake it with a shell script.
-AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
+AC_DEFUN([CF_DIRNAME],[$1=`echo "$2" | sed -e 's%/[[^/]]*$%%'`])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_ECHO version: 13 updated: 2015/04/18 08:56:57
+dnl CF_DISABLE_ECHO version: 14 updated: 2021/09/04 06:35:04
dnl ---------------
-dnl You can always use "make -n" to see the actual options, but it's hard to
+dnl You can always use "make -n" to see the actual options, but it is hard to
dnl pick out/analyze warning messages when the compile-line is long.
dnl
dnl Sets:
@@ -1224,7 +1320,7 @@ AC_SUBST(SHOW_CC)
AC_SUBST(ECHO_CC)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_LEAKS version: 7 updated: 2012/10/02 20:55:03
+dnl CF_DISABLE_LEAKS version: 9 updated: 2021/04/03 16:41:50
dnl ----------------
dnl Combine no-leak checks with the libraries or tools that are used for the
dnl checks.
@@ -1237,17 +1333,19 @@ AC_REQUIRE([CF_WITH_VALGRIND])
AC_MSG_CHECKING(if you want to perform memory-leak testing)
AC_ARG_ENABLE(leaks,
[ --disable-leaks test: free permanent memory, analyze leaks],
- [if test "x$enableval" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi],
- : ${with_no_leaks:=no})
+ [enable_leaks=$enableval],
+ [enable_leaks=yes])
+dnl with_no_leaks is more readable...
+if test "x$enable_leaks" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi
AC_MSG_RESULT($with_no_leaks)
-if test "$with_no_leaks" = yes ; then
+if test "$enable_leaks" = no ; then
AC_DEFINE(NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.])
AC_DEFINE(YY_NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.])
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_RPATH_HACK version: 2 updated: 2011/02/13 13:31:33
+dnl CF_DISABLE_RPATH_HACK version: 3 updated: 2021/01/05 20:14:44
dnl ---------------------
dnl The rpath-hack makes it simpler to build programs, particularly with the
dnl *BSD ports which may have essential libraries in unusual places. But it
@@ -1258,15 +1356,18 @@ AC_DEFUN([CF_DISABLE_RPATH_HACK],
AC_MSG_CHECKING(if rpath-hack should be disabled)
CF_ARG_DISABLE(rpath-hack,
[ --disable-rpath-hack don't add rpath options for additional libraries],
- [cf_disable_rpath_hack=yes],
- [cf_disable_rpath_hack=no])
+ [enable_rpath_hack=no],
+ [enable_rpath_hack=yes])
+dnl TODO - drop cf_disable_rpath_hack
+if test "x$enable_rpath_hack" = xno; then cf_disable_rpath_hack=yes; else cf_disable_rpath_hack=no; fi
AC_MSG_RESULT($cf_disable_rpath_hack)
-if test "$cf_disable_rpath_hack" = no ; then
+
+if test "$enable_rpath_hack" = yes ; then
CF_RPATH_HACK
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_STRING_HACKS version: 5 updated: 2016/10/08 17:34:11
+dnl CF_ENABLE_STRING_HACKS version: 6 updated: 2021/01/05 19:23:48
dnl ----------------------
dnl On a few platforms, the compiler and/or loader nags with untruthful
dnl comments stating that "most" uses of strcat/strcpy/sprintf are incorrect,
@@ -1286,11 +1387,11 @@ AC_DEFUN([CF_ENABLE_STRING_HACKS],
AC_MSG_CHECKING(if you want to work around bogus compiler/loader warnings)
AC_ARG_ENABLE(string-hacks,
[ --enable-string-hacks work around bogus compiler/loader warnings],
- [with_string_hacks=$enableval],
- [with_string_hacks=no])
-AC_MSG_RESULT($with_string_hacks)
+ [enable_string_hacks=$enableval],
+ [enable_string_hacks=no])
+AC_MSG_RESULT($enable_string_hacks)
-if test "x$with_string_hacks" = "xyes"; then
+if test "x$enable_string_hacks" = "xyes"; then
AC_DEFINE(USE_STRING_HACKS,1,[Define to 1 to work around bogus compiler/loader warnings])
AC_MSG_WARN(enabling string-hacks to work around bogus compiler/loader warnings)
AC_CHECK_FUNC(strlcat,[
@@ -1306,27 +1407,37 @@ if test "x$with_string_hacks" = "xyes"; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_WARNINGS version: 5 updated: 2017/09/29 20:01:16
+dnl CF_ENABLE_WARNINGS version: 9 updated: 2021/01/05 19:40:50
dnl ------------------
dnl Configure-option to enable gcc warnings
+dnl
+dnl $1 = extra options to add, if supported
+dnl $2 = option for checking attributes. By default, this is done when
+dnl warnings are enabled. For other values:
+dnl yes: always do this, e.g., to use in generated library-headers
+dnl no: never do this
AC_DEFUN([CF_ENABLE_WARNINGS],[
-if ( test "$GCC" = yes || test "$GXX" = yes )
+if test "$GCC" = yes || test "$GXX" = yes
then
+CF_FIX_WARNINGS(CFLAGS)
+CF_FIX_WARNINGS(CPPFLAGS)
+CF_FIX_WARNINGS(LDFLAGS)
AC_MSG_CHECKING(if you want to turn on gcc warnings)
CF_ARG_ENABLE(warnings,
[ --enable-warnings test: turn on gcc compiler warnings],
- [with_warnings=yes],
- [with_warnings=no])
-AC_MSG_RESULT($with_warnings)
-if test "$with_warnings" = "yes"
+ [enable_warnings=yes],
+ [enable_warnings=no])
+AC_MSG_RESULT($enable_warnings)
+if test "$enable_warnings" = "yes"
then
- CF_GCC_ATTRIBUTES
+ ifelse($2,,[CF_GCC_ATTRIBUTES])
CF_GCC_WARNINGS($1)
fi
+ifelse($2,yes,[CF_GCC_ATTRIBUTES])
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FIND_LIBRARY version: 9 updated: 2008/03/23 14:48:54
+dnl CF_FIND_LIBRARY version: 11 updated: 2021/01/02 09:31:20
dnl ---------------
dnl Look for a non-standard library, given parameters for AC_TRY_LINK. We
dnl prefer a standard location, and use -L options only if we do not find the
@@ -1342,16 +1453,16 @@ dnl Sets the variable "$cf_libdir" as a side-effect, so we can see if we had
dnl to use a -L option.
AC_DEFUN([CF_FIND_LIBRARY],
[
- eval 'cf_cv_have_lib_'$1'=no'
+ eval 'cf_cv_have_lib_'"$1"'=no'
cf_libdir=""
AC_CHECK_FUNC($5,
- eval 'cf_cv_have_lib_'$1'=yes',[
+ eval 'cf_cv_have_lib_'"$1"'=yes',[
cf_save_LIBS="$LIBS"
AC_MSG_CHECKING(for $5 in -l$1)
LIBS="-l$1 $LIBS"
AC_TRY_LINK([$3],[$4],
[AC_MSG_RESULT(yes)
- eval 'cf_cv_have_lib_'$1'=yes'
+ eval 'cf_cv_have_lib_'"$1"'=yes'
],
[AC_MSG_RESULT(no)
CF_LIBRARY_PATH(cf_search,$2)
@@ -1361,22 +1472,22 @@ AC_DEFUN([CF_FIND_LIBRARY],
LIBS="-L$cf_libdir -l$1 $cf_save_LIBS"
AC_TRY_LINK([$3],[$4],
[AC_MSG_RESULT(yes)
- eval 'cf_cv_have_lib_'$1'=yes'
+ eval 'cf_cv_have_lib_'"$1"'=yes'
break],
[AC_MSG_RESULT(no)
LIBS="$cf_save_LIBS"])
done
])
])
-eval 'cf_found_library=[$]cf_cv_have_lib_'$1
+eval 'cf_found_library="[$]cf_cv_have_lib_'"$1"\"
ifelse($6,,[
-if test $cf_found_library = no ; then
+if test "$cf_found_library" = no ; then
AC_MSG_ERROR(Cannot link $1 library)
fi
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FIND_LINKAGE version: 21 updated: 2018/06/20 20:23:13
+dnl CF_FIND_LINKAGE version: 22 updated: 2020/12/31 20:19:42
dnl ---------------
dnl Find a library (specifically the linkage used in the code fragment),
dnl searching for it if it is not already in the library path.
@@ -1433,7 +1544,7 @@ AC_TRY_LINK([$1],[$2],[
CF_HEADER_PATH(cf_search,ifelse([$6],,[$3],[$6]))
for cf_cv_header_path_$3 in $cf_search
do
- if test -d $cf_cv_header_path_$3 ; then
+ if test -d "$cf_cv_header_path_$3" ; then
CF_VERBOSE(... testing $cf_cv_header_path_$3)
CPPFLAGS="$cf_save_CPPFLAGS"
CF_APPEND_TEXT(CPPFLAGS,-I$cf_cv_header_path_$3)
@@ -1468,7 +1579,7 @@ AC_TRY_LINK([$1],[$2],[
CF_LIBRARY_PATH(cf_search,$3)
for cf_cv_library_path_$3 in $cf_search
do
- if test -d $cf_cv_library_path_$3 ; then
+ if test -d "$cf_cv_library_path_$3" ; then
CF_VERBOSE(... testing $cf_cv_library_path_$3)
CPPFLAGS="$cf_test_CPPFLAGS"
LIBS="-l$3 $7 $cf_save_LIBS"
@@ -1507,7 +1618,41 @@ ifelse([$5],,AC_MSG_WARN(Cannot find $3 library),[$5])
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_CURSES_VERSION version: 7 updated: 2017/05/10 18:31:29
+dnl CF_FIX_WARNINGS version: 3 updated: 2020/12/31 18:40:20
+dnl ---------------
+dnl Warning flags do not belong in CFLAGS, CPPFLAGS, etc. Any of gcc's
+dnl "-Werror" flags can interfere with configure-checks. Those go into
+dnl EXTRA_CFLAGS.
+dnl
+dnl $1 = variable name to repair
+define([CF_FIX_WARNINGS],[
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case [$]$1 in
+ (*-Werror=*)
+ CF_VERBOSE(repairing $1: [$]$1)
+ cf_temp_flags=
+ for cf_temp_scan in [$]$1
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+ CF_APPEND_TEXT(EXTRA_CFLAGS,$cf_temp_scan)
+ ;;
+ (*)
+ CF_APPEND_TEXT(cf_temp_flags,$cf_temp_scan)
+ ;;
+ esac
+ done
+ $1="$cf_temp_flags"
+ CF_VERBOSE(... fixed [$]$1)
+ CF_VERBOSE(... extra $EXTRA_CFLAGS)
+ ;;
+ esac
+fi
+AC_SUBST(EXTRA_CFLAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_CURSES_VERSION version: 8 updated: 2021/01/02 09:31:20
dnl ----------------------
dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
dnl It's a character string "SVR4", not documented.
@@ -1519,7 +1664,7 @@ AC_TRY_RUN([
int main(void)
{
char temp[1024];
- sprintf(temp, "%s\n", curses_version());
+ sprintf(temp, "%s\\n", curses_version());
${cf_cv_main_return:-return}(0);
}]
,[cf_cv_func_curses_version=yes]
@@ -1529,7 +1674,7 @@ rm -f core])
test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION,1,[Define to 1 if we have curses_version function])
])
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_OPENPTY version: 5 updated: 2015/09/12 14:46:50
+dnl CF_FUNC_OPENPTY version: 6 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Check for openpty() function, along with <pty.h> header. It may need the
dnl "util" library as well.
@@ -1538,7 +1683,7 @@ AC_DEFUN([CF_FUNC_OPENPTY],
AC_CHECK_LIB(util,openpty,cf_cv_lib_util=yes,cf_cv_lib_util=no)
AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
cf_save_LIBS="$LIBS"
- test $cf_cv_lib_util = yes && { CF_ADD_LIB(util) }
+ test "$cf_cv_lib_util" = yes && { CF_ADD_LIB(util) }
for cf_header in pty.h libutil.h util.h
do
AC_TRY_LINK([
@@ -1557,14 +1702,16 @@ AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_ATTRIBUTES version: 17 updated: 2015/04/12 15:39:00
+dnl CF_GCC_ATTRIBUTES version: 24 updated: 2021/03/20 12:00:25
dnl -----------------
dnl Test for availability of useful gcc __attribute__ directives to quiet
dnl compiler warnings. Though useful, not all are supported -- and contrary
dnl to documentation, unrecognized directives cause older compilers to barf.
AC_DEFUN([CF_GCC_ATTRIBUTES],
-[
-if test "$GCC" = yes
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+AC_REQUIRE([CF_C11_NORETURN])dnl
+
+if test "$GCC" = yes || test "$GXX" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -1583,7 +1730,7 @@ EOF
if test "$GCC" = yes
then
AC_CHECKING([for $CC __attribute__ directives])
-cat > conftest.$ac_ext <<EOF
+cat > "conftest.$ac_ext" <<EOF
#line __oline__ "${as_me:-configure}"
#include "confdefs.h"
#include "conftest.h"
@@ -1599,9 +1746,9 @@ cat > conftest.$ac_ext <<EOF
#define GCC_SCANFLIKE(fmt,var) /*nothing*/
#endif
extern void wow(char *,...) GCC_SCANFLIKE(1,2);
-extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
-extern void foo(void) GCC_NORETURN;
-int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { return 0; }
+extern GCC_NORETURN void oops(char *,...) GCC_PRINTFLIKE(1,2);
+extern GCC_NORETURN void foo(void);
+int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { (void)argc; (void)argv; return 0; }
EOF
cf_printf_attribute=no
cf_scanf_attribute=no
@@ -1611,7 +1758,7 @@ EOF
cf_directive="__attribute__(($cf_attribute))"
echo "checking for $CC $cf_directive" 1>&AC_FD_CC
- case $cf_attribute in
+ case "$cf_attribute" in
(printf)
cf_printf_attribute=yes
cat >conftest.h <<EOF
@@ -1634,7 +1781,7 @@ EOF
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
cat conftest.h >>confdefs.h
- case $cf_attribute in
+ case "$cf_attribute" in
(noreturn)
AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc])
;;
@@ -1661,9 +1808,9 @@ EOF
fi
done
else
- fgrep define conftest.i >>confdefs.h
+ ${FGREP-fgrep} define conftest.i >>confdefs.h
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
])dnl
dnl ---------------------------------------------------------------------------
@@ -1684,7 +1831,7 @@ CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_WARNINGS version: 37 updated: 2020/01/05 20:04:12
+dnl CF_GCC_WARNINGS version: 41 updated: 2021/01/01 16:53:59
dnl ---------------
dnl Check if the compiler supports useful warning options. There's a few that
dnl we don't use, simply because they're too noisy:
@@ -1708,7 +1855,7 @@ AC_DEFUN([CF_GCC_WARNINGS],
[
AC_REQUIRE([CF_GCC_VERSION])
if test "x$have_x" = xyes; then CF_CONST_X_STRING fi
-cat > conftest.$ac_ext <<EOF
+cat > "conftest.$ac_ext" <<EOF
#line __oline__ "${as_me:-configure}"
int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
EOF
@@ -1727,7 +1874,7 @@ then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wall"
for cf_opt in \
wd1419 \
wd1683 \
@@ -1750,7 +1897,6 @@ elif test "$GCC" = yes && test "$GCC_VERSION" != "unknown"
then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS=
cf_warn_CONST=""
test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
@@ -1773,16 +1919,16 @@ then
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
- case $cf_opt in
+ case "$cf_opt" in
(Winline)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([[34]].*)
CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
continue;;
esac
;;
(Wpointer-arith)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([[12]].*)
CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
continue;;
@@ -1794,12 +1940,12 @@ then
done
CFLAGS="$cf_save_CFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
AC_SUBST(EXTRA_CFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GETOPT_HEADER version: 6 updated: 2014/07/22 14:45:54
+dnl CF_GETOPT_HEADER version: 8 updated: 2021/06/19 19:16:16
dnl ----------------
dnl Check for getopt's variables which are commonly defined in stdlib.h,
dnl unistd.h or (nonstandard) in getopt.h
@@ -1812,15 +1958,15 @@ for cf_header in stdio.h stdlib.h unistd.h getopt.h
do
AC_TRY_COMPILE([
#include <$cf_header>],
-[int x = optind; char *y = optarg],
+[int x = optind; char *y = optarg; (void)x; (void)y],
[cf_cv_getopt_header=$cf_header
break])
done
])
-if test $cf_cv_getopt_header != none ; then
+if test "$cf_cv_getopt_header" != none ; then
AC_DEFINE(HAVE_GETOPT_HEADER,1,[Define to 1 if getopt variables are declared in header])
fi
-if test $cf_cv_getopt_header = getopt.h ; then
+if test "$cf_cv_getopt_header" = getopt.h ; then
AC_DEFINE(NEED_GETOPT_H,1,[Define to 1 if we must include getopt.h])
fi
])dnl
@@ -1936,7 +2082,7 @@ if test x$cf_cv_gnu_library = xyes; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_HEADER_PATH version: 13 updated: 2015/04/15 19:08:48
+dnl CF_HEADER_PATH version: 15 updated: 2021/01/01 13:31:04
dnl --------------
dnl Construct a search-list of directories for a nonstandard header-file
dnl
@@ -1952,7 +2098,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
CF_ADD_SUBDIR_PATH($1,$2,include,$cf_header_path,NONE)
@@ -1968,15 +2114,15 @@ CF_SUBDIR_PATH($1,$2,include)
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && $1="[$]$1 $includedir"
- test -d $includedir/$2 && $1="[$]$1 $includedir/$2"
+ test -d "$includedir" && $1="[$]$1 $includedir"
+ test -d "$includedir/$2" && $1="[$]$1 $includedir/$2"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && $1="[$]$1 $oldincludedir"
- test -d $oldincludedir/$2 && $1="[$]$1 $oldincludedir/$2"
+ test -d "$oldincludedir" && $1="[$]$1 $oldincludedir"
+ test -d "$oldincludedir/$2" && $1="[$]$1 $oldincludedir/$2"
}
$1="[$]$1 $cf_header_path_list"
@@ -2008,7 +2154,7 @@ CF_INSTALL_OPT_P
CF_INSTALL_OPT_O
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_O version: 2 updated: 2015/05/15 19:45:35
+dnl CF_INSTALL_OPT_O version: 3 updated: 2020/12/31 20:19:42
dnl ----------------
dnl Almost all "install" programs default to the current user's ownership.
dnl Almost - MINIX is an exception.
@@ -2027,7 +2173,7 @@ esac
AC_MSG_RESULT($with_install_o)
if test "x$with_install_o" = xyes
then
- INSTALL_OPT_O=`id root|sed -e 's/uid=[[0-9]]*(/ -o /' -e 's/gid=[[0-9]]*(/ -g /' -e 's/ [[^=[:space:]]][[^=[:space:]]]*=.*/ /' -e 's/)//g'`
+ INSTALL_OPT_O="`id root|sed -e 's/uid=[[0-9]]*(/ -o /' -e 's/gid=[[0-9]]*(/ -g /' -e 's/ [[^=[:space:]]][[^=[:space:]]]*=.*/ /' -e 's/)//g'`"
else
INSTALL_OPT_O=
fi
@@ -2035,16 +2181,16 @@ fi
AC_SUBST(INSTALL_OPT_O)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_P version: 1 updated: 2018/08/18 12:19:21
+dnl CF_INSTALL_OPT_P version: 3 updated: 2021/01/01 13:31:04
dnl ----------------
dnl Some install-programs accept a "-p" option to preserve file modification
dnl timestamps. That can be useful as an install option, as well as a way to
dnl avoid the need for ranlib after copying a static archive.
AC_DEFUN([CF_INSTALL_OPT_P],
[
-: ${INSTALL:=install}
+: "${INSTALL:=install}"
AC_CACHE_CHECK(if install accepts -p option, cf_cv_install_p,[
- rm -rf conftest*
+ rm -rf ./conftest*
date >conftest.in
mkdir conftest.out
sleep 3
@@ -2066,11 +2212,11 @@ AC_CACHE_CHECK(if install accepts -p option, cf_cv_install_p,[
else
cf_cv_install_p=no
fi
- rm -rf conftest*
+ rm -rf ./conftest*
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INSTALL_OPT_S version: 2 updated: 2018/08/18 12:19:21
+dnl CF_INSTALL_OPT_S version: 3 updated: 2021/01/05 19:23:48
dnl ----------------
dnl By default, we should strip executables which are installed, but leave the
dnl ability to suppress that for unit-testing.
@@ -2079,11 +2225,11 @@ AC_DEFUN([CF_INSTALL_OPT_S],
AC_MSG_CHECKING(if you want to install stripped executables)
CF_ARG_DISABLE(stripping,
[ --disable-stripping do not strip (debug info) installed executables],
- [with_stripping=no],
- [with_stripping=yes])
-AC_MSG_RESULT($with_stripping)
+ [enable_stripping=no],
+ [enable_stripping=yes])
+AC_MSG_RESULT($enable_stripping)
-if test "$with_stripping" = yes
+if test "$enable_stripping" = yes
then
INSTALL_OPT_S="-s"
else
@@ -2092,7 +2238,7 @@ fi
AC_SUBST(INSTALL_OPT_S)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INTEL_COMPILER version: 7 updated: 2015/04/12 15:39:00
+dnl CF_INTEL_COMPILER version: 8 updated: 2021/01/01 16:53:59
dnl -----------------
dnl Check if the given compiler is really the Intel compiler for Linux. It
dnl tries to imitate gcc, but does not return an error when it finds a mismatch
@@ -2110,7 +2256,7 @@ AC_REQUIRE([AC_CANONICAL_HOST])
ifelse([$2],,INTEL_COMPILER,[$2])=no
if test "$ifelse([$1],,[$1],GCC)" = yes ; then
- case $host_os in
+ case "$host_os" in
(linux*|gnu*)
AC_MSG_CHECKING(if this is really Intel ifelse([$1],GXX,C++,C) compiler)
cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
@@ -2130,7 +2276,7 @@ cf_save_CFLAGS="$cf_save_CFLAGS -we147"
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LD_RPATH_OPT version: 8 updated: 2018/08/18 16:36:35
+dnl CF_LD_RPATH_OPT version: 9 updated: 2021/01/01 13:31:04
dnl ---------------
dnl For the given system and compiler, find the compiler flags to pass to the
dnl loader to use the "rpath" feature.
@@ -2142,7 +2288,7 @@ LD_RPATH_OPT=
if test "x$cf_cv_enable_rpath" != xno
then
AC_MSG_CHECKING(for an rpath option)
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GCC" = yes; then
LD_RPATH_OPT="-Wl,-rpath,"
@@ -2187,7 +2333,7 @@ then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIBRARY_PATH version: 10 updated: 2015/04/15 19:08:48
+dnl CF_LIBRARY_PATH version: 11 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Construct a search-list of directories for a nonstandard library-file
dnl
@@ -2201,7 +2347,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
CF_ADD_SUBDIR_PATH($1,$2,lib,$cf_library_path,NONE)
@@ -2216,6 +2362,89 @@ CF_SUBDIR_PATH($1,$2,lib)
$1="$cf_library_path_list [$]$1"
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_MAKE_PHONY version: 3 updated: 2021/01/08 16:08:21
+dnl -------------
+dnl Check if the make-program handles a ".PHONY" target, e.g,. a target which
+dnl acts as a placeholder.
+dnl
+dnl The ".PHONY" feature was proposed in 2011 here
+dnl https://www.austingroupbugs.net/view.php?id=523
+dnl and is scheduled for release in P1003.1 Issue 8 (late 2022).
+dnl
+dnl This is not supported by SVr4 make (or SunOS 4, 4.3SD, etc), but works with
+dnl a few others (i.e., GNU make and the non-POSIX "BSD" make):
+dnl
+dnl + This is a GNU make feature (since April 1988, but in turn from binutils,
+dnl date unspecified).
+dnl
+dnl + It was adopted in NetBSD make in June 1995.
+dnl
+dnl + The other BSD make programs are derived from the NetBSD make (and for
+dnl that reason are not actually different "implementations").
+dnl
+dnl + Some features of NetBSD make were actually adapted from pmake, which
+dnl began as a modified GNU make starting in 1993.
+dnl
+dnl + Version 3.8 of the dmake program in January 1992 also implemented this
+dnl GNU make extension, but is less well known than the BSD make.
+AC_DEFUN([CF_MAKE_PHONY],[
+AC_CACHE_CHECK(for \".PHONY\" make-support, cf_cv_make_PHONY,[
+ rm -rf conftest*
+ (
+ mkdir conftest || exit 1
+ cd conftest
+ cat >makefile <<'CF_EOF'
+.PHONY: always
+DATA=0
+always: always.out
+ @echo "** making [$]@ [$](DATA)"
+once: once.out
+ @echo "** making [$]@ [$](DATA)"
+always.out:
+ @echo "** making [$]@ [$](DATA)"
+ echo [$](DATA) > [$]@
+once.out:
+ @echo "** making [$]@ [$](DATA)"
+ echo [$](DATA) > [$]@
+CF_EOF
+ for cf_data in 1 2 3
+ do
+ ${MAKE:-make} always DATA=$cf_data
+ ${MAKE:-make} once DATA=$cf_data
+ ${MAKE:-make} -t always once
+ if test -f always ; then
+ echo "no (case 1)" > ../conftest.tmp
+ elif test ! -f always.out ; then
+ echo "no (case 2)" > ../conftest.tmp
+ elif test ! -f once.out ; then
+ echo "no (case 3)" > ../conftest.tmp
+ elif ! cmp -s always.out once.out ; then
+ echo "no (case 4)" > ../conftest.tmp
+ diff always.out once.out
+ else
+ cf_check="`cat always.out`"
+ if test "x$cf_check" != "x$cf_data" ; then
+ echo "no (case 5)" > ../conftest.tmp
+ else
+ echo yes > ../conftest.tmp
+ rm -f ./*.out
+ continue
+ fi
+ fi
+ break
+ done
+ ) >&AC_FD_CC 2>&1
+ cf_cv_make_PHONY="`cat conftest.tmp`"
+ rm -rf conftest*
+])
+MAKE_NO_PHONY="#"
+MAKE_PHONY="#"
+test "x$cf_cv_make_PHONY" = xyes && MAKE_PHONY=
+test "x$cf_cv_make_PHONY" != xyes && MAKE_NO_PHONY=
+AC_SUBST(MAKE_NO_PHONY)
+AC_SUBST(MAKE_PHONY)
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_MAKE_TAGS version: 6 updated: 2010/10/23 15:52:32
dnl ------------
dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have
@@ -2253,7 +2482,7 @@ AC_SUBST(MAKE_UPPER_TAGS)
AC_SUBST(MAKE_LOWER_TAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MATH_LIB version: 9 updated: 2017/01/21 11:06:25
+dnl CF_MATH_LIB version: 10 updated: 2020/12/31 18:40:20
dnl -----------
dnl Checks for libraries. At least one UNIX system, Apple Macintosh
dnl Rhapsody 5.5, does not have -lm. We cannot use the simpler
@@ -2267,7 +2496,7 @@ AC_CACHE_CHECK(if -lm needed for math functions,
#include <stdlib.h>
#include <math.h>
],
- [double x = rand(); printf("result = %g\n", ]ifelse([$2],,sin(x),$2)[)],
+ [double x = rand(); printf("result = %g\\n", ]ifelse([$2],,sin(x),$2)[)],
[cf_cv_need_libm=no],
[cf_cv_need_libm=yes])])
if test "$cf_cv_need_libm" = yes
@@ -2278,7 +2507,7 @@ ifelse($1,,[
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_MIXEDCASE_FILENAMES version: 7 updated: 2015/04/12 15:39:00
+dnl CF_MIXEDCASE_FILENAMES version: 9 updated: 2021/01/01 16:53:59
dnl ----------------------
dnl Check if the file-system supports mixed-case filenames. If we're able to
dnl create a lowercase name and see it as uppercase, it doesn't support that.
@@ -2286,8 +2515,8 @@ AC_DEFUN([CF_MIXEDCASE_FILENAMES],
[
AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
if test "$cross_compiling" = yes ; then
- case $target_alias in
- (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*)
+ case "$target_alias" in
+ (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*|darwin*)
cf_cv_mixedcase=no
;;
(*)
@@ -2316,7 +2545,7 @@ AC_DEFUN([CF_MSG_LOG],[
echo "${as_me:-configure}:__oline__: testing $* ..." 1>&AC_FD_CC
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_CC_CHECK version: 4 updated: 2007/07/29 10:39:05
+dnl CF_NCURSES_CC_CHECK version: 5 updated: 2020/12/31 20:19:42
dnl -------------------
dnl Check if we can compile with ncurses' header file
dnl $1 is the cache variable to set
@@ -2336,10 +2565,10 @@ AC_DEFUN([CF_NCURSES_CC_CHECK],[
make an error
#endif
])[
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -2349,7 +2578,7 @@ printf("old\n");
,[$1=no])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_CONFIG version: 21 updated: 2018/06/20 20:23:13
+dnl CF_NCURSES_CONFIG version: 28 updated: 2021/08/28 15:20:37
dnl -----------------
dnl Tie together the configure-script macros for ncurses, preferring these in
dnl order:
@@ -2371,17 +2600,53 @@ if test "x${PKG_CONFIG:=none}" != xnone; then
AC_MSG_CHECKING(if the $cf_ncuconfig_root package files work)
cf_have_ncuconfig=unknown
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
- CF_ADD_CFLAGS(`$PKG_CONFIG --cflags $cf_ncuconfig_root`)
- CF_ADD_LIBS(`$PKG_CONFIG --libs $cf_ncuconfig_root`)
+ cf_pkg_cflags="`$PKG_CONFIG --cflags $cf_ncuconfig_root`"
+ cf_pkg_libs="`$PKG_CONFIG --libs $cf_ncuconfig_root`"
+
+ # while -W for passing linker flags is prevalent, it is not "standard".
+ # At least one wrapper for c89/c99 (in Apple's xcode) has its own
+ # incompatible _and_ non-standard -W option which gives an error. Work
+ # around that pitfall.
+ case "x${CC}@@${cf_pkg_libs}@${cf_pkg_cflags}" in
+ (x*c[[89]]9@@*-W*)
+ CF_ADD_CFLAGS($cf_pkg_cflags)
+ CF_ADD_LIBS($cf_pkg_libs)
+
+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+ [initscr(); mousemask(0,0); tigetstr((char *)0);],
+ [AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
+ int main(void)
+ { const char *xx = curses_version(); return (xx == 0); }],
+ [cf_test_ncuconfig=yes],
+ [cf_test_ncuconfig=no],
+ [cf_test_ncuconfig=maybe])],
+ [cf_test_ncuconfig=no])
+
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
+
+ if test "x$cf_test_ncuconfig" != xyes; then
+ cf_temp=`echo "x$cf_pkg_cflags" | sed -e s/^x// -e 's/-W[[^ ]]*//g'`
+ cf_pkg_cflags="$cf_temp"
+ cf_temp=`echo "x$cf_pkg_libs" | sed -e s/^x// -e 's/-W[[^ ]]*//g'`
+ cf_pkg_libs="$cf_temp"
+ fi
+ ;;
+ esac
+
+ CF_APPEND_CFLAGS($cf_pkg_cflags)
+ CF_ADD_LIBS($cf_pkg_libs)
AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
- [initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);],
+ [initscr(); mousemask(0,0); tigetstr((char *)0);],
[AC_TRY_RUN([#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
- { char *xx = curses_version(); return (xx == 0); }],
+ { const char *xx = curses_version(); return (xx == 0); }],
[cf_have_ncuconfig=yes],
[cf_have_ncuconfig=no],
[cf_have_ncuconfig=maybe])],
@@ -2416,7 +2681,7 @@ if test "x$cf_have_ncuconfig" = "xno"; then
if test "$NCURSES_CONFIG" != none ; then
- CF_ADD_CFLAGS(`$NCURSES_CONFIG --cflags`)
+ CF_APPEND_CFLAGS(`$NCURSES_CONFIG --cflags`)
CF_ADD_LIBS(`$NCURSES_CONFIG --libs`)
# even with config script, some packages use no-override for curses.h
@@ -2430,7 +2695,7 @@ if test "x$cf_have_ncuconfig" = "xno"; then
AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
dnl like CF_NCURSES_VERSION
- cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+ cf_cv_ncurses_version="`$NCURSES_CONFIG --version`"
else
@@ -2443,7 +2708,7 @@ else
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_CPPFLAGS version: 21 updated: 2012/10/06 08:57:51
+dnl CF_NCURSES_CPPFLAGS version: 22 updated: 2021/01/02 09:31:20
dnl -------------------
dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting
dnl the CPPFLAGS variable so we can include its header.
@@ -2477,7 +2742,7 @@ test "$cf_cv_curses_dir" != "no" && { \
AC_CACHE_CHECK(for $cf_ncuhdr_root header in include-path, cf_cv_ncurses_h,[
cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+ { test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw; } && cf_header_list="$cf_header_list curses.h ncurses.h"
for cf_header in $cf_header_list
do
CF_NCURSES_CC_CHECK(cf_cv_ncurses_h,$cf_header,$1)
@@ -2529,7 +2794,7 @@ AC_TRY_LINK([
test "$cf_cv_ncurses_ext_funcs" = yes && AC_DEFINE(NCURSES_EXT_FUNCS,1,[Define to 1 if we have ncurses extensions])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_HEADER version: 4 updated: 2015/04/15 19:08:48
+dnl CF_NCURSES_HEADER version: 7 updated: 2021/01/04 19:33:05
dnl -----------------
dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
dnl variations of ncurses' installs.
@@ -2544,7 +2809,7 @@ else
AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
test -n "$verbose" && echo
CF_HEADER_PATH(cf_search,$cf_ncuhdr_root)
- test -n "$verbose" && echo search path $cf_search
+ test -n "$verbose" && echo "search path $cf_search"
cf_save2_CPPFLAGS="$CPPFLAGS"
for cf_incdir in $cf_search
do
@@ -2556,7 +2821,7 @@ AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
CF_NCURSES_CC_CHECK(cf_cv_ncurses_h2,$cf_header,$1)
if test "$cf_cv_ncurses_h2" != no ; then
cf_cv_ncurses_h2=$cf_incdir/$cf_header
- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&AC_FD_MSG
+ test -n "$verbose" && echo $ECHO_N " ... found $ECHO_C" 1>&AC_FD_MSG
break
fi
test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&AC_FD_MSG
@@ -2568,9 +2833,9 @@ AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
])
CF_DIRNAME(cf_1st_incdir,$cf_cv_ncurses_h2)
- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+ cf_cv_ncurses_header="`basename "$cf_cv_ncurses_h2"`"
+ if test "`basename "$cf_1st_incdir"`" = "$cf_ncuhdr_root" ; then
+ cf_cv_ncurses_header="$cf_ncuhdr_root/$cf_cv_ncurses_header"
fi
CF_ADD_INCDIR($cf_1st_incdir)
@@ -2578,13 +2843,13 @@ fi
# Set definitions to allow ifdef'ing for ncurses.h
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(*ncurses.h)
AC_DEFINE(HAVE_NCURSES_H,1,[Define to 1 if we have ncurses.h])
;;
esac
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(ncurses/curses.h|ncurses/ncurses.h)
AC_DEFINE(HAVE_NCURSES_NCURSES_H,1,[Define to 1 if we have ncurses/ncurses.h])
;;
@@ -2595,7 +2860,7 @@ esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_LIBS version: 17 updated: 2015/04/15 19:08:48
+dnl CF_NCURSES_LIBS version: 21 updated: 2021/09/04 06:37:12
dnl ---------------
dnl Look for the ncurses library. This is a little complicated on Linux,
dnl because it may be linked with the gpm (general purpose mouse) library.
@@ -2621,10 +2886,10 @@ AC_CHECK_LIB(gpm,Gpm_Open,
[LIBS="$cf_ncurses_SAVE"],
[cf_ncurses_LIBS="-lgpm"])])
-case $host_os in
+case "$host_os" in
(freebsd*)
# This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
+ # version of ncurses (but it should do no harm, since it is static).
if test "$cf_nculib_root" = ncurses ; then
AC_CHECK_LIB(mytinfo,tgoto,[cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"])
fi
@@ -2633,7 +2898,7 @@ esac
CF_ADD_LIBS($cf_ncurses_LIBS)
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
CF_ADD_LIBS(-l$cf_nculib_root)
else
@@ -2647,13 +2912,13 @@ if test -n "$cf_ncurses_LIBS" ; then
AC_MSG_CHECKING(if we can link $cf_nculib_root without $cf_ncurses_LIBS)
cf_ncurses_SAVE="$LIBS"
for p in $cf_ncurses_LIBS ; do
- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+ q=`echo "$LIBS" | sed -e "s%$p %%" -e "s%$p$%%"`
if test "$q" != "$LIBS" ; then
LIBS="$q"
fi
done
AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
- [initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);],
+ [initscr(); mousemask(0,0); tigetstr((char *)0);],
[AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)
LIBS="$cf_ncurses_SAVE"])
@@ -2678,7 +2943,7 @@ then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_VERSION version: 15 updated: 2017/05/09 19:26:10
+dnl CF_NCURSES_VERSION version: 16 updated: 2020/12/31 20:19:42
dnl ------------------
dnl Check for the version of ncurses, to aid in reporting bugs, etc.
dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS. We don't use
@@ -2689,7 +2954,7 @@ AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
AC_TRY_RUN([
#include <${cf_cv_ncurses_header:-curses.h}>
#include <stdio.h>
@@ -2698,13 +2963,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -2715,7 +2980,7 @@ int main(void)
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -2730,12 +2995,12 @@ EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&AC_FD_CC | grep '^Autoconf ' >conftest.out"
AC_TRY_EVAL(cf_try)
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[[^"]]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[[^"]]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
])
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
])
test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
])dnl
@@ -2795,23 +3060,33 @@ AC_TRY_COMPILE([
test "$cf_cv_netbsd_menu_h" = yes && AC_DEFINE(HAVE_NETBSD_MENU_H,1,[Define to 1 if we appear to be using NetBSD menu.h])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_NO_LEAKS_OPTION version: 6 updated: 2015/04/12 15:39:00
+dnl CF_NO_LEAKS_OPTION version: 9 updated: 2021/06/13 19:45:41
dnl ------------------
dnl see CF_WITH_NO_LEAKS
+dnl
+dnl $1 = option/name
+dnl $2 = help-text
+dnl $3 = symbol to define if the option is set
+dnl $4 = additional actions to take if the option is set
AC_DEFUN([CF_NO_LEAKS_OPTION],[
AC_MSG_CHECKING(if you want to use $1 for testing)
AC_ARG_WITH($1,
[$2],
- [AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[
+ [case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_$1=yes
+ AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[
$4
])
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_$1=yes],
+ ;;
+ esac],
[with_$1=])
AC_MSG_RESULT(${with_$1:-no})
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -2824,7 +3099,7 @@ case .$with_cflags in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PATH_SYNTAX version: 16 updated: 2015/04/18 08:56:57
+dnl CF_PATH_SYNTAX version: 18 updated: 2020/12/31 18:40:20
dnl --------------
dnl Check the argument to see that it looks like a pathname. Rewrite it if it
dnl begins with one of the prefix/exec_prefix variables, and then again if the
@@ -2844,16 +3119,16 @@ case ".[$]$1" in
;;
(.[[a-zA-Z]]:[[\\/]]*) # OS/2 EMX
;;
-(.\[$]{*prefix}*|.\[$]{*dir}*)
+(.\[$]\{*prefix\}*|.\[$]\{*dir\}*)
eval $1="[$]$1"
case ".[$]$1" in
(.NONE/*)
- $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+ $1=`echo "[$]$1" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+ $1=`echo "[$]$1" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
ifelse([$2],,[AC_MSG_ERROR([expected a pathname, not \"[$]$1\"])],$2)
@@ -2861,7 +3136,7 @@ case ".[$]$1" in
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PDCURSES_X11 version: 14 updated: 2018/06/20 20:23:13
+dnl CF_PDCURSES_X11 version: 15 updated: 2021/01/02 09:31:20
dnl ---------------
dnl Configure for PDCurses' X11 library
AC_DEFUN([CF_PDCURSES_X11],[
@@ -2897,7 +3172,7 @@ char *XCursesProgramName = "test";
fi
-if test $cf_cv_lib_XCurses = yes ; then
+if test "$cf_cv_lib_XCurses" = yes ; then
AC_DEFINE(UNIX,1,[Define to 1 if using PDCurses on Unix])
AC_DEFINE(XCURSES,1,[Define to 1 if using PDCurses on Unix])
AC_CHECK_HEADER(xcurses.h, AC_DEFINE(HAVE_XCURSES,1,[Define to 1 if using PDCurses on Unix]))
@@ -2906,9 +3181,11 @@ else
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PKG_CONFIG version: 10 updated: 2015/04/26 18:06:58
+dnl CF_PKG_CONFIG version: 12 updated: 2021/10/10 20:18:09
dnl -------------
dnl Check for the package-config program, unless disabled by command-line.
+dnl
+dnl Sets $PKG_CONFIG to the pathname of the pkg-config program.
AC_DEFUN([CF_PKG_CONFIG],
[
AC_MSG_CHECKING(if you want to use pkg-config)
@@ -2918,7 +3195,7 @@ AC_ARG_WITH(pkg-config,
[cf_pkg_config=yes])
AC_MSG_RESULT($cf_pkg_config)
-case $cf_pkg_config in
+case "$cf_pkg_config" in
(no)
PKG_CONFIG=none
;;
@@ -3048,7 +3325,7 @@ AC_TRY_COMPILE([#include <stdio.h>],[
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PRG_RULES version: 1 updated: 2006/06/03 11:45:08
+dnl CF_PRG_RULES version: 2 updated: 2021/01/01 13:31:04
dnl ------------
dnl Append definitions and rules for the given programs to the subdirectory
dnl Makefiles, and the recursion rule for the top-level Makefile.
@@ -3063,10 +3340,10 @@ AC_DEFUN([CF_PRG_RULES],
[
for cf_dir in $2
do
- if test ! -d $srcdir/$cf_dir; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
- elif test -f $srcdir/$cf_dir/programs; then
- $AWK -f $1 $srcdir/$cf_dir/programs >>$cf_dir/Makefile
+ elif test -f "$srcdir/$cf_dir/programs" ; then
+ $AWK -f $1 "$srcdir/$cf_dir/programs" >>$cf_dir/Makefile
fi
done
@@ -3089,7 +3366,7 @@ CF_ACVERSION_CHECK(2.52,
CF_CC_ENV_FLAGS
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_INSTALL version: 7 updated: 2015/04/18 08:56:57
+dnl CF_PROG_INSTALL version: 10 updated: 2021/01/04 19:33:05
dnl ---------------
dnl Force $INSTALL to be an absolute-path. Otherwise, edit_man.sh and the
dnl misc/tabset install won't work properly. Usually this happens only when
@@ -3102,7 +3379,7 @@ case $INSTALL in
(*)
CF_DIRNAME(cf_dir,$INSTALL)
test -z "$cf_dir" && cf_dir=.
- INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
+ INSTALL="`cd \"$cf_dir\" && pwd`"/"`echo "$INSTALL" | sed -e 's%^.*/%%'`"
;;
esac
])dnl
@@ -3120,6 +3397,24 @@ esac
AC_SUBST(LINT_OPTS)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_REMOVE_CFLAGS version: 3 updated: 2021/09/05 17:25:40
+dnl ----------------
+dnl Remove a given option from CFLAGS/CPPFLAGS
+dnl $1 = option to remove
+dnl $2 = variable to update
+dnl $3 = nonempty to allow verbose message
+define([CF_REMOVE_CFLAGS],
+[
+cf_tmp_cflag=`echo "x$1" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x[$]$2" | sed -e 's/^.//' -e 's/[[ ]][[ ]]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[[^ ]][[^ ]]*\\)\?%%" -e 's/^[[ ]]*//' -e 's%[[ ]][[ ]]*-D% -D%g' -e 's%[[ ]][[ ]]*-I% -I%g'`
+ test "[$]$2" != "$cf_old_cflag" || break
+ ifelse([$3],,,[CF_VERBOSE(removing old option $1 from $2)])
+ $2="$cf_old_cflag"
+done
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_REMOVE_DEFINE version: 3 updated: 2010/01/09 11:05:50
dnl ----------------
dnl Remove all -U and -D options that refer to the given symbol from a list
@@ -3148,11 +3443,12 @@ CFLAGS="$cf_save_CFLAGS_$1"
CPPFLAGS="$cf_save_CPPFLAGS_$1"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_RPATH_HACK version: 11 updated: 2013/09/01 13:02:00
+dnl CF_RPATH_HACK version: 13 updated: 2021/01/03 18:30:50
dnl -------------
AC_DEFUN([CF_RPATH_HACK],
-[
-AC_REQUIRE([CF_LD_RPATH_OPT])
+[AC_REQUIRE([AC_PROG_FGREP])dnl
+AC_REQUIRE([CF_LD_RPATH_OPT])dnl
+
AC_MSG_CHECKING(for updated LDFLAGS)
if test -n "$LD_RPATH_OPT" ; then
AC_MSG_RESULT(maybe)
@@ -3165,8 +3461,8 @@ if test -n "$LD_RPATH_OPT" ; then
AC_TRY_LINK([#include <stdio.h>],
[printf("Hello");],
- [cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort | uniq`])
+ [cf_rpath_oops=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
+ cf_rpath_list=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort | uniq`])
# If we passed the link-test, but get a "not found" on a given library,
# this could be due to inept reconfiguration of gcc to make it only
@@ -3182,7 +3478,7 @@ AC_TRY_LINK([#include <stdio.h>],
/usr/pkg \
/opt/sfw
do
- if test -f $cf_rpath_dir/lib/$cf_rpath_src
+ if test -f "$cf_rpath_dir/lib/$cf_rpath_src"
then
CF_VERBOSE(...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src)
LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
@@ -3205,7 +3501,7 @@ fi
AC_SUBST(EXTRA_LDFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_RPATH_HACK_2 version: 7 updated: 2015/04/12 15:39:00
+dnl CF_RPATH_HACK_2 version: 8 updated: 2021/01/01 13:31:04
dnl ---------------
dnl Do one set of substitutions for CF_RPATH_HACK, adding an rpath option to
dnl EXTRA_LDFLAGS for each -L option found.
@@ -3221,7 +3517,7 @@ CF_VERBOSE(...checking $1 [$]$1)
cf_rpath_dst=
for cf_rpath_src in [$]$1
do
- case $cf_rpath_src in
+ case "$cf_rpath_src" in
(-L*)
# check if this refers to a directory which we will ignore
@@ -3290,7 +3586,7 @@ do
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SIGWINCH version: 2 updated: 2019/03/23 19:54:44
+dnl CF_SIGWINCH version: 6 updated: 2021/01/01 13:31:04
dnl -----------
dnl Use this macro after CF_XOPEN_SOURCE, but do not require it (not all
dnl programs need this test).
@@ -3305,7 +3601,7 @@ AC_CACHE_CHECK(if SIGWINCH is defined,cf_cv_define_sigwinch,[
AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/signal.h>
-],[int x = SIGWINCH],
+],[int x = SIGWINCH; (void)x],
[cf_cv_define_sigwinch=yes],
[AC_TRY_COMPILE([
#undef _XOPEN_SOURCE
@@ -3313,7 +3609,7 @@ AC_CACHE_CHECK(if SIGWINCH is defined,cf_cv_define_sigwinch,[
#undef _POSIX_C_SOURCE
#include <sys/types.h>
#include <sys/signal.h>
-],[int x = SIGWINCH],
+],[int x = SIGWINCH; (void)x],
[cf_cv_define_sigwinch=maybe],
[cf_cv_define_sigwinch=no])
])
@@ -3323,7 +3619,7 @@ if test "$cf_cv_define_sigwinch" = maybe ; then
AC_CACHE_CHECK(for actual SIGWINCH definition,cf_cv_fixup_sigwinch,[
cf_cv_fixup_sigwinch=unknown
cf_sigwinch=32
-while test $cf_sigwinch != 1
+while test "$cf_sigwinch" != 1
do
AC_TRY_COMPILE([
#undef _XOPEN_SOURCE
@@ -3335,11 +3631,11 @@ do
#if SIGWINCH != $cf_sigwinch
make an error
#endif
-int x = SIGWINCH],
+int x = SIGWINCH; (void)x],
[cf_cv_fixup_sigwinch=$cf_sigwinch
break])
-cf_sigwinch=`expr $cf_sigwinch - 1`
+cf_sigwinch="`expr "$cf_sigwinch" - 1`"
done
])
@@ -3349,7 +3645,7 @@ done
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SIG_ATOMIC_T version: 4 updated: 2020/01/18 12:30:44
+dnl CF_SIG_ATOMIC_T version: 5 updated: 2020/03/10 18:53:47
dnl ---------------
dnl signal handler, but there are some gcc dependencies in that recommendation.
dnl Try anyway.
@@ -3371,6 +3667,7 @@ extern $cf_type x;
$cf_type x;
static void handler(int sig)
{
+ (void)sig;
x = 5;
}],
[signal(SIGINT, handler);
@@ -3431,14 +3728,14 @@ AC_MSG_RESULT($cf_cv_sys_time_select)
test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT,1,[Define to 1 if we can include <sys/time.h> with <sys/select.h>])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_TERM_HEADER version: 4 updated: 2015/04/15 19:08:48
+dnl CF_TERM_HEADER version: 6 updated: 2021/01/02 09:31:20
dnl --------------
dnl Look for term.h, which is part of X/Open curses. It defines the interface
dnl to terminfo database. Usually it is in the same include-path as curses.h,
dnl but some packagers change this, breaking various applications.
AC_DEFUN([CF_TERM_HEADER],[
AC_CACHE_CHECK(for terminfo header, cf_cv_term_header,[
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[[^.]]*\.h$%term.h%'`
;;
@@ -3452,7 +3749,7 @@ do
AC_TRY_COMPILE([#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
#include <$cf_test>
-],[int x = auto_left_margin],[
+],[int x = auto_left_margin; (void)x],[
cf_cv_term_header="$cf_test"],[
cf_cv_term_header=unknown
])
@@ -3462,13 +3759,13 @@ done
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h])
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h])
;;
@@ -3487,21 +3784,21 @@ top_builddir=ifelse($1,,`pwd`,$1)
AC_SUBST(top_builddir)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_TPUTS_PROTO version: 3 updated: 2015/04/17 21:26:14
+dnl CF_TPUTS_PROTO version: 4 updated: 2021/01/04 19:45:09
dnl --------------
dnl Check for type of function-pointer passed to tputs. Some old
dnl implementations used functions that had different prototypes, making it
dnl hard to compile portable programs using tputs.
AC_DEFUN([CF_TPUTS_PROTO],[
CF_CURSES_FUNCS(tputs)
-if test x$cf_cv_func_tputs = xyes
+if test "x$cf_cv_func_tputs" = xyes
then
cf_done=no
for cf_arg in int char
do
for cf_ret in int void
do
- if test $cf_ret = void
+ if test "$cf_ret" = void
then
cf_return="/* nothing */"
else
@@ -3526,7 +3823,7 @@ EOF
break
])
done
- test $cf_done = yes && break
+ test "$cf_done" = yes && break
done
fi
])dnl
@@ -3547,21 +3844,21 @@ AC_DEFUN([CF_TRIM_X_LIBS],[
done
])
dnl ---------------------------------------------------------------------------
-dnl CF_TRY_PKG_CONFIG version: 5 updated: 2013/07/06 21:27:06
+dnl CF_TRY_PKG_CONFIG version: 6 updated: 2020/12/31 10:54:15
dnl -----------------
dnl This is a simple wrapper to use for pkg-config, for libraries which may be
dnl available in that form.
dnl
-dnl $1 = package name
+dnl $1 = package name, which may be a shell variable
dnl $2 = extra logic to use, if any, after updating CFLAGS and LIBS
dnl $3 = logic to use if pkg-config does not have the package
AC_DEFUN([CF_TRY_PKG_CONFIG],[
AC_REQUIRE([CF_PKG_CONFIG])
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $1; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "$1"; then
CF_VERBOSE(found package $1)
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags $1 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs $1 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "$1" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "$1" 2>/dev/null`"
CF_VERBOSE(package $1 CFLAGS: $cf_pkgconfig_incs)
CF_VERBOSE(package $1 LIBS: $cf_pkgconfig_libs)
CF_ADD_CFLAGS($cf_pkgconfig_incs)
@@ -3574,7 +3871,7 @@ else
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_TRY_XOPEN_SOURCE version: 2 updated: 2018/06/20 20:23:13
+dnl CF_TRY_XOPEN_SOURCE version: 3 updated: 2021/08/28 15:20:37
dnl -------------------
dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
dnl can define it successfully.
@@ -3609,7 +3906,7 @@ if test "$cf_cv_xopen_source" != no ; then
CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
- CF_ADD_CFLAGS($cf_temp_xopen_source)
+ CF_APPEND_CFLAGS($cf_temp_xopen_source)
fi
])
dnl ---------------------------------------------------------------------------
@@ -3622,15 +3919,21 @@ AC_DEFUN([CF_UPPER],
$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51
+dnl CF_UTF8_LIB version: 9 updated: 2021/05/19 19:35:25
dnl -----------
dnl Check for multibyte support, and if not found, utf8 compatibility library
AC_DEFUN([CF_UTF8_LIB],
[
+AC_HAVE_HEADERS(wchar.h)
AC_CACHE_CHECK(for multibyte character support,cf_cv_utf8_lib,[
cf_save_LIBS="$LIBS"
AC_TRY_LINK([
-#include <stdlib.h>],[putwc(0,0);],
+#include <stdlib.h>
+#include <stdio.h>
+#ifdef HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+],[putwc(0,0);],
[cf_cv_utf8_lib=yes],
[CF_FIND_LINKAGE([
#include <libutf8.h>],[putwc(0,0);],utf8,
@@ -3706,7 +4009,7 @@ fi
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_CURSES_DIR version: 3 updated: 2010/11/20 17:02:38
+dnl CF_WITH_CURSES_DIR version: 4 updated: 2021/01/02 19:22:58
dnl ------------------
dnl Wrapper for AC_ARG_WITH to specify directory under which to look for curses
dnl libraries.
@@ -3719,7 +4022,7 @@ AC_ARG_WITH(curses-dir,
[cf_cv_curses_dir=no])
AC_MSG_RESULT($cf_cv_curses_dir)
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
CF_PATH_SYNTAX(withval)
if test -d "$cf_cv_curses_dir"
@@ -3760,6 +4063,35 @@ if test "$with_dmalloc" = yes ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_WITH_LIB_BASENAME version: 1 updated: 2020/03/07 20:05:14
+dnl --------------------
+dnl Allow for overriding the basename of a library, i.e., the part to which
+dnl prefixes/suffixes are attached.
+dnl
+dnl $1 = variable to set
+dnl $2 = option name
+dnl $3 = default basename for library, if omitted use $2
+AC_DEFUN([CF_WITH_LIB_BASENAME],
+[
+AC_MSG_CHECKING(for desired basename for $2 library)
+AC_ARG_WITH($2-libname,
+ [ --with-$2-libname=XXX override ifelse($3,,$2,$3) basename of library],
+ [with_lib_basename=$withval],
+ [with_lib_basename=ifelse($3,,$2,$3)])
+$1="$with_lib_basename"
+
+case "x[$]$1" in
+(x|xno|xnone|xyes)
+ $1=ifelse($3,,$2,$3)
+ ;;
+(*)
+ ;;
+esac
+
+AC_MSG_RESULT([$]$1)
+AC_SUBST($1)
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_WITH_NCURSES_ETC version: 5 updated: 2016/02/20 19:23:20
dnl -------------------
dnl Use this macro for programs which use any variant of "curses", e.g.,
@@ -3823,6 +4155,23 @@ CF_NCURSES_PTHREADS($cf_cv_screen)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_WITH_SCREEN_PDCURSES version: 1 updated: 2020/08/28 16:56:27
+dnl -----------------------
+dnl Call this macro before CF_ENABLE_WARNINGS for configure scripts which use
+dnl the "--with-screen=pdcurses" selection. Doing that allows the configure
+dnl script to search for the X11/Xt header files to declare (or not) the
+dnl symbol needed to enable "const" in those header files. If that configure
+dnl option is not used, then those checks are unnecessary.
+AC_DEFUN([CF_WITH_SCREEN_PDCURSES],[
+AC_PROVIDE([AC_PATH_XTRA])
+AC_PROVIDE([AC_PATH_X])
+if test -n "$with_screen" && test "x$with_screen" = "xpdcurses"
+then
+ AC_PATH_X
+ AC_PATH_XTRA
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_WITH_VALGRIND version: 1 updated: 2006/12/14 18:00:21
dnl ----------------
AC_DEFUN([CF_WITH_VALGRIND],[
@@ -3917,7 +4266,7 @@ fi
AC_SUBST(no_x11_rgb)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_CURSES version: 14 updated: 2018/06/20 20:23:13
+dnl CF_XOPEN_CURSES version: 17 updated: 2021/07/10 12:22:27
dnl ---------------
dnl Test if we should define X/Open source for curses, needed on Digital Unix
dnl 4.x, to see the extended functions, but breaks on IRIX 6.x.
@@ -3937,13 +4286,19 @@ AC_TRY_LINK([
make an error
#endif
#endif
-#ifdef NCURSES_VERSION
+#ifdef NCURSES_WIDECHAR
+make an error /* prefer to fall-through on the second checks */
+#endif
cchar_t check;
int check2 = curs_set((int)sizeof(check));
-#endif
long x = winnstr(stdscr, "", 0);
int x1, y1;
- getbegyx(stdscr, y1, x1)],
+ (void)check2;
+ getbegyx(stdscr, y1, x1);
+ (void)x;
+ (void)y1;
+ (void)x1;
+ ],
[cf_cv_need_xopen_extension=none],
[
for cf_try_xopen_extension in _XOPEN_SOURCE_EXTENDED NCURSES_WIDECHAR
@@ -3952,19 +4307,22 @@ AC_TRY_LINK([
#define $cf_try_xopen_extension 1
#include <stdlib.h>
#include <${cf_cv_ncurses_header:-curses.h}>],[
-#ifdef NCURSES_VERSION
cchar_t check;
int check2 = curs_set((int)sizeof(check));
-#endif
long x = winnstr(stdscr, "", 0);
int x1, y1;
- getbegyx(stdscr, y1, x1)],
+ getbegyx(stdscr, y1, x1);
+ (void)check2;
+ (void)x;
+ (void)y1;
+ (void)x1;
+ ],
[cf_cv_need_xopen_extension=$cf_try_xopen_extension; break])
done
])
])
-case $cf_cv_need_xopen_extension in
+case "$cf_cv_need_xopen_extension" in
(*_*)
CF_APPEND_TEXT(CPPFLAGS,-D$cf_cv_need_xopen_extension)
;;
@@ -3972,7 +4330,7 @@ esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 55 updated: 2018/12/31 20:46:17
+dnl CF_XOPEN_SOURCE version: 59 updated: 2021/08/28 15:20:37
dnl ---------------
dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
dnl or adapt to the vendor's definitions to get equivalent functionality,
@@ -3991,7 +4349,7 @@ cf_XOPEN_SOURCE=ifelse([$1],,500,[$1])
cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2])
cf_xopen_source=
-case $host_os in
+case "$host_os" in
(aix[[4-7]]*)
cf_xopen_source="-D_ALL_SOURCE"
;;
@@ -4037,7 +4395,15 @@ case $host_os in
(netbsd*)
cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
;;
-(openbsd[[4-9]]*)
+(openbsd[[6-9]]*)
+ # OpenBSD 6.x has broken locale support, both compile-time and runtime.
+ # see https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ # Abusing the conformance level is a workaround.
+ AC_MSG_WARN(this system does not provide usable locale support)
+ cf_xopen_source="-D_BSD_SOURCE"
+ cf_XOPEN_SOURCE=700
+ ;;
+(openbsd[[4-5]]*)
# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
cf_xopen_source="-D_BSD_SOURCE"
cf_XOPEN_SOURCE=600
@@ -4069,7 +4435,7 @@ case $host_os in
esac
if test -n "$cf_xopen_source" ; then
- CF_ADD_CFLAGS($cf_xopen_source,true)
+ CF_APPEND_CFLAGS($cf_xopen_source,true)
fi
dnl In anything but the default case, we may have system-specific setting
@@ -4084,7 +4450,7 @@ make an error
[cf_XOPEN_SOURCE_set=yes],
[cf_XOPEN_SOURCE_set=no])
AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
- if test $cf_XOPEN_SOURCE_set = yes
+ if test "$cf_XOPEN_SOURCE_set" = yes
then
AC_TRY_COMPILE([#include <stdlib.h>],[
#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
@@ -4092,7 +4458,7 @@ make an error
#endif],
[cf_XOPEN_SOURCE_set_ok=yes],
[cf_XOPEN_SOURCE_set_ok=no])
- if test $cf_XOPEN_SOURCE_set_ok = no
+ if test "$cf_XOPEN_SOURCE_set_ok" = no
then
AC_MSG_WARN(_XOPEN_SOURCE is lower than requested)
fi
@@ -4103,7 +4469,7 @@ fi
fi # cf_cv_posix_visible
])
dnl ---------------------------------------------------------------------------
-dnl CF_X_ATHENA version: 23 updated: 2015/04/12 15:39:00
+dnl CF_X_ATHENA version: 24 updated: 2020/03/10 18:53:47
dnl -----------
dnl Check for Xaw (Athena) libraries
dnl
@@ -4179,7 +4545,8 @@ AC_CACHE_CHECK(for usable $cf_x_athena/Xmu package,cf_cv_xaw_compat,[
AC_TRY_LINK([
#include <X11/Xmu/CharSet.h>
],[
-int check = XmuCompareISOLatin1("big", "small")
+int check = XmuCompareISOLatin1("big", "small");
+(void)check;
],[cf_cv_xaw_compat=yes],[cf_cv_xaw_compat=no])])
if test "$cf_cv_xaw_compat" = no
@@ -4215,7 +4582,7 @@ if test -z "$cf_x_athena_lib" ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_X_ATHENA_CPPFLAGS version: 8 updated: 2020/01/16 05:21:56
+dnl CF_X_ATHENA_CPPFLAGS version: 9 updated: 2020/12/31 10:54:15
dnl --------------------
dnl Normally invoked by CF_X_ATHENA, with $1 set to the appropriate flavor of
dnl the Athena widgets, e.g., Xaw, Xaw3d, neXtaw.
@@ -4234,7 +4601,7 @@ do
if test -z "$cf_x_athena_inc" ; then
CF_SAVE_XTRA_FLAGS([CF_X_ATHENA_CPPFLAGS])
cf_test=X11/$cf_x_athena_root/SimpleMenu.h
- if test $cf_path != default ; then
+ if test "$cf_path" != default ; then
CF_APPEND_TEXT(CPPFLAGS,-I$cf_path/include)
AC_MSG_CHECKING(for $cf_test in $cf_path)
else
@@ -4249,7 +4616,7 @@ do
CF_RESTORE_XTRA_FLAGS([CF_X_ATHENA_CPPFLAGS])
if test "$cf_result" = yes ; then
test "$cf_path" = default && cf_x_athena_inc=default
- test "$cf_path" != default && cf_x_athena_inc=$cf_path/include
+ test "$cf_path" != default && cf_x_athena_inc="$cf_path/include"
break
fi
fi
@@ -4331,7 +4698,7 @@ CF_TRY_PKG_CONFIG(Xext,,[
[CF_ADD_LIB(Xext)])])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_X_TOOLKIT version: 24 updated: 2019/03/23 19:54:44
+dnl CF_X_TOOLKIT version: 26 updated: 2021/01/02 09:31:20
dnl ------------
dnl Check for X Toolkit libraries
AC_DEFUN([CF_X_TOOLKIT],
@@ -4351,6 +4718,8 @@ then
CF_TRY_PKG_CONFIG(ice,,[AC_MSG_WARN(unable to find ICE library)])
CF_TRY_PKG_CONFIG(sm,,[AC_MSG_WARN(unable to find SM library)])
CF_TRY_PKG_CONFIG(xt,,[AC_MSG_WARN(unable to find Xt library)])
+else
+ LIBS="$X_PRE_LIBS $LIBS $X_EXTRA_LIBS"
fi
cf_have_X_LIBS=no
@@ -4383,7 +4752,7 @@ AC_TRY_LINK([
AC_CACHE_CHECK(for usable X Toolkit package,cf_cv_xt_ice_compat,[
AC_TRY_LINK([
#include <X11/Shell.h>
-],[int num = IceConnectionNumber(0)
+],[int num = IceConnectionNumber(0); (void) num
],[cf_cv_xt_ice_compat=yes],[cf_cv_xt_ice_compat=no])])
if test "$cf_cv_xt_ice_compat" = no
@@ -4413,18 +4782,16 @@ AC_TRY_LINK([
AC_CHECK_FUNC(XOpenDisplay,,[
AC_CHECK_LIB(X11,XOpenDisplay,
- [CF_ADD_LIB(X11)],,
- [$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])])
+ [CF_ADD_LIB(X11)])])
AC_CHECK_FUNC(XtAppInitialize,,[
AC_CHECK_LIB(Xt, XtAppInitialize,
[AC_DEFINE(HAVE_LIBXT,1,[Define to 1 if we can compile with the Xt library])
cf_have_X_LIBS=Xt
- LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"],,
- [$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])])
+ LIBS="-lXt $LIBS"])])
])
-if test $cf_have_X_LIBS = no ; then
+if test "$cf_have_X_LIBS" = no ; then
AC_MSG_WARN(
[Unable to successfully link X Toolkit library (-lXt) with
test program. You will have to check and add the proper libraries by hand
@@ -4432,7 +4799,7 @@ to makefile.])
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF__CURSES_DATA version: 2 updated: 2020/02/08 21:00:26
+dnl CF__CURSES_DATA version: 3 updated: 2021/01/04 19:45:09
dnl ---------------
dnl Attempt to make a copy of a curses data item. This is needed in the
dnl check-data configure tests when using ncurses, because the symbol may be
@@ -4447,7 +4814,7 @@ define([CF__CURSES_DATA],[
#else
const void *$1 = &($2);
#endif
- fprintf(stderr, "testing linkage of $2:%p\n", (const void *)$1);
+ fprintf(stderr, "testing linkage of $2:%p\\n", (const void *)$1);
])dnl
dnl ---------------------------------------------------------------------------
dnl CF__CURSES_HEAD version: 2 updated: 2010/10/23 15:54:49
diff --git a/test/back_ground.c b/test/back_ground.c
new file mode 100644
index 0000000..1002824
--- /dev/null
+++ b/test/back_ground.c
@@ -0,0 +1,300 @@
+/****************************************************************************
+ * Copyright 2021 Thomas E. Dickey *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+/*
+ * $Id: back_ground.c,v 1.5 2021/02/20 12:23:21 tom Exp $
+ */
+
+#include <test.priv.h>
+
+#if USE_WIDEC_SUPPORT
+
+#define NEED_COLOR_CODE 1
+#define NEED_COLOR_NAME 1
+#include <color_name.h>
+#include <dump_window.h>
+
+static int default_bg = COLOR_BLACK;
+static int default_fg = COLOR_WHITE;
+static wchar_t wide_fill = L' ';
+
+static wchar_t
+decode_wchar(const char *value)
+{
+ long result;
+ char *next = NULL;
+ int radix = 0;
+
+ if (!strncmp(value, "U+", 2)) {
+ value += 2;
+ radix = 16;
+ }
+ result = strtol(value, &next, radix);
+ if (next == value || (next == NULL || *next != '\0')) {
+ fprintf(stderr, "decoding wchar_t: %s\n", value);
+ exit(EXIT_FAILURE);
+ }
+ return (wchar_t) result;
+}
+
+static void
+test_background(void)
+{
+ NCURSES_COLOR_T f, b;
+ int row;
+ int chr;
+ wchar_t blank[2];
+ wchar_t graphics[2];
+ cchar_t data;
+
+ if (pair_content(0, &f, &b) == ERR) {
+ printw("pair 0 contains no data\n");
+ } else {
+ printw("pair 0 contains (%d,%d)\n", (int) f, (int) b);
+ }
+ dump_window(stdscr);
+
+ blank[0] = wide_fill;
+ blank[1] = L'\0';
+
+ printw("Initializing pair 1 to red/%s\n", color_name(default_bg));
+ init_pair(1, COLOR_RED, (NCURSES_COLOR_T) default_bg);
+ setcchar(&data, blank, A_NORMAL, 1, NULL);
+ bkgrndset(&data);
+ printw("RED/BLACK\n");
+ dump_window(stdscr);
+
+ printw("Initializing pair 2 to %s/blue\n", color_name(default_fg));
+ init_pair(2, (NCURSES_COLOR_T) default_fg, COLOR_BLUE);
+ setcchar(&data, blank, A_NORMAL, 2, NULL);
+ bkgrndset(&data);
+ printw("This line should be %s/blue\n", color_name(default_fg));
+ dump_window(stdscr);
+
+ printw("Initializing pair 3 to %s/cyan (ACS_HLINE)\n", color_name(default_fg));
+ init_pair(3, (NCURSES_COLOR_T) default_fg, COLOR_CYAN);
+ printw("...and drawing a box which should be followed by lines\n");
+ graphics[0] = ACS_HLINE & A_CHARTEXT;
+ graphics[1] = L'\0';
+ setcchar(&data, graphics, A_ALTCHARSET, 3, NULL);
+ bkgrndset(&data);
+ /*
+ * Characters from vt100 line-drawing should be mapped to line-drawing,
+ * since A_ALTCHARSET is set in the background, and the character part
+ * of the background is replaced by the nonblank characters written.
+ *
+ * Characters not in the line-drawing range are usually sent as-is.
+ *
+ * With SVr4 curses it is possible to rely on this to mix uppercase text
+ * with the (lowercase) line-drawing characters. ncurses uses some of
+ * the uppercase characters for encoding thick- and double-lines.
+ */
+ row = 7;
+ mvprintw(row++, 10, "l");
+ for (chr = 0; chr < 32; ++chr)
+ AddCh(' ');
+ printw("x\n");
+ chr = 32;
+ while (chr < 128) {
+ if ((chr % 32) == 0)
+ mvprintw(row++, 10, "x");
+ AddCh((chr == 127) ? ' ' : chr);
+ if ((++chr % 32) == 0)
+ printw("x\n");
+ }
+ mvprintw(row++, 10, "m");
+ for (chr = 0; chr < 32; ++chr)
+ AddCh(' ');
+ printw("j\n");
+ dump_window(stdscr);
+
+ setcchar(&data, blank, A_NORMAL, 0, NULL);
+ bkgrndset(&data);
+ printw("Default Colors\n");
+ dump_window(stdscr);
+
+ printw("Resetting colors to pair 1\n");
+ setcchar(&data, blank, A_NORMAL, 1, NULL);
+ bkgrndset(&data);
+ printw("This line should be red/%s\n", color_name(default_bg));
+ dump_window(stdscr);
+
+ printw("Setting screen to pair 0\n");
+ setcchar(&data, blank, A_NORMAL, 0, NULL);
+ bkgrndset(&data);
+ dump_window(stdscr);
+
+ printw("Setting screen to pair 1\n");
+ setcchar(&data, blank, A_NORMAL, 1, NULL);
+ bkgrndset(&data);
+ dump_window(stdscr);
+
+ printw("Setting screen to pair 2\n");
+ setcchar(&data, blank, A_NORMAL, 2, NULL);
+ bkgrndset(&data);
+ dump_window(stdscr);
+
+ printw("Setting screen to pair 3\n");
+ setcchar(&data, blank, A_NORMAL, 3, NULL);
+ bkgrndset(&data);
+ dump_window(stdscr);
+
+ printw("Setting screen to pair 0\n");
+ setcchar(&data, blank, A_NORMAL, 0, NULL);
+ bkgrndset(&data);
+ dump_window(stdscr);
+}
+
+static void
+usage(void)
+{
+ static const char *msg[] =
+ {
+ "Usage: background [options]"
+ ,""
+ ,"Options:"
+#if HAVE_ASSUME_DEFAULT_COLORS
+ ," -a invoke assume_default_colors, repeat to use in init_pair"
+#endif
+ ," -b XXX specify background color"
+#if HAVE_USE_DEFAULT_COLORS
+ ," -d invoke use_default_colors, repeat to use in init_pair"
+#endif
+ ," -f XXX specify foreground color"
+ ," -l FILE log window-dumps to this file"
+ ," -w fill background with stipple pattern"
+ ," -W CODE fill background with this Unicode value"
+ };
+ size_t n;
+
+ for (n = 0; n < SIZEOF(msg); n++)
+ fprintf(stderr, "%s\n", msg[n]);
+
+ ExitProgram(EXIT_FAILURE);
+}
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+#if HAVE_ASSUME_DEFAULT_COLORS
+ int a_option = 0;
+#endif
+#if HAVE_USE_DEFAULT_COLORS
+ int d_option = 0;
+#endif
+ int n;
+
+ setlocale(LC_ALL, "");
+
+ while ((n = getopt(argc, argv, "ab:df:l:wW:")) != -1) {
+ switch (n) {
+#if HAVE_ASSUME_DEFAULT_COLORS
+ case 'a':
+ ++a_option;
+ break;
+#endif
+ case 'b':
+ default_bg = color_code(optarg);
+ break;
+#if HAVE_USE_DEFAULT_COLORS
+ case 'd':
+ ++d_option;
+ break;
+#endif
+ case 'f':
+ default_fg = color_code(optarg);
+ break;
+ case 'l':
+ if (!open_dump(optarg))
+ usage();
+ break;
+ case 'w':
+ wide_fill = L'\u2591';
+ break;
+ case 'W':
+ wide_fill = decode_wchar(optarg);
+ break;
+ default:
+ usage();
+ }
+ }
+#if HAVE_USE_DEFAULT_COLORS && HAVE_ASSUME_DEFAULT_COLORS
+ if (a_option && d_option) {
+ fprintf(stderr, "Use either -a or -d option, but not both\n");
+ ExitProgram(EXIT_FAILURE);
+ }
+#endif
+
+ initscr();
+ cbreak();
+ noecho();
+
+ if (has_colors()) {
+ start_color();
+
+#if HAVE_USE_DEFAULT_COLORS
+ if (d_option) {
+ printw("Using default colors...\n");
+ use_default_colors();
+ if (d_option > 1) {
+ default_fg = -1;
+ default_bg = -1;
+ }
+ }
+#endif
+#if HAVE_ASSUME_DEFAULT_COLORS
+ if (a_option) {
+ printw("Using assumed colors %s/%s...\n",
+ color_name(default_fg),
+ color_name(default_bg));
+ assume_default_colors(default_fg, default_bg);
+ if (a_option > 1) {
+ default_fg = -1;
+ default_bg = -1;
+ }
+ }
+#endif
+
+ test_background();
+
+ } else {
+ printw("This demo requires a color terminal");
+ getch();
+ }
+ endwin();
+ close_dump();
+ ExitProgram(EXIT_SUCCESS);
+}
+
+#else
+int
+main(void)
+{
+ printf("This program requires the wide-curses library\n");
+ ExitProgram(EXIT_FAILURE);
+}
+#endif /* USE_WIDEC_SUPPORT */
diff --git a/test/background.c b/test/background.c
index 391ab1a..649ffce 100644
--- a/test/background.c
+++ b/test/background.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2003-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: background.c,v 1.19 2020/02/02 23:34:34 tom Exp $
+ * $Id: background.c,v 1.20 2021/02/13 20:54:08 tom Exp $
*/
#define NEED_COLOR_CODE 1
@@ -144,6 +144,7 @@ usage(void)
," -d invoke use_default_colors, repeat to use in init_pair"
#endif
," -f XXX specify foreground color"
+ ," -l FILE log window-dumps to this file"
};
size_t n;
diff --git a/test/blue.c b/test/blue.c
index 922caab..71b758a 100644
--- a/test/blue.c
+++ b/test/blue.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -37,7 +37,7 @@
*****************************************************************************/
/*
- * $Id: blue.c,v 1.53 2020/02/02 23:34:34 tom Exp $
+ * $Id: blue.c,v 1.54 2021/03/20 16:06:15 tom Exp $
*/
#include <test.priv.h>
@@ -71,7 +71,7 @@
#define BLACK_ON_WHITE 2
#define BLUE_ON_WHITE 3
-static void die(int onsig) GCC_NORETURN;
+static GCC_NORETURN void die(int onsig);
static int deck_size = PACK_SIZE; /* initial deck */
static int deck[PACK_SIZE];
diff --git a/test/bs.6 b/test/bs.6
index 364fc8f..3bb1f10 100644
--- a/test/bs.6
+++ b/test/bs.6
@@ -1,5 +1,5 @@
.\"***************************************************************************
-.\" Copyright 2020 Thomas E. Dickey *
+.\" Copyright 2020,2021 Thomas E. Dickey *
.\" Copyright 1998,2006 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: bs.6,v 1.3 2020/02/02 23:34:34 tom Exp $
+.\" $Id: bs.6,v 1.4 2021/06/17 21:20:30 tom Exp $
.TH BATTLESHIPS 6 "Aug 23, 1989"
.SH NAME
bs \- battleships game
@@ -45,7 +45,7 @@ may be used to ignore the current position and randomly place your currently
selected ship. The `R' command will place all remaining ships randomly. The ^L
command (form feed, ASCII 12) will force a screen redraw).
.PP
-The command-line arguments control game modes.
+The command-line arguments control game modes.
.nf
-b selects a `blitz' variant
diff --git a/test/bs.c b/test/bs.c
index 0e4076f..0a074bb 100644
--- a/test/bs.c
+++ b/test/bs.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -26,7 +26,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************/
-/*
+/*
* bs.c - original author: Bruce Holloway
* salvo option by: Chuck A DeGaul
* with improved user interface, autoconfiguration and code cleanup
@@ -35,7 +35,7 @@
* v2.0 featuring strict ANSI/POSIX conformance, November 1993.
* v2.1 with ncurses mouse support, September 1995
*
- * $Id: bs.c,v 1.75 2020/02/02 23:34:34 tom Exp $
+ * $Id: bs.c,v 1.77 2021/06/17 21:11:08 tom Exp $
*/
#include <test.priv.h>
@@ -181,7 +181,7 @@ static int salvo, blitz, closepack;
#define PR (void)addstr
-static void uninitgame(int sig) GCC_NORETURN;
+static GCC_NORETURN void uninitgame(int sig);
static void
uninitgame(int sig GCC_UNUSED)
diff --git a/test/cardfile.c b/test/cardfile.c
index bf03755..78b659b 100644
--- a/test/cardfile.c
+++ b/test/cardfile.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1999-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey
*
- * $Id: cardfile.c,v 1.47 2020/02/02 23:34:34 tom Exp $
+ * $Id: cardfile.c,v 1.48 2021/03/20 18:23:14 tom Exp $
*
* File format: text beginning in column 1 is a title; other text is content.
*/
@@ -296,7 +296,7 @@ prev_card(CARD * now)
static CARD *
first_card(CARD * now)
{
- if (!isVisible(now))
+ if (now != NULL && !isVisible(now))
now = next_card(now);
return now;
}
diff --git a/test/clip_printw.c b/test/clip_printw.c
index f068457..a4242e8 100644
--- a/test/clip_printw.c
+++ b/test/clip_printw.c
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: clip_printw.c,v 1.17 2020/02/02 23:34:34 tom Exp $
+ * $Id: clip_printw.c,v 1.19 2020/05/10 00:40:23 tom Exp $
*
* demonstrate how to use printw without wrapping.
*/
@@ -331,7 +331,10 @@ test_clipping(WINDOW *win)
need = (unsigned) st.count + 1;
_nc_SPRINTF(fmt, _nc_SLIMIT(sizeof(fmt)) "%%c%%%ds%%c", st.count);
} else {
- need = (unsigned) getmaxx(win) - 1;
+ int want = getmaxx(win);
+ if (want < 10)
+ want = 10;
+ need = (unsigned) want - 1;
_nc_STRCPY(fmt, "%c%s%c", sizeof(fmt));
}
if ((buffer = typeMalloc(char, need + 1)) != 0) {
diff --git a/test/color_name.h b/test/color_name.h
index 0dadd2a..867396c 100644
--- a/test/color_name.h
+++ b/test/color_name.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2011-2012,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: color_name.h,v 1.7 2020/02/02 23:34:34 tom Exp $
+ * $Id: color_name.h,v 1.9 2021/04/24 23:25:29 tom Exp $
*/
#ifndef __COLORNAME_H
@@ -37,7 +37,7 @@
#include <test.priv.h>
#endif
-static NCURSES_CONST char *the_color_names[] =
+static NCURSES_CONST char *const the_color_names[] =
{
"black",
"red",
@@ -90,7 +90,7 @@ color_name(int color)
const char *result = 0;
if (color >= (int) SIZEOF(the_color_names)) {
- _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(result)) "%d", color);
+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "%d", color);
result = temp;
} else if (color < 0) {
result = "default";
diff --git a/test/configure b/test/configure
index 4d59647..6c68d95 100755
--- a/test/configure
+++ b/test/configure
@@ -1,7 +1,8 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by Autoconf 2.52.20200111.
+# Generated by Autoconf 2.52.20210509.
#
+# Copyright 2003-2020,2021 Thomas E. Dickey
# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -59,9 +60,9 @@ as_executable_p="test -f"
# Support unset when possible.
if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
+ as_unset="unset"
else
- as_unset=false
+ as_unset="false"
fi
# NLS nuisances.
@@ -96,13 +97,14 @@ exec 6>&1
ac_default_prefix=/usr/local
cross_compiling=no
subdirs=
-MFLAGS= MAKEFLAGS=
+MFLAGS=
+MAKEFLAGS=
SHELL=${CONFIG_SHELL-/bin/sh}
# Maximum number of lines to put in a shell here document.
# This variable seems obsolete. It should probably be removed, and
# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
+: "${ac_max_here_lines=38}"
ac_unique_file="ncurses.c"
@@ -167,7 +169,7 @@ do
# Accept the important Cygnus configure options, so we can diagnose typos.
- case $ac_option in
+ case "$ac_option" in
-bindir | --bindir | --bindi | --bind | --bin | --bi)
ac_prev=bindir ;;
@@ -208,7 +210,7 @@ do
expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid feature name: $ac_feature" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+ ac_feature=`echo "$ac_feature" | sed 's/-/_/g'`
eval "enable_$ac_feature=no" ;;
-enable-* | --enable-*)
@@ -217,8 +219,8 @@ do
expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid feature name: $ac_feature" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- case $ac_option in
+ ac_feature=`echo "$ac_feature" | sed 's/-/_/g'`
+ case "$ac_option" in
*=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
*) ac_optarg=yes ;;
esac
@@ -408,8 +410,8 @@ do
expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid package name: $ac_package" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case $ac_option in
+ ac_package=`echo "$ac_package" | sed 's/-/_/g'`
+ case "$ac_option" in
*=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
*) ac_optarg=yes ;;
esac
@@ -421,7 +423,7 @@ do
expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
{ echo "$as_me: error: invalid package name: $ac_package" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/-/_/g'`
+ ac_package=`echo "$ac_package" | sed 's/-/_/g'`
eval "with_$ac_package=no" ;;
--x)
@@ -455,21 +457,21 @@ Try \`$0 --help' for more information." >&2
{ (exit 1); exit 1; }; }
ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
eval "$ac_envvar='$ac_optarg'"
- export $ac_envvar ;;
+ export "$ac_envvar" ;;
*)
# FIXME: should be removed in autoconf 3.0.
echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ : "${build_alias=$ac_option}" "${host_alias=$ac_option}" "${target_alias=$ac_option}"
;;
esac
done
if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+ ac_option=--`echo "$ac_prev" | sed 's/_/-/g'`
{ echo "$as_me: error: missing argument to $ac_option" >&2
{ (exit 1); exit 1; }; }
fi
@@ -477,8 +479,8 @@ fi
# Be sure to have absolute paths.
for ac_var in exec_prefix prefix
do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
+ eval ac_val=$`echo "$ac_var"`
+ case "$ac_val" in
[\\/$]* | ?:[\\/]* | NONE | '' ) ;;
*) { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
{ (exit 1); exit 1; }; };;
@@ -489,8 +491,8 @@ done
for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \
localstatedir libdir includedir oldincludedir infodir mandir
do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
+ eval ac_val=$`echo "$ac_var"`
+ case "$ac_val" in
[\\/$]* | ?:[\\/]* ) ;;
*) { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
{ (exit 1); exit 1; }; };;
@@ -527,13 +529,13 @@ if test -z "$srcdir"; then
ac_confdir=`echo "$ac_prog" | sed 's%[\\/][^\\/][^\\/]*$%%'`
test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
+ if test ! -r "$srcdir/$ac_unique_file"; then
srcdir=..
fi
else
ac_srcdir_defaulted=no
fi
-if test ! -r $srcdir/$ac_unique_file; then
+if test ! -r "$srcdir/$ac_unique_file"; then
if test "$ac_srcdir_defaulted" = yes; then
{ echo "$as_me: error: cannot find sources in $ac_confdir or .." >&2
{ (exit 1); exit 1; }; }
@@ -667,6 +669,7 @@ Optional Packages:
General Options:
--disable-stripping do not strip (debug info) installed executables
+ --enable-stdnoreturn enable C11 _Noreturn feature for diagnostics
--enable-string-hacks work around bogus compiler/loader warnings
--with-pkg-config{=path} enable/disable use of pkg-config
--disable-echo do not display "compiling" commands
@@ -686,6 +689,9 @@ Curses Version-dependent Options:
--with-XawPlus link with Athena-Plus library
--with-x use the X Window System
--with-x11-rgb=FILE file containing X11 rgb information (EPREFIX/lib/X11/rgb.txt)
+ --with-form-libname=XXX override form basename of library
+ --with-menu-libname=XXX override menu basename of library
+ --with-panel-libname=XXX override panel basename of library
--disable-panel disable checks for panel functions
--disable-menu disable checks for menu functions
--disable-form disable checks for form functions
@@ -716,42 +722,43 @@ if test "$ac_init_help" = "recursive"; then
# If there are subdirs, report their specific --help.
ac_popdir=`pwd`
for ac_subdir in : $ac_subdirs_all; do test "x$ac_subdir" = x: && continue
- cd $ac_subdir
+ cd "$ac_subdir"
# A "../" for each directory in /$ac_subdir.
- ac_dots=`echo $ac_subdir |
+ ac_dots=`echo "$ac_subdir" |
sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
- case $srcdir in
+ case "$srcdir" in
.) # No --srcdir option. We are building in place.
- ac_sub_srcdir=$srcdir ;;
+ ac_sub_srcdir="$srcdir" ;;
[\\/]* | ?:[\\/]* ) # Absolute path.
- ac_sub_srcdir=$srcdir/$ac_subdir ;;
+ ac_sub_srcdir="$srcdir/$ac_subdir" ;;
*) # Relative path.
- ac_sub_srcdir=$ac_dots$srcdir/$ac_subdir ;;
+ ac_sub_srcdir="$ac_dots$srcdir/$ac_subdir" ;;
esac
# Check for guested configure; otherwise get Cygnus style configure.
- if test -f $ac_sub_srcdir/configure.gnu; then
+ if test -f "$ac_sub_srcdir/configure.gnu"; then
echo
- $SHELL $ac_sub_srcdir/configure.gnu --help=recursive
- elif test -f $ac_sub_srcdir/configure; then
+ $SHELL "$ac_sub_srcdir/configure.gnu" --help=recursive
+ elif test -f "$ac_sub_srcdir/configure"; then
echo
- $SHELL $ac_sub_srcdir/configure --help=recursive
- elif test -f $ac_sub_srcdir/configure.ac ||
- test -f $ac_sub_srcdir/configure.in; then
+ $SHELL "$ac_sub_srcdir/configure" --help=recursive
+ elif test -f "$ac_sub_srcdir/configure.ac" ||
+ test -f "$ac_sub_srcdir/configure.in"; then
echo
- $ac_configure --help
+ "$ac_configure" --help
else
echo "$as_me: WARNING: no configuration information is in $ac_subdir" >&2
fi
- cd $ac_popdir
+ cd "$ac_popdir"
done
fi
test -n "$ac_init_help" && exit 0
-if $ac_init_version; then
+if "$ac_init_version"; then
cat <<\EOF
+Copyright 2003-2020,2021 Thomas E. Dickey
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
@@ -765,7 +772,7 @@ This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by $as_me, which was
-generated by GNU Autoconf 2.52.20200111. Invocation command line was
+generated by GNU Autoconf 2.52.20210509. Invocation command line was
$ $0 $@
@@ -812,7 +819,7 @@ ac_configure_args=
ac_sep=
for ac_arg
do
- case $ac_arg in
+ case "$ac_arg" in
-no-create | --no-create | --no-creat | --no-crea | --no-cre \
| --no-cr | --no-c) ;;
-no-recursion | --no-recursion | --no-recursio | --no-recursi \
@@ -869,7 +876,7 @@ trap 'exit_status=$?
exit $exit_status
' 0
for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' "$ac_signal"
done
ac_signal=0
@@ -889,7 +896,7 @@ if test -z "$CONFIG_SITE"; then
fi
for ac_site_file in $CONFIG_SITE; do
if test -r "$ac_site_file"; then
- { echo "$as_me:892: loading site script $ac_site_file" >&5
+ { echo "$as_me:899: loading site script $ac_site_file" >&5
echo "$as_me: loading site script $ac_site_file" >&6;}
cat "$ac_site_file" >&5
. "$ac_site_file"
@@ -900,7 +907,7 @@ if test -r "$cache_file"; then
# Some versions of bash will fail to source /dev/null (special
# files actually), so we avoid doing that.
if test -f "$cache_file"; then
- { echo "$as_me:903: loading cache $cache_file" >&5
+ { echo "$as_me:910: loading cache $cache_file" >&5
echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . $cache_file;;
@@ -908,7 +915,7 @@ echo "$as_me: loading cache $cache_file" >&6;}
esac
fi
else
- { echo "$as_me:911: creating cache $cache_file" >&5
+ { echo "$as_me:918: creating cache $cache_file" >&5
echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
@@ -922,23 +929,23 @@ for ac_var in `(set) 2>&1 |
eval ac_new_set=\$ac_env_${ac_var}_set
eval ac_old_val="\$ac_cv_env_${ac_var}_value"
eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
+ case "$ac_old_set,$ac_new_set" in
set,)
- { echo "$as_me:927: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+ { echo "$as_me:934: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { echo "$as_me:931: error: \`$ac_var' was not set in the previous run" >&5
+ { echo "$as_me:938: error: \`$ac_var' was not set in the previous run" >&5
echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:937: error: \`$ac_var' has changed since the previous run:" >&5
+ { echo "$as_me:944: error: \`$ac_var' has changed since the previous run:" >&5
echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:939: former value: $ac_old_val" >&5
+ { echo "$as_me:946: former value: $ac_old_val" >&5
echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:941: current value: $ac_new_val" >&5
+ { echo "$as_me:948: current value: $ac_new_val" >&5
echo "$as_me: current value: $ac_new_val" >&2;}
ac_cache_corrupted=:
fi;;
@@ -946,7 +953,7 @@ echo "$as_me: current value: $ac_new_val" >&2;}
# Pass precious variables to config.status. It doesn't matter if
# we pass some twice (in addition to the command line arguments).
if test "$ac_new_set" = set; then
- case $ac_new_val in
+ case "$ac_new_val" in
*" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"`
ac_configure_args="$ac_configure_args '$ac_arg'"
@@ -956,35 +963,43 @@ echo "$as_me: current value: $ac_new_val" >&2;}
esac
fi
done
-if $ac_cache_corrupted; then
- { echo "$as_me:960: error: changes in the environment can compromise the build" >&5
+if "$ac_cache_corrupted"; then
+ { echo "$as_me:967: error: changes in the environment can compromise the build" >&5
echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:962: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+ { { echo "$as_me:969: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
{ (exit 1); exit 1; }; }
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
case `echo "testing\c" 2>/dev/null; echo 1,2,3`,`echo -n testing 2>/dev/null; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C= # newlines do not sed ;-) only broken shells would use this case anyway
- ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+ *c*,-n*) ECHO_N=
+ ECHO_C= # newlines do not sed ;-) only broken shells would use this case anyway
+ ECHO_T=' '
+ ;;
+ *c*,* ) ECHO_N=-n
+ ECHO_C=
+ ECHO_T=
+ ;;
+ *) ECHO_N=
+ ECHO_C='\c'
+ ECHO_T=
+ ;;
esac
echo "#! $SHELL" >conftest.sh
echo "exit 0" >>conftest.sh
chmod +x conftest.sh
-if { (echo "$as_me:983: PATH=\".;.\"; conftest.sh") >&5
+if { (echo "$as_me:998: PATH=\".;.\"; conftest.sh") >&5
(PATH=".;."; conftest.sh) 2>&5
ac_status=$?
- echo "$as_me:986: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1001: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
ac_path_separator=';'
else
ac_path_separator=:
@@ -1000,22 +1015,22 @@ test -f config.sub || ( test -f ../config.sub && cp ../config.sub ./ )
ac_aux_dir=
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
+ if test -f "$ac_dir/install-sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
break
- elif test -f $ac_dir/install.sh; then
+ elif test -f "$ac_dir/install.sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install.sh -c"
break
- elif test -f $ac_dir/shtool; then
+ elif test -f "$ac_dir/shtool"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/shtool install -c"
break
fi
done
if test -z "$ac_aux_dir"; then
- { { echo "$as_me:1018: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+ { { echo "$as_me:1033: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1025,11 +1040,11 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
# Make sure we can run config.sub.
$ac_config_sub sun4 >/dev/null 2>&1 ||
- { { echo "$as_me:1028: error: cannot run $ac_config_sub" >&5
+ { { echo "$as_me:1043: error: cannot run $ac_config_sub" >&5
echo "$as_me: error: cannot run $ac_config_sub" >&2;}
{ (exit 1); exit 1; }; }
-echo "$as_me:1032: checking build system type" >&5
+echo "$as_me:1047: checking build system type" >&5
echo $ECHO_N "checking build system type... $ECHO_C" >&6
if test "${ac_cv_build+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1038,24 +1053,24 @@ else
test -z "$ac_cv_build_alias" &&
ac_cv_build_alias=`$ac_config_guess`
test -z "$ac_cv_build_alias" &&
- { { echo "$as_me:1041: error: cannot guess build type; you must specify one" >&5
+ { { echo "$as_me:1056: error: cannot guess build type; you must specify one" >&5
echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
{ (exit 1); exit 1; }; }
-ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
- { { echo "$as_me:1045: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+ac_cv_build=`$ac_config_sub "$ac_cv_build_alias"` ||
+ { { echo "$as_me:1060: error: $ac_config_sub $ac_cv_build_alias failed." >&5
echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1050: result: $ac_cv_build" >&5
+echo "$as_me:1065: result: $ac_cv_build" >&5
echo "${ECHO_T}$ac_cv_build" >&6
build=$ac_cv_build
-build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+build_cpu=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo "$ac_cv_build" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
- echo "$as_me:1058: checking host system type" >&5
+if test -f "$srcdir/config.guess" || test -f "$ac_aux_dir/config.guess" ; then
+ echo "$as_me:1073: checking host system type" >&5
echo $ECHO_N "checking host system type... $ECHO_C" >&6
if test "${ac_cv_host+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1063,18 +1078,18 @@ else
ac_cv_host_alias=$host_alias
test -z "$ac_cv_host_alias" &&
ac_cv_host_alias=$ac_cv_build_alias
-ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
- { { echo "$as_me:1067: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+ac_cv_host=`$ac_config_sub "$ac_cv_host_alias"` ||
+ { { echo "$as_me:1082: error: $ac_config_sub $ac_cv_host_alias failed" >&5
echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1072: result: $ac_cv_host" >&5
+echo "$as_me:1087: result: $ac_cv_host" >&5
echo "${ECHO_T}$ac_cv_host" >&6
host=$ac_cv_host
-host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+host_cpu=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo "$ac_cv_host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
system_name="$host_os"
else
@@ -1095,13 +1110,13 @@ else
fi
test -z "$system_name" && system_name="$cf_cv_system_name"
-test -n "$cf_cv_system_name" && echo "$as_me:1098: result: Configuring for $cf_cv_system_name" >&5
+test -n "$cf_cv_system_name" && echo "$as_me:1113: result: Configuring for $cf_cv_system_name" >&5
echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6
if test ".$system_name" != ".$cf_cv_system_name" ; then
- echo "$as_me:1102: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
+ echo "$as_me:1117: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6
- { { echo "$as_me:1104: error: \"Please remove config.cache and try again.\"" >&5
+ { { echo "$as_me:1119: error: \"Please remove config.cache and try again.\"" >&5
echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1119,7 +1134,7 @@ _ACEOF
program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
rm conftest.sed
-echo "$as_me:1122: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "$as_me:1137: checking whether ${MAKE-make} sets \${MAKE}" >&5
echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
@@ -1139,25 +1154,25 @@ fi
rm -f conftest.make
fi
if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$as_me:1142: result: yes" >&5
+ echo "$as_me:1157: result: yes" >&5
echo "${ECHO_T}yes" >&6
SET_MAKE=
else
- echo "$as_me:1146: result: no" >&5
+ echo "$as_me:1161: result: no" >&5
echo "${ECHO_T}no" >&6
SET_MAKE="MAKE=${MAKE-make}"
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:1160: checking for $ac_word" >&5
+echo "$as_me:1175: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1172,7 +1187,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CC="${ac_tool_prefix}gcc"
-echo "$as_me:1175: found $ac_dir/$ac_word" >&5
+echo "$as_me:1190: found $ac_dir/$ac_word" >&5
break
done
@@ -1180,10 +1195,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1183: result: $CC" >&5
+ echo "$as_me:1198: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1186: result: no" >&5
+ echo "$as_me:1201: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1192,7 +1207,7 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-echo "$as_me:1195: checking for $ac_word" >&5
+echo "$as_me:1210: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1207,7 +1222,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CC="gcc"
-echo "$as_me:1210: found $ac_dir/$ac_word" >&5
+echo "$as_me:1225: found $ac_dir/$ac_word" >&5
break
done
@@ -1215,10 +1230,10 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:1218: result: $ac_ct_CC" >&5
+ echo "$as_me:1233: result: $ac_ct_CC" >&5
echo "${ECHO_T}$ac_ct_CC" >&6
else
- echo "$as_me:1221: result: no" >&5
+ echo "$as_me:1236: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1231,7 +1246,7 @@ if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:1234: checking for $ac_word" >&5
+echo "$as_me:1249: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1246,7 +1261,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CC="${ac_tool_prefix}cc"
-echo "$as_me:1249: found $ac_dir/$ac_word" >&5
+echo "$as_me:1264: found $ac_dir/$ac_word" >&5
break
done
@@ -1254,10 +1269,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1257: result: $CC" >&5
+ echo "$as_me:1272: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1260: result: no" >&5
+ echo "$as_me:1275: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1266,7 +1281,7 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-echo "$as_me:1269: checking for $ac_word" >&5
+echo "$as_me:1284: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1281,7 +1296,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CC="cc"
-echo "$as_me:1284: found $ac_dir/$ac_word" >&5
+echo "$as_me:1299: found $ac_dir/$ac_word" >&5
break
done
@@ -1289,10 +1304,10 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:1292: result: $ac_ct_CC" >&5
+ echo "$as_me:1307: result: $ac_ct_CC" >&5
echo "${ECHO_T}$ac_ct_CC" >&6
else
- echo "$as_me:1295: result: no" >&5
+ echo "$as_me:1310: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1305,7 +1320,7 @@ fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-echo "$as_me:1308: checking for $ac_word" >&5
+echo "$as_me:1323: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1325,11 +1340,11 @@ if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
continue
fi
ac_cv_prog_CC="cc"
-echo "$as_me:1328: found $ac_dir/$ac_word" >&5
+echo "$as_me:1343: found $ac_dir/$ac_word" >&5
break
done
-if test $ac_prog_rejected = yes; then
+if test "$ac_prog_rejected" = yes; then
# We found a bogon in the path, so make sure we never use it.
set dummy $ac_cv_prog_CC
shift
@@ -1347,10 +1362,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1350: result: $CC" >&5
+ echo "$as_me:1365: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1353: result: no" >&5
+ echo "$as_me:1368: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1361,7 +1376,7 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:1364: checking for $ac_word" >&5
+echo "$as_me:1379: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1376,7 +1391,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-echo "$as_me:1379: found $ac_dir/$ac_word" >&5
+echo "$as_me:1394: found $ac_dir/$ac_word" >&5
break
done
@@ -1384,10 +1399,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1387: result: $CC" >&5
+ echo "$as_me:1402: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1390: result: no" >&5
+ echo "$as_me:1405: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1400,7 +1415,7 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:1403: checking for $ac_word" >&5
+echo "$as_me:1418: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1415,7 +1430,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CC="$ac_prog"
-echo "$as_me:1418: found $ac_dir/$ac_word" >&5
+echo "$as_me:1433: found $ac_dir/$ac_word" >&5
break
done
@@ -1423,10 +1438,10 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:1426: result: $ac_ct_CC" >&5
+ echo "$as_me:1441: result: $ac_ct_CC" >&5
echo "${ECHO_T}$ac_ct_CC" >&6
else
- echo "$as_me:1429: result: no" >&5
+ echo "$as_me:1444: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1438,32 +1453,32 @@ fi
fi
-test -z "$CC" && { { echo "$as_me:1441: error: no acceptable cc found in \$PATH" >&5
+test -z "$CC" && { { echo "$as_me:1456: error: no acceptable cc found in \$PATH" >&5
echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
{ (exit 1); exit 1; }; }
# Provide some information about the compiler.
-echo "$as_me:1446:" \
+echo "$as_me:1461:" \
"checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:1449: \"$ac_compiler --version </dev/null >&5\"") >&5
+ac_compiler=`set X $ac_compile; echo "$2"`
+{ (eval echo "$as_me:1464: \"$ac_compiler --version </dev/null >&5\"") >&5
(eval $ac_compiler --version </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1452: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:1454: \"$ac_compiler -v </dev/null >&5\"") >&5
+ echo "$as_me:1467: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:1469: \"$ac_compiler -v </dev/null >&5\"") >&5
(eval $ac_compiler -v </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1457: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:1459: \"$ac_compiler -V </dev/null >&5\"") >&5
+ echo "$as_me:1472: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
+{ (eval echo "$as_me:1474: \"$ac_compiler -V </dev/null >&5\"") >&5
(eval $ac_compiler -V </dev/null >&5) 2>&5
ac_status=$?
- echo "$as_me:1462: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:1477: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
-cat >conftest.$ac_ext <<_ACEOF
-#line 1466 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 1481 "configure"
#include "confdefs.h"
int
@@ -1479,14 +1494,14 @@ ac_clean_files="$ac_clean_files a.out a.exe"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-echo "$as_me:1482: checking for C compiler default output" >&5
+echo "$as_me:1497: checking for C compiler default output" >&5
echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:1485: \"$ac_link_default\"") >&5
+ac_link_default=`echo "$ac_link" | sed 's/ -o *"conftest[^"]*"//'`
+if { (eval echo "$as_me:1500: \"$ac_link_default\"") >&5
(eval $ac_link_default) 2>&5
ac_status=$?
- echo "$as_me:1488: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1503: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
# Find the output, starting from the most likely. This scheme is
# not robust to junk in `.', hence go to wildcards (a.*) only as a last
# resort.
@@ -1507,35 +1522,35 @@ for ac_file in `ls a.exe conftest.exe 2>/dev/null;
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-{ { echo "$as_me:1511: error: C compiler cannot create executables" >&5
+cat "conftest.$ac_ext" >&5
+{ { echo "$as_me:1526: error: C compiler cannot create executables" >&5
echo "$as_me: error: C compiler cannot create executables" >&2;}
{ (exit 77); exit 77; }; }
fi
ac_exeext=$ac_cv_exeext
-echo "$as_me:1517: result: $ac_file" >&5
+echo "$as_me:1532: result: $ac_file" >&5
echo "${ECHO_T}$ac_file" >&6
# Check the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-echo "$as_me:1522: checking whether the C compiler works" >&5
+echo "$as_me:1537: checking whether the C compiler works" >&5
echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
# If not cross compiling, check that we can run a simple program.
if test "$cross_compiling" != yes; then
if { ac_try='./$ac_file'
- { (eval echo "$as_me:1528: \"$ac_try\"") >&5
+ { (eval echo "$as_me:1543: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1531: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1546: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cross_compiling=no
else
if test "$cross_compiling" = maybe; then
cross_compiling=yes
else
- { { echo "$as_me:1538: error: cannot run C compiled programs.
+ { { echo "$as_me:1553: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'." >&5
echo "$as_me: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'." >&2;}
@@ -1543,25 +1558,25 @@ If you meant to cross compile, use \`--host'." >&2;}
fi
fi
fi
-echo "$as_me:1546: result: yes" >&5
+echo "$as_me:1561: result: yes" >&5
echo "${ECHO_T}yes" >&6
-rm -f a.out a.exe conftest$ac_cv_exeext
+rm -f a.out a.exe "conftest$ac_cv_exeext"
ac_clean_files=$ac_clean_files_save
# Check the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-echo "$as_me:1553: checking whether we are cross compiling" >&5
+echo "$as_me:1568: checking whether we are cross compiling" >&5
echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:1555: result: $cross_compiling" >&5
+echo "$as_me:1570: result: $cross_compiling" >&5
echo "${ECHO_T}$cross_compiling" >&6
-echo "$as_me:1558: checking for executable suffix" >&5
+echo "$as_me:1573: checking for executable suffix" >&5
echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
-if { (eval echo "$as_me:1560: \"$ac_link\"") >&5
+if { (eval echo "$as_me:1575: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:1563: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1578: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -1576,25 +1591,25 @@ for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
esac
done
else
- { { echo "$as_me:1579: error: cannot compute EXEEXT: cannot compile and link" >&5
+ { { echo "$as_me:1594: error: cannot compute EXEEXT: cannot compile and link" >&5
echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
{ (exit 1); exit 1; }; }
fi
-rm -f conftest$ac_cv_exeext
-echo "$as_me:1585: result: $ac_cv_exeext" >&5
+rm -f "conftest$ac_cv_exeext"
+echo "$as_me:1600: result: $ac_cv_exeext" >&5
echo "${ECHO_T}$ac_cv_exeext" >&6
-rm -f conftest.$ac_ext
+rm -f "conftest.$ac_ext"
EXEEXT=$ac_cv_exeext
ac_exeext=$EXEEXT
-echo "$as_me:1591: checking for object suffix" >&5
+echo "$as_me:1606: checking for object suffix" >&5
echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
if test "${ac_cv_objext+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1597 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1612 "configure"
#include "confdefs.h"
int
@@ -1606,11 +1621,11 @@ main (void)
}
_ACEOF
rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:1609: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1624: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1612: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ echo "$as_me:1627: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
case $ac_file in
*.$ac_ext | *.xcoff | *.tds | *.d | *.dbg | *.pdb | *.xSYM | *.map | *.inf ) ;;
@@ -1620,25 +1635,25 @@ if { (eval echo "$as_me:1609: \"$ac_compile\"") >&5
done
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-{ { echo "$as_me:1624: error: cannot compute OBJEXT: cannot compile" >&5
+cat "conftest.$ac_ext" >&5
+{ { echo "$as_me:1639: error: cannot compute OBJEXT: cannot compile" >&5
echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
{ (exit 1); exit 1; }; }
fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
+rm -f "conftest.$ac_cv_objext" "conftest.$ac_ext"
fi
-echo "$as_me:1631: result: $ac_cv_objext" >&5
+echo "$as_me:1646: result: $ac_cv_objext" >&5
echo "${ECHO_T}$ac_cv_objext" >&6
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-echo "$as_me:1635: checking whether we are using the GNU C compiler" >&5
+echo "$as_me:1650: checking whether we are using the GNU C compiler" >&5
echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
if test "${ac_cv_c_compiler_gnu+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1641 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1656 "configure"
#include "confdefs.h"
int
@@ -1652,41 +1667,41 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1656: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1671: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1659: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1662: \"$ac_try\"") >&5
+ echo "$as_me:1674: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1677: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1665: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1680: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_compiler_gnu=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_compiler_gnu=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-echo "$as_me:1677: result: $ac_cv_c_compiler_gnu" >&5
+echo "$as_me:1692: result: $ac_cv_c_compiler_gnu" >&5
echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
GCC=`test $ac_compiler_gnu = yes && echo yes`
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
CFLAGS="-g"
-echo "$as_me:1683: checking whether $CC accepts -g" >&5
+echo "$as_me:1698: checking whether $CC accepts -g" >&5
echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
if test "${ac_cv_prog_cc_g+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 1689 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1704 "configure"
#include "confdefs.h"
int
@@ -1697,27 +1712,27 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1701: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1716: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1704: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1707: \"$ac_try\"") >&5
+ echo "$as_me:1719: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1722: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1710: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1725: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_prog_cc_g=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_prog_cc_g=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:1720: result: $ac_cv_prog_cc_g" >&5
+echo "$as_me:1735: result: $ac_cv_prog_cc_g" >&5
echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
@@ -1738,23 +1753,23 @@ fi
# in C++ we need to declare it. In case someone uses the same compiler
# for both compiling C and C++ we need to have the C++ compiler decide
# the declaration of exit, since it's the most demanding environment.
-cat >conftest.$ac_ext <<_ACEOF
+cat >"conftest.$ac_ext" <<_ACEOF
#ifndef __cplusplus
choke me
#endif
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1747: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1762: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1750: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1753: \"$ac_try\"") >&5
+ echo "$as_me:1765: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1768: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1756: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1771: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
for ac_declaration in \
''\
'#include <stdlib.h>' \
@@ -1764,8 +1779,8 @@ if { (eval echo "$as_me:1747: \"$ac_compile\"") >&5
'extern "C" void exit (int);' \
'void exit (int);'
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 1768 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1783 "configure"
#include "confdefs.h"
#include <stdlib.h>
$ac_declaration
@@ -1777,27 +1792,27 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1781: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1796: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1784: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1787: \"$ac_try\"") >&5
+ echo "$as_me:1799: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1802: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1790: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1805: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
continue
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-#line 1800 "configure"
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1815 "configure"
#include "confdefs.h"
$ac_declaration
int
@@ -1808,65 +1823,65 @@ exit (42);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1812: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1827: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1815: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1818: \"$ac_try\"") >&5
+ echo "$as_me:1830: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1833: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1821: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1836: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
rm -rf conftest*
if test -n "$ac_declaration"; then
echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
+ echo "$ac_declaration" >>confdefs.h
echo '#endif' >>confdefs.h
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
GCC_VERSION=none
if test "$GCC" = yes ; then
- echo "$as_me:1851: checking version of $CC" >&5
+ echo "$as_me:1866: checking version of $CC" >&5
echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
test -z "$GCC_VERSION" && GCC_VERSION=unknown
- echo "$as_me:1855: result: $GCC_VERSION" >&5
+ echo "$as_me:1870: result: $GCC_VERSION" >&5
echo "${ECHO_T}$GCC_VERSION" >&6
fi
INTEL_COMPILER=no
if test "$GCC" = yes ; then
- case $host_os in
+ case "$host_os" in
(linux*|gnu*)
- echo "$as_me:1864: checking if this is really Intel C compiler" >&5
+ echo "$as_me:1879: checking if this is really Intel C compiler" >&5
echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -no-gcc"
- cat >conftest.$ac_ext <<_ACEOF
-#line 1869 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1884 "configure"
#include "confdefs.h"
int
@@ -1882,28 +1897,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1886: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1901: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1889: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1892: \"$ac_try\"") >&5
+ echo "$as_me:1904: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1907: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1895: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1910: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
INTEL_COMPILER=yes
cf_save_CFLAGS="$cf_save_CFLAGS -we147"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
- echo "$as_me:1906: result: $INTEL_COMPILER" >&5
+ echo "$as_me:1921: result: $INTEL_COMPILER" >&5
echo "${ECHO_T}$INTEL_COMPILER" >&6
;;
esac
@@ -1912,12 +1927,11 @@ fi
CLANG_COMPILER=no
if test "$GCC" = yes ; then
- echo "$as_me:1915: checking if this is really Clang C compiler" >&5
+ echo "$as_me:1930: checking if this is really Clang C compiler" >&5
echo $ECHO_N "checking if this is really Clang C compiler... $ECHO_C" >&6
cf_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Qunused-arguments"
- cat >conftest.$ac_ext <<_ACEOF
-#line 1920 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 1934 "configure"
#include "confdefs.h"
int
@@ -1933,40 +1947,116 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1937: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:1951: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:1940: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:1943: \"$ac_try\"") >&5
+ echo "$as_me:1954: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:1957: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:1946: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:1960: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
CLANG_COMPILER=yes
-cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
- echo "$as_me:1957: result: $CLANG_COMPILER" >&5
+ echo "$as_me:1970: result: $CLANG_COMPILER" >&5
echo "${ECHO_T}$CLANG_COMPILER" >&6
fi
-echo "$as_me:1961: checking for $CC option to accept ANSI C" >&5
+CLANG_VERSION=none
+
+if test "x$CLANG_COMPILER" = "xyes" ; then
+ case "$CC" in
+ (c[1-9][0-9]|*/c[1-9][0-9])
+ { echo "$as_me:1979: WARNING: replacing broken compiler alias $CC" >&5
+echo "$as_me: WARNING: replacing broken compiler alias $CC" >&2;}
+ CFLAGS="$CFLAGS -std=`echo "$CC" | sed -e 's%.*/%%'`"
+ CC=clang
+ ;;
+ esac
+
+ echo "$as_me:1986: checking version of $CC" >&5
+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
+ CLANG_VERSION="`$CC --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(CLANG[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
+ test -z "$CLANG_VERSION" && CLANG_VERSION=unknown
+ echo "$as_me:1990: result: $CLANG_VERSION" >&5
+echo "${ECHO_T}$CLANG_VERSION" >&6
+
+ for cf_clang_opt in \
+ -Qunused-arguments \
+ -Wno-error=implicit-function-declaration
+ do
+ echo "$as_me:1997: checking if option $cf_clang_opt works" >&5
+echo $ECHO_N "checking if option $cf_clang_opt works... $ECHO_C" >&6
+ cf_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $cf_clang_opt"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2002 "configure"
+#include "confdefs.h"
+
+ #include <stdio.h>
+int
+main (void)
+{
+
+ printf("hello!\\n");
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:2016: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:2019: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:2022: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:2025: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+
+ cf_clang_optok=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+
+ cf_clang_optok=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:2036: result: $cf_clang_optok" >&5
+echo "${ECHO_T}$cf_clang_optok" >&6
+ CFLAGS="$cf_save_CFLAGS"
+ if test "$cf_clang_optok" = yes; then
+ test -n "$verbose" && echo " adding option $cf_clang_opt" 1>&6
+
+echo "${as_me:-configure}:2042: testing adding option $cf_clang_opt ..." 1>&5
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_clang_opt"
+
+ fi
+ done
+fi
+
+echo "$as_me:2051: checking for $CC option to accept ANSI C" >&5
echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
if test "${ac_cv_prog_cc_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_cv_prog_cc_stdc=no
ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-#line 1969 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 2059 "configure"
#include "confdefs.h"
#include <stdarg.h>
#include <stdio.h>
@@ -2014,51 +2104,51 @@ _ACEOF
for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2018: \"$ac_compile\"") >&5
+ rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2108: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2021: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2024: \"$ac_try\"") >&5
+ echo "$as_me:2111: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2114: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2027: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2117: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_prog_cc_stdc=$ac_arg
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext
+rm -f "conftest.$ac_objext"
done
-rm -f conftest.$ac_ext conftest.$ac_objext
+rm -f "conftest.$ac_ext" "conftest.$ac_objext"
CC=$ac_save_CC
fi
case "x$ac_cv_prog_cc_stdc" in
x|xno)
- echo "$as_me:2044: result: none needed" >&5
+ echo "$as_me:2134: result: none needed" >&5
echo "${ECHO_T}none needed" >&6 ;;
*)
- echo "$as_me:2047: result: $ac_cv_prog_cc_stdc" >&5
+ echo "$as_me:2137: result: $ac_cv_prog_cc_stdc" >&5
echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
CC="$CC $ac_cv_prog_cc_stdc" ;;
esac
# This should have been defined by AC_PROG_CC
-: ${CC:=cc}
+: "${CC:=cc}"
-echo "$as_me:2055: checking \$CFLAGS variable" >&5
+echo "$as_me:2145: checking \$CFLAGS variable" >&5
echo $ECHO_N "checking \$CFLAGS variable... $ECHO_C" >&6
case "x$CFLAGS" in
(*-[IUD]*)
- echo "$as_me:2059: result: broken" >&5
+ echo "$as_me:2149: result: broken" >&5
echo "${ECHO_T}broken" >&6
- { echo "$as_me:2061: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&5
+ { echo "$as_me:2151: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&5
echo "$as_me: WARNING: your environment uses the CFLAGS variable to hold CPPFLAGS options" >&2;}
cf_flags="$CFLAGS"
CFLAGS=
@@ -2072,19 +2162,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_arg
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -2103,7 +2193,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -2133,7 +2223,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -2166,18 +2256,18 @@ fi
done
;;
(*)
- echo "$as_me:2169: result: ok" >&5
+ echo "$as_me:2259: result: ok" >&5
echo "${ECHO_T}ok" >&6
;;
esac
-echo "$as_me:2174: checking \$CC variable" >&5
+echo "$as_me:2264: checking \$CC variable" >&5
echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6
case "$CC" in
(*[\ \ ]-*)
- echo "$as_me:2178: result: broken" >&5
+ echo "$as_me:2268: result: broken" >&5
echo "${ECHO_T}broken" >&6
- { echo "$as_me:2180: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
+ { echo "$as_me:2270: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
echo "$as_me: WARNING: your environment uses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
# humor him...
cf_prog=`echo "$CC" | sed -e 's/ / /g' -e 's/[ ]* / /g' -e 's/[ ]*[ ]-[^ ].*//'`
@@ -2195,19 +2285,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_arg
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -2226,7 +2316,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -2256,7 +2346,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -2294,32 +2384,32 @@ fi
done
test -n "$verbose" && echo " resulting CC: '$CC'" 1>&6
-echo "${as_me:-configure}:2297: testing resulting CC: '$CC' ..." 1>&5
+echo "${as_me:-configure}:2387: testing resulting CC: '$CC' ..." 1>&5
test -n "$verbose" && echo " resulting CFLAGS: '$CFLAGS'" 1>&6
-echo "${as_me:-configure}:2301: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5
+echo "${as_me:-configure}:2391: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5
test -n "$verbose" && echo " resulting CPPFLAGS: '$CPPFLAGS'" 1>&6
-echo "${as_me:-configure}:2305: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5
+echo "${as_me:-configure}:2395: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5
;;
(*)
- echo "$as_me:2309: result: ok" >&5
+ echo "$as_me:2399: result: ok" >&5
echo "${ECHO_T}ok" >&6
;;
esac
-echo "$as_me:2314: checking for inline" >&5
+echo "$as_me:2404: checking for inline" >&5
echo $ECHO_N "checking for inline... $ECHO_C" >&6
if test "${ac_cv_c_inline+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_cv_c_inline=no
for ac_kw in inline __inline__ __inline; do
- cat >conftest.$ac_ext <<_ACEOF
-#line 2322 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2412 "configure"
#include "confdefs.h"
#ifndef __cplusplus
static $ac_kw int static_foo () {return 0; }
@@ -2327,28 +2417,28 @@ $ac_kw int foo () {return 0; }
#endif
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2331: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:2421: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:2334: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:2337: \"$ac_try\"") >&5
+ echo "$as_me:2424: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:2427: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:2340: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:2430: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_c_inline=$ac_kw; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:2351: result: $ac_cv_c_inline" >&5
+echo "$as_me:2441: result: $ac_cv_c_inline" >&5
echo "${ECHO_T}$ac_cv_c_inline" >&6
case $ac_cv_c_inline in
inline | yes) ;;
@@ -2363,13 +2453,111 @@ EOF
;;
esac
+for ac_prog in ggrep grep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:2460: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_GREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$GREP"; then
+ ac_cv_prog_GREP="$GREP" # Let the user override the test.
+else
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_GREP="$ac_prog"
+echo "$as_me:2475: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+GREP=$ac_cv_prog_GREP
+if test -n "$GREP"; then
+ echo "$as_me:2483: result: $GREP" >&5
+echo "${ECHO_T}$GREP" >&6
+else
+ echo "$as_me:2486: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$GREP" && break
+done
+test -n "$GREP" || GREP=": "
+
+echo "$as_me:2494: checking for egrep" >&5
+echo $ECHO_N "checking for egrep... $ECHO_C" >&6
+if test "${ac_cv_path_EGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ for ac_prog in gegrep egrep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:2506: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_EGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $EGREP in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_EGREP="$EGREP" # Let the user override the test with a path.
+ ;;
+ *)
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ if $as_executable_p "$ac_dir/$ac_word"; then
+ ac_cv_path_EGREP="$ac_dir/$ac_word"
+ echo "$as_me:2523: found $ac_dir/$ac_word" >&5
+ break
+fi
+done
+
+ ;;
+esac
+fi
+EGREP=$ac_cv_path_EGREP
+
+if test -n "$EGREP"; then
+ echo "$as_me:2534: result: $EGREP" >&5
+echo "${ECHO_T}$EGREP" >&6
+else
+ echo "$as_me:2537: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$EGREP" && break
+done
+test -n "$EGREP" || EGREP=": "
+
+ test "x$ac_cv_path_EGREP" = "x:" && { { echo "$as_me:2545: error: cannot find workable egrep" >&5
+echo "$as_me: error: cannot find workable egrep" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+fi
+echo "$as_me:2550: result: $ac_cv_path_EGREP" >&5
+echo "${ECHO_T}$ac_cv_path_EGREP" >&6
+ EGREP="$ac_cv_path_EGREP"
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
-echo "$as_me:2372: checking how to run the C preprocessor" >&5
+ac_main_return="return"
+echo "$as_me:2560: checking how to run the C preprocessor" >&5
echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
@@ -2389,20 +2577,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2393 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2581 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:2398: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2586: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2404: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2592: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2415,27 +2603,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2427 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2615 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:2431: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2619: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2437: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2625: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2449,16 +2637,16 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
break
fi
@@ -2471,7 +2659,7 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-echo "$as_me:2474: result: $CPP" >&5
+echo "$as_me:2662: result: $CPP" >&5
echo "${ECHO_T}$CPP" >&6
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
@@ -2480,20 +2668,20 @@ do
# with a fresh cross-compiler works.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2484 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2672 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax error
_ACEOF
-if { (eval echo "$as_me:2489: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2677: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2495: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2683: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2506,27 +2694,27 @@ if test -z "$ac_cpp_err"; then
:
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Broken: fails on valid input.
continue
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
# OK, works on sane cases. Now check whether non-existent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-#line 2518 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 2706 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:2522: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:2710: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:2528: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:2716: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -2540,36 +2728,36 @@ if test -z "$ac_cpp_err"; then
continue
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
# Passes both tests.
ac_preproc_ok=:
break
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if $ac_preproc_ok; then
:
else
- { { echo "$as_me:2556: error: C preprocessor \"$CPP\" fails sanity check" >&5
+ { { echo "$as_me:2744: error: C preprocessor \"$CPP\" fails sanity check" >&5
echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
{ (exit 1); exit 1; }; }
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS "conftest.$ac_ext" >&5'
+ac_link='$CC -o "conftest$ac_exeext" $CFLAGS $CPPFLAGS $LDFLAGS "conftest.$ac_ext" $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_main_return=return
+ac_main_return="return"
for ac_prog in mawk gawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:2572: checking for $ac_word" >&5
+echo "$as_me:2760: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_AWK+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2584,7 +2772,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_AWK="$ac_prog"
-echo "$as_me:2587: found $ac_dir/$ac_word" >&5
+echo "$as_me:2775: found $ac_dir/$ac_word" >&5
break
done
@@ -2592,10 +2780,10 @@ fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- echo "$as_me:2595: result: $AWK" >&5
+ echo "$as_me:2783: result: $AWK" >&5
echo "${ECHO_T}$AWK" >&6
else
- echo "$as_me:2598: result: no" >&5
+ echo "$as_me:2786: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2614,7 +2802,7 @@ done
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:2617: checking for a BSD compatible install" >&5
+echo "$as_me:2805: checking for a BSD compatible install" >&5
echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
if test -z "$INSTALL"; then
if test "${ac_cv_path_install+set}" = set; then
@@ -2663,7 +2851,7 @@ fi
INSTALL=$ac_install_sh
fi
fi
-echo "$as_me:2666: result: $INSTALL" >&5
+echo "$as_me:2854: result: $INSTALL" >&5
echo "${ECHO_T}$INSTALL" >&6
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -2678,13 +2866,13 @@ case $INSTALL in
(/*)
;;
(*)
- cf_dir=`echo $INSTALL | sed -e 's%/[^/]*$%%'`
+ cf_dir=`echo "$INSTALL" | sed -e 's%/[^/]*$%%'`
test -z "$cf_dir" && cf_dir=.
- INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
+ INSTALL="`cd \"$cf_dir\" && pwd`"/"`echo "$INSTALL" | sed -e 's%^.*/%%'`"
;;
esac
-echo "$as_me:2687: checking if you want to install stripped executables" >&5
+echo "$as_me:2875: checking if you want to install stripped executables" >&5
echo $ECHO_N "checking if you want to install stripped executables... $ECHO_C" >&6
# Check whether --enable-stripping or --disable-stripping was given.
@@ -2692,33 +2880,33 @@ if test "${enable_stripping+set}" = set; then
enableval="$enable_stripping"
test "$enableval" != no && enableval=yes
if test "$enableval" != "yes" ; then
- with_stripping=no
+ enable_stripping=no
else
- with_stripping=yes
+ enable_stripping=yes
fi
else
enableval=yes
- with_stripping=yes
+ enable_stripping=yes
fi;
-echo "$as_me:2704: result: $with_stripping" >&5
-echo "${ECHO_T}$with_stripping" >&6
+echo "$as_me:2892: result: $enable_stripping" >&5
+echo "${ECHO_T}$enable_stripping" >&6
-if test "$with_stripping" = yes
+if test "$enable_stripping" = yes
then
INSTALL_OPT_S="-s"
else
INSTALL_OPT_S=
fi
-: ${INSTALL:=install}
-echo "$as_me:2715: checking if install accepts -p option" >&5
+: "${INSTALL:=install}"
+echo "$as_me:2903: checking if install accepts -p option" >&5
echo $ECHO_N "checking if install accepts -p option... $ECHO_C" >&6
if test "${cf_cv_install_p+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- rm -rf conftest*
+ rm -rf ./conftest*
date >conftest.in
mkdir conftest.out
sleep 3
@@ -2740,13 +2928,13 @@ else
else
cf_cv_install_p=no
fi
- rm -rf conftest*
+ rm -rf ./conftest*
fi
-echo "$as_me:2746: result: $cf_cv_install_p" >&5
+echo "$as_me:2934: result: $cf_cv_install_p" >&5
echo "${ECHO_T}$cf_cv_install_p" >&6
-echo "$as_me:2749: checking if install needs to be told about ownership" >&5
+echo "$as_me:2937: checking if install needs to be told about ownership" >&5
echo $ECHO_N "checking if install needs to be told about ownership... $ECHO_C" >&6
case `$ac_config_guess` in
(*minix)
@@ -2757,11 +2945,11 @@ case `$ac_config_guess` in
;;
esac
-echo "$as_me:2760: result: $with_install_o" >&5
+echo "$as_me:2948: result: $with_install_o" >&5
echo "${ECHO_T}$with_install_o" >&6
if test "x$with_install_o" = xyes
then
- INSTALL_OPT_O=`id root|sed -e 's/uid=[0-9]*(/ -o /' -e 's/gid=[0-9]*(/ -g /' -e 's/ [^=[:space:]][^=[:space:]]*=.*/ /' -e 's/)//g'`
+ INSTALL_OPT_O="`id root|sed -e 's/uid=[0-9]*(/ -o /' -e 's/gid=[0-9]*(/ -g /' -e 's/ [^=[:space:]][^=[:space:]]*=.*/ /' -e 's/)//g'`"
else
INSTALL_OPT_O=
fi
@@ -2770,7 +2958,7 @@ for ac_prog in lint cppcheck splint
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:2773: checking for $ac_word" >&5
+echo "$as_me:2961: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_LINT+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2785,7 +2973,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_LINT="$ac_prog"
-echo "$as_me:2788: found $ac_dir/$ac_word" >&5
+echo "$as_me:2976: found $ac_dir/$ac_word" >&5
break
done
@@ -2793,10 +2981,10 @@ fi
fi
LINT=$ac_cv_prog_LINT
if test -n "$LINT"; then
- echo "$as_me:2796: result: $LINT" >&5
+ echo "$as_me:2984: result: $LINT" >&5
echo "${ECHO_T}$LINT" >&6
else
- echo "$as_me:2799: result: no" >&5
+ echo "$as_me:2987: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2809,15 +2997,77 @@ case "x$LINT" in
;;
esac
-echo "$as_me:2812: checking if filesystem supports mixed-case filenames" >&5
+echo "$as_me:3000: checking for \".PHONY\" make-support" >&5
+echo $ECHO_N "checking for \".PHONY\" make-support... $ECHO_C" >&6
+if test "${cf_cv_make_PHONY+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+ rm -rf conftest*
+ (
+ mkdir conftest || exit 1
+ cd conftest
+ cat >makefile <<'CF_EOF'
+.PHONY: always
+DATA=0
+always: always.out
+ @echo "** making $@ $(DATA)"
+once: once.out
+ @echo "** making $@ $(DATA)"
+always.out:
+ @echo "** making $@ $(DATA)"
+ echo $(DATA) > $@
+once.out:
+ @echo "** making $@ $(DATA)"
+ echo $(DATA) > $@
+CF_EOF
+ for cf_data in 1 2 3
+ do
+ ${MAKE:-make} always DATA=$cf_data
+ ${MAKE:-make} once DATA=$cf_data
+ ${MAKE:-make} -t always once
+ if test -f always ; then
+ echo "no (case 1)" > ../conftest.tmp
+ elif test ! -f always.out ; then
+ echo "no (case 2)" > ../conftest.tmp
+ elif test ! -f once.out ; then
+ echo "no (case 3)" > ../conftest.tmp
+ elif ! cmp -s always.out once.out ; then
+ echo "no (case 4)" > ../conftest.tmp
+ diff always.out once.out
+ else
+ cf_check="`cat always.out`"
+ if test "x$cf_check" != "x$cf_data" ; then
+ echo "no (case 5)" > ../conftest.tmp
+ else
+ echo yes > ../conftest.tmp
+ rm -f ./*.out
+ continue
+ fi
+ fi
+ break
+ done
+ ) >&5 2>&1
+ cf_cv_make_PHONY="`cat conftest.tmp`"
+ rm -rf conftest*
+
+fi
+echo "$as_me:3055: result: $cf_cv_make_PHONY" >&5
+echo "${ECHO_T}$cf_cv_make_PHONY" >&6
+MAKE_NO_PHONY="#"
+MAKE_PHONY="#"
+test "x$cf_cv_make_PHONY" = xyes && MAKE_PHONY=
+test "x$cf_cv_make_PHONY" != xyes && MAKE_NO_PHONY=
+
+echo "$as_me:3062: checking if filesystem supports mixed-case filenames" >&5
echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6
if test "${cf_cv_mixedcase+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test "$cross_compiling" = yes ; then
- case $target_alias in
- (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*)
+ case "$target_alias" in
+ (*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*|darwin*)
cf_cv_mixedcase=no
;;
(*)
@@ -2836,7 +3086,7 @@ else
fi
fi
-echo "$as_me:2839: result: $cf_cv_mixedcase" >&5
+echo "$as_me:3089: result: $cf_cv_mixedcase" >&5
echo "${ECHO_T}$cf_cv_mixedcase" >&6
test "$cf_cv_mixedcase" = yes &&
cat >>confdefs.h <<\EOF
@@ -2847,7 +3097,7 @@ for ac_prog in exctags ctags
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:2850: checking for $ac_word" >&5
+echo "$as_me:3100: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CTAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2862,7 +3112,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CTAGS="$ac_prog"
-echo "$as_me:2865: found $ac_dir/$ac_word" >&5
+echo "$as_me:3115: found $ac_dir/$ac_word" >&5
break
done
@@ -2870,10 +3120,10 @@ fi
fi
CTAGS=$ac_cv_prog_CTAGS
if test -n "$CTAGS"; then
- echo "$as_me:2873: result: $CTAGS" >&5
+ echo "$as_me:3123: result: $CTAGS" >&5
echo "${ECHO_T}$CTAGS" >&6
else
- echo "$as_me:2876: result: no" >&5
+ echo "$as_me:3126: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2884,7 +3134,7 @@ for ac_prog in exetags etags
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:2887: checking for $ac_word" >&5
+echo "$as_me:3137: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ETAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2899,7 +3149,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ETAGS="$ac_prog"
-echo "$as_me:2902: found $ac_dir/$ac_word" >&5
+echo "$as_me:3152: found $ac_dir/$ac_word" >&5
break
done
@@ -2907,10 +3157,10 @@ fi
fi
ETAGS=$ac_cv_prog_ETAGS
if test -n "$ETAGS"; then
- echo "$as_me:2910: result: $ETAGS" >&5
+ echo "$as_me:3160: result: $ETAGS" >&5
echo "${ECHO_T}$ETAGS" >&6
else
- echo "$as_me:2913: result: no" >&5
+ echo "$as_me:3163: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -2919,7 +3169,7 @@ done
# Extract the first word of "${CTAGS:-ctags}", so it can be a program name with args.
set dummy ${CTAGS:-ctags}; ac_word=$2
-echo "$as_me:2922: checking for $ac_word" >&5
+echo "$as_me:3172: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2934,7 +3184,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_MAKE_LOWER_TAGS="yes"
-echo "$as_me:2937: found $ac_dir/$ac_word" >&5
+echo "$as_me:3187: found $ac_dir/$ac_word" >&5
break
done
@@ -2943,17 +3193,17 @@ fi
fi
MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
if test -n "$MAKE_LOWER_TAGS"; then
- echo "$as_me:2946: result: $MAKE_LOWER_TAGS" >&5
+ echo "$as_me:3196: result: $MAKE_LOWER_TAGS" >&5
echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
else
- echo "$as_me:2949: result: no" >&5
+ echo "$as_me:3199: result: no" >&5
echo "${ECHO_T}no" >&6
fi
if test "$cf_cv_mixedcase" = yes ; then
# Extract the first word of "${ETAGS:-etags}", so it can be a program name with args.
set dummy ${ETAGS:-etags}; ac_word=$2
-echo "$as_me:2956: checking for $ac_word" >&5
+echo "$as_me:3206: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2968,7 +3218,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_MAKE_UPPER_TAGS="yes"
-echo "$as_me:2971: found $ac_dir/$ac_word" >&5
+echo "$as_me:3221: found $ac_dir/$ac_word" >&5
break
done
@@ -2977,10 +3227,10 @@ fi
fi
MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
if test -n "$MAKE_UPPER_TAGS"; then
- echo "$as_me:2980: result: $MAKE_UPPER_TAGS" >&5
+ echo "$as_me:3230: result: $MAKE_UPPER_TAGS" >&5
echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
else
- echo "$as_me:2983: result: no" >&5
+ echo "$as_me:3233: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -3000,14 +3250,14 @@ else
MAKE_LOWER_TAGS="#"
fi
-echo "$as_me:3003: checking if -lm needed for math functions" >&5
+echo "$as_me:3253: checking if -lm needed for math functions" >&5
echo $ECHO_N "checking if -lm needed for math functions... $ECHO_C" >&6
if test "${cf_cv_need_libm+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 3010 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3260 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -3017,32 +3267,32 @@ else
int
main (void)
{
-double x = rand(); printf("result = %g\n", pow(sin(x),x))
+double x = rand(); printf("result = %g\\n", pow(sin(x),x))
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3026: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:3276: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:3029: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:3032: \"$ac_try\"") >&5
+ echo "$as_me:3279: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:3282: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3035: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3285: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_need_libm=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_need_libm=yes
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:3045: result: $cf_cv_need_libm" >&5
+echo "$as_me:3295: result: $cf_cv_need_libm" >&5
echo "${ECHO_T}$cf_cv_need_libm" >&6
if test "$cf_cv_need_libm" = yes
then
@@ -3083,7 +3333,152 @@ includesubdir=""
cf_cv_screen=curses
cf_cv_libtype=
-if test "$GCC" = yes
+echo "$as_me:3336: checking for fgrep" >&5
+echo $ECHO_N "checking for fgrep... $ECHO_C" >&6
+if test "${ac_cv_path_FGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
+ then ac_cv_path_FGREP="$GREP -F"
+ else
+ for ac_prog in gfgrep fgrep
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:3348: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_FGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ case $FGREP in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_FGREP="$FGREP" # Let the user override the test with a path.
+ ;;
+ *)
+ ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+ IFS=$ac_save_IFS
+ test -z "$ac_dir" && ac_dir=.
+ if $as_executable_p "$ac_dir/$ac_word"; then
+ ac_cv_path_FGREP="$ac_dir/$ac_word"
+ echo "$as_me:3365: found $ac_dir/$ac_word" >&5
+ break
+fi
+done
+
+ ;;
+esac
+fi
+FGREP=$ac_cv_path_FGREP
+
+if test -n "$FGREP"; then
+ echo "$as_me:3376: result: $FGREP" >&5
+echo "${ECHO_T}$FGREP" >&6
+else
+ echo "$as_me:3379: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$FGREP" && break
+done
+test -n "$FGREP" || FGREP=": "
+
+ test "x$ac_cv_path_FGREP" = "x:" && { { echo "$as_me:3387: error: cannot find workable fgrep" >&5
+echo "$as_me: error: cannot find workable fgrep" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+fi
+echo "$as_me:3392: result: $ac_cv_path_FGREP" >&5
+echo "${ECHO_T}$ac_cv_path_FGREP" >&6
+ FGREP="$ac_cv_path_FGREP"
+
+echo "$as_me:3396: checking if you want to use C11 _Noreturn feature" >&5
+echo $ECHO_N "checking if you want to use C11 _Noreturn feature... $ECHO_C" >&6
+
+# Check whether --enable-stdnoreturn or --disable-stdnoreturn was given.
+if test "${enable_stdnoreturn+set}" = set; then
+ enableval="$enable_stdnoreturn"
+ test "$enableval" != yes && enableval=no
+ if test "$enableval" != "no" ; then
+ enable_stdnoreturn=yes
+ else
+ enable_stdnoreturn=no
+ fi
+else
+ enableval=no
+ enable_stdnoreturn=no
+
+fi;
+echo "$as_me:3413: result: $enable_stdnoreturn" >&5
+echo "${ECHO_T}$enable_stdnoreturn" >&6
+
+if test $enable_stdnoreturn = yes; then
+echo "$as_me:3417: checking for C11 _Noreturn feature" >&5
+echo $ECHO_N "checking for C11 _Noreturn feature... $ECHO_C" >&6
+if test "${cf_cv_c11_noreturn+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3423 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdnoreturn.h>
+static _Noreturn void giveup(void) { exit(0); }
+
+int
+main (void)
+{
+if (feof(stdin)) giveup()
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:3440: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:3443: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:3446: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:3449: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_cv_c11_noreturn=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_cv_c11_noreturn=no
+fi
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+
+fi
+echo "$as_me:3460: result: $cf_cv_c11_noreturn" >&5
+echo "${ECHO_T}$cf_cv_c11_noreturn" >&6
+else
+ cf_cv_c11_noreturn=no,
+fi
+
+if test "$cf_cv_c11_noreturn" = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_STDNORETURN_H 1
+EOF
+
+cat >>confdefs.h <<EOF
+#define STDC_NORETURN _Noreturn
+EOF
+
+ HAVE_STDNORETURN_H=1
+else
+ HAVE_STDNORETURN_H=0
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -3101,10 +3496,10 @@ cat > conftest.i <<EOF
EOF
if test "$GCC" = yes
then
- { echo "$as_me:3104: checking for $CC __attribute__ directives..." >&5
+ { echo "$as_me:3499: checking for $CC __attribute__ directives..." >&5
echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
-cat > conftest.$ac_ext <<EOF
-#line 3107 "${as_me:-configure}"
+cat > "conftest.$ac_ext" <<EOF
+#line 3502 "${as_me:-configure}"
#include "confdefs.h"
#include "conftest.h"
#include "conftest.i"
@@ -3119,9 +3514,9 @@ cat > conftest.$ac_ext <<EOF
#define GCC_SCANFLIKE(fmt,var) /*nothing*/
#endif
extern void wow(char *,...) GCC_SCANFLIKE(1,2);
-extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
-extern void foo(void) GCC_NORETURN;
-int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; }
+extern GCC_NORETURN void oops(char *,...) GCC_PRINTFLIKE(1,2);
+extern GCC_NORETURN void foo(void);
+int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { (void)argc; (void)argv; return 0; }
EOF
cf_printf_attribute=no
cf_scanf_attribute=no
@@ -3133,7 +3528,7 @@ cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFG
cf_directive="__attribute__(($cf_attribute))"
echo "checking for $CC $cf_directive" 1>&5
- case $cf_attribute in
+ case "$cf_attribute" in
(printf)
cf_printf_attribute=yes
cat >conftest.h <<EOF
@@ -3153,15 +3548,15 @@ EOF
;;
esac
- if { (eval echo "$as_me:3156: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:3551: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3159: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:3161: result: ... $cf_attribute" >&5
+ echo "$as_me:3554: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:3556: result: ... $cf_attribute" >&5
echo "${ECHO_T}... $cf_attribute" >&6
cat conftest.h >>confdefs.h
- case $cf_attribute in
+ case "$cf_attribute" in
(noreturn)
cat >>confdefs.h <<EOF
@@ -3212,39 +3607,39 @@ EOF
fi
done
else
- fgrep define conftest.i >>confdefs.h
+ ${FGREP-fgrep} define conftest.i >>confdefs.h
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
-echo "$as_me:3220: checking if you want to work around bogus compiler/loader warnings" >&5
+echo "$as_me:3615: checking if you want to work around bogus compiler/loader warnings" >&5
echo $ECHO_N "checking if you want to work around bogus compiler/loader warnings... $ECHO_C" >&6
# Check whether --enable-string-hacks or --disable-string-hacks was given.
if test "${enable_string_hacks+set}" = set; then
enableval="$enable_string_hacks"
- with_string_hacks=$enableval
+ enable_string_hacks=$enableval
else
- with_string_hacks=no
+ enable_string_hacks=no
fi;
-echo "$as_me:3230: result: $with_string_hacks" >&5
-echo "${ECHO_T}$with_string_hacks" >&6
+echo "$as_me:3625: result: $enable_string_hacks" >&5
+echo "${ECHO_T}$enable_string_hacks" >&6
-if test "x$with_string_hacks" = "xyes"; then
+if test "x$enable_string_hacks" = "xyes"; then
cat >>confdefs.h <<\EOF
#define USE_STRING_HACKS 1
EOF
- { echo "$as_me:3239: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&5
+ { echo "$as_me:3634: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&5
echo "$as_me: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&2;}
- echo "$as_me:3241: checking for strlcat" >&5
+ echo "$as_me:3636: checking for strlcat" >&5
echo $ECHO_N "checking for strlcat... $ECHO_C" >&6
if test "${ac_cv_func_strlcat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 3247 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3642 "configure"
#include "confdefs.h"
#define strlcat autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -3274,29 +3669,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3278: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:3673: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:3281: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:3284: \"$ac_try\"") >&5
+ echo "$as_me:3676: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:3679: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3287: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3682: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_strlcat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_strlcat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:3297: result: $ac_cv_func_strlcat" >&5
+echo "$as_me:3692: result: $ac_cv_func_strlcat" >&5
echo "${ECHO_T}$ac_cv_func_strlcat" >&6
-if test $ac_cv_func_strlcat = yes; then
+if test "$ac_cv_func_strlcat" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_STRLCAT 1
@@ -3304,15 +3699,15 @@ EOF
else
- echo "$as_me:3307: checking for strlcat in -lbsd" >&5
+ echo "$as_me:3702: checking for strlcat in -lbsd" >&5
echo $ECHO_N "checking for strlcat in -lbsd... $ECHO_C" >&6
if test "${ac_cv_lib_bsd_strlcat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lbsd $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 3315 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 3710 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -3330,30 +3725,30 @@ strlcat ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3334: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:3729: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:3337: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:3340: \"$ac_try\"") >&5
+ echo "$as_me:3732: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:3735: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3343: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3738: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_bsd_strlcat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_bsd_strlcat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:3354: result: $ac_cv_lib_bsd_strlcat" >&5
+echo "$as_me:3749: result: $ac_cv_lib_bsd_strlcat" >&5
echo "${ECHO_T}$ac_cv_lib_bsd_strlcat" >&6
-if test $ac_cv_lib_bsd_strlcat = yes; then
+if test "$ac_cv_lib_bsd_strlcat" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -3374,24 +3769,24 @@ LIBS="$cf_add_libs"
for ac_header in bsd/string.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:3377: checking for $ac_header" >&5
+echo "$as_me:3772: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 3383 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3778 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:3387: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:3782: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:3393: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:3788: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -3404,14 +3799,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:3412: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:3807: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -3430,13 +3825,13 @@ fi
for ac_func in strlcpy snprintf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:3433: checking for $ac_func" >&5
+echo "$as_me:3828: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 3439 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 3834 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -3466,29 +3861,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3470: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:3865: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:3473: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:3476: \"$ac_try\"") >&5
+ echo "$as_me:3868: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:3871: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3479: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3874: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:3489: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:3884: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -3498,14 +3893,14 @@ done
fi
-echo "$as_me:3501: checking if the POSIX test-macros are already defined" >&5
+echo "$as_me:3896: checking if the POSIX test-macros are already defined" >&5
echo $ECHO_N "checking if the POSIX test-macros are already defined... $ECHO_C" >&6
if test "${cf_cv_posix_visible+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 3508 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 3903 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -3523,28 +3918,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3527: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:3922: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3530: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3533: \"$ac_try\"") >&5
+ echo "$as_me:3925: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:3928: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3536: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:3931: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_visible=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_visible=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:3547: result: $cf_cv_posix_visible" >&5
+echo "$as_me:3942: result: $cf_cv_posix_visible" >&5
echo "${ECHO_T}$cf_cv_posix_visible" >&6
if test "$cf_cv_posix_visible" = no; then
@@ -3553,7 +3948,7 @@ cf_XOPEN_SOURCE=600
cf_POSIX_C_SOURCE=199506L
cf_xopen_source=
-case $host_os in
+case "$host_os" in
(aix[4-7]*)
cf_xopen_source="-D_ALL_SOURCE"
;;
@@ -3589,14 +3984,14 @@ case $host_os in
cf_gnu_xopen_source=$cf_XOPEN_SOURCE
-echo "$as_me:3592: checking if this is the GNU C library" >&5
+echo "$as_me:3987: checking if this is the GNU C library" >&5
echo $ECHO_N "checking if this is the GNU C library... $ECHO_C" >&6
if test "${cf_cv_gnu_library+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 3599 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 3994 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -3614,28 +4009,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3618: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4013: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3621: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3624: \"$ac_try\"") >&5
+ echo "$as_me:4016: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4019: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3627: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4022: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_library=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_library=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:3638: result: $cf_cv_gnu_library" >&5
+echo "$as_me:4033: result: $cf_cv_gnu_library" >&5
echo "${ECHO_T}$cf_cv_gnu_library" >&6
if test x$cf_cv_gnu_library = xyes; then
@@ -3643,7 +4038,7 @@ if test x$cf_cv_gnu_library = xyes; then
# With glibc 2.19 (13 years after this check was begun), _DEFAULT_SOURCE
# was changed to help a little. newlib incorporated the change about 4
# years later.
- echo "$as_me:3646: checking if _DEFAULT_SOURCE can be used as a basis" >&5
+ echo "$as_me:4041: checking if _DEFAULT_SOURCE can be used as a basis" >&5
echo $ECHO_N "checking if _DEFAULT_SOURCE can be used as a basis... $ECHO_C" >&6
if test "${cf_cv_gnu_library_219+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3654,8 +4049,8 @@ else
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_DEFAULT_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 3658 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4053 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -3673,34 +4068,34 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3677: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4072: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3680: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3683: \"$ac_try\"") >&5
+ echo "$as_me:4075: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4078: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3686: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4081: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_library_219=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_library_219=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-echo "$as_me:3698: result: $cf_cv_gnu_library_219" >&5
+echo "$as_me:4093: result: $cf_cv_gnu_library_219" >&5
echo "${ECHO_T}$cf_cv_gnu_library_219" >&6
if test "x$cf_cv_gnu_library_219" = xyes; then
cf_save="$CPPFLAGS"
- echo "$as_me:3703: checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE" >&5
+ echo "$as_me:4098: checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE" >&5
echo $ECHO_N "checking if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE... $ECHO_C" >&6
if test "${cf_cv_gnu_dftsrc_219+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3713,19 +4108,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=$cf_gnu_xopen_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -3744,7 +4139,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -3774,7 +4169,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -3804,8 +4199,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 3808 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4203 "configure"
#include "confdefs.h"
#include <limits.h>
@@ -3824,28 +4219,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3828: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4223: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3831: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3834: \"$ac_try\"") >&5
+ echo "$as_me:4226: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4229: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3837: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4232: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_dftsrc_219=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_dftsrc_219=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:3848: result: $cf_cv_gnu_dftsrc_219" >&5
+echo "$as_me:4243: result: $cf_cv_gnu_dftsrc_219" >&5
echo "${ECHO_T}$cf_cv_gnu_dftsrc_219" >&6
test "x$cf_cv_gnu_dftsrc_219" = "xyes" || CPPFLAGS="$cf_save"
else
@@ -3854,14 +4249,14 @@ echo "${ECHO_T}$cf_cv_gnu_dftsrc_219" >&6
if test "x$cf_cv_gnu_dftsrc_219" != xyes; then
- echo "$as_me:3857: checking if we must define _GNU_SOURCE" >&5
+ echo "$as_me:4252: checking if we must define _GNU_SOURCE" >&5
echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6
if test "${cf_cv_gnu_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 3864 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4259 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -3875,22 +4270,22 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3879: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4274: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:3882: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:3885: \"$ac_try\"") >&5
+ echo "$as_me:4277: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4280: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:3888: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4283: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
cf_fix_cppflags=no
@@ -3900,19 +4295,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -D_GNU_SOURCE
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -3931,7 +4326,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -3961,7 +4356,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -3991,8 +4386,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 3995 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4390 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4006,37 +4401,37 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4010: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4405: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4013: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4016: \"$ac_try\"") >&5
+ echo "$as_me:4408: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4411: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4019: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4414: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_gnu_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_gnu_source=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:4034: result: $cf_cv_gnu_source" >&5
+echo "$as_me:4429: result: $cf_cv_gnu_source" >&5
echo "${ECHO_T}$cf_cv_gnu_source" >&6
if test "$cf_cv_gnu_source" = yes
then
- echo "$as_me:4039: checking if we should also define _DEFAULT_SOURCE" >&5
+ echo "$as_me:4434: checking if we should also define _DEFAULT_SOURCE" >&5
echo $ECHO_N "checking if we should also define _DEFAULT_SOURCE... $ECHO_C" >&6
if test "${cf_cv_default_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4045,8 +4440,8 @@ else
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_GNU_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 4049 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4444 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4060,28 +4455,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4064: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4459: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4067: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4070: \"$ac_try\"") >&5
+ echo "$as_me:4462: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4465: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4073: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4468: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_default_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_default_source=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:4084: result: $cf_cv_default_source" >&5
+echo "$as_me:4479: result: $cf_cv_default_source" >&5
echo "${ECHO_T}$cf_cv_default_source" >&6
if test "$cf_cv_default_source" = yes
then
@@ -4118,16 +4513,16 @@ cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-echo "$as_me:4121: checking if we should define _POSIX_C_SOURCE" >&5
+echo "$as_me:4516: checking if we should define _POSIX_C_SOURCE" >&5
echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
if test "${cf_cv_posix_c_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-echo "${as_me:-configure}:4127: testing if the symbol is already defined go no further ..." 1>&5
+echo "${as_me:-configure}:4522: testing if the symbol is already defined go no further ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 4130 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4525 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4141,22 +4536,22 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4145: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4540: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4148: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4151: \"$ac_try\"") >&5
+ echo "$as_me:4543: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4546: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4154: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4549: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_c_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_want_posix_source=no
case .$cf_POSIX_C_SOURCE in
(.[12]??*)
@@ -4171,8 +4566,8 @@ cf_want_posix_source=no
;;
esac
if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 4175 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4570 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4186,28 +4581,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4190: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4585: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4193: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4196: \"$ac_try\"") >&5
+ echo "$as_me:4588: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4591: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4199: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4594: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "${as_me:-configure}:4210: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+echo "${as_me:-configure}:4605: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS"
@@ -4215,10 +4610,10 @@ echo "${as_me:-configure}:4210: testing ifdef from value $cf_POSIX_C_SOURCE ..."
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_cv_posix_c_source"
-echo "${as_me:-configure}:4218: testing if the second compile does not leave our definition intact error ..." 1>&5
+echo "${as_me:-configure}:4613: testing if the second compile does not leave our definition intact error ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 4221 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4616 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4232,33 +4627,33 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4236: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4631: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4239: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4242: \"$ac_try\"") >&5
+ echo "$as_me:4634: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4637: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4245: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4640: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:4261: result: $cf_cv_posix_c_source" >&5
+echo "$as_me:4656: result: $cf_cv_posix_c_source" >&5
echo "${ECHO_T}$cf_cv_posix_c_source" >&6
if test "$cf_cv_posix_c_source" != no ; then
@@ -4272,19 +4667,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_cv_posix_c_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -4303,7 +4698,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -4333,7 +4728,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -4371,7 +4766,16 @@ fi # cf_cv_posix_visible
(netbsd*)
cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
;;
-(openbsd[4-9]*)
+(openbsd[6-9]*)
+ # OpenBSD 6.x has broken locale support, both compile-time and runtime.
+ # see https://www.mail-archive.com/bugs@openbsd.org/msg13200.html
+ # Abusing the conformance level is a workaround.
+ { echo "$as_me:4773: WARNING: this system does not provide usable locale support" >&5
+echo "$as_me: WARNING: this system does not provide usable locale support" >&2;}
+ cf_xopen_source="-D_BSD_SOURCE"
+ cf_XOPEN_SOURCE=700
+ ;;
+(openbsd[4-5]*)
# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
cf_xopen_source="-D_BSD_SOURCE"
cf_XOPEN_SOURCE=600
@@ -4398,14 +4802,14 @@ fi # cf_cv_posix_visible
;;
(*)
-echo "$as_me:4401: checking if we should define _XOPEN_SOURCE" >&5
+echo "$as_me:4805: checking if we should define _XOPEN_SOURCE" >&5
echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
if test "${cf_cv_xopen_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 4408 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4812 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -4423,29 +4827,29 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4427: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4831: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4430: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4433: \"$ac_try\"") >&5
+ echo "$as_me:4834: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4837: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4436: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4840: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 4448 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 4852 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -4463,32 +4867,32 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4467: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:4871: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4470: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4473: \"$ac_try\"") >&5
+ echo "$as_me:4874: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:4877: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4476: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:4880: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xopen_source=$cf_XOPEN_SOURCE
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:4491: result: $cf_cv_xopen_source" >&5
+echo "$as_me:4895: result: $cf_cv_xopen_source" >&5
echo "${ECHO_T}$cf_cv_xopen_source" >&6
if test "$cf_cv_xopen_source" != no ; then
@@ -4503,26 +4907,52 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+for cf_add_cflags in $cf_temp_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_temp_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -4541,7 +4971,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -4571,7 +5001,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -4601,6 +5031,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
fi
if test "$cf_cv_posix_visible" = no; then
@@ -4618,16 +5050,16 @@ cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-echo "$as_me:4621: checking if we should define _POSIX_C_SOURCE" >&5
+echo "$as_me:5053: checking if we should define _POSIX_C_SOURCE" >&5
echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
if test "${cf_cv_posix_c_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-echo "${as_me:-configure}:4627: testing if the symbol is already defined go no further ..." 1>&5
+echo "${as_me:-configure}:5059: testing if the symbol is already defined go no further ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 4630 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5062 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4641,22 +5073,22 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4645: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5077: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4648: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4651: \"$ac_try\"") >&5
+ echo "$as_me:5080: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5083: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4654: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5086: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_posix_c_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_want_posix_source=no
case .$cf_POSIX_C_SOURCE in
(.[12]??*)
@@ -4671,8 +5103,8 @@ cf_want_posix_source=no
;;
esac
if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 4675 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5107 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4686,28 +5118,28 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4690: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5122: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4693: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4696: \"$ac_try\"") >&5
+ echo "$as_me:5125: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5128: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4699: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5131: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "${as_me:-configure}:4710: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+echo "${as_me:-configure}:5142: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS"
@@ -4715,10 +5147,10 @@ echo "${as_me:-configure}:4710: testing ifdef from value $cf_POSIX_C_SOURCE ..."
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_cv_posix_c_source"
-echo "${as_me:-configure}:4718: testing if the second compile does not leave our definition intact error ..." 1>&5
+echo "${as_me:-configure}:5150: testing if the second compile does not leave our definition intact error ..." 1>&5
- cat >conftest.$ac_ext <<_ACEOF
-#line 4721 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5153 "configure"
#include "confdefs.h"
#include <sys/types.h>
int
@@ -4732,33 +5164,33 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:4736: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5168: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:4739: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:4742: \"$ac_try\"") >&5
+ echo "$as_me:5171: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5174: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:4745: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5177: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_posix_c_source=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:4761: result: $cf_cv_posix_c_source" >&5
+echo "$as_me:5193: result: $cf_cv_posix_c_source" >&5
echo "${ECHO_T}$cf_cv_posix_c_source" >&6
if test "$cf_cv_posix_c_source" != no ; then
@@ -4772,19 +5204,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_cv_posix_c_source
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -4803,7 +5235,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -4833,7 +5265,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -4872,26 +5304,58 @@ esac
if test -n "$cf_xopen_source" ; then
+for cf_add_cflags in $cf_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+ test -n "$verbose" && echo " removing old option $cf_add_cflags from CFLAGS" 1>&6
+
+echo "${as_me:-configure}:5319: testing removing old option $cf_add_cflags from CFLAGS ..." 1>&5
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+ test -n "$verbose" && echo " removing old option $cf_add_cflags from CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:5331: testing removing old option $cf_add_cflags from CPPFLAGS ..." 1>&5
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -4910,7 +5374,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -4940,7 +5404,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -4952,7 +5416,7 @@ done
if test -n "$cf_new_cflags" ; then
test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-echo "${as_me:-configure}:4955: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+echo "${as_me:-configure}:5419: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
test -n "$CFLAGS" && CFLAGS="$CFLAGS "
CFLAGS="${CFLAGS}$cf_new_cflags"
@@ -4962,7 +5426,7 @@ fi
if test -n "$cf_new_cppflags" ; then
test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-echo "${as_me:-configure}:4965: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+echo "${as_me:-configure}:5429: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
@@ -4972,20 +5436,22 @@ fi
if test -n "$cf_new_extra_cppflags" ; then
test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
-echo "${as_me:-configure}:4975: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+echo "${as_me:-configure}:5439: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
fi
+done
+
fi
if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
- echo "$as_me:4985: checking if _XOPEN_SOURCE really is set" >&5
+ echo "$as_me:5451: checking if _XOPEN_SOURCE really is set" >&5
echo $ECHO_N "checking if _XOPEN_SOURCE really is set... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 4988 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5454 "configure"
#include "confdefs.h"
#include <stdlib.h>
int
@@ -4999,31 +5465,31 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5003: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5469: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5006: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5009: \"$ac_try\"") >&5
+ echo "$as_me:5472: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5475: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5012: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5478: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_XOPEN_SOURCE_set=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_XOPEN_SOURCE_set=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:5021: result: $cf_XOPEN_SOURCE_set" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:5487: result: $cf_XOPEN_SOURCE_set" >&5
echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6
- if test $cf_XOPEN_SOURCE_set = yes
+ if test "$cf_XOPEN_SOURCE_set" = yes
then
- cat >conftest.$ac_ext <<_ACEOF
-#line 5026 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5492 "configure"
#include "confdefs.h"
#include <stdlib.h>
int
@@ -5037,40 +5503,40 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5041: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5507: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5044: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5047: \"$ac_try\"") >&5
+ echo "$as_me:5510: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5513: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5050: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5516: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_XOPEN_SOURCE_set_ok=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_XOPEN_SOURCE_set_ok=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- if test $cf_XOPEN_SOURCE_set_ok = no
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ if test "$cf_XOPEN_SOURCE_set_ok" = no
then
- { echo "$as_me:5061: WARNING: _XOPEN_SOURCE is lower than requested" >&5
+ { echo "$as_me:5527: WARNING: _XOPEN_SOURCE is lower than requested" >&5
echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;}
fi
else
-echo "$as_me:5066: checking if we should define _XOPEN_SOURCE" >&5
+echo "$as_me:5532: checking if we should define _XOPEN_SOURCE" >&5
echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
if test "${cf_cv_xopen_source+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 5073 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5539 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -5088,29 +5554,29 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5092: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5558: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5095: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5098: \"$ac_try\"") >&5
+ echo "$as_me:5561: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5564: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5101: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5567: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save="$CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5113 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5579 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -5128,32 +5594,32 @@ make an error
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5132: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5598: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5135: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5138: \"$ac_try\"") >&5
+ echo "$as_me:5601: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5604: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5141: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5607: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xopen_source=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xopen_source=$cf_XOPEN_SOURCE
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:5156: result: $cf_cv_xopen_source" >&5
+echo "$as_me:5622: result: $cf_cv_xopen_source" >&5
echo "${ECHO_T}$cf_cv_xopen_source" >&6
if test "$cf_cv_xopen_source" != no ; then
@@ -5168,26 +5634,52 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+for cf_add_cflags in $cf_temp_xopen_source
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in $cf_temp_xopen_source
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -5206,7 +5698,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -5236,7 +5728,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -5266,13 +5758,15 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
fi
fi
fi
fi # cf_cv_posix_visible
-echo "$as_me:5275: checking for signal global datatype" >&5
+echo "$as_me:5769: checking for signal global datatype" >&5
echo $ECHO_N "checking for signal global datatype... $ECHO_C" >&6
if test "${cf_cv_sig_atomic_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5283,8 +5777,8 @@ else
"sig_atomic_t" \
"int"
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 5287 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5781 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5295,6 +5789,7 @@ extern $cf_type x;
$cf_type x;
static void handler(int sig)
{
+ (void)sig;
x = 5;
}
int
@@ -5306,31 +5801,31 @@ signal(SIGINT, handler);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5310: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5805: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5313: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5316: \"$ac_try\"") >&5
+ echo "$as_me:5808: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5811: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5319: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5814: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_sig_atomic_t=$cf_type
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_sig_atomic_t=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_sig_atomic_t" != no && break
done
fi
-echo "$as_me:5333: result: $cf_cv_sig_atomic_t" >&5
+echo "$as_me:5828: result: $cf_cv_sig_atomic_t" >&5
echo "${ECHO_T}$cf_cv_sig_atomic_t" >&6
test "$cf_cv_sig_atomic_t" != no &&
cat >>confdefs.h <<EOF
@@ -5339,14 +5834,14 @@ EOF
# Work around breakage on OS X
-echo "$as_me:5342: checking if SIGWINCH is defined" >&5
+echo "$as_me:5837: checking if SIGWINCH is defined" >&5
echo $ECHO_N "checking if SIGWINCH is defined... $ECHO_C" >&6
if test "${cf_cv_define_sigwinch+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 5349 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5844 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5355,29 +5850,29 @@ else
int
main (void)
{
-int x = SIGWINCH
+int x = SIGWINCH; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5364: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5859: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5367: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5370: \"$ac_try\"") >&5
+ echo "$as_me:5862: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5865: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5373: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5868: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_define_sigwinch=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 5380 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 5875 "configure"
#include "confdefs.h"
#undef _XOPEN_SOURCE
@@ -5389,40 +5884,40 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = SIGWINCH
+int x = SIGWINCH; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5398: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5893: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5401: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5404: \"$ac_try\"") >&5
+ echo "$as_me:5896: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5899: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5407: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5902: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_define_sigwinch=maybe
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_define_sigwinch=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:5421: result: $cf_cv_define_sigwinch" >&5
+echo "$as_me:5916: result: $cf_cv_define_sigwinch" >&5
echo "${ECHO_T}$cf_cv_define_sigwinch" >&6
if test "$cf_cv_define_sigwinch" = maybe ; then
-echo "$as_me:5425: checking for actual SIGWINCH definition" >&5
+echo "$as_me:5920: checking for actual SIGWINCH definition" >&5
echo $ECHO_N "checking for actual SIGWINCH definition... $ECHO_C" >&6
if test "${cf_cv_fixup_sigwinch+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5430,10 +5925,10 @@ else
cf_cv_fixup_sigwinch=unknown
cf_sigwinch=32
-while test $cf_sigwinch != 1
+while test "$cf_sigwinch" != 1
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 5436 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5931 "configure"
#include "confdefs.h"
#undef _XOPEN_SOURCE
@@ -5449,36 +5944,36 @@ main (void)
#if SIGWINCH != $cf_sigwinch
make an error
#endif
-int x = SIGWINCH
+int x = SIGWINCH; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5458: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:5953: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5461: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5464: \"$ac_try\"") >&5
+ echo "$as_me:5956: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:5959: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5467: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:5962: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_fixup_sigwinch=$cf_sigwinch
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
-cf_sigwinch=`expr $cf_sigwinch - 1`
+cf_sigwinch="`expr "$cf_sigwinch" - 1`"
done
fi
-echo "$as_me:5481: result: $cf_cv_fixup_sigwinch" >&5
+echo "$as_me:5976: result: $cf_cv_fixup_sigwinch" >&5
echo "${ECHO_T}$cf_cv_fixup_sigwinch" >&6
if test "$cf_cv_fixup_sigwinch" != unknown ; then
@@ -5488,47 +5983,47 @@ fi
# Checks for CODESET support.
-echo "$as_me:5491: checking for nl_langinfo and CODESET" >&5
+echo "$as_me:5986: checking for nl_langinfo and CODESET" >&5
echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6
if test "${am_cv_langinfo_codeset+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 5497 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 5992 "configure"
#include "confdefs.h"
#include <langinfo.h>
int
main (void)
{
-char* cs = nl_langinfo(CODESET);
+char* cs = nl_langinfo(CODESET); (void)cs
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5509: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6004: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:5512: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:5515: \"$ac_try\"") >&5
+ echo "$as_me:6007: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6010: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5518: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6013: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
am_cv_langinfo_codeset=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
am_cv_langinfo_codeset=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:5529: result: $am_cv_langinfo_codeset" >&5
+echo "$as_me:6024: result: $am_cv_langinfo_codeset" >&5
echo "${ECHO_T}$am_cv_langinfo_codeset" >&6
- if test $am_cv_langinfo_codeset = yes; then
+ if test "$am_cv_langinfo_codeset" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_LANGINFO_CODESET 1
@@ -5536,7 +6031,7 @@ EOF
fi
-echo "$as_me:5539: checking if you want to use pkg-config" >&5
+echo "$as_me:6034: checking if you want to use pkg-config" >&5
echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6
# Check whether --with-pkg-config or --without-pkg-config was given.
@@ -5546,10 +6041,10 @@ if test "${with_pkg_config+set}" = set; then
else
cf_pkg_config=yes
fi;
-echo "$as_me:5549: result: $cf_pkg_config" >&5
+echo "$as_me:6044: result: $cf_pkg_config" >&5
echo "${ECHO_T}$cf_pkg_config" >&6
-case $cf_pkg_config in
+case "$cf_pkg_config" in
(no)
PKG_CONFIG=none
;;
@@ -5558,7 +6053,7 @@ case $cf_pkg_config in
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-echo "$as_me:5561: checking for $ac_word" >&5
+echo "$as_me:6056: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5575,7 +6070,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word"
- echo "$as_me:5578: found $ac_dir/$ac_word" >&5
+ echo "$as_me:6073: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -5586,10 +6081,10 @@ fi
PKG_CONFIG=$ac_cv_path_PKG_CONFIG
if test -n "$PKG_CONFIG"; then
- echo "$as_me:5589: result: $PKG_CONFIG" >&5
+ echo "$as_me:6084: result: $PKG_CONFIG" >&5
echo "${ECHO_T}$PKG_CONFIG" >&6
else
- echo "$as_me:5592: result: no" >&5
+ echo "$as_me:6087: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -5598,7 +6093,7 @@ if test -z "$ac_cv_path_PKG_CONFIG"; then
ac_pt_PKG_CONFIG=$PKG_CONFIG
# Extract the first word of "pkg-config", so it can be a program name with args.
set dummy pkg-config; ac_word=$2
-echo "$as_me:5601: checking for $ac_word" >&5
+echo "$as_me:6096: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -5615,7 +6110,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if $as_executable_p "$ac_dir/$ac_word"; then
ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word"
- echo "$as_me:5618: found $ac_dir/$ac_word" >&5
+ echo "$as_me:6113: found $ac_dir/$ac_word" >&5
break
fi
done
@@ -5627,10 +6122,10 @@ fi
ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
if test -n "$ac_pt_PKG_CONFIG"; then
- echo "$as_me:5630: result: $ac_pt_PKG_CONFIG" >&5
+ echo "$as_me:6125: result: $ac_pt_PKG_CONFIG" >&5
echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
else
- echo "$as_me:5633: result: no" >&5
+ echo "$as_me:6128: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -5661,30 +6156,30 @@ case ".$PKG_CONFIG" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval PKG_CONFIG="$PKG_CONFIG"
case ".$PKG_CONFIG" in
(.NONE/*)
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG=`echo "$PKG_CONFIG" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+ PKG_CONFIG=`echo "$PKG_CONFIG" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:5676: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
+ { { echo "$as_me:6171: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
elif test "x$cf_pkg_config" != xno ; then
- { echo "$as_me:5683: WARNING: pkg-config is not installed" >&5
+ { echo "$as_me:6178: WARNING: pkg-config is not installed" >&5
echo "$as_me: WARNING: pkg-config is not installed" >&2;}
fi
-echo "$as_me:5687: checking if you want to see long compiling messages" >&5
+echo "$as_me:6182: checking if you want to see long compiling messages" >&5
echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6
# Check whether --enable-echo or --disable-echo was given.
@@ -5718,10 +6213,10 @@ else
ECHO_CC=''
fi;
-echo "$as_me:5721: result: $enableval" >&5
+echo "$as_me:6216: result: $enableval" >&5
echo "${ECHO_T}$enableval" >&6
-echo "$as_me:5724: checking for ncurses wrap-prefix" >&5
+echo "$as_me:6219: checking for ncurses wrap-prefix" >&5
echo $ECHO_N "checking for ncurses wrap-prefix... $ECHO_C" >&6
# Check whether --with-ncurses-wrap-prefix or --without-ncurses-wrap-prefix was given.
@@ -5731,10 +6226,10 @@ if test "${with_ncurses_wrap_prefix+set}" = set; then
else
NCURSES_WRAP_PREFIX=_nc_
fi;
-echo "$as_me:5734: result: $NCURSES_WRAP_PREFIX" >&5
+echo "$as_me:6229: result: $NCURSES_WRAP_PREFIX" >&5
echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6
-echo "$as_me:5737: checking if you want to check for wide-character functions" >&5
+echo "$as_me:6232: checking if you want to check for wide-character functions" >&5
echo $ECHO_N "checking if you want to check for wide-character functions... $ECHO_C" >&6
# Check whether --enable-widec or --disable-widec was given.
@@ -5751,10 +6246,10 @@ else
cf_enable_widec=yes
fi;
-echo "$as_me:5754: result: $cf_enable_widec" >&5
+echo "$as_me:6249: result: $cf_enable_widec" >&5
echo "${ECHO_T}$cf_enable_widec" >&6
-echo "$as_me:5757: checking for specific curses-directory" >&5
+echo "$as_me:6252: checking for specific curses-directory" >&5
echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6
# Check whether --with-curses-dir or --without-curses-dir was given.
@@ -5764,10 +6259,10 @@ if test "${with_curses_dir+set}" = set; then
else
cf_cv_curses_dir=no
fi;
-echo "$as_me:5767: result: $cf_cv_curses_dir" >&5
+echo "$as_me:6262: result: $cf_cv_curses_dir" >&5
echo "${ECHO_T}$cf_cv_curses_dir" >&6
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
if test "x$prefix" != xNONE; then
@@ -5783,19 +6278,19 @@ case ".$withval" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval withval="$withval"
case ".$withval" in
(.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+ withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:5798: error: expected a pathname, not \"$withval\"" >&5
+ { { echo "$as_me:6293: error: expected a pathname, not \"$withval\"" >&5
echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -5807,9 +6302,9 @@ esac
if test -n "$cf_cv_curses_dir/include" ; then
for cf_add_incdir in $cf_cv_curses_dir/include
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -5830,8 +6325,8 @@ if test -n "$cf_cv_curses_dir/include" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 5834 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6329 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -5842,25 +6337,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5846: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:6341: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:5849: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:5852: \"$ac_try\"") >&5
+ echo "$as_me:6344: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:6347: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:5855: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6350: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -5869,11 +6364,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:5872: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:6367: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -5889,9 +6384,9 @@ fi
if test -n "$cf_cv_curses_dir/lib" ; then
for cf_add_libdir in $cf_cv_curses_dir/lib
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -5905,7 +6400,7 @@ if test -n "$cf_cv_curses_dir/lib" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:5908: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:6403: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -5918,7 +6413,7 @@ fi
cf_cv_screen=curses
-echo "$as_me:5921: checking for specified curses library type" >&5
+echo "$as_me:6416: checking for specified curses library type" >&5
echo $ECHO_N "checking for specified curses library type... $ECHO_C" >&6
# Check whether --with-screen or --without-screen was given.
@@ -5962,20 +6457,20 @@ fi;
fi;
fi;
-echo "$as_me:5965: result: $cf_cv_screen" >&5
+echo "$as_me:6460: result: $cf_cv_screen" >&5
echo "${ECHO_T}$cf_cv_screen" >&6
case $cf_cv_screen in
(curses|curses_*)
-echo "$as_me:5971: checking for extra include directories" >&5
+echo "$as_me:6466: checking for extra include directories" >&5
echo $ECHO_N "checking for extra include directories... $ECHO_C" >&6
if test "${cf_cv_curses_incdir+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_cv_curses_incdir=no
-case $host_os in
+case "$host_os" in
(hpux10.*)
if test "x$cf_cv_screen" = "xcurses_colr"
then
@@ -5994,7 +6489,7 @@ case $host_os in
esac
fi
-echo "$as_me:5997: result: $cf_cv_curses_incdir" >&5
+echo "$as_me:6492: result: $cf_cv_curses_incdir" >&5
echo "${ECHO_T}$cf_cv_curses_incdir" >&6
if test "$cf_cv_curses_incdir" != no
then
@@ -6004,7 +6499,7 @@ then
fi
-echo "$as_me:6007: checking if we have identified curses headers" >&5
+echo "$as_me:6502: checking if we have identified curses headers" >&5
echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
if test "${cf_cv_ncurses_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6015,8 +6510,8 @@ for cf_header in \
ncurses.h \
curses.h ncurses/ncurses.h ncurses/curses.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 6019 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6514 "configure"
#include "confdefs.h"
#include <${cf_header}>
int
@@ -6027,32 +6522,32 @@ initscr(); tgoto("?", 0,0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6031: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:6526: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6034: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:6037: \"$ac_try\"") >&5
+ echo "$as_me:6529: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:6532: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6040: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6535: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_header=$cf_header; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:6051: result: $cf_cv_ncurses_header" >&5
+echo "$as_me:6546: result: $cf_cv_ncurses_header" >&5
echo "${ECHO_T}$cf_cv_ncurses_header" >&6
if test "$cf_cv_ncurses_header" = none ; then
- { { echo "$as_me:6055: error: No curses header-files found" >&5
+ { { echo "$as_me:6550: error: No curses header-files found" >&5
echo "$as_me: error: No curses header-files found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -6062,24 +6557,24 @@ fi
for ac_header in $cf_cv_ncurses_header
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:6065: checking for $ac_header" >&5
+echo "$as_me:6560: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 6071 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6566 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:6075: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:6570: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:6081: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:6576: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -6092,14 +6587,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:6100: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:6595: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -6107,13 +6602,13 @@ EOF
fi
done
-echo "$as_me:6110: checking for terminfo header" >&5
+echo "$as_me:6605: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -6124,8 +6619,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 6128 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6623 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -6134,43 +6629,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6143: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:6638: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:6146: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:6149: \"$ac_try\"") >&5
+ echo "$as_me:6641: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:6644: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6152: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6647: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:6168: result: $cf_cv_term_header" >&5
+echo "$as_me:6663: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -6180,7 +6675,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -6197,7 +6692,7 @@ EOF
;;
esac
-echo "$as_me:6200: checking for ncurses version" >&5
+echo "$as_me:6695: checking for ncurses version" >&5
echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
if test "${cf_cv_ncurses_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6205,12 +6700,12 @@ else
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
if test "$cross_compiling" = yes; then
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -6223,20 +6718,20 @@ Autoconf "old"
#endif
EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
- { (eval echo "$as_me:6226: \"$cf_try\"") >&5
+ { (eval echo "$as_me:6721: \"$cf_try\"") >&5
(eval $cf_try) 2>&5
ac_status=$?
- echo "$as_me:6229: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:6724: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 6239 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 6734 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -6246,13 +6741,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -6260,40 +6755,40 @@ int main(void)
${cf_cv_main_return:-return}(0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:6264: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:6759: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6267: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:6269: \"$ac_try\"") >&5
+ echo "$as_me:6762: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:6764: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6272: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6767: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_version=`cat $cf_tempfile`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
fi
-echo "$as_me:6286: result: $cf_cv_ncurses_version" >&5
+echo "$as_me:6781: result: $cf_cv_ncurses_version" >&5
echo "${ECHO_T}$cf_cv_ncurses_version" >&6
test "$cf_cv_ncurses_version" = no ||
cat >>confdefs.h <<\EOF
#define NCURSES 1
EOF
-echo "$as_me:6293: checking if we have identified curses libraries" >&5
+echo "$as_me:6788: checking if we have identified curses libraries" >&5
echo $ECHO_N "checking if we have identified curses libraries... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 6296 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6791 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -6304,40 +6799,40 @@ initscr(); tgoto("?", 0,0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6308: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6803: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6311: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6314: \"$ac_try\"") >&5
+ echo "$as_me:6806: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6809: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6317: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6812: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-echo "$as_me:6326: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+echo "$as_me:6821: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
if test "$cf_result" = no ; then
-case $host_os in
+case "$host_os" in
(freebsd*)
- echo "$as_me:6332: checking for tgoto in -lmytinfo" >&5
+ echo "$as_me:6827: checking for tgoto in -lmytinfo" >&5
echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lmytinfo $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6340 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6835 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -6355,30 +6850,30 @@ tgoto ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6359: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6854: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6362: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6365: \"$ac_try\"") >&5
+ echo "$as_me:6857: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6860: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6368: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6863: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_mytinfo_tgoto=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_mytinfo_tgoto=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:6379: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "$as_me:6874: result: $ac_cv_lib_mytinfo_tgoto" >&5
echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
-if test $ac_cv_lib_mytinfo_tgoto = yes; then
+if test "$ac_cv_lib_mytinfo_tgoto" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -6406,15 +6901,15 @@ fi
# term.h) for cur_colr
if test "x$cf_cv_screen" = "xcurses_colr"
then
- echo "$as_me:6409: checking for initscr in -lcur_colr" >&5
+ echo "$as_me:6904: checking for initscr in -lcur_colr" >&5
echo $ECHO_N "checking for initscr in -lcur_colr... $ECHO_C" >&6
if test "${ac_cv_lib_cur_colr_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lcur_colr $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6417 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6912 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -6432,30 +6927,30 @@ initscr ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6436: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:6931: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6439: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6442: \"$ac_try\"") >&5
+ echo "$as_me:6934: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:6937: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6445: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:6940: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_cur_colr_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_cur_colr_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:6456: result: $ac_cv_lib_cur_colr_initscr" >&5
+echo "$as_me:6951: result: $ac_cv_lib_cur_colr_initscr" >&5
echo "${ECHO_T}$ac_cv_lib_cur_colr_initscr" >&6
-if test $ac_cv_lib_cur_colr_initscr = yes; then
+if test "$ac_cv_lib_cur_colr_initscr" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -6477,15 +6972,15 @@ LIBS="$cf_add_libs"
else
- echo "$as_me:6480: checking for initscr in -lHcurses" >&5
+ echo "$as_me:6975: checking for initscr in -lHcurses" >&5
echo $ECHO_N "checking for initscr in -lHcurses... $ECHO_C" >&6
if test "${ac_cv_lib_Hcurses_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lHcurses $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6488 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 6983 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -6503,30 +6998,30 @@ initscr ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6507: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7002: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6510: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6513: \"$ac_try\"") >&5
+ echo "$as_me:7005: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7008: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6516: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7011: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_Hcurses_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_Hcurses_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:6527: result: $ac_cv_lib_Hcurses_initscr" >&5
+echo "$as_me:7022: result: $ac_cv_lib_Hcurses_initscr" >&5
echo "${ECHO_T}$ac_cv_lib_Hcurses_initscr" >&6
-if test $ac_cv_lib_Hcurses_initscr = yes; then
+if test "$ac_cv_lib_Hcurses_initscr" = yes; then
# HP's header uses __HP_CURSES, but user claims _HP_CURSES.
@@ -6566,9 +7061,9 @@ fi
if test -n "/lib64" ; then
for cf_add_libdir in /lib64
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -6582,7 +7077,7 @@ if test -n "/lib64" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:6585: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:7080: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -6595,9 +7090,9 @@ fi
if test -n "/lib" ; then
for cf_add_libdir in /lib
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -6611,7 +7106,7 @@ if test -n "/lib" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:6614: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:7109: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -6626,9 +7121,9 @@ fi
if test -n "/lib" ; then
for cf_add_libdir in /lib
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -6642,7 +7137,7 @@ if test -n "/lib" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:6645: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:7140: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -6661,9 +7156,9 @@ fi
if test -n "/usr/5lib" ; then
for cf_add_libdir in /usr/5lib
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -6677,7 +7172,7 @@ if test -n "/usr/5lib" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:6680: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:7175: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -6721,13 +7216,13 @@ if test ".$ac_cv_func_initscr" != .yes ; then
# because it may be needed to link the test-case for initscr.
if test "x$cf_term_lib" = x
then
- echo "$as_me:6724: checking for tgoto" >&5
+ echo "$as_me:7219: checking for tgoto" >&5
echo $ECHO_N "checking for tgoto... $ECHO_C" >&6
if test "${ac_cv_func_tgoto+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 6730 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7225 "configure"
#include "confdefs.h"
#define tgoto autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -6757,44 +7252,44 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6761: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7256: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6764: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6767: \"$ac_try\"") >&5
+ echo "$as_me:7259: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7262: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6770: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7265: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_tgoto=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_tgoto=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:6780: result: $ac_cv_func_tgoto" >&5
+echo "$as_me:7275: result: $ac_cv_func_tgoto" >&5
echo "${ECHO_T}$ac_cv_func_tgoto" >&6
-if test $ac_cv_func_tgoto = yes; then
+if test "$ac_cv_func_tgoto" = yes; then
cf_term_lib=predefined
else
for cf_term_lib in $cf_check_list otermcap termcap tinfo termlib unknown
do
as_ac_Lib=`echo "ac_cv_lib_$cf_term_lib''_tgoto" | $as_tr_sh`
-echo "$as_me:6789: checking for tgoto in -l$cf_term_lib" >&5
+echo "$as_me:7284: checking for tgoto in -l$cf_term_lib" >&5
echo $ECHO_N "checking for tgoto in -l$cf_term_lib... $ECHO_C" >&6
if eval "test \"\${$as_ac_Lib+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-l$cf_term_lib $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 6797 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7292 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -6812,32 +7307,32 @@ tgoto ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6816: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7311: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6819: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6822: \"$ac_try\"") >&5
+ echo "$as_me:7314: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7317: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6825: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7320: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Lib=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Lib=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:6836: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+echo "$as_me:7331: result: `eval echo '${'"$as_ac_Lib"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Lib"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Lib"'}'`" = yes; then
- : ${cf_nculib_root:=$cf_term_lib}
+ : "${cf_nculib_root:=$cf_term_lib}"
break
fi
@@ -6856,10 +7351,10 @@ fi
do
LIBS="-l$cf_curs_lib $cf_save_LIBS"
if test "$cf_term_lib" = unknown || test "$cf_term_lib" = "$cf_curs_lib" ; then
- echo "$as_me:6859: checking if we can link with $cf_curs_lib library" >&5
+ echo "$as_me:7354: checking if we can link with $cf_curs_lib library" >&5
echo $ECHO_N "checking if we can link with $cf_curs_lib library... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 6862 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7357 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -6870,35 +7365,35 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6874: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7369: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6877: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6880: \"$ac_try\"") >&5
+ echo "$as_me:7372: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7375: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6883: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7378: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:6892: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:7387: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
- test $cf_result = yes && break
+ test "$cf_result" = yes && break
elif test "$cf_curs_lib" = "$cf_term_lib" ; then
cf_result=no
elif test "$cf_term_lib" != predefined ; then
- echo "$as_me:6898: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
+ echo "$as_me:7393: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
echo $ECHO_N "checking if we need both $cf_curs_lib and $cf_term_lib libraries... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 6901 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7396 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -6909,26 +7404,26 @@ initscr(); tgoto((char *)0, 0, 0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6913: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7408: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6916: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6919: \"$ac_try\"") >&5
+ echo "$as_me:7411: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7414: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6922: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7417: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 6931 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7426 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -6939,35 +7434,35 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6943: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7438: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:6946: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:6949: \"$ac_try\"") >&5
+ echo "$as_me:7441: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7444: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:6952: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7447: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=error
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:6964: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:7459: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
- test $cf_result != error && break
+ test "$cf_result" != error && break
fi
done
fi
- test $cf_curs_lib = unknown && { { echo "$as_me:6970: error: no curses library found" >&5
+ test "$cf_curs_lib" = unknown && { { echo "$as_me:7465: error: no curses library found" >&5
echo "$as_me: error: no curses library found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -6976,18 +7471,71 @@ fi
;;
(ncursesw*)
-echo "$as_me:6979: checking for multibyte character support" >&5
+for ac_header in wchar.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:7477: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7483 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:7487: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:7493: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ eval "$as_ac_Header=yes"
+else
+ echo "$as_me: failed program was:" >&5
+ cat "conftest.$ac_ext" >&5
+ eval "$as_ac_Header=no"
+fi
+rm -f conftest.err "conftest.$ac_ext"
+fi
+echo "$as_me:7512: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
+ cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:7522: checking for multibyte character support" >&5
echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6
if test "${cf_cv_utf8_lib+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_save_LIBS="$LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 6987 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7530 "configure"
#include "confdefs.h"
#include <stdlib.h>
+#include <stdio.h>
+#ifdef HAVE_WCHAR_H
+#include <wchar.h>
+#endif
+
int
main (void)
{
@@ -6996,34 +7544,34 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7000: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7548: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7003: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7006: \"$ac_try\"") >&5
+ echo "$as_me:7551: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7554: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7009: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7557: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_utf8_lib=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
# will be set on completion of the AC_TRY_LINK below.
cf_cv_header_path_utf8=
cf_cv_library_path_utf8=
-echo "${as_me:-configure}:7021: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:7569: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_LIBS="$LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 7026 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7574 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -7035,18 +7583,18 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7039: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7587: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7042: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7045: \"$ac_try\"") >&5
+ echo "$as_me:7590: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7593: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7048: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7596: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_find_linkage_utf8=yes
cf_cv_header_path_utf8=/usr/include
@@ -7054,12 +7602,12 @@ if { (eval echo "$as_me:7039: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
LIBS="-lutf8 $cf_save_LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 7062 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 7610 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -7071,18 +7619,18 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7075: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7623: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7078: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7081: \"$ac_try\"") >&5
+ echo "$as_me:7626: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7629: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7084: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7632: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_find_linkage_utf8=yes
cf_cv_header_path_utf8=/usr/include
@@ -7091,16 +7639,16 @@ if { (eval echo "$as_me:7075: \"$ac_link\"") >&5
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_find_linkage_utf8=no
LIBS="$cf_save_LIBS"
test -n "$verbose" && echo " find linkage for utf8 library" 1>&6
-echo "${as_me:-configure}:7101: testing find linkage for utf8 library ..." 1>&5
+echo "${as_me:-configure}:7649: testing find linkage for utf8 library ..." 1>&5
-echo "${as_me:-configure}:7103: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:7651: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_CPPFLAGS="$CPPFLAGS"
cf_test_CPPFLAGS="$CPPFLAGS"
@@ -7112,7 +7660,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -7120,11 +7668,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/utf8 && cf_search="$cf_search $cf_header_path/include/utf8"
- test -d $cf_header_path/include/utf8/include && cf_search="$cf_search $cf_header_path/include/utf8/include"
- test -d $cf_header_path/utf8/include && cf_search="$cf_search $cf_header_path/utf8/include"
- test -d $cf_header_path/utf8/include/utf8 && cf_search="$cf_search $cf_header_path/utf8/include/utf8"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/utf8" && cf_search="$cf_search $cf_header_path/include/utf8"
+ test -d "$cf_header_path/include/utf8/include" && cf_search="$cf_search $cf_header_path/include/utf8/include"
+ test -d "$cf_header_path/utf8/include" && cf_search="$cf_search $cf_header_path/utf8/include"
+ test -d "$cf_header_path/utf8/include/utf8" && cf_search="$cf_search $cf_header_path/utf8/include/utf8"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -7141,11 +7689,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/utf8 && cf_search="$cf_search $prefix/include/utf8"
- test -d $prefix/include/utf8/include && cf_search="$cf_search $prefix/include/utf8/include"
- test -d $prefix/utf8/include && cf_search="$cf_search $prefix/utf8/include"
- test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/utf8" && cf_search="$cf_search $prefix/include/utf8"
+ test -d "$prefix/include/utf8/include" && cf_search="$cf_search $prefix/include/utf8/include"
+ test -d "$prefix/utf8/include" && cf_search="$cf_search $prefix/utf8/include"
+ test -d "$prefix/utf8/include/utf8" && cf_search="$cf_search $prefix/utf8/include/utf8"
}
for cf_subdir_prefix in \
@@ -7159,13 +7707,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/utf8 && cf_search="$cf_search $cf_subdir_prefix/include/utf8"
- test -d $cf_subdir_prefix/include/utf8/include && cf_search="$cf_search $cf_subdir_prefix/include/utf8/include"
- test -d $cf_subdir_prefix/utf8/include && cf_search="$cf_search $cf_subdir_prefix/utf8/include"
- test -d $cf_subdir_prefix/utf8/include/utf8 && cf_search="$cf_search $cf_subdir_prefix/utf8/include/utf8"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/utf8" && cf_search="$cf_search $cf_subdir_prefix/include/utf8"
+ test -d "$cf_subdir_prefix/include/utf8/include" && cf_search="$cf_search $cf_subdir_prefix/include/utf8/include"
+ test -d "$cf_subdir_prefix/utf8/include" && cf_search="$cf_search $cf_subdir_prefix/utf8/include"
+ test -d "$cf_subdir_prefix/utf8/include/utf8" && cf_search="$cf_search $cf_subdir_prefix/utf8/include/utf8"
}
done
@@ -7173,33 +7721,33 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/utf8 && cf_search="$cf_search $includedir/utf8"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/utf8" && cf_search="$cf_search $includedir/utf8"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/utf8 && cf_search="$cf_search $oldincludedir/utf8"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/utf8" && cf_search="$cf_search $oldincludedir/utf8"
}
cf_search="$cf_search $cf_header_path_list"
for cf_cv_header_path_utf8 in $cf_search
do
- if test -d $cf_cv_header_path_utf8 ; then
+ if test -d "$cf_cv_header_path_utf8" ; then
test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6
-echo "${as_me:-configure}:7194: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:7742: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
CPPFLAGS="$cf_save_CPPFLAGS"
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_cv_header_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
-#line 7202 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7750 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -7211,40 +7759,40 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7215: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:7763: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7218: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7221: \"$ac_try\"") >&5
+ echo "$as_me:7766: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:7769: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7224: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7772: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6
-echo "${as_me:-configure}:7229: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:7777: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
cf_cv_find_linkage_utf8=maybe
cf_test_CPPFLAGS="$CPPFLAGS"
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
CPPFLAGS="$cf_save_CPPFLAGS"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
done
if test "$cf_cv_find_linkage_utf8" = maybe ; then
-echo "${as_me:-configure}:7247: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
+echo "${as_me:-configure}:7795: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
cf_save_LIBS="$LIBS"
cf_save_LDFLAGS="$LDFLAGS"
@@ -7256,7 +7804,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -7264,11 +7812,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/utf8 && cf_search="$cf_search $cf_library_path/lib/utf8"
- test -d $cf_library_path/lib/utf8/lib && cf_search="$cf_search $cf_library_path/lib/utf8/lib"
- test -d $cf_library_path/utf8/lib && cf_search="$cf_search $cf_library_path/utf8/lib"
- test -d $cf_library_path/utf8/lib/utf8 && cf_search="$cf_search $cf_library_path/utf8/lib/utf8"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/utf8" && cf_search="$cf_search $cf_library_path/lib/utf8"
+ test -d "$cf_library_path/lib/utf8/lib" && cf_search="$cf_search $cf_library_path/lib/utf8/lib"
+ test -d "$cf_library_path/utf8/lib" && cf_search="$cf_search $cf_library_path/utf8/lib"
+ test -d "$cf_library_path/utf8/lib/utf8" && cf_search="$cf_search $cf_library_path/utf8/lib/utf8"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -7283,11 +7831,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/utf8 && cf_search="$cf_search $prefix/lib/utf8"
- test -d $prefix/lib/utf8/lib && cf_search="$cf_search $prefix/lib/utf8/lib"
- test -d $prefix/utf8/lib && cf_search="$cf_search $prefix/utf8/lib"
- test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/utf8" && cf_search="$cf_search $prefix/lib/utf8"
+ test -d "$prefix/lib/utf8/lib" && cf_search="$cf_search $prefix/lib/utf8/lib"
+ test -d "$prefix/utf8/lib" && cf_search="$cf_search $prefix/utf8/lib"
+ test -d "$prefix/utf8/lib/utf8" && cf_search="$cf_search $prefix/utf8/lib/utf8"
}
for cf_subdir_prefix in \
@@ -7301,13 +7849,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/utf8 && cf_search="$cf_search $cf_subdir_prefix/lib/utf8"
- test -d $cf_subdir_prefix/lib/utf8/lib && cf_search="$cf_search $cf_subdir_prefix/lib/utf8/lib"
- test -d $cf_subdir_prefix/utf8/lib && cf_search="$cf_search $cf_subdir_prefix/utf8/lib"
- test -d $cf_subdir_prefix/utf8/lib/utf8 && cf_search="$cf_search $cf_subdir_prefix/utf8/lib/utf8"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/utf8" && cf_search="$cf_search $cf_subdir_prefix/lib/utf8"
+ test -d "$cf_subdir_prefix/lib/utf8/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/utf8/lib"
+ test -d "$cf_subdir_prefix/utf8/lib" && cf_search="$cf_search $cf_subdir_prefix/utf8/lib"
+ test -d "$cf_subdir_prefix/utf8/lib/utf8" && cf_search="$cf_search $cf_subdir_prefix/utf8/lib/utf8"
}
done
@@ -7316,16 +7864,16 @@ cf_search="$cf_library_path_list $cf_search"
for cf_cv_library_path_utf8 in $cf_search
do
- if test -d $cf_cv_library_path_utf8 ; then
+ if test -d "$cf_cv_library_path_utf8" ; then
test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6
-echo "${as_me:-configure}:7322: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:7870: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
CPPFLAGS="$cf_test_CPPFLAGS"
LIBS="-lutf8 $cf_save_LIBS"
LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
-#line 7328 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7876 "configure"
#include "confdefs.h"
#include <libutf8.h>
@@ -7337,36 +7885,36 @@ putwc(0,0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7341: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:7889: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7344: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7347: \"$ac_try\"") >&5
+ echo "$as_me:7892: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:7895: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7350: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:7898: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6
-echo "${as_me:-configure}:7355: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
+echo "${as_me:-configure}:7903: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
cf_cv_find_linkage_utf8=yes
cf_cv_library_file_utf8="-lutf8"
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
CPPFLAGS="$cf_save_CPPFLAGS"
LIBS="$cf_save_LIBS"
LDFLAGS="$cf_save_LDFLAGS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
done
CPPFLAGS="$cf_save_CPPFLAGS"
@@ -7378,10 +7926,10 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
fi
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
@@ -7392,9 +7940,9 @@ cf_cv_utf8_lib=no
fi
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:7397: result: $cf_cv_utf8_lib" >&5
+echo "$as_me:7945: result: $cf_cv_utf8_lib" >&5
echo "${ECHO_T}$cf_cv_utf8_lib" >&6
# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
@@ -7408,9 +7956,9 @@ EOF
if test -n "$cf_cv_header_path_utf8" ; then
for cf_add_incdir in $cf_cv_header_path_utf8
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -7431,8 +7979,8 @@ if test -n "$cf_cv_header_path_utf8" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 7435 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 7983 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -7443,25 +7991,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7447: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:7995: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7450: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7453: \"$ac_try\"") >&5
+ echo "$as_me:7998: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8001: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7456: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8004: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -7470,11 +8018,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:7473: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:8021: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -7490,9 +8038,9 @@ fi
if test -n "$cf_cv_library_path_utf8" ; then
for cf_add_libdir in $cf_cv_library_path_utf8
do
- if test $cf_add_libdir = /usr/lib ; then
+ if test "$cf_add_libdir" = /usr/lib ; then
:
- elif test -d $cf_add_libdir
+ elif test -d "$cf_add_libdir"
then
cf_have_libdir=no
if test -n "$LDFLAGS$LIBS" ; then
@@ -7506,7 +8054,7 @@ if test -n "$cf_cv_library_path_utf8" ; then
if test "$cf_have_libdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-echo "${as_me:-configure}:7509: testing adding $cf_add_libdir to library-path ..." 1>&5
+echo "${as_me:-configure}:8057: testing adding $cf_add_libdir to library-path ..." 1>&5
LDFLAGS="-L$cf_add_libdir $LDFLAGS"
fi
@@ -7536,39 +8084,264 @@ cf_ncuconfig_root=$cf_cv_screen
cf_have_ncuconfig=no
if test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:7539: checking pkg-config for $cf_ncuconfig_root" >&5
+ echo "$as_me:8087: checking pkg-config for $cf_ncuconfig_root" >&5
echo $ECHO_N "checking pkg-config for $cf_ncuconfig_root... $ECHO_C" >&6
if "$PKG_CONFIG" --exists $cf_ncuconfig_root ; then
- echo "$as_me:7542: result: yes" >&5
+ echo "$as_me:8090: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:7545: checking if the $cf_ncuconfig_root package files work" >&5
+ echo "$as_me:8093: checking if the $cf_ncuconfig_root package files work" >&5
echo $ECHO_N "checking if the $cf_ncuconfig_root package files work... $ECHO_C" >&6
cf_have_ncuconfig=unknown
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+ cf_pkg_cflags="`$PKG_CONFIG --cflags $cf_ncuconfig_root`"
+ cf_pkg_libs="`$PKG_CONFIG --libs $cf_ncuconfig_root`"
+
+ # while -W for passing linker flags is prevalent, it is not "standard".
+ # At least one wrapper for c89/c99 (in Apple's xcode) has its own
+ # incompatible _and_ non-standard -W option which gives an error. Work
+ # around that pitfall.
+ case "x${CC}@@${cf_pkg_libs}@${cf_pkg_cflags}" in
+ (x*c[89]9@@*-W*)
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkg_cflags
+do
+case "$cf_fix_cppflags" in
+(no)
+ case "$cf_add_cflags" in
+ (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=yes
+
+ if test "$cf_fix_cppflags" = yes ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ elif test "${cf_tst_cflags}" = "\"'" ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ fi
+ ;;
+ esac
+ case "$CPPFLAGS" in
+ (*$cf_add_cflags)
+ ;;
+ (*)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
+
+ ;;
+ esac
+
+ test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
+ cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+ (*)
+
+ test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
+ cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+(yes)
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=no
+ ;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_new_cflags"
+
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+ test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
+ CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
+
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+ test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
+ EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
+
+fi
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8226 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main (void)
+{
+initscr(); mousemask(0,0); tigetstr((char *)0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:8238: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:8241: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:8244: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:8247: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ if test "$cross_compiling" = yes; then
+ cf_test_ncuconfig=maybe
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8253 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+ int main(void)
+ { const char *xx = curses_version(); return (xx == 0); }
+_ACEOF
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:8260: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:8263: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:8265: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:8268: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_test_ncuconfig=yes
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
+
+ if test "x$cf_test_ncuconfig" != xyes; then
+ cf_temp=`echo "x$cf_pkg_cflags" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_cflags="$cf_temp"
+ cf_temp=`echo "x$cf_pkg_libs" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_libs="$cf_temp"
+ fi
+ ;;
+ esac
+
+for cf_add_cflags in $cf_pkg_cflags
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags $cf_ncuconfig_root`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -7587,7 +8360,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -7617,7 +8390,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -7647,10 +8420,12 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs $cf_ncuconfig_root`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -7663,67 +8438,67 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 7667 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8442 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7679: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:8454: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7682: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:7685: \"$ac_try\"") >&5
+ echo "$as_me:8457: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:8460: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7688: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8463: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_ncuconfig=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 7694 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8469 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
- { char *xx = curses_version(); return (xx == 0); }
+ { const char *xx = curses_version(); return (xx == 0); }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:7701: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:8476: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:7704: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:7706: \"$ac_try\"") >&5
+ echo "$as_me:8479: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:8481: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7709: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8484: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_ncuconfig=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:7726: result: $cf_have_ncuconfig" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:8501: result: $cf_have_ncuconfig" >&5
echo "${ECHO_T}$cf_have_ncuconfig" >&6
test "$cf_have_ncuconfig" = maybe && cf_have_ncuconfig=yes
if test "$cf_have_ncuconfig" != "yes"
@@ -7739,13 +8514,13 @@ EOF
NCURSES_CONFIG_PKG=$cf_ncuconfig_root
-echo "$as_me:7742: checking for terminfo header" >&5
+echo "$as_me:8517: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -7756,8 +8531,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 7760 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 8535 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -7766,43 +8541,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7775: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8550: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:7778: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:7781: \"$ac_try\"") >&5
+ echo "$as_me:8553: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8556: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:7784: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8559: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:7800: result: $cf_cv_term_header" >&5
+echo "$as_me:8575: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -7812,7 +8587,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -7832,7 +8607,7 @@ esac
fi
else
- echo "$as_me:7835: result: no" >&5
+ echo "$as_me:8610: result: no" >&5
echo "${ECHO_T}no" >&6
NCURSES_CONFIG_PKG=none
fi
@@ -7848,7 +8623,7 @@ if test -n "$ac_tool_prefix"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:7851: checking for $ac_word" >&5
+echo "$as_me:8626: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7863,7 +8638,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-echo "$as_me:7866: found $ac_dir/$ac_word" >&5
+echo "$as_me:8641: found $ac_dir/$ac_word" >&5
break
done
@@ -7871,10 +8646,10 @@ fi
fi
NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
if test -n "$NCURSES_CONFIG"; then
- echo "$as_me:7874: result: $NCURSES_CONFIG" >&5
+ echo "$as_me:8649: result: $NCURSES_CONFIG" >&5
echo "${ECHO_T}$NCURSES_CONFIG" >&6
else
- echo "$as_me:7877: result: no" >&5
+ echo "$as_me:8652: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -7887,7 +8662,7 @@ if test -z "$NCURSES_CONFIG"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:7890: checking for $ac_word" >&5
+echo "$as_me:8665: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7902,7 +8677,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
-echo "$as_me:7905: found $ac_dir/$ac_word" >&5
+echo "$as_me:8680: found $ac_dir/$ac_word" >&5
break
done
@@ -7910,10 +8685,10 @@ fi
fi
ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
if test -n "$ac_ct_NCURSES_CONFIG"; then
- echo "$as_me:7913: result: $ac_ct_NCURSES_CONFIG" >&5
+ echo "$as_me:8688: result: $ac_ct_NCURSES_CONFIG" >&5
echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
else
- echo "$as_me:7916: result: no" >&5
+ echo "$as_me:8691: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -7926,26 +8701,52 @@ fi
if test "$NCURSES_CONFIG" != none ; then
+for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -7964,7 +8765,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -7994,7 +8795,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -8024,6 +8825,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
@@ -8042,7 +8845,7 @@ LIBS="$cf_add_libs"
# even with config script, some packages use no-override for curses.h
-echo "$as_me:8045: checking if we have identified curses headers" >&5
+echo "$as_me:8848: checking if we have identified curses headers" >&5
echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
if test "${cf_cv_ncurses_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8053,8 +8856,8 @@ for cf_header in \
ncurses.h $cf_cv_screen/ncurses.h \
curses.h $cf_cv_screen/curses.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 8057 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 8860 "configure"
#include "confdefs.h"
#include <${cf_header}>
int
@@ -8065,32 +8868,32 @@ initscr(); tgoto("?", 0,0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8069: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:8872: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8072: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8075: \"$ac_try\"") >&5
+ echo "$as_me:8875: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:8878: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8078: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:8881: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_header=$cf_header; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:8089: result: $cf_cv_ncurses_header" >&5
+echo "$as_me:8892: result: $cf_cv_ncurses_header" >&5
echo "${ECHO_T}$cf_cv_ncurses_header" >&6
if test "$cf_cv_ncurses_header" = none ; then
- { { echo "$as_me:8093: error: No curses header-files found" >&5
+ { { echo "$as_me:8896: error: No curses header-files found" >&5
echo "$as_me: error: No curses header-files found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -8100,24 +8903,24 @@ fi
for ac_header in $cf_cv_ncurses_header
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:8103: checking for $ac_header" >&5
+echo "$as_me:8906: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8109 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8912 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:8113: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:8916: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:8119: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:8922: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -8130,14 +8933,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:8138: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:8941: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -8155,7 +8958,7 @@ cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuv
#define $cf_nculib_ROOT 1
EOF
- cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+ cf_cv_ncurses_version="`$NCURSES_CONFIG --version`"
else
@@ -8167,9 +8970,9 @@ test "$cf_cv_curses_dir" != "no" && { \
if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -8190,8 +8993,8 @@ if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 8194 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 8997 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -8202,25 +9005,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8206: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9009: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8209: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8212: \"$ac_try\"") >&5
+ echo "$as_me:9012: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9015: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8215: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9018: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -8229,11 +9032,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:8232: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:9035: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -8248,19 +9051,19 @@ fi
}
-echo "$as_me:8251: checking for $cf_ncuhdr_root header in include-path" >&5
+echo "$as_me:9054: checking for $cf_ncuhdr_root header in include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+ { test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw; } && cf_header_list="$cf_header_list curses.h ncurses.h"
for cf_header in $cf_header_list
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 8263 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9066 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -8270,10 +9073,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -8283,39 +9086,39 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8287: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9090: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8290: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8293: \"$ac_try\"") >&5
+ echo "$as_me:9093: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9096: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8296: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9099: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_ncurses_h" != no && break
done
fi
-echo "$as_me:8311: result: $cf_cv_ncurses_h" >&5
+echo "$as_me:9114: result: $cf_cv_ncurses_h" >&5
echo "${ECHO_T}$cf_cv_ncurses_h" >&6
if test "$cf_cv_ncurses_h" != no ; then
cf_cv_ncurses_header=$cf_cv_ncurses_h
else
-echo "$as_me:8318: checking for $cf_ncuhdr_root include-path" >&5
+echo "$as_me:9121: checking for $cf_ncuhdr_root include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h2+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8330,7 +9133,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -8338,11 +9141,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
- test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -8359,11 +9162,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
- test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+ test -d "$prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
for cf_subdir_prefix in \
@@ -8377,13 +9180,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
done
@@ -8391,20 +9194,20 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/$cf_ncuhdr_root" && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/$cf_ncuhdr_root" && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
}
cf_search="$cf_search $cf_header_path_list"
- test -n "$verbose" && echo search path $cf_search
+ test -n "$verbose" && echo "search path $cf_search"
cf_save2_CPPFLAGS="$CPPFLAGS"
for cf_incdir in $cf_search
do
@@ -8412,9 +9215,9 @@ cf_search="$cf_search $cf_header_path_list"
if test -n "$cf_incdir" ; then
for cf_add_incdir in $cf_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -8435,8 +9238,8 @@ if test -n "$cf_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 8439 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9242 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -8447,25 +9250,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8451: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9254: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8454: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8457: \"$ac_try\"") >&5
+ echo "$as_me:9257: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9260: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8460: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9263: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -8474,11 +9277,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:8477: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:9280: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -8496,8 +9299,8 @@ fi
curses.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 8500 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9303 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -8507,10 +9310,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -8520,30 +9323,30 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8524: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9327: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8527: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8530: \"$ac_try\"") >&5
+ echo "$as_me:9330: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9333: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8533: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9336: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h2=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h2=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
if test "$cf_cv_ncurses_h2" != no ; then
cf_cv_ncurses_h2=$cf_incdir/$cf_header
- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6
+ test -n "$verbose" && echo $ECHO_N " ... found $ECHO_C" 1>&6
break
fi
test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
@@ -8551,26 +9354,26 @@ rm -f conftest.$ac_objext conftest.$ac_ext
CPPFLAGS="$cf_save2_CPPFLAGS"
test "$cf_cv_ncurses_h2" != no && break
done
- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:8554: error: not found" >&5
+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:9357: error: not found" >&5
echo "$as_me: error: not found" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:8559: result: $cf_cv_ncurses_h2" >&5
+echo "$as_me:9362: result: $cf_cv_ncurses_h2" >&5
echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
- cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+ cf_1st_incdir=`echo "$cf_cv_ncurses_h2" | sed -e 's%/[^/]*$%%'`
+ cf_cv_ncurses_header="`basename "$cf_cv_ncurses_h2"`"
+ if test "`basename "$cf_1st_incdir"`" = "$cf_ncuhdr_root" ; then
+ cf_cv_ncurses_header="$cf_ncuhdr_root/$cf_cv_ncurses_header"
fi
if test -n "$cf_1st_incdir" ; then
for cf_add_incdir in $cf_1st_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -8591,8 +9394,8 @@ if test -n "$cf_1st_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 8595 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9398 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -8603,25 +9406,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8607: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9410: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8610: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8613: \"$ac_try\"") >&5
+ echo "$as_me:9413: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9416: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8616: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9419: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -8630,11 +9433,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:8633: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:9436: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -8651,7 +9454,7 @@ fi
# Set definitions to allow ifdef'ing for ncurses.h
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(*ncurses.h)
cat >>confdefs.h <<\EOF
@@ -8661,7 +9464,7 @@ EOF
;;
esac
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(ncurses/curses.h|ncurses/ncurses.h)
cat >>confdefs.h <<\EOF
@@ -8678,13 +9481,13 @@ EOF
;;
esac
-echo "$as_me:8681: checking for terminfo header" >&5
+echo "$as_me:9484: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -8695,8 +9498,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 8699 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 9502 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -8705,43 +9508,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8714: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:9517: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:8717: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:8720: \"$ac_try\"") >&5
+ echo "$as_me:9520: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:9523: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8723: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9526: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:8739: result: $cf_cv_term_header" >&5
+echo "$as_me:9542: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -8751,7 +9554,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -8774,7 +9577,7 @@ cat >>confdefs.h <<\EOF
#define NCURSES 1
EOF
-echo "$as_me:8777: checking for ncurses version" >&5
+echo "$as_me:9580: checking for ncurses version" >&5
echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
if test "${cf_cv_ncurses_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8782,12 +9585,12 @@ else
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
if test "$cross_compiling" = yes; then
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -8800,20 +9603,20 @@ Autoconf "old"
#endif
EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
- { (eval echo "$as_me:8803: \"$cf_try\"") >&5
+ { (eval echo "$as_me:9606: \"$cf_try\"") >&5
(eval $cf_try) 2>&5
ac_status=$?
- echo "$as_me:8806: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:9609: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 8816 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9619 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -8823,13 +9626,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -8837,30 +9640,30 @@ int main(void)
${cf_cv_main_return:-return}(0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:8841: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:9644: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8844: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:8846: \"$ac_try\"") >&5
+ echo "$as_me:9647: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:9649: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8849: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9652: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_version=`cat $cf_tempfile`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
fi
-echo "$as_me:8863: result: $cf_cv_ncurses_version" >&5
+echo "$as_me:9666: result: $cf_cv_ncurses_version" >&5
echo "${ECHO_T}$cf_cv_ncurses_version" >&6
test "$cf_cv_ncurses_version" = no ||
cat >>confdefs.h <<\EOF
@@ -8873,15 +9676,15 @@ cf_nculib_root=$cf_cv_screen
# to link gpm.
cf_ncurses_LIBS=""
cf_ncurses_SAVE="$LIBS"
-echo "$as_me:8876: checking for Gpm_Open in -lgpm" >&5
+echo "$as_me:9679: checking for Gpm_Open in -lgpm" >&5
echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 8884 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 9687 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -8899,39 +9702,39 @@ Gpm_Open ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8903: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9706: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8906: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8909: \"$ac_try\"") >&5
+ echo "$as_me:9709: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9712: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8912: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9715: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_Gpm_Open=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_Gpm_Open=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:8923: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "$as_me:9726: result: $ac_cv_lib_gpm_Gpm_Open" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
-if test $ac_cv_lib_gpm_Gpm_Open = yes; then
- echo "$as_me:8926: checking for initscr in -lgpm" >&5
+if test "$ac_cv_lib_gpm_Gpm_Open" = yes; then
+ echo "$as_me:9729: checking for initscr in -lgpm" >&5
echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 8934 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 9737 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -8949,30 +9752,30 @@ initscr ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8953: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9756: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:8956: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:8959: \"$ac_try\"") >&5
+ echo "$as_me:9759: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9762: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:8962: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9765: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:8973: result: $ac_cv_lib_gpm_initscr" >&5
+echo "$as_me:9776: result: $ac_cv_lib_gpm_initscr" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6
-if test $ac_cv_lib_gpm_initscr = yes; then
+if test "$ac_cv_lib_gpm_initscr" = yes; then
LIBS="$cf_ncurses_SAVE"
else
cf_ncurses_LIBS="-lgpm"
@@ -8980,20 +9783,20 @@ fi
fi
-case $host_os in
+case "$host_os" in
(freebsd*)
# This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
+ # version of ncurses (but it should do no harm, since it is static).
if test "$cf_nculib_root" = ncurses ; then
- echo "$as_me:8988: checking for tgoto in -lmytinfo" >&5
+ echo "$as_me:9791: checking for tgoto in -lmytinfo" >&5
echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lmytinfo $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 8996 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 9799 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -9011,30 +9814,30 @@ tgoto ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9015: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9818: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9018: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9021: \"$ac_try\"") >&5
+ echo "$as_me:9821: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9824: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9024: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9827: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_mytinfo_tgoto=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_mytinfo_tgoto=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:9035: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "$as_me:9838: result: $ac_cv_lib_mytinfo_tgoto" >&5
echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
-if test $ac_cv_lib_mytinfo_tgoto = yes; then
+if test "$ac_cv_lib_mytinfo_tgoto" = yes; then
cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
fi
@@ -9058,7 +9861,7 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
cf_add_libs="$LIBS"
@@ -9079,15 +9882,15 @@ LIBS="$cf_add_libs"
else
- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=no'
cf_libdir=""
- echo "$as_me:9084: checking for initscr" >&5
+ echo "$as_me:9887: checking for initscr" >&5
echo $ECHO_N "checking for initscr... $ECHO_C" >&6
if test "${ac_cv_func_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 9090 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9893 "configure"
#include "confdefs.h"
#define initscr autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -9117,38 +9920,38 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9121: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9924: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9124: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9127: \"$ac_try\"") >&5
+ echo "$as_me:9927: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9930: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9130: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:9933: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:9140: result: $ac_cv_func_initscr" >&5
+echo "$as_me:9943: result: $ac_cv_func_initscr" >&5
echo "${ECHO_T}$ac_cv_func_initscr" >&6
-if test $ac_cv_func_initscr = yes; then
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+if test "$ac_cv_func_initscr" = yes; then
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
cf_save_LIBS="$LIBS"
- echo "$as_me:9147: checking for initscr in -l$cf_nculib_root" >&5
+ echo "$as_me:9950: checking for initscr in -l$cf_nculib_root" >&5
echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6
LIBS="-l$cf_nculib_root $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9151 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 9954 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -9159,26 +9962,26 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9163: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:9966: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9166: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9169: \"$ac_try\"") >&5
+ echo "$as_me:9969: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:9972: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9172: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:9174: result: yes" >&5
+ echo "$as_me:9975: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:9977: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:9181: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:9984: result: no" >&5
echo "${ECHO_T}no" >&6
cf_search=
@@ -9186,7 +9989,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -9194,11 +9997,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
- test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -9213,11 +10016,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
- test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+ test -d "$prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
for cf_subdir_prefix in \
@@ -9231,13 +10034,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
done
@@ -9246,11 +10049,11 @@ cf_search="$cf_library_path_list $cf_search"
for cf_libdir in $cf_search
do
- echo "$as_me:9249: checking for -l$cf_nculib_root in $cf_libdir" >&5
+ echo "$as_me:10052: checking for -l$cf_nculib_root in $cf_libdir" >&5
echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6
LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9253 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10056 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -9261,41 +10064,41 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9265: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:10068: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9268: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9271: \"$ac_try\"") >&5
+ echo "$as_me:10071: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:10074: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9274: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:9276: result: yes" >&5
+ echo "$as_me:10077: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:10079: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:9283: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:10086: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_save_LIBS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+eval 'cf_found_library="$cf_cv_have_lib_'"$cf_nculib_root"\"
-if test $cf_found_library = no ; then
- { { echo "$as_me:9298: error: Cannot link $cf_nculib_root library" >&5
+if test "$cf_found_library" = no ; then
+ { { echo "$as_me:10101: error: Cannot link $cf_nculib_root library" >&5
echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -9303,49 +10106,49 @@ fi
fi
if test -n "$cf_ncurses_LIBS" ; then
- echo "$as_me:9306: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+ echo "$as_me:10109: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6
cf_ncurses_SAVE="$LIBS"
for p in $cf_ncurses_LIBS ; do
- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+ q=`echo "$LIBS" | sed -e "s%$p %%" -e "s%$p$%%"`
if test "$q" != "$LIBS" ; then
LIBS="$q"
fi
done
- cat >conftest.$ac_ext <<_ACEOF
-#line 9316 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10119 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9328: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:10131: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9331: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9334: \"$ac_try\"") >&5
+ echo "$as_me:10134: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:10137: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9337: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:9339: result: yes" >&5
+ echo "$as_me:10140: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:10142: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:9344: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:10147: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_ncurses_SAVE"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -9366,39 +10169,50 @@ cf_ncuconfig_root=$cf_cv_screen
cf_have_ncuconfig=no
if test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:9369: checking pkg-config for $cf_ncuconfig_root" >&5
+ echo "$as_me:10172: checking pkg-config for $cf_ncuconfig_root" >&5
echo $ECHO_N "checking pkg-config for $cf_ncuconfig_root... $ECHO_C" >&6
if "$PKG_CONFIG" --exists $cf_ncuconfig_root ; then
- echo "$as_me:9372: result: yes" >&5
+ echo "$as_me:10175: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:9375: checking if the $cf_ncuconfig_root package files work" >&5
+ echo "$as_me:10178: checking if the $cf_ncuconfig_root package files work" >&5
echo $ECHO_N "checking if the $cf_ncuconfig_root package files work... $ECHO_C" >&6
cf_have_ncuconfig=unknown
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+ cf_pkg_cflags="`$PKG_CONFIG --cflags $cf_ncuconfig_root`"
+ cf_pkg_libs="`$PKG_CONFIG --libs $cf_ncuconfig_root`"
+
+ # while -W for passing linker flags is prevalent, it is not "standard".
+ # At least one wrapper for c89/c99 (in Apple's xcode) has its own
+ # incompatible _and_ non-standard -W option which gives an error. Work
+ # around that pitfall.
+ case "x${CC}@@${cf_pkg_libs}@${cf_pkg_cflags}" in
+ (x*c[89]9@@*-W*)
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags $cf_ncuconfig_root`
+for cf_add_cflags in $cf_pkg_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -9417,7 +10231,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -9447,7 +10261,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -9480,7 +10294,7 @@ fi
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs $cf_ncuconfig_root`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -9493,67 +10307,283 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 9497 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10311 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9509: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:10323: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9512: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:9515: \"$ac_try\"") >&5
+ echo "$as_me:10326: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:10329: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9518: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10332: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ if test "$cross_compiling" = yes; then
+ cf_test_ncuconfig=maybe
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10338 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+ int main(void)
+ { const char *xx = curses_version(); return (xx == 0); }
+_ACEOF
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:10345: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:10348: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:10350: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:10353: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_test_ncuconfig=yes
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
+fi
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+cf_test_ncuconfig=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
+
+ if test "x$cf_test_ncuconfig" != xyes; then
+ cf_temp=`echo "x$cf_pkg_cflags" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_cflags="$cf_temp"
+ cf_temp=`echo "x$cf_pkg_libs" | sed -e s/^x// -e 's/-W[^ ]*//g'`
+ cf_pkg_libs="$cf_temp"
+ fi
+ ;;
+ esac
+
+for cf_add_cflags in $cf_pkg_cflags
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_add_cflags
+do
+case "$cf_fix_cppflags" in
+(no)
+ case "$cf_add_cflags" in
+ (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=yes
+
+ if test "$cf_fix_cppflags" = yes ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ elif test "${cf_tst_cflags}" = "\"'" ; then
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ continue
+ fi
+ ;;
+ esac
+ case "$CPPFLAGS" in
+ (*$cf_add_cflags)
+ ;;
+ (*)
+ case "$cf_add_cflags" in
+ (-D*)
+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
+
+ ;;
+ esac
+
+ test -n "$cf_new_cppflags" && cf_new_cppflags="$cf_new_cppflags "
+ cf_new_cppflags="${cf_new_cppflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+ (*)
+
+ test -n "$cf_new_cflags" && cf_new_cflags="$cf_new_cflags "
+ cf_new_cflags="${cf_new_cflags}$cf_add_cflags"
+
+ ;;
+ esac
+ ;;
+(yes)
+
+ test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
+ cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
+
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
+
+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
+ && test -z "${cf_tst_cflags}" \
+ && cf_fix_cppflags=no
+ ;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+ test -n "$CFLAGS" && CFLAGS="$CFLAGS "
+ CFLAGS="${CFLAGS}$cf_new_cflags"
+
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+ test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
+ CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
+
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+ test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
+ EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
+
+fi
+
+done
+
+cf_add_libs="$LIBS"
+# reverse order
+cf_add_0lib=
+for cf_add_1lib in $cf_pkg_libs; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+# filter duplicates
+for cf_add_1lib in $cf_add_0lib; do
+ for cf_add_2lib in $cf_add_libs; do
+ if test "x$cf_add_1lib" = "x$cf_add_2lib"; then
+ cf_add_1lib=
+ break
+ fi
+ done
+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_1lib $cf_add_libs"
+done
+LIBS="$cf_add_libs"
+
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10527 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main (void)
+{
+initscr(); mousemask(0,0); tigetstr((char *)0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:10539: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:10542: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:10545: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:10548: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_ncuconfig=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 9524 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10554 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
- { char *xx = curses_version(); return (xx == 0); }
+ { const char *xx = curses_version(); return (xx == 0); }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:9531: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:10561: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:9534: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:9536: \"$ac_try\"") >&5
+ echo "$as_me:10564: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:10566: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9539: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10569: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_ncuconfig=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_ncuconfig=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:9556: result: $cf_have_ncuconfig" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:10586: result: $cf_have_ncuconfig" >&5
echo "${ECHO_T}$cf_have_ncuconfig" >&6
test "$cf_have_ncuconfig" = maybe && cf_have_ncuconfig=yes
if test "$cf_have_ncuconfig" != "yes"
@@ -9569,13 +10599,13 @@ EOF
NCURSES_CONFIG_PKG=$cf_ncuconfig_root
-echo "$as_me:9572: checking for terminfo header" >&5
+echo "$as_me:10602: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -9586,8 +10616,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 9590 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 10620 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -9596,43 +10626,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9605: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10635: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9608: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9611: \"$ac_try\"") >&5
+ echo "$as_me:10638: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10641: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9614: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10644: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:9630: result: $cf_cv_term_header" >&5
+echo "$as_me:10660: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -9642,7 +10672,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -9662,7 +10692,7 @@ esac
fi
else
- echo "$as_me:9665: result: no" >&5
+ echo "$as_me:10695: result: no" >&5
echo "${ECHO_T}no" >&6
NCURSES_CONFIG_PKG=none
fi
@@ -9678,7 +10708,7 @@ if test -n "$ac_tool_prefix"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:9681: checking for $ac_word" >&5
+echo "$as_me:10711: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9693,7 +10723,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-echo "$as_me:9696: found $ac_dir/$ac_word" >&5
+echo "$as_me:10726: found $ac_dir/$ac_word" >&5
break
done
@@ -9701,10 +10731,10 @@ fi
fi
NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
if test -n "$NCURSES_CONFIG"; then
- echo "$as_me:9704: result: $NCURSES_CONFIG" >&5
+ echo "$as_me:10734: result: $NCURSES_CONFIG" >&5
echo "${ECHO_T}$NCURSES_CONFIG" >&6
else
- echo "$as_me:9707: result: no" >&5
+ echo "$as_me:10737: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -9717,7 +10747,7 @@ if test -z "$NCURSES_CONFIG"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:9720: checking for $ac_word" >&5
+echo "$as_me:10750: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9732,7 +10762,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
-echo "$as_me:9735: found $ac_dir/$ac_word" >&5
+echo "$as_me:10765: found $ac_dir/$ac_word" >&5
break
done
@@ -9740,10 +10770,10 @@ fi
fi
ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
if test -n "$ac_ct_NCURSES_CONFIG"; then
- echo "$as_me:9743: result: $ac_ct_NCURSES_CONFIG" >&5
+ echo "$as_me:10773: result: $ac_ct_NCURSES_CONFIG" >&5
echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
else
- echo "$as_me:9746: result: no" >&5
+ echo "$as_me:10776: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -9756,26 +10786,52 @@ fi
if test "$NCURSES_CONFIG" != none ; then
+for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$NCURSES_CONFIG --cflags`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -9794,7 +10850,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -9824,7 +10880,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -9854,6 +10910,8 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
@@ -9872,7 +10930,7 @@ LIBS="$cf_add_libs"
# even with config script, some packages use no-override for curses.h
-echo "$as_me:9875: checking if we have identified curses headers" >&5
+echo "$as_me:10933: checking if we have identified curses headers" >&5
echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
if test "${cf_cv_ncurses_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9883,8 +10941,8 @@ for cf_header in \
ncurses.h $cf_cv_screen/ncurses.h \
curses.h $cf_cv_screen/curses.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 9887 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 10945 "configure"
#include "confdefs.h"
#include <${cf_header}>
int
@@ -9895,32 +10953,32 @@ initscr(); tgoto("?", 0,0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9899: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:10957: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:9902: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:9905: \"$ac_try\"") >&5
+ echo "$as_me:10960: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:10963: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:9908: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:10966: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_header=$cf_header; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:9919: result: $cf_cv_ncurses_header" >&5
+echo "$as_me:10977: result: $cf_cv_ncurses_header" >&5
echo "${ECHO_T}$cf_cv_ncurses_header" >&6
if test "$cf_cv_ncurses_header" = none ; then
- { { echo "$as_me:9923: error: No curses header-files found" >&5
+ { { echo "$as_me:10981: error: No curses header-files found" >&5
echo "$as_me: error: No curses header-files found" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -9930,24 +10988,24 @@ fi
for ac_header in $cf_cv_ncurses_header
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:9933: checking for $ac_header" >&5
+echo "$as_me:10991: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 9939 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 10997 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:9943: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:11001: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:9949: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:11007: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -9960,14 +11018,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:9968: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:11026: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -9985,7 +11043,7 @@ cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuv
#define $cf_nculib_ROOT 1
EOF
- cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+ cf_cv_ncurses_version="`$NCURSES_CONFIG --version`"
else
@@ -9997,9 +11055,9 @@ test "$cf_cv_curses_dir" != "no" && { \
if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -10020,8 +11078,8 @@ if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10024 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11082 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -10032,25 +11090,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10036: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11094: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10039: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10042: \"$ac_try\"") >&5
+ echo "$as_me:11097: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11100: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10045: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11103: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -10059,11 +11117,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:10062: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:11120: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -10078,19 +11136,19 @@ fi
}
-echo "$as_me:10081: checking for $cf_ncuhdr_root header in include-path" >&5
+echo "$as_me:11139: checking for $cf_ncuhdr_root header in include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+ { test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw; } && cf_header_list="$cf_header_list curses.h ncurses.h"
for cf_header in $cf_header_list
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 10093 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11151 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -10100,10 +11158,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -10113,39 +11171,39 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10117: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11175: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10120: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10123: \"$ac_try\"") >&5
+ echo "$as_me:11178: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11181: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10126: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11184: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_ncurses_h" != no && break
done
fi
-echo "$as_me:10141: result: $cf_cv_ncurses_h" >&5
+echo "$as_me:11199: result: $cf_cv_ncurses_h" >&5
echo "${ECHO_T}$cf_cv_ncurses_h" >&6
if test "$cf_cv_ncurses_h" != no ; then
cf_cv_ncurses_header=$cf_cv_ncurses_h
else
-echo "$as_me:10148: checking for $cf_ncuhdr_root include-path" >&5
+echo "$as_me:11206: checking for $cf_ncuhdr_root include-path" >&5
echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6
if test "${cf_cv_ncurses_h2+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -10160,7 +11218,7 @@ cf_header_path_list=""
if test -n "${CFLAGS}${CPPFLAGS}" ; then
for cf_header_path in $CPPFLAGS $CFLAGS
do
- case $cf_header_path in
+ case "$cf_header_path" in
(-I*)
cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
@@ -10168,11 +11226,11 @@ test "x$cf_header_path" != "xNONE" && \
test -d "$cf_header_path" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include"
- test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
- test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
- test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include" && cf_search="$cf_search $cf_header_path/include"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
+ test -d "$cf_header_path/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
+ test -d "$cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
cf_header_path_list="$cf_header_path_list $cf_search"
@@ -10189,11 +11247,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for include-directories under $prefix"
- test -d $prefix/include && cf_search="$cf_search $prefix/include"
- test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
- test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$prefix/include" && cf_search="$cf_search $prefix/include"
+ test -d "$prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+ test -d "$prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+ test -d "$prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
for cf_subdir_prefix in \
@@ -10207,13 +11265,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for include-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/include && cf_search="$cf_search $cf_subdir_prefix/include"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
- test -d $cf_subdir_prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
- test -d $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include" && cf_search="$cf_search $cf_subdir_prefix/include"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root"
+ test -d "$cf_subdir_prefix/include/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/include/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include"
+ test -d "$cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
}
done
@@ -10221,20 +11279,20 @@ done
test "$includedir" != NONE && \
test "$includedir" != "/usr/include" && \
test -d "$includedir" && {
- test -d $includedir && cf_search="$cf_search $includedir"
- test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+ test -d "$includedir" && cf_search="$cf_search $includedir"
+ test -d "$includedir/$cf_ncuhdr_root" && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
}
test "$oldincludedir" != NONE && \
test "$oldincludedir" != "/usr/include" && \
test -d "$oldincludedir" && {
- test -d $oldincludedir && cf_search="$cf_search $oldincludedir"
- test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+ test -d "$oldincludedir" && cf_search="$cf_search $oldincludedir"
+ test -d "$oldincludedir/$cf_ncuhdr_root" && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
}
cf_search="$cf_search $cf_header_path_list"
- test -n "$verbose" && echo search path $cf_search
+ test -n "$verbose" && echo "search path $cf_search"
cf_save2_CPPFLAGS="$CPPFLAGS"
for cf_incdir in $cf_search
do
@@ -10242,9 +11300,9 @@ cf_search="$cf_search $cf_header_path_list"
if test -n "$cf_incdir" ; then
for cf_add_incdir in $cf_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -10265,8 +11323,8 @@ if test -n "$cf_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10269 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11327 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -10277,25 +11335,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10281: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11339: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10284: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10287: \"$ac_try\"") >&5
+ echo "$as_me:11342: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11345: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10290: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11348: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -10304,11 +11362,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:10307: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:11365: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -10326,8 +11384,8 @@ fi
curses.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 10330 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11388 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -10337,10 +11395,10 @@ main (void)
#ifdef NCURSES_VERSION
-printf("%s\n", NCURSES_VERSION);
+printf("%s\\n", NCURSES_VERSION);
#else
#ifdef __NCURSES_H
-printf("old\n");
+printf("old\\n");
#else
make an error
#endif
@@ -10350,30 +11408,30 @@ printf("old\n");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10354: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11412: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10357: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10360: \"$ac_try\"") >&5
+ echo "$as_me:11415: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11418: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10363: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11421: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_h2=$cf_header
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_h2=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
if test "$cf_cv_ncurses_h2" != no ; then
cf_cv_ncurses_h2=$cf_incdir/$cf_header
- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6
+ test -n "$verbose" && echo $ECHO_N " ... found $ECHO_C" 1>&6
break
fi
test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
@@ -10381,26 +11439,26 @@ rm -f conftest.$ac_objext conftest.$ac_ext
CPPFLAGS="$cf_save2_CPPFLAGS"
test "$cf_cv_ncurses_h2" != no && break
done
- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:10384: error: not found" >&5
+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:11442: error: not found" >&5
echo "$as_me: error: not found" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:10389: result: $cf_cv_ncurses_h2" >&5
+echo "$as_me:11447: result: $cf_cv_ncurses_h2" >&5
echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
- cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+ cf_1st_incdir=`echo "$cf_cv_ncurses_h2" | sed -e 's%/[^/]*$%%'`
+ cf_cv_ncurses_header="`basename "$cf_cv_ncurses_h2"`"
+ if test "`basename "$cf_1st_incdir"`" = "$cf_ncuhdr_root" ; then
+ cf_cv_ncurses_header="$cf_ncuhdr_root/$cf_cv_ncurses_header"
fi
if test -n "$cf_1st_incdir" ; then
for cf_add_incdir in $cf_1st_incdir
do
- while test $cf_add_incdir != /usr/include
+ while test "$cf_add_incdir" != /usr/include
do
- if test -d $cf_add_incdir
+ if test -d "$cf_add_incdir"
then
cf_have_incdir=no
if test -n "$CFLAGS$CPPFLAGS" ; then
@@ -10421,8 +11479,8 @@ if test -n "$cf_1st_incdir" ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10425 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11483 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -10433,25 +11491,25 @@ printf("Hello")
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10437: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11495: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10440: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10443: \"$ac_try\"") >&5
+ echo "$as_me:11498: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11501: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10446: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11504: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_incdir=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS=$cf_save_CPPFLAGS
fi
fi
@@ -10460,11 +11518,11 @@ rm -f conftest.$ac_objext conftest.$ac_ext
if test "$cf_have_incdir" = no ; then
test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-echo "${as_me:-configure}:10463: testing adding $cf_add_incdir to include-path ..." 1>&5
+echo "${as_me:-configure}:11521: testing adding $cf_add_incdir to include-path ..." 1>&5
CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+ cf_top_incdir=`echo "$cf_add_incdir" | sed -e 's%/include/.*$%/include%'`
test "$cf_top_incdir" = "$cf_add_incdir" && break
cf_add_incdir="$cf_top_incdir"
else
@@ -10481,7 +11539,7 @@ fi
# Set definitions to allow ifdef'ing for ncurses.h
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(*ncurses.h)
cat >>confdefs.h <<\EOF
@@ -10491,7 +11549,7 @@ EOF
;;
esac
-case $cf_cv_ncurses_header in
+case "$cf_cv_ncurses_header" in
(ncurses/curses.h|ncurses/ncurses.h)
cat >>confdefs.h <<\EOF
@@ -10508,13 +11566,13 @@ EOF
;;
esac
-echo "$as_me:10511: checking for terminfo header" >&5
+echo "$as_me:11569: checking for terminfo header" >&5
echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-case ${cf_cv_ncurses_header} in
+case "${cf_cv_ncurses_header}" in
(*/ncurses.h|*/ncursesw.h)
cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
;;
@@ -10525,8 +11583,8 @@ esac
for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 10529 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 11587 "configure"
#include "confdefs.h"
#include <stdio.h>
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -10535,43 +11593,43 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int x = auto_left_margin
+int x = auto_left_margin; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:10544: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:11602: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:10547: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:10550: \"$ac_try\"") >&5
+ echo "$as_me:11605: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:11608: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10553: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11611: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header="$cf_test"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
test "$cf_cv_term_header" != unknown && break
done
fi
-echo "$as_me:10569: result: $cf_cv_term_header" >&5
+echo "$as_me:11627: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
# Set definitions to allow ifdef'ing to accommodate subdirectories
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(*term.h)
cat >>confdefs.h <<\EOF
@@ -10581,7 +11639,7 @@ EOF
;;
esac
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(ncurses/term.h)
cat >>confdefs.h <<\EOF
@@ -10604,7 +11662,7 @@ cat >>confdefs.h <<\EOF
#define NCURSES 1
EOF
-echo "$as_me:10607: checking for ncurses version" >&5
+echo "$as_me:11665: checking for ncurses version" >&5
echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
if test "${cf_cv_ncurses_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -10612,12 +11670,12 @@ else
cf_cv_ncurses_version=no
cf_tempfile=out$$
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
if test "$cross_compiling" = yes; then
# This will not work if the preprocessor splits the line after the
# Autoconf token. The 'unproto' program does that.
- cat > conftest.$ac_ext <<EOF
+ cat > "conftest.$ac_ext" <<EOF
#include <${cf_cv_ncurses_header:-curses.h}>
#undef Autoconf
#ifdef NCURSES_VERSION
@@ -10630,20 +11688,20 @@ Autoconf "old"
#endif
EOF
cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
- { (eval echo "$as_me:10633: \"$cf_try\"") >&5
+ { (eval echo "$as_me:11691: \"$cf_try\"") >&5
(eval $cf_try) 2>&5
ac_status=$?
- echo "$as_me:10636: \$? = $ac_status" >&5
- (exit $ac_status); }
+ echo "$as_me:11694: \$? = $ac_status" >&5
+ (exit "$ac_status"); }
if test -f conftest.out ; then
- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+ cf_out=`sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%' conftest.out`
test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
rm -f conftest.out
fi
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 10646 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11704 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -10653,13 +11711,13 @@ int main(void)
FILE *fp = fopen("$cf_tempfile", "w");
#ifdef NCURSES_VERSION
# ifdef NCURSES_VERSION_PATCH
- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+ fprintf(fp, "%s.%d\\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
# else
- fprintf(fp, "%s\n", NCURSES_VERSION);
+ fprintf(fp, "%s\\n", NCURSES_VERSION);
# endif
#else
# ifdef __NCURSES_H
- fprintf(fp, "old\n");
+ fprintf(fp, "old\\n");
# else
make an error
# endif
@@ -10667,30 +11725,30 @@ int main(void)
${cf_cv_main_return:-return}(0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:10671: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:11729: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10674: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:10676: \"$ac_try\"") >&5
+ echo "$as_me:11732: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:11734: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10679: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11737: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_version=`cat $cf_tempfile`
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
- rm -f $cf_tempfile
+ rm -f "$cf_tempfile"
fi
-echo "$as_me:10693: result: $cf_cv_ncurses_version" >&5
+echo "$as_me:11751: result: $cf_cv_ncurses_version" >&5
echo "${ECHO_T}$cf_cv_ncurses_version" >&6
test "$cf_cv_ncurses_version" = no ||
cat >>confdefs.h <<\EOF
@@ -10703,15 +11761,15 @@ cf_nculib_root=$cf_cv_screen
# to link gpm.
cf_ncurses_LIBS=""
cf_ncurses_SAVE="$LIBS"
-echo "$as_me:10706: checking for Gpm_Open in -lgpm" >&5
+echo "$as_me:11764: checking for Gpm_Open in -lgpm" >&5
echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 10714 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 11772 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -10729,39 +11787,39 @@ Gpm_Open ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10733: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11791: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10736: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10739: \"$ac_try\"") >&5
+ echo "$as_me:11794: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11797: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10742: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11800: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_Gpm_Open=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_Gpm_Open=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:10753: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "$as_me:11811: result: $ac_cv_lib_gpm_Gpm_Open" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
-if test $ac_cv_lib_gpm_Gpm_Open = yes; then
- echo "$as_me:10756: checking for initscr in -lgpm" >&5
+if test "$ac_cv_lib_gpm_Gpm_Open" = yes; then
+ echo "$as_me:11814: checking for initscr in -lgpm" >&5
echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6
if test "${ac_cv_lib_gpm_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lgpm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 10764 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 11822 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -10779,30 +11837,30 @@ initscr ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10783: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11841: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10786: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10789: \"$ac_try\"") >&5
+ echo "$as_me:11844: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11847: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10792: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11850: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_gpm_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_gpm_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:10803: result: $ac_cv_lib_gpm_initscr" >&5
+echo "$as_me:11861: result: $ac_cv_lib_gpm_initscr" >&5
echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6
-if test $ac_cv_lib_gpm_initscr = yes; then
+if test "$ac_cv_lib_gpm_initscr" = yes; then
LIBS="$cf_ncurses_SAVE"
else
cf_ncurses_LIBS="-lgpm"
@@ -10810,20 +11868,20 @@ fi
fi
-case $host_os in
+case "$host_os" in
(freebsd*)
# This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
+ # version of ncurses (but it should do no harm, since it is static).
if test "$cf_nculib_root" = ncurses ; then
- echo "$as_me:10818: checking for tgoto in -lmytinfo" >&5
+ echo "$as_me:11876: checking for tgoto in -lmytinfo" >&5
echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lmytinfo $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 10826 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 11884 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -10841,30 +11899,30 @@ tgoto ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10845: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:11903: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10848: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10851: \"$ac_try\"") >&5
+ echo "$as_me:11906: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:11909: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10854: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:11912: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_mytinfo_tgoto=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_mytinfo_tgoto=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:10865: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "$as_me:11923: result: $ac_cv_lib_mytinfo_tgoto" >&5
echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
-if test $ac_cv_lib_mytinfo_tgoto = yes; then
+if test "$ac_cv_lib_mytinfo_tgoto" = yes; then
cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
fi
@@ -10888,7 +11946,7 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
-if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+if test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no"
then
cf_add_libs="$LIBS"
@@ -10909,15 +11967,15 @@ LIBS="$cf_add_libs"
else
- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=no'
cf_libdir=""
- echo "$as_me:10914: checking for initscr" >&5
+ echo "$as_me:11972: checking for initscr" >&5
echo $ECHO_N "checking for initscr... $ECHO_C" >&6
if test "${ac_cv_func_initscr+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 10920 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 11978 "configure"
#include "confdefs.h"
#define initscr autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -10947,38 +12005,38 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10951: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12009: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10954: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10957: \"$ac_try\"") >&5
+ echo "$as_me:12012: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12015: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:10960: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12018: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_initscr=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_initscr=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:10970: result: $ac_cv_func_initscr" >&5
+echo "$as_me:12028: result: $ac_cv_func_initscr" >&5
echo "${ECHO_T}$ac_cv_func_initscr" >&6
-if test $ac_cv_func_initscr = yes; then
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+if test "$ac_cv_func_initscr" = yes; then
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
cf_save_LIBS="$LIBS"
- echo "$as_me:10977: checking for initscr in -l$cf_nculib_root" >&5
+ echo "$as_me:12035: checking for initscr in -l$cf_nculib_root" >&5
echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6
LIBS="-l$cf_nculib_root $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 10981 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12039 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -10989,26 +12047,26 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:10993: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12051: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:10996: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:10999: \"$ac_try\"") >&5
+ echo "$as_me:12054: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12057: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11002: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:11004: result: yes" >&5
+ echo "$as_me:12060: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:12062: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:11011: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:12069: result: no" >&5
echo "${ECHO_T}no" >&6
cf_search=
@@ -11016,7 +12074,7 @@ cf_library_path_list=""
if test -n "${LDFLAGS}${LIBS}" ; then
for cf_library_path in $LDFLAGS $LIBS
do
- case $cf_library_path in
+ case "$cf_library_path" in
(-L*)
cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
@@ -11024,11 +12082,11 @@ test "x$cf_library_path" != "xNONE" && \
test -d "$cf_library_path" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib"
- test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
- test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
- test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib" && cf_search="$cf_search $cf_library_path/lib"
+ test -d "$cf_library_path/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
+ test -d "$cf_library_path/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
+ test -d "$cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
}
cf_library_path_list="$cf_library_path_list $cf_search"
@@ -11043,11 +12101,11 @@ test "x$prefix" != "xNONE" && \
test -d "$prefix" && \
{
test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
- test -d $prefix/lib && cf_search="$cf_search $prefix/lib"
- test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
- test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$prefix/lib" && cf_search="$cf_search $prefix/lib"
+ test -d "$prefix/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+ test -d "$prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib" && cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+ test -d "$prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
for cf_subdir_prefix in \
@@ -11061,13 +12119,13 @@ do
test "x$cf_subdir_prefix" != "x$prefix" && \
test -d "$cf_subdir_prefix" && \
-(test -z "$prefix" || test x$prefix = xNONE || test "x$cf_subdir_prefix" != "x$prefix") && {
+{ test -z "$prefix" || test "x$prefix" = xNONE || test "x$cf_subdir_prefix" != "x$prefix"; } && {
test -n "$verbose" && echo " ... testing for lib-directories under $cf_subdir_prefix"
- test -d $cf_subdir_prefix/lib && cf_search="$cf_search $cf_subdir_prefix/lib"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
- test -d $cf_subdir_prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
- test -d $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib" && cf_search="$cf_search $cf_subdir_prefix/lib"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root"
+ test -d "$cf_subdir_prefix/lib/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/lib/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib"
+ test -d "$cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root" && cf_search="$cf_search $cf_subdir_prefix/$cf_nculib_root/lib/$cf_nculib_root"
}
done
@@ -11076,11 +12134,11 @@ cf_search="$cf_library_path_list $cf_search"
for cf_libdir in $cf_search
do
- echo "$as_me:11079: checking for -l$cf_nculib_root in $cf_libdir" >&5
+ echo "$as_me:12137: checking for -l$cf_nculib_root in $cf_libdir" >&5
echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6
LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11083 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12141 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
@@ -11091,41 +12149,41 @@ initscr()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11095: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12153: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11098: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11101: \"$ac_try\"") >&5
+ echo "$as_me:12156: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12159: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11104: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:11106: result: yes" >&5
+ echo "$as_me:12162: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:12164: result: yes" >&5
echo "${ECHO_T}yes" >&6
- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+ eval 'cf_cv_have_lib_'"$cf_nculib_root"'=yes'
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:11113: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:12171: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_save_LIBS"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+eval 'cf_found_library="$cf_cv_have_lib_'"$cf_nculib_root"\"
-if test $cf_found_library = no ; then
- { { echo "$as_me:11128: error: Cannot link $cf_nculib_root library" >&5
+if test "$cf_found_library" = no ; then
+ { { echo "$as_me:12186: error: Cannot link $cf_nculib_root library" >&5
echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -11133,49 +12191,49 @@ fi
fi
if test -n "$cf_ncurses_LIBS" ; then
- echo "$as_me:11136: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+ echo "$as_me:12194: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6
cf_ncurses_SAVE="$LIBS"
for p in $cf_ncurses_LIBS ; do
- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+ q=`echo "$LIBS" | sed -e "s%$p %%" -e "s%$p$%%"`
if test "$q" != "$LIBS" ; then
LIBS="$q"
fi
done
- cat >conftest.$ac_ext <<_ACEOF
-#line 11146 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12204 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int
main (void)
{
-initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+initscr(); mousemask(0,0); tigetstr((char *)0);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11158: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12216: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11161: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11164: \"$ac_try\"") >&5
+ echo "$as_me:12219: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12222: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11167: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- echo "$as_me:11169: result: yes" >&5
+ echo "$as_me:12225: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ echo "$as_me:12227: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:11174: result: no" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:12232: result: no" >&5
echo "${ECHO_T}no" >&6
LIBS="$cf_ncurses_SAVE"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -11191,7 +12249,7 @@ fi
;;
(pdcurses)
- echo "$as_me:11194: checking for X" >&5
+ echo "$as_me:12252: checking for X" >&5
echo $ECHO_N "checking for X... $ECHO_C" >&6
# Check whether --with-x or --without-x was given.
@@ -11223,11 +12281,11 @@ acfindx:
EOF
if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then
# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
- eval `${MAKE-make} acfindx 2>/dev/null | grep -v make`
+ eval "`${MAKE-make} acfindx 2>/dev/null | grep -v make`"
# Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
for ac_extension in a so sl dylib dll; do
- if test ! -f $ac_im_usrlibdir/libX11.$ac_extension &&
- test -f $ac_im_libdir/libX11.$ac_extension; then
+ if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" &&
+ test -f "$ac_im_libdir/libX11.$ac_extension"; then
ac_im_usrlibdir=$ac_im_libdir; break
fi
done
@@ -11294,19 +12352,19 @@ ac_x_header_dirs='
if test "$ac_x_includes" = no; then
# Guess where to find include files, by looking for Intrinsic.h.
# First, try using that file with no special directory specified.
- cat >conftest.$ac_ext <<_ACEOF
-#line 11298 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12356 "configure"
#include "confdefs.h"
#include <X11/Intrinsic.h>
_ACEOF
-if { (eval echo "$as_me:11302: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:12360: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:11308: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:12366: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -11320,7 +12378,7 @@ if test -z "$ac_cpp_err"; then
ac_x_includes=
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
for ac_dir in $ac_x_header_dirs; do
if test -r "$ac_dir/X11/Intrinsic.h"; then
ac_x_includes=$ac_dir
@@ -11328,7 +12386,7 @@ else
fi
done
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi # $ac_x_includes = no
if test "$ac_x_libraries" = no; then
@@ -11337,8 +12395,8 @@ if test "$ac_x_libraries" = no; then
# Don't add to $LIBS permanently.
ac_save_LIBS=$LIBS
LIBS="-lXt $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11341 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12399 "configure"
#include "confdefs.h"
#include <X11/Intrinsic.h>
int
@@ -11349,37 +12407,37 @@ XtMalloc (0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11353: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12411: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11356: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11359: \"$ac_try\"") >&5
+ echo "$as_me:12414: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12417: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11362: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12420: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
LIBS=$ac_save_LIBS
# We can link X programs with no special library path.
ac_x_libraries=
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
LIBS=$ac_save_LIBS
for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
do
# Don't even attempt the hair of trying to link an X program!
for ac_extension in a so sl dylib dll; do
- if test -r $ac_dir/libXt.$ac_extension; then
+ if test -r "$ac_dir/libXt.$ac_extension"; then
ac_x_libraries=$ac_dir
break 2
fi
done
done
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi # $ac_x_libraries = no
if test "$ac_x_includes" = no || test "$ac_x_libraries" = no; then
@@ -11397,7 +12455,7 @@ fi
fi # $with_x != no
if test "$have_x" != yes; then
- echo "$as_me:11400: result: $have_x" >&5
+ echo "$as_me:12458: result: $have_x" >&5
echo "${ECHO_T}$have_x" >&6
no_x=yes
else
@@ -11407,7 +12465,7 @@ else
# Update the cache value to reflect the command line values.
ac_cv_have_x="have_x=yes \
ac_x_includes=$x_includes ac_x_libraries=$x_libraries"
- echo "$as_me:11410: result: libraries $x_libraries, headers $x_includes" >&5
+ echo "$as_me:12468: result: libraries $x_libraries, headers $x_includes" >&5
echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6
fi
@@ -11418,7 +12476,10 @@ cat >>confdefs.h <<\EOF
#define X_DISPLAY_MISSING 1
EOF
- X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
+ X_CFLAGS=
+ X_PRE_LIBS=
+ X_LIBS=
+ X_EXTRA_LIBS=
else
if test -n "$x_includes"; then
X_CFLAGS="$X_CFLAGS -I$x_includes"
@@ -11431,11 +12492,11 @@ else
# others require no space. Words are not sufficient . . . .
case `(uname -sr) 2>/dev/null` in
"SunOS 5"*)
- echo "$as_me:11434: checking whether -R must be followed by a space" >&5
+ echo "$as_me:12495: checking whether -R must be followed by a space" >&5
echo $ECHO_N "checking whether -R must be followed by a space... $ECHO_C" >&6
ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11438 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12499 "configure"
#include "confdefs.h"
int
@@ -11446,33 +12507,33 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11450: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12511: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11453: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11456: \"$ac_try\"") >&5
+ echo "$as_me:12514: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12517: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11459: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12520: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_R_nospace=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_R_nospace=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
if test $ac_R_nospace = yes; then
- echo "$as_me:11469: result: no" >&5
+ echo "$as_me:12530: result: no" >&5
echo "${ECHO_T}no" >&6
X_LIBS="$X_LIBS -R$x_libraries"
else
LIBS="$ac_xsave_LIBS -R $x_libraries"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11475 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12536 "configure"
#include "confdefs.h"
int
@@ -11483,31 +12544,31 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11487: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12548: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11490: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11493: \"$ac_try\"") >&5
+ echo "$as_me:12551: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12554: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11496: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12557: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_R_space=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_R_space=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
if test $ac_R_space = yes; then
- echo "$as_me:11506: result: yes" >&5
+ echo "$as_me:12567: result: yes" >&5
echo "${ECHO_T}yes" >&6
X_LIBS="$X_LIBS -R $x_libraries"
else
- echo "$as_me:11510: result: neither works" >&5
+ echo "$as_me:12571: result: neither works" >&5
echo "${ECHO_T}neither works" >&6
fi
fi
@@ -11526,8 +12587,8 @@ echo "${ECHO_T}neither works" >&6
# libraries were built with DECnet support. And Karl Berry says
# the Alpha needs dnet_stub (dnet does not exist).
ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11"
- cat >conftest.$ac_ext <<_ACEOF
-#line 11530 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12591 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -11545,31 +12606,31 @@ XOpenDisplay ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11549: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12610: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11552: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11555: \"$ac_try\"") >&5
+ echo "$as_me:12613: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12616: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11558: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12619: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-echo "$as_me:11564: checking for dnet_ntoa in -ldnet" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:12625: checking for dnet_ntoa in -ldnet" >&5
echo $ECHO_N "checking for dnet_ntoa in -ldnet... $ECHO_C" >&6
if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldnet $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 11572 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12633 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -11587,43 +12648,43 @@ dnet_ntoa ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11591: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12652: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11594: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11597: \"$ac_try\"") >&5
+ echo "$as_me:12655: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12658: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11600: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12661: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dnet_dnet_ntoa=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dnet_dnet_ntoa=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:11611: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
+echo "$as_me:12672: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
echo "${ECHO_T}$ac_cv_lib_dnet_dnet_ntoa" >&6
-if test $ac_cv_lib_dnet_dnet_ntoa = yes; then
+if test "$ac_cv_lib_dnet_dnet_ntoa" = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"
fi
if test $ac_cv_lib_dnet_dnet_ntoa = no; then
- echo "$as_me:11618: checking for dnet_ntoa in -ldnet_stub" >&5
+ echo "$as_me:12679: checking for dnet_ntoa in -ldnet_stub" >&5
echo $ECHO_N "checking for dnet_ntoa in -ldnet_stub... $ECHO_C" >&6
if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldnet_stub $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 11626 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12687 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -11641,36 +12702,36 @@ dnet_ntoa ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11645: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12706: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11648: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11651: \"$ac_try\"") >&5
+ echo "$as_me:12709: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12712: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11654: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12715: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dnet_stub_dnet_ntoa=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dnet_stub_dnet_ntoa=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:11665: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
+echo "$as_me:12726: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
echo "${ECHO_T}$ac_cv_lib_dnet_stub_dnet_ntoa" >&6
-if test $ac_cv_lib_dnet_stub_dnet_ntoa = yes; then
+if test "$ac_cv_lib_dnet_stub_dnet_ntoa" = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"
fi
fi
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$ac_xsave_LIBS"
# msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT,
@@ -11681,13 +12742,13 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
# on Irix 5.2, according to T.E. Dickey.
# The functions gethostbyname, getservbyname, and inet_addr are
# in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking.
- echo "$as_me:11684: checking for gethostbyname" >&5
+ echo "$as_me:12745: checking for gethostbyname" >&5
echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6
if test "${ac_cv_func_gethostbyname+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11690 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12751 "configure"
#include "confdefs.h"
#define gethostbyname autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -11717,39 +12778,39 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11721: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12782: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11724: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11727: \"$ac_try\"") >&5
+ echo "$as_me:12785: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12788: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11730: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12791: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_gethostbyname=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_gethostbyname=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:11740: result: $ac_cv_func_gethostbyname" >&5
+echo "$as_me:12801: result: $ac_cv_func_gethostbyname" >&5
echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
if test $ac_cv_func_gethostbyname = no; then
- echo "$as_me:11744: checking for gethostbyname in -lnsl" >&5
+ echo "$as_me:12805: checking for gethostbyname in -lnsl" >&5
echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6
if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lnsl $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 11752 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12813 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -11767,43 +12828,43 @@ gethostbyname ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11771: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12832: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11774: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11777: \"$ac_try\"") >&5
+ echo "$as_me:12835: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12838: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11780: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12841: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_nsl_gethostbyname=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_nsl_gethostbyname=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:11791: result: $ac_cv_lib_nsl_gethostbyname" >&5
+echo "$as_me:12852: result: $ac_cv_lib_nsl_gethostbyname" >&5
echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6
-if test $ac_cv_lib_nsl_gethostbyname = yes; then
+if test "$ac_cv_lib_nsl_gethostbyname" = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl"
fi
if test $ac_cv_lib_nsl_gethostbyname = no; then
- echo "$as_me:11798: checking for gethostbyname in -lbsd" >&5
+ echo "$as_me:12859: checking for gethostbyname in -lbsd" >&5
echo $ECHO_N "checking for gethostbyname in -lbsd... $ECHO_C" >&6
if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lbsd $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 11806 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12867 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -11821,30 +12882,30 @@ gethostbyname ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11825: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12886: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11828: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11831: \"$ac_try\"") >&5
+ echo "$as_me:12889: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12892: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11834: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12895: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_bsd_gethostbyname=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_bsd_gethostbyname=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:11845: result: $ac_cv_lib_bsd_gethostbyname" >&5
+echo "$as_me:12906: result: $ac_cv_lib_bsd_gethostbyname" >&5
echo "${ECHO_T}$ac_cv_lib_bsd_gethostbyname" >&6
-if test $ac_cv_lib_bsd_gethostbyname = yes; then
+if test "$ac_cv_lib_bsd_gethostbyname" = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd"
fi
@@ -11858,13 +12919,13 @@ fi
# variants that don't use the nameserver (or something). -lsocket
# must be given before -lnsl if both are needed. We assume that
# if connect needs -lnsl, so does gethostbyname.
- echo "$as_me:11861: checking for connect" >&5
+ echo "$as_me:12922: checking for connect" >&5
echo $ECHO_N "checking for connect... $ECHO_C" >&6
if test "${ac_cv_func_connect+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11867 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 12928 "configure"
#include "confdefs.h"
#define connect autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -11894,39 +12955,39 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11898: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:12959: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11901: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11904: \"$ac_try\"") >&5
+ echo "$as_me:12962: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:12965: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11907: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:12968: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_connect=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_connect=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:11917: result: $ac_cv_func_connect" >&5
+echo "$as_me:12978: result: $ac_cv_func_connect" >&5
echo "${ECHO_T}$ac_cv_func_connect" >&6
if test $ac_cv_func_connect = no; then
- echo "$as_me:11921: checking for connect in -lsocket" >&5
+ echo "$as_me:12982: checking for connect in -lsocket" >&5
echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6
if test "${ac_cv_lib_socket_connect+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 11929 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 12990 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -11944,43 +13005,43 @@ connect ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:11948: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13009: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:11951: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:11954: \"$ac_try\"") >&5
+ echo "$as_me:13012: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13015: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:11957: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13018: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_socket_connect=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_socket_connect=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:11968: result: $ac_cv_lib_socket_connect" >&5
+echo "$as_me:13029: result: $ac_cv_lib_socket_connect" >&5
echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6
-if test $ac_cv_lib_socket_connect = yes; then
+if test "$ac_cv_lib_socket_connect" = yes; then
X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS"
fi
fi
# Guillermo Gomez says -lposix is necessary on A/UX.
- echo "$as_me:11977: checking for remove" >&5
+ echo "$as_me:13038: checking for remove" >&5
echo $ECHO_N "checking for remove... $ECHO_C" >&6
if test "${ac_cv_func_remove+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 11983 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13044 "configure"
#include "confdefs.h"
#define remove autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -12010,39 +13071,39 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12014: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13075: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12017: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12020: \"$ac_try\"") >&5
+ echo "$as_me:13078: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13081: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12023: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13084: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_remove=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_remove=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:12033: result: $ac_cv_func_remove" >&5
+echo "$as_me:13094: result: $ac_cv_func_remove" >&5
echo "${ECHO_T}$ac_cv_func_remove" >&6
if test $ac_cv_func_remove = no; then
- echo "$as_me:12037: checking for remove in -lposix" >&5
+ echo "$as_me:13098: checking for remove in -lposix" >&5
echo $ECHO_N "checking for remove in -lposix... $ECHO_C" >&6
if test "${ac_cv_lib_posix_remove+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lposix $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 12045 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13106 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -12060,43 +13121,43 @@ remove ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12064: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13125: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12067: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12070: \"$ac_try\"") >&5
+ echo "$as_me:13128: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13131: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12073: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13134: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_posix_remove=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_posix_remove=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:12084: result: $ac_cv_lib_posix_remove" >&5
+echo "$as_me:13145: result: $ac_cv_lib_posix_remove" >&5
echo "${ECHO_T}$ac_cv_lib_posix_remove" >&6
-if test $ac_cv_lib_posix_remove = yes; then
+if test "$ac_cv_lib_posix_remove" = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix"
fi
fi
# BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
- echo "$as_me:12093: checking for shmat" >&5
+ echo "$as_me:13154: checking for shmat" >&5
echo $ECHO_N "checking for shmat... $ECHO_C" >&6
if test "${ac_cv_func_shmat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 12099 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 13160 "configure"
#include "confdefs.h"
#define shmat autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -12126,39 +13187,39 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12130: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13191: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12133: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12136: \"$ac_try\"") >&5
+ echo "$as_me:13194: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13197: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12139: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13200: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_shmat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_shmat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:12149: result: $ac_cv_func_shmat" >&5
+echo "$as_me:13210: result: $ac_cv_func_shmat" >&5
echo "${ECHO_T}$ac_cv_func_shmat" >&6
if test $ac_cv_func_shmat = no; then
- echo "$as_me:12153: checking for shmat in -lipc" >&5
+ echo "$as_me:13214: checking for shmat in -lipc" >&5
echo $ECHO_N "checking for shmat in -lipc... $ECHO_C" >&6
if test "${ac_cv_lib_ipc_shmat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lipc $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 12161 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13222 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -12176,30 +13237,30 @@ shmat ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12180: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13241: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12183: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12186: \"$ac_try\"") >&5
+ echo "$as_me:13244: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13247: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12189: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13250: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_ipc_shmat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_ipc_shmat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:12200: result: $ac_cv_lib_ipc_shmat" >&5
+echo "$as_me:13261: result: $ac_cv_lib_ipc_shmat" >&5
echo "${ECHO_T}$ac_cv_lib_ipc_shmat" >&6
-if test $ac_cv_lib_ipc_shmat = yes; then
+if test "$ac_cv_lib_ipc_shmat" = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"
fi
@@ -12215,15 +13276,15 @@ fi
# These have to be linked with before -lX11, unlike the other
# libraries we check for below, so use a different variable.
# John Interrante, Karl Berry
- echo "$as_me:12218: checking for IceConnectionNumber in -lICE" >&5
+ echo "$as_me:13279: checking for IceConnectionNumber in -lICE" >&5
echo $ECHO_N "checking for IceConnectionNumber in -lICE... $ECHO_C" >&6
if test "${ac_cv_lib_ICE_IceConnectionNumber+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lICE $X_EXTRA_LIBS $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 12226 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13287 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -12241,30 +13302,30 @@ IceConnectionNumber ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12245: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13306: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12248: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12251: \"$ac_try\"") >&5
+ echo "$as_me:13309: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13312: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12254: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13315: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_ICE_IceConnectionNumber=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_ICE_IceConnectionNumber=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:12265: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5
+echo "$as_me:13326: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5
echo "${ECHO_T}$ac_cv_lib_ICE_IceConnectionNumber" >&6
-if test $ac_cv_lib_ICE_IceConnectionNumber = yes; then
+if test "$ac_cv_lib_ICE_IceConnectionNumber" = yes; then
X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE"
fi
@@ -12274,7 +13335,7 @@ fi
cf_x_athena=${cf_x_athena:-Xaw}
-echo "$as_me:12277: checking if you want to link with Xaw 3d library" >&5
+echo "$as_me:13338: checking if you want to link with Xaw 3d library" >&5
echo $ECHO_N "checking if you want to link with Xaw 3d library... $ECHO_C" >&6
withval=
@@ -12285,14 +13346,14 @@ if test "${with_Xaw3d+set}" = set; then
fi;
if test "$withval" = yes ; then
cf_x_athena=Xaw3d
- echo "$as_me:12288: result: yes" >&5
+ echo "$as_me:13349: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:12291: result: no" >&5
+ echo "$as_me:13352: result: no" >&5
echo "${ECHO_T}no" >&6
fi
-echo "$as_me:12295: checking if you want to link with Xaw 3d xft library" >&5
+echo "$as_me:13356: checking if you want to link with Xaw 3d xft library" >&5
echo $ECHO_N "checking if you want to link with Xaw 3d xft library... $ECHO_C" >&6
withval=
@@ -12303,14 +13364,14 @@ if test "${with_Xaw3dxft+set}" = set; then
fi;
if test "$withval" = yes ; then
cf_x_athena=Xaw3dxft
- echo "$as_me:12306: result: yes" >&5
+ echo "$as_me:13367: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:12309: result: no" >&5
+ echo "$as_me:13370: result: no" >&5
echo "${ECHO_T}no" >&6
fi
-echo "$as_me:12313: checking if you want to link with neXT Athena library" >&5
+echo "$as_me:13374: checking if you want to link with neXT Athena library" >&5
echo $ECHO_N "checking if you want to link with neXT Athena library... $ECHO_C" >&6
withval=
@@ -12321,14 +13382,14 @@ if test "${with_neXtaw+set}" = set; then
fi;
if test "$withval" = yes ; then
cf_x_athena=neXtaw
- echo "$as_me:12324: result: yes" >&5
+ echo "$as_me:13385: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:12327: result: no" >&5
+ echo "$as_me:13388: result: no" >&5
echo "${ECHO_T}no" >&6
fi
-echo "$as_me:12331: checking if you want to link with Athena-Plus library" >&5
+echo "$as_me:13392: checking if you want to link with Athena-Plus library" >&5
echo $ECHO_N "checking if you want to link with Athena-Plus library... $ECHO_C" >&6
withval=
@@ -12339,10 +13400,10 @@ if test "${with_XawPlus+set}" = set; then
fi;
if test "$withval" = yes ; then
cf_x_athena=XawPlus
- echo "$as_me:12342: result: yes" >&5
+ echo "$as_me:13403: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
- echo "$as_me:12345: result: no" >&5
+ echo "$as_me:13406: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -12359,20 +13420,20 @@ if test "$PKG_CONFIG" != none ; then
lib${cf_x_athena}-devel
do
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $cf_athena_pkg; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "$cf_athena_pkg"; then
test -n "$verbose" && echo " found package $cf_athena_pkg" 1>&6
-echo "${as_me:-configure}:12365: testing found package $cf_athena_pkg ..." 1>&5
+echo "${as_me:-configure}:13426: testing found package $cf_athena_pkg ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags $cf_athena_pkg 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs $cf_athena_pkg 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "$cf_athena_pkg" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "$cf_athena_pkg" 2>/dev/null`"
test -n "$verbose" && echo " package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:12371: testing package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:13432: testing package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package $cf_athena_pkg LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:12375: testing package $cf_athena_pkg LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:13436: testing package $cf_athena_pkg LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -12381,19 +13442,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -12412,7 +13473,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -12442,7 +13503,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -12503,20 +13564,20 @@ EOF
LIBS=`echo "$LIBS " | sed -e 's/ / /g' -e 's%-l'"$cf_trim_lib"' %%' -e 's/ $//'`
test -n "$verbose" && echo " ..trimmed $LIBS" 1>&6
-echo "${as_me:-configure}:12506: testing ..trimmed $LIBS ..." 1>&5
+echo "${as_me:-configure}:13567: testing ..trimmed $LIBS ..." 1>&5
;;
esac
done
-echo "$as_me:12512: checking for usable $cf_x_athena/Xmu package" >&5
+echo "$as_me:13573: checking for usable $cf_x_athena/Xmu package" >&5
echo $ECHO_N "checking for usable $cf_x_athena/Xmu package... $ECHO_C" >&6
if test "${cf_cv_xaw_compat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 12519 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13580 "configure"
#include "confdefs.h"
#include <X11/Xmu/CharSet.h>
@@ -12525,33 +13586,34 @@ int
main (void)
{
-int check = XmuCompareISOLatin1("big", "small")
+int check = XmuCompareISOLatin1("big", "small");
+(void)check;
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12535: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13597: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12538: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12541: \"$ac_try\"") >&5
+ echo "$as_me:13600: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13603: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12544: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13606: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xaw_compat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xaw_compat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:12554: result: $cf_cv_xaw_compat" >&5
+echo "$as_me:13616: result: $cf_cv_xaw_compat" >&5
echo "${ECHO_T}$cf_cv_xaw_compat" >&6
if test "$cf_cv_xaw_compat" = no
@@ -12563,25 +13625,25 @@ echo "${ECHO_T}$cf_cv_xaw_compat" >&6
(*)
test -n "$verbose" && echo " work around broken package" 1>&6
-echo "${as_me:-configure}:12566: testing work around broken package ..." 1>&5
+echo "${as_me:-configure}:13628: testing work around broken package ..." 1>&5
cf_save_xmu="$LIBS"
cf_first_lib=`echo "$cf_save_xmu" | sed -e 's/^ *//' -e 's/ .*//'`
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xmu; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "xmu"; then
test -n "$verbose" && echo " found package xmu" 1>&6
-echo "${as_me:-configure}:12574: testing found package xmu ..." 1>&5
+echo "${as_me:-configure}:13636: testing found package xmu ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags xmu 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs xmu 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "xmu" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "xmu" 2>/dev/null`"
test -n "$verbose" && echo " package xmu CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:12580: testing package xmu CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:13642: testing package xmu CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package xmu LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:12584: testing package xmu LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:13646: testing package xmu LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -12590,19 +13652,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -12621,7 +13683,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -12651,7 +13713,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -12701,12 +13763,12 @@ LIBS="$cf_add_libs"
test -n "$verbose" && echo " ...before $LIBS" 1>&6
-echo "${as_me:-configure}:12704: testing ...before $LIBS ..." 1>&5
+echo "${as_me:-configure}:13766: testing ...before $LIBS ..." 1>&5
LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%$cf_first_lib %$cf_first_lib $cf_pkgconfig_libs %" -e 's% % %g'`
test -n "$verbose" && echo " ...after $LIBS" 1>&6
-echo "${as_me:-configure}:12709: testing ...after $LIBS ..." 1>&5
+echo "${as_me:-configure}:13771: testing ...after $LIBS ..." 1>&5
else
cf_pkgconfig_incs=
@@ -12714,12 +13776,12 @@ else
test -n "$verbose" && echo " ...before $LIBS" 1>&6
-echo "${as_me:-configure}:12717: testing ...before $LIBS ..." 1>&5
+echo "${as_me:-configure}:13779: testing ...before $LIBS ..." 1>&5
LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%$cf_first_lib %$cf_first_lib -lXmu %" -e 's% % %g'`
test -n "$verbose" && echo " ...after $LIBS" 1>&6
-echo "${as_me:-configure}:12722: testing ...after $LIBS ..." 1>&5
+echo "${as_me:-configure}:13784: testing ...after $LIBS ..." 1>&5
fi
@@ -12730,7 +13792,7 @@ fi
LIBS=`echo "$LIBS " | sed -e 's/ / /g' -e 's%-l'"$cf_trim_lib"' %%' -e 's/ $//'`
test -n "$verbose" && echo " ..trimmed $LIBS" 1>&6
-echo "${as_me:-configure}:12733: testing ..trimmed $LIBS ..." 1>&5
+echo "${as_me:-configure}:13795: testing ..trimmed $LIBS ..." 1>&5
;;
esac
@@ -12752,20 +13814,20 @@ fi
if test -z "$cf_x_athena_lib" ; then
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists Xext; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "Xext"; then
test -n "$verbose" && echo " found package Xext" 1>&6
-echo "${as_me:-configure}:12758: testing found package Xext ..." 1>&5
+echo "${as_me:-configure}:13820: testing found package Xext ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags Xext 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs Xext 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "Xext" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "Xext" 2>/dev/null`"
test -n "$verbose" && echo " package Xext CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:12764: testing package Xext CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:13826: testing package Xext CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package Xext LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:12768: testing package Xext LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:13830: testing package Xext LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -12774,19 +13836,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -12805,7 +13867,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -12835,7 +13897,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -12886,15 +13948,15 @@ else
cf_pkgconfig_incs=
cf_pkgconfig_libs=
- echo "$as_me:12889: checking for XextCreateExtension in -lXext" >&5
+ echo "$as_me:13951: checking for XextCreateExtension in -lXext" >&5
echo $ECHO_N "checking for XextCreateExtension in -lXext... $ECHO_C" >&6
if test "${ac_cv_lib_Xext_XextCreateExtension+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lXext $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 12897 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 13959 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -12912,30 +13974,30 @@ XextCreateExtension ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:12916: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:13978: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:12919: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:12922: \"$ac_try\"") >&5
+ echo "$as_me:13981: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:13984: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:12925: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:13987: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_Xext_XextCreateExtension=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_Xext_XextCreateExtension=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:12936: result: $ac_cv_lib_Xext_XextCreateExtension" >&5
+echo "$as_me:13998: result: $ac_cv_lib_Xext_XextCreateExtension" >&5
echo "${ECHO_T}$ac_cv_lib_Xext_XextCreateExtension" >&6
-if test $ac_cv_lib_Xext_XextCreateExtension = yes; then
+if test "$ac_cv_lib_Xext_XextCreateExtension" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -12966,20 +14028,20 @@ fi
if test -z "${X_CFLAGS}${X_PRE_LIBS}${X_LIBS}${X_EXTRA_LIBS}"
then
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists x11; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "x11"; then
test -n "$verbose" && echo " found package x11" 1>&6
-echo "${as_me:-configure}:12972: testing found package x11 ..." 1>&5
+echo "${as_me:-configure}:14034: testing found package x11 ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags x11 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs x11 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "x11" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "x11" 2>/dev/null`"
test -n "$verbose" && echo " package x11 CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:12978: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:14040: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package x11 LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:12982: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:14044: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -12988,19 +14050,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -13019,7 +14081,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -13049,7 +14111,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -13099,24 +14161,24 @@ LIBS="$cf_add_libs"
else
cf_pkgconfig_incs=
cf_pkgconfig_libs=
- { echo "$as_me:13102: WARNING: unable to find X11 library" >&5
+ { echo "$as_me:14164: WARNING: unable to find X11 library" >&5
echo "$as_me: WARNING: unable to find X11 library" >&2;}
fi
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists ice; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "ice"; then
test -n "$verbose" && echo " found package ice" 1>&6
-echo "${as_me:-configure}:13109: testing found package ice ..." 1>&5
+echo "${as_me:-configure}:14171: testing found package ice ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags ice 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs ice 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "ice" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "ice" 2>/dev/null`"
test -n "$verbose" && echo " package ice CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:13115: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:14177: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package ice LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:13119: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:14181: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -13125,19 +14187,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -13156,7 +14218,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -13186,7 +14248,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -13236,24 +14298,24 @@ LIBS="$cf_add_libs"
else
cf_pkgconfig_incs=
cf_pkgconfig_libs=
- { echo "$as_me:13239: WARNING: unable to find ICE library" >&5
+ { echo "$as_me:14301: WARNING: unable to find ICE library" >&5
echo "$as_me: WARNING: unable to find ICE library" >&2;}
fi
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "sm"; then
test -n "$verbose" && echo " found package sm" 1>&6
-echo "${as_me:-configure}:13246: testing found package sm ..." 1>&5
+echo "${as_me:-configure}:14308: testing found package sm ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags sm 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs sm 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "sm" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "sm" 2>/dev/null`"
test -n "$verbose" && echo " package sm CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:13252: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:14314: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package sm LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:13256: testing package sm LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:14318: testing package sm LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -13262,19 +14324,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -13293,7 +14355,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -13323,7 +14385,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -13373,24 +14435,24 @@ LIBS="$cf_add_libs"
else
cf_pkgconfig_incs=
cf_pkgconfig_libs=
- { echo "$as_me:13376: WARNING: unable to find SM library" >&5
+ { echo "$as_me:14438: WARNING: unable to find SM library" >&5
echo "$as_me: WARNING: unable to find SM library" >&2;}
fi
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xt; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "xt"; then
test -n "$verbose" && echo " found package xt" 1>&6
-echo "${as_me:-configure}:13383: testing found package xt ..." 1>&5
+echo "${as_me:-configure}:14445: testing found package xt ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags xt 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs xt 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "xt" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "xt" 2>/dev/null`"
test -n "$verbose" && echo " package xt CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:13389: testing package xt CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:14451: testing package xt CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package xt LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:13393: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:14455: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -13399,19 +14461,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -13430,7 +14492,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -13460,7 +14522,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -13510,28 +14572,30 @@ LIBS="$cf_add_libs"
else
cf_pkgconfig_incs=
cf_pkgconfig_libs=
- { echo "$as_me:13513: WARNING: unable to find Xt library" >&5
+ { echo "$as_me:14575: WARNING: unable to find Xt library" >&5
echo "$as_me: WARNING: unable to find Xt library" >&2;}
fi
+else
+ LIBS="$X_PRE_LIBS $LIBS $X_EXTRA_LIBS"
fi
cf_have_X_LIBS=no
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xt; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "xt"; then
test -n "$verbose" && echo " found package xt" 1>&6
-echo "${as_me:-configure}:13524: testing found package xt ..." 1>&5
+echo "${as_me:-configure}:14588: testing found package xt ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags xt 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs xt 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "xt" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "xt" 2>/dev/null`"
test -n "$verbose" && echo " package xt CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:13530: testing package xt CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:14594: testing package xt CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package xt LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:13534: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:14598: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -13540,19 +14604,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -13571,7 +14635,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -13601,7 +14665,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -13652,14 +14716,14 @@ LIBS="$cf_add_libs"
;;
(*)
# we have an "xt" package, but it may omit Xt's dependency on X11
-echo "$as_me:13655: checking for usable X dependency" >&5
+echo "$as_me:14719: checking for usable X dependency" >&5
echo $ECHO_N "checking for usable X dependency... $ECHO_C" >&6
if test "${cf_cv_xt_x11_compat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 13662 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 14726 "configure"
#include "confdefs.h"
#include <X11/Xlib.h>
@@ -13677,50 +14741,50 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:13681: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:14745: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:13684: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:13687: \"$ac_try\"") >&5
+ echo "$as_me:14748: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:14751: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13690: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14754: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xt_x11_compat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xt_x11_compat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:13700: result: $cf_cv_xt_x11_compat" >&5
+echo "$as_me:14764: result: $cf_cv_xt_x11_compat" >&5
echo "${ECHO_T}$cf_cv_xt_x11_compat" >&6
if test "$cf_cv_xt_x11_compat" = no
then
test -n "$verbose" && echo " work around broken X11 dependency" 1>&6
-echo "${as_me:-configure}:13706: testing work around broken X11 dependency ..." 1>&5
+echo "${as_me:-configure}:14770: testing work around broken X11 dependency ..." 1>&5
# 2010/11/19 - good enough until a working Xt on Xcb is delivered.
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists x11; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "x11"; then
test -n "$verbose" && echo " found package x11" 1>&6
-echo "${as_me:-configure}:13713: testing found package x11 ..." 1>&5
+echo "${as_me:-configure}:14777: testing found package x11 ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags x11 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs x11 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "x11" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "x11" 2>/dev/null`"
test -n "$verbose" && echo " package x11 CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:13719: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:14783: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package x11 LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:13723: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:14787: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -13729,19 +14793,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -13760,7 +14824,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -13790,7 +14854,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -13843,12 +14907,12 @@ else
test -n "$verbose" && echo " ...before $LIBS" 1>&6
-echo "${as_me:-configure}:13846: testing ...before $LIBS ..." 1>&5
+echo "${as_me:-configure}:14910: testing ...before $LIBS ..." 1>&5
LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%-lXt %-lXt -lX11 %" -e 's% % %g'`
test -n "$verbose" && echo " ...after $LIBS" 1>&6
-echo "${as_me:-configure}:13851: testing ...after $LIBS ..." 1>&5
+echo "${as_me:-configure}:14915: testing ...after $LIBS ..." 1>&5
fi
@@ -13856,14 +14920,14 @@ fi
;;
esac
-echo "$as_me:13859: checking for usable X Toolkit package" >&5
+echo "$as_me:14923: checking for usable X Toolkit package" >&5
echo $ECHO_N "checking for usable X Toolkit package... $ECHO_C" >&6
if test "${cf_cv_xt_ice_compat+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 13866 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 14930 "configure"
#include "confdefs.h"
#include <X11/Shell.h>
@@ -13871,33 +14935,33 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-int num = IceConnectionNumber(0)
+int num = IceConnectionNumber(0); (void) num
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:13881: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:14945: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:13884: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:13887: \"$ac_try\"") >&5
+ echo "$as_me:14948: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:14951: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:13890: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:14954: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_xt_ice_compat=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_xt_ice_compat=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:13900: result: $cf_cv_xt_ice_compat" >&5
+echo "$as_me:14964: result: $cf_cv_xt_ice_compat" >&5
echo "${ECHO_T}$cf_cv_xt_ice_compat" >&6
if test "$cf_cv_xt_ice_compat" = no
@@ -13911,22 +14975,22 @@ echo "${ECHO_T}$cf_cv_xt_ice_compat" >&6
(*)
test -n "$verbose" && echo " work around broken ICE dependency" 1>&6
-echo "${as_me:-configure}:13914: testing work around broken ICE dependency ..." 1>&5
+echo "${as_me:-configure}:14978: testing work around broken ICE dependency ..." 1>&5
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists ice; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "ice"; then
test -n "$verbose" && echo " found package ice" 1>&6
-echo "${as_me:-configure}:13919: testing found package ice ..." 1>&5
+echo "${as_me:-configure}:14983: testing found package ice ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags ice 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs ice 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "ice" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "ice" 2>/dev/null`"
test -n "$verbose" && echo " package ice CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:13925: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:14989: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package ice LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:13929: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:14993: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -13935,19 +14999,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -13966,7 +15030,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -13996,7 +15060,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -14042,20 +15106,20 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "sm"; then
test -n "$verbose" && echo " found package sm" 1>&6
-echo "${as_me:-configure}:14048: testing found package sm ..." 1>&5
+echo "${as_me:-configure}:15112: testing found package sm ..." 1>&5
- cf_pkgconfig_incs="`$PKG_CONFIG --cflags sm 2>/dev/null`"
- cf_pkgconfig_libs="`$PKG_CONFIG --libs sm 2>/dev/null`"
+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags "sm" 2>/dev/null`"
+ cf_pkgconfig_libs="`$PKG_CONFIG --libs "sm" 2>/dev/null`"
test -n "$verbose" && echo " package sm CFLAGS: $cf_pkgconfig_incs" 1>&6
-echo "${as_me:-configure}:14054: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+echo "${as_me:-configure}:15118: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5
test -n "$verbose" && echo " package sm LIBS: $cf_pkgconfig_libs" 1>&6
-echo "${as_me:-configure}:14058: testing package sm LIBS: $cf_pkgconfig_libs ..." 1>&5
+echo "${as_me:-configure}:15122: testing package sm LIBS: $cf_pkgconfig_libs ..." 1>&5
cf_fix_cppflags=no
cf_new_cflags=
@@ -14064,19 +15128,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $cf_pkgconfig_incs
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -14095,7 +15159,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -14125,7 +15189,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -14184,12 +15248,12 @@ else
test -n "$verbose" && echo " ...before $LIBS" 1>&6
-echo "${as_me:-configure}:14187: testing ...before $LIBS ..." 1>&5
+echo "${as_me:-configure}:15251: testing ...before $LIBS ..." 1>&5
LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%-lXt %-lXt $X_PRE_LIBS %" -e 's% % %g'`
test -n "$verbose" && echo " ...after $LIBS" 1>&6
-echo "${as_me:-configure}:14192: testing ...after $LIBS ..." 1>&5
+echo "${as_me:-configure}:15256: testing ...after $LIBS ..." 1>&5
fi
@@ -14209,7 +15273,7 @@ else
test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6
-echo "${as_me:-configure}:14212: testing checking additions to CFLAGS ..." 1>&5
+echo "${as_me:-configure}:15276: testing checking additions to CFLAGS ..." 1>&5
cf_check_cflags="$CFLAGS"
cf_check_cppflags="$CPPFLAGS"
@@ -14221,19 +15285,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $X_CFLAGS
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -14252,7 +15316,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -14282,7 +15346,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -14294,7 +15358,7 @@ done
if test -n "$cf_new_cflags" ; then
test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-echo "${as_me:-configure}:14297: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+echo "${as_me:-configure}:15361: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
test -n "$CFLAGS" && CFLAGS="$CFLAGS "
CFLAGS="${CFLAGS}$cf_new_cflags"
@@ -14304,7 +15368,7 @@ fi
if test -n "$cf_new_cppflags" ; then
test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-echo "${as_me:-configure}:14307: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+echo "${as_me:-configure}:15371: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
@@ -14314,7 +15378,7 @@ fi
if test -n "$cf_new_extra_cppflags" ; then
test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
-echo "${as_me:-configure}:14317: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+echo "${as_me:-configure}:15381: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
@@ -14322,8 +15386,8 @@ echo "${as_me:-configure}:14317: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_c
fi
if test "x$cf_check_cflags" != "x$CFLAGS" ; then
-cat >conftest.$ac_ext <<_ACEOF
-#line 14326 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 15390 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -14334,44 +15398,44 @@ printf("Hello world");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14338: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15402: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14341: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14344: \"$ac_try\"") >&5
+ echo "$as_me:15405: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15408: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14347: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15411: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6
-echo "${as_me:-configure}:14355: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5
+echo "${as_me:-configure}:15419: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5
if test "x$cf_check_cppflags" != "x$CPPFLAGS" ; then
test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6
-echo "${as_me:-configure}:14360: testing but keeping change to \$CPPFLAGS ..." 1>&5
+echo "${as_me:-configure}:15424: testing but keeping change to \$CPPFLAGS ..." 1>&5
fi
- CFLAGS="$cf_check_flags"
+ CFLAGS="$cf_check_cflags"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
- echo "$as_me:14368: checking for XOpenDisplay" >&5
+ echo "$as_me:15432: checking for XOpenDisplay" >&5
echo $ECHO_N "checking for XOpenDisplay... $ECHO_C" >&6
if test "${ac_cv_func_XOpenDisplay+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14374 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15438 "configure"
#include "confdefs.h"
#define XOpenDisplay autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -14401,41 +15465,41 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14405: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15469: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14408: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14411: \"$ac_try\"") >&5
+ echo "$as_me:15472: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15475: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14414: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15478: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_XOpenDisplay=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_XOpenDisplay=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:14424: result: $ac_cv_func_XOpenDisplay" >&5
+echo "$as_me:15488: result: $ac_cv_func_XOpenDisplay" >&5
echo "${ECHO_T}$ac_cv_func_XOpenDisplay" >&6
-if test $ac_cv_func_XOpenDisplay = yes; then
+if test "$ac_cv_func_XOpenDisplay" = yes; then
:
else
- echo "$as_me:14430: checking for XOpenDisplay in -lX11" >&5
+ echo "$as_me:15494: checking for XOpenDisplay in -lX11" >&5
echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6
if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 14438 "configure"
+LIBS="-lX11 $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 15502 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -14453,30 +15517,30 @@ XOpenDisplay ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14457: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15521: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14460: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14463: \"$ac_try\"") >&5
+ echo "$as_me:15524: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15527: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14466: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15530: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_X11_XOpenDisplay=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_X11_XOpenDisplay=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:14477: result: $ac_cv_lib_X11_XOpenDisplay" >&5
+echo "$as_me:15541: result: $ac_cv_lib_X11_XOpenDisplay" >&5
echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6
-if test $ac_cv_lib_X11_XOpenDisplay = yes; then
+if test "$ac_cv_lib_X11_XOpenDisplay" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -14498,13 +15562,13 @@ fi
fi
- echo "$as_me:14501: checking for XtAppInitialize" >&5
+ echo "$as_me:15565: checking for XtAppInitialize" >&5
echo $ECHO_N "checking for XtAppInitialize... $ECHO_C" >&6
if test "${ac_cv_func_XtAppInitialize+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 14507 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15571 "configure"
#include "confdefs.h"
#define XtAppInitialize autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -14534,41 +15598,41 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14538: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15602: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14541: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14544: \"$ac_try\"") >&5
+ echo "$as_me:15605: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15608: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14547: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15611: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_func_XtAppInitialize=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_func_XtAppInitialize=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:14557: result: $ac_cv_func_XtAppInitialize" >&5
+echo "$as_me:15621: result: $ac_cv_func_XtAppInitialize" >&5
echo "${ECHO_T}$ac_cv_func_XtAppInitialize" >&6
-if test $ac_cv_func_XtAppInitialize = yes; then
+if test "$ac_cv_func_XtAppInitialize" = yes; then
:
else
- echo "$as_me:14563: checking for XtAppInitialize in -lXt" >&5
+ echo "$as_me:15627: checking for XtAppInitialize in -lXt" >&5
echo $ECHO_N "checking for XtAppInitialize in -lXt... $ECHO_C" >&6
if test "${ac_cv_lib_Xt_XtAppInitialize+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 14571 "configure"
+LIBS="-lXt $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 15635 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -14586,45 +15650,45 @@ XtAppInitialize ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14590: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15654: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14593: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14596: \"$ac_try\"") >&5
+ echo "$as_me:15657: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15660: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14599: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15663: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_Xt_XtAppInitialize=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_Xt_XtAppInitialize=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:14610: result: $ac_cv_lib_Xt_XtAppInitialize" >&5
+echo "$as_me:15674: result: $ac_cv_lib_Xt_XtAppInitialize" >&5
echo "${ECHO_T}$ac_cv_lib_Xt_XtAppInitialize" >&6
-if test $ac_cv_lib_Xt_XtAppInitialize = yes; then
+if test "$ac_cv_lib_Xt_XtAppInitialize" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_LIBXT 1
EOF
cf_have_X_LIBS=Xt
- LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"
+ LIBS="-lXt $LIBS"
fi
fi
fi
-if test $cf_have_X_LIBS = no ; then
- { echo "$as_me:14627: WARNING: Unable to successfully link X Toolkit library (-lXt) with
+if test "$cf_have_X_LIBS" = no ; then
+ { echo "$as_me:15691: WARNING: Unable to successfully link X Toolkit library (-lXt) with
test program. You will have to check and add the proper libraries by hand
to makefile." >&5
echo "$as_me: WARNING: Unable to successfully link X Toolkit library (-lXt) with
@@ -14660,19 +15724,19 @@ do
done
cf_test=X11/$cf_x_athena_root/SimpleMenu.h
- if test $cf_path != default ; then
+ if test "$cf_path" != default ; then
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}-I$cf_path/include"
- echo "$as_me:14668: checking for $cf_test in $cf_path" >&5
+ echo "$as_me:15732: checking for $cf_test in $cf_path" >&5
echo $ECHO_N "checking for $cf_test in $cf_path... $ECHO_C" >&6
else
- echo "$as_me:14671: checking for $cf_test" >&5
+ echo "$as_me:15735: checking for $cf_test" >&5
echo $ECHO_N "checking for $cf_test... $ECHO_C" >&6
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 14675 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15739 "configure"
#include "confdefs.h"
#include <X11/Intrinsic.h>
@@ -14685,26 +15749,26 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:14689: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:15753: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:14692: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:14695: \"$ac_try\"") >&5
+ echo "$as_me:15756: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:15759: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14698: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15762: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:14707: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:15771: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
LIBS="$cf_save_LIBS_CF_X_ATHENA_CPPFLAGS"
@@ -14713,14 +15777,14 @@ CPPFLAGS="$cf_save_CPPFLAGS_CF_X_ATHENA_CPPFLAGS"
if test "$cf_result" = yes ; then
test "$cf_path" = default && cf_x_athena_inc=default
- test "$cf_path" != default && cf_x_athena_inc=$cf_path/include
+ test "$cf_path" != default && cf_x_athena_inc="$cf_path/include"
break
fi
fi
done
if test -z "$cf_x_athena_inc" ; then
- { echo "$as_me:14723: WARNING: Unable to find Athena header files" >&5
+ { echo "$as_me:15787: WARNING: Unable to find Athena header files" >&5
echo "$as_me: WARNING: Unable to find Athena header files" >&2;}
elif test "$cf_x_athena_inc" != default ; then
@@ -14785,10 +15849,10 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- echo "$as_me:14788: checking for $cf_test in $cf_libs" >&5
+ echo "$as_me:15852: checking for $cf_test in $cf_libs" >&5
echo $ECHO_N "checking for $cf_test in $cf_libs... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 14791 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 15855 "configure"
#include "confdefs.h"
#include <X11/Intrinsic.h>
@@ -14803,26 +15867,26 @@ $cf_test((XtAppContext) 0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:14807: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:15871: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:14810: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:14813: \"$ac_try\"") >&5
+ echo "$as_me:15874: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:15877: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:14816: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:15880: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:14825: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:15889: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
LIBS="$cf_save_LIBS_CF_X_ATHENA_LIBS"
@@ -14839,7 +15903,7 @@ CPPFLAGS="$cf_save_CPPFLAGS_CF_X_ATHENA_LIBS"
done
if test -z "$cf_x_athena_lib" ; then
- { { echo "$as_me:14842: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&5
+ { { echo "$as_me:15906: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&5
echo "$as_me: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -14873,7 +15937,7 @@ if test -n "$ac_tool_prefix"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:14876: checking for $ac_word" >&5
+echo "$as_me:15940: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_XCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -14888,7 +15952,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_XCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-echo "$as_me:14891: found $ac_dir/$ac_word" >&5
+echo "$as_me:15955: found $ac_dir/$ac_word" >&5
break
done
@@ -14896,10 +15960,10 @@ fi
fi
XCURSES_CONFIG=$ac_cv_prog_XCURSES_CONFIG
if test -n "$XCURSES_CONFIG"; then
- echo "$as_me:14899: result: $XCURSES_CONFIG" >&5
+ echo "$as_me:15963: result: $XCURSES_CONFIG" >&5
echo "${ECHO_T}$XCURSES_CONFIG" >&6
else
- echo "$as_me:14902: result: no" >&5
+ echo "$as_me:15966: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -14912,7 +15976,7 @@ if test -z "$XCURSES_CONFIG"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:14915: checking for $ac_word" >&5
+echo "$as_me:15979: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_XCURSES_CONFIG+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -14927,7 +15991,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_XCURSES_CONFIG="$ac_prog"
-echo "$as_me:14930: found $ac_dir/$ac_word" >&5
+echo "$as_me:15994: found $ac_dir/$ac_word" >&5
break
done
@@ -14935,10 +15999,10 @@ fi
fi
ac_ct_XCURSES_CONFIG=$ac_cv_prog_ac_ct_XCURSES_CONFIG
if test -n "$ac_ct_XCURSES_CONFIG"; then
- echo "$as_me:14938: result: $ac_ct_XCURSES_CONFIG" >&5
+ echo "$as_me:16002: result: $ac_ct_XCURSES_CONFIG" >&5
echo "${ECHO_T}$ac_ct_XCURSES_CONFIG" >&6
else
- echo "$as_me:14941: result: no" >&5
+ echo "$as_me:16005: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -14958,19 +16022,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in `$XCURSES_CONFIG --cflags`
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -14989,7 +16053,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -15019,7 +16083,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -15073,7 +16137,7 @@ LDFLAGS="$LDFLAGS $X_LIBS"
test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6
-echo "${as_me:-configure}:15076: testing checking additions to CFLAGS ..." 1>&5
+echo "${as_me:-configure}:16140: testing checking additions to CFLAGS ..." 1>&5
cf_check_cflags="$CFLAGS"
cf_check_cppflags="$CPPFLAGS"
@@ -15085,19 +16149,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in $X_CFLAGS
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -15116,7 +16180,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -15146,7 +16210,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -15158,7 +16222,7 @@ done
if test -n "$cf_new_cflags" ; then
test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-echo "${as_me:-configure}:15161: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+echo "${as_me:-configure}:16225: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
test -n "$CFLAGS" && CFLAGS="$CFLAGS "
CFLAGS="${CFLAGS}$cf_new_cflags"
@@ -15168,7 +16232,7 @@ fi
if test -n "$cf_new_cppflags" ; then
test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-echo "${as_me:-configure}:15171: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+echo "${as_me:-configure}:16235: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
CPPFLAGS="${CPPFLAGS}$cf_new_cppflags"
@@ -15178,7 +16242,7 @@ fi
if test -n "$cf_new_extra_cppflags" ; then
test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
-echo "${as_me:-configure}:15181: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+echo "${as_me:-configure}:16245: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
test -n "$EXTRA_CPPFLAGS" && EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS "
EXTRA_CPPFLAGS="${EXTRA_CPPFLAGS}$cf_new_extra_cppflags"
@@ -15186,8 +16250,8 @@ echo "${as_me:-configure}:15181: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_c
fi
if test "x$cf_check_cflags" != "x$CFLAGS" ; then
-cat >conftest.$ac_ext <<_ACEOF
-#line 15190 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16254 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -15198,46 +16262,46 @@ printf("Hello world");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15202: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16266: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15205: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15208: \"$ac_try\"") >&5
+ echo "$as_me:16269: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16272: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15211: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16275: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6
-echo "${as_me:-configure}:15219: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5
+echo "${as_me:-configure}:16283: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5
if test "x$cf_check_cppflags" != "x$CPPFLAGS" ; then
test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6
-echo "${as_me:-configure}:15224: testing but keeping change to \$CPPFLAGS ..." 1>&5
+echo "${as_me:-configure}:16288: testing but keeping change to \$CPPFLAGS ..." 1>&5
fi
- CFLAGS="$cf_check_flags"
+ CFLAGS="$cf_check_cflags"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:15232: checking for XOpenDisplay in -lX11" >&5
+echo "$as_me:16296: checking for XOpenDisplay in -lX11" >&5
echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6
if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 15240 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16304 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -15255,30 +16319,30 @@ XOpenDisplay ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15259: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16323: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15262: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15265: \"$ac_try\"") >&5
+ echo "$as_me:16326: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16329: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15268: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16332: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_X11_XOpenDisplay=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_X11_XOpenDisplay=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:15279: result: $ac_cv_lib_X11_XOpenDisplay" >&5
+echo "$as_me:16343: result: $ac_cv_lib_X11_XOpenDisplay" >&5
echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6
-if test $ac_cv_lib_X11_XOpenDisplay = yes; then
+if test "$ac_cv_lib_X11_XOpenDisplay" = yes; then
cf_add_libs="$LIBS"
# reverse order
@@ -15298,7 +16362,7 @@ LIBS="$cf_add_libs"
fi
-echo "$as_me:15301: checking for XCurses library" >&5
+echo "$as_me:16365: checking for XCurses library" >&5
echo $ECHO_N "checking for XCurses library... $ECHO_C" >&6
if test "${cf_cv_lib_XCurses+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -15320,8 +16384,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
-cat >conftest.$ac_ext <<_ACEOF
-#line 15324 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16388 "configure"
#include "confdefs.h"
#include <xcurses.h>
@@ -15335,33 +16399,33 @@ XCursesExit();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15339: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16403: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15342: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15345: \"$ac_try\"") >&5
+ echo "$as_me:16406: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16409: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15348: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16412: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_lib_XCurses=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_lib_XCurses=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:15359: result: $cf_cv_lib_XCurses" >&5
+echo "$as_me:16423: result: $cf_cv_lib_XCurses" >&5
echo "${ECHO_T}$cf_cv_lib_XCurses" >&6
fi
-if test $cf_cv_lib_XCurses = yes ; then
+if test "$cf_cv_lib_XCurses" = yes ; then
cat >>confdefs.h <<\EOF
#define UNIX 1
@@ -15371,24 +16435,24 @@ cat >>confdefs.h <<\EOF
#define XCURSES 1
EOF
- echo "$as_me:15374: checking for xcurses.h" >&5
+ echo "$as_me:16438: checking for xcurses.h" >&5
echo $ECHO_N "checking for xcurses.h... $ECHO_C" >&6
if test "${ac_cv_header_xcurses_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15380 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16444 "configure"
#include "confdefs.h"
#include <xcurses.h>
_ACEOF
-if { (eval echo "$as_me:15384: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:16448: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:15390: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:16454: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -15401,14 +16465,14 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_xcurses_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_xcurses_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:15409: result: $ac_cv_header_xcurses_h" >&5
+echo "$as_me:16473: result: $ac_cv_header_xcurses_h" >&5
echo "${ECHO_T}$ac_cv_header_xcurses_h" >&6
-if test $ac_cv_header_xcurses_h = yes; then
+if test "$ac_cv_header_xcurses_h" = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_XCURSES 1
@@ -15417,14 +16481,14 @@ EOF
fi
else
- { { echo "$as_me:15420: error: Cannot link with XCurses" >&5
+ { { echo "$as_me:16484: error: Cannot link with XCurses" >&5
echo "$as_me: error: Cannot link with XCurses" >&2;}
{ (exit 1); exit 1; }; }
fi
;;
(*)
- { { echo "$as_me:15427: error: unexpected screen-value: $cf_cv_screen" >&5
+ { { echo "$as_me:16491: error: unexpected screen-value: $cf_cv_screen" >&5
echo "$as_me: error: unexpected screen-value: $cf_cv_screen" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -15432,15 +16496,15 @@ esac
: ${cf_nculib_root:=$cf_cv_screen}
as_ac_Lib=`echo "ac_cv_lib_$cf_nculib_root''__nc_init_pthreads" | $as_tr_sh`
-echo "$as_me:15435: checking for _nc_init_pthreads in -l$cf_nculib_root" >&5
+echo "$as_me:16499: checking for _nc_init_pthreads in -l$cf_nculib_root" >&5
echo $ECHO_N "checking for _nc_init_pthreads in -l$cf_nculib_root... $ECHO_C" >&6
if eval "test \"\${$as_ac_Lib+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-l$cf_nculib_root $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 15443 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 16507 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -15458,30 +16522,30 @@ _nc_init_pthreads ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15462: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16526: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15465: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15468: \"$ac_try\"") >&5
+ echo "$as_me:16529: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16532: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15471: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16535: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Lib=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Lib=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:15482: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+echo "$as_me:16546: result: `eval echo '${'"$as_ac_Lib"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Lib"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Lib"'}'`" = yes; then
cf_cv_ncurses_pthreads=yes
else
cf_cv_ncurses_pthreads=no
@@ -15514,7 +16578,7 @@ case $cf_cv_screen in
;;
esac
-echo "$as_me:15517: checking for X11 rgb file" >&5
+echo "$as_me:16581: checking for X11 rgb file" >&5
echo $ECHO_N "checking for X11 rgb file... $ECHO_C" >&6
# Check whether --with-x11-rgb or --without-x11-rgb was given.
@@ -15566,19 +16630,19 @@ case ".$cf_path" in
;;
(.[a-zA-Z]:[\\/]*) # OS/2 EMX
;;
-(.\${*prefix}*|.\${*dir}*)
+(.\$\{*prefix\}*|.\$\{*dir\}*)
eval cf_path="$cf_path"
case ".$cf_path" in
(.NONE/*)
- cf_path=`echo $cf_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_path=`echo "$cf_path" | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;;
(.no|.NONE/*)
- cf_path=`echo $cf_path | sed -e s%NONE%$cf_path_syntax%`
+ cf_path=`echo "$cf_path" | sed -e s%NONE%$cf_path_syntax%`
;;
(*)
- { { echo "$as_me:15581: error: expected a pathname, not \"$cf_path\"" >&5
+ { { echo "$as_me:16645: error: expected a pathname, not \"$cf_path\"" >&5
echo "$as_me: error: expected a pathname, not \"$cf_path\"" >&2;}
{ (exit 1); exit 1; }; }
;;
@@ -15586,7 +16650,7 @@ esac
fi
-echo "$as_me:15589: result: $RGB_PATH" >&5
+echo "$as_me:16653: result: $RGB_PATH" >&5
echo "${ECHO_T}$RGB_PATH" >&6
cat >>confdefs.h <<EOF
@@ -15627,7 +16691,76 @@ case $cf_cv_screen in
;;
esac
-echo "$as_me:15630: checking if you want to check for panel functions" >&5
+echo "$as_me:16694: checking for desired basename for form library" >&5
+echo $ECHO_N "checking for desired basename for form library... $ECHO_C" >&6
+
+# Check whether --with-form-libname or --without-form-libname was given.
+if test "${with_form_libname+set}" = set; then
+ withval="$with_form_libname"
+ with_lib_basename=$withval
+else
+ with_lib_basename=form
+fi;
+FORM_NAME="$with_lib_basename"
+
+case "x$FORM_NAME" in
+(x|xno|xnone|xyes)
+ FORM_NAME=form
+ ;;
+(*)
+ ;;
+esac
+
+echo "$as_me:16714: result: $FORM_NAME" >&5
+echo "${ECHO_T}$FORM_NAME" >&6
+
+echo "$as_me:16717: checking for desired basename for menu library" >&5
+echo $ECHO_N "checking for desired basename for menu library... $ECHO_C" >&6
+
+# Check whether --with-menu-libname or --without-menu-libname was given.
+if test "${with_menu_libname+set}" = set; then
+ withval="$with_menu_libname"
+ with_lib_basename=$withval
+else
+ with_lib_basename=menu
+fi;
+MENU_NAME="$with_lib_basename"
+
+case "x$MENU_NAME" in
+(x|xno|xnone|xyes)
+ MENU_NAME=menu
+ ;;
+(*)
+ ;;
+esac
+
+echo "$as_me:16737: result: $MENU_NAME" >&5
+echo "${ECHO_T}$MENU_NAME" >&6
+
+echo "$as_me:16740: checking for desired basename for panel library" >&5
+echo $ECHO_N "checking for desired basename for panel library... $ECHO_C" >&6
+
+# Check whether --with-panel-libname or --without-panel-libname was given.
+if test "${with_panel_libname+set}" = set; then
+ withval="$with_panel_libname"
+ with_lib_basename=$withval
+else
+ with_lib_basename=panel
+fi;
+PANEL_NAME="$with_lib_basename"
+
+case "x$PANEL_NAME" in
+(x|xno|xnone|xyes)
+ PANEL_NAME=panel
+ ;;
+(*)
+ ;;
+esac
+
+echo "$as_me:16760: result: $PANEL_NAME" >&5
+echo "${ECHO_T}$PANEL_NAME" >&6
+
+echo "$as_me:16763: checking if you want to check for panel functions" >&5
echo $ECHO_N "checking if you want to check for panel functions... $ECHO_C" >&6
# Check whether --enable-panel or --disable-panel was given.
@@ -15644,7 +16777,7 @@ else
cf_enable_panel=$cf_default_panel
fi;
-echo "$as_me:15647: result: $cf_enable_panel" >&5
+echo "$as_me:16780: result: $cf_enable_panel" >&5
echo "${ECHO_T}$cf_enable_panel" >&6
if test $cf_enable_panel = yes
then
@@ -15655,38 +16788,65 @@ cf_have_curses_lib=no
if test "x${NCURSES_CONFIG_PKG}" = xnone; then
:
elif test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:15658: checking pkg-config for panel$cf_cv_libtype" >&5
-echo $ECHO_N "checking pkg-config for panel$cf_cv_libtype... $ECHO_C" >&6
- if "$PKG_CONFIG" --exists panel$cf_cv_libtype ; then
- echo "$as_me:15661: result: yes" >&5
+ echo "$as_me:16791: checking pkg-config for $PANEL_NAME$cf_cv_libtype" >&5
+echo $ECHO_N "checking pkg-config for $PANEL_NAME$cf_cv_libtype... $ECHO_C" >&6
+ if "$PKG_CONFIG" --exists "$PANEL_NAME$cf_cv_libtype" ; then
+ echo "$as_me:16794: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:15664: checking if the panel$cf_cv_libtype package files work" >&5
-echo $ECHO_N "checking if the panel$cf_cv_libtype package files work... $ECHO_C" >&6
+ echo "$as_me:16797: checking if the $PANEL_NAME$cf_cv_libtype package files work" >&5
+echo $ECHO_N "checking if the $PANEL_NAME$cf_cv_libtype package files work... $ECHO_C" >&6
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+for cf_add_cflags in `$PKG_CONFIG --cflags "$PANEL_NAME$cf_cv_libtype"`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags panel$cf_cv_libtype`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -15705,7 +16865,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -15735,7 +16895,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -15765,10 +16925,12 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs panel$cf_cv_libtype`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in `$PKG_CONFIG --libs "$PANEL_NAME$cf_cv_libtype"`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -15781,10 +16943,10 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 15785 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16947 "configure"
#include "confdefs.h"
-#include <panel.h>
+#include <$PANEL_NAME.h>
int
main (void)
{
@@ -15793,83 +16955,84 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15797: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:16959: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15800: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15803: \"$ac_try\"") >&5
+ echo "$as_me:16962: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:16965: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15806: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16968: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_curses_lib=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 15812 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 16974 "configure"
#include "confdefs.h"
-#include <panel.h>
+#include <$PANEL_NAME.h>
int main(void)
{ (void) new_panel ( 0 ); return 0; }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:15819: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:16981: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15822: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:15824: \"$ac_try\"") >&5
+ echo "$as_me:16984: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:16986: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15827: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:16989: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_curses_lib=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_curses_lib=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_curses_lib=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:15844: result: $cf_have_curses_lib" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:17006: result: $cf_have_curses_lib" >&5
echo "${ECHO_T}$cf_have_curses_lib" >&6
test "$cf_have_curses_lib" = maybe && cf_have_curses_lib=yes
- if test "$cf_have_curses_lib" != "yes"
+ if test "$cf_have_curses_lib" = "yes"
then
- CPPFLAGS="$cf_save_CPPFLAGS"
- LIBS="$cf_save_LIBS"
- else
-cf_upper=`echo "have_libpanel" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cf_upper=`echo "have_lib$PANEL_NAME" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
cat >>confdefs.h <<EOF
#define $cf_upper 1
EOF
+ else
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
fi
fi
fi
if test "$cf_have_curses_lib" = no; then
- as_ac_Lib=`echo "ac_cv_lib_panel$cf_cv_libtype''_new_panel" | $as_tr_sh`
-echo "$as_me:15864: checking for new_panel in -lpanel$cf_cv_libtype" >&5
-echo $ECHO_N "checking for new_panel in -lpanel$cf_cv_libtype... $ECHO_C" >&6
+ as_ac_Lib=`echo "ac_cv_lib_$PANEL_NAME$cf_cv_libtype''_new_panel" | $as_tr_sh`
+echo "$as_me:17027: checking for new_panel in -l$PANEL_NAME$cf_cv_libtype" >&5
+echo $ECHO_N "checking for new_panel in -l$PANEL_NAME$cf_cv_libtype... $ECHO_C" >&6
if eval "test \"\${$as_ac_Lib+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpanel$cf_cv_libtype $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 15872 "configure"
+LIBS="-l$PANEL_NAME$cf_cv_libtype $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 17035 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -15887,37 +17050,37 @@ new_panel ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:15891: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17054: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:15894: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:15897: \"$ac_try\"") >&5
+ echo "$as_me:17057: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17060: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:15900: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17063: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Lib=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Lib=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:15911: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+echo "$as_me:17074: result: `eval echo '${'"$as_ac_Lib"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Lib"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Lib"'}'`" = yes; then
-cf_upper=`echo "have_libpanel" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cf_upper=`echo "have_lib$PANEL_NAME" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in -lpanel$cf_cv_libtype; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in -l$PANEL_NAME$cf_cv_libtype; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -15941,7 +17104,7 @@ fi
cf_curses_headers="$cf_curses_headers panel.h"
fi
-echo "$as_me:15944: checking if you want to check for menu functions" >&5
+echo "$as_me:17107: checking if you want to check for menu functions" >&5
echo $ECHO_N "checking if you want to check for menu functions... $ECHO_C" >&6
# Check whether --enable-menu or --disable-menu was given.
@@ -15958,7 +17121,7 @@ else
cf_enable_menu=$cf_default_menu
fi;
-echo "$as_me:15961: result: $cf_enable_menu" >&5
+echo "$as_me:17124: result: $cf_enable_menu" >&5
echo "${ECHO_T}$cf_enable_menu" >&6
if test $cf_enable_menu = yes
then
@@ -15967,14 +17130,14 @@ then
;;
(curses*)
-echo "$as_me:15970: checking for NetBSD menu.h" >&5
+echo "$as_me:17133: checking for NetBSD menu.h" >&5
echo $ECHO_N "checking for NetBSD menu.h... $ECHO_C" >&6
if test "${cf_cv_netbsd_menu_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 15977 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 17140 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -15991,29 +17154,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:15995: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:17158: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:15998: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:16001: \"$ac_try\"") >&5
+ echo "$as_me:17161: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:17164: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16004: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17167: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_netbsd_menu_h=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_netbsd_menu_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:16016: result: $cf_cv_netbsd_menu_h" >&5
+echo "$as_me:17179: result: $cf_cv_netbsd_menu_h" >&5
echo "${ECHO_T}$cf_cv_netbsd_menu_h" >&6
test "$cf_cv_netbsd_menu_h" = yes &&
@@ -16030,38 +17193,65 @@ cf_have_curses_lib=no
if test "x${NCURSES_CONFIG_PKG}" = xnone; then
:
elif test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:16033: checking pkg-config for menu$cf_cv_libtype" >&5
-echo $ECHO_N "checking pkg-config for menu$cf_cv_libtype... $ECHO_C" >&6
- if "$PKG_CONFIG" --exists menu$cf_cv_libtype ; then
- echo "$as_me:16036: result: yes" >&5
+ echo "$as_me:17196: checking pkg-config for $MENU_NAME$cf_cv_libtype" >&5
+echo $ECHO_N "checking pkg-config for $MENU_NAME$cf_cv_libtype... $ECHO_C" >&6
+ if "$PKG_CONFIG" --exists "$MENU_NAME$cf_cv_libtype" ; then
+ echo "$as_me:17199: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:16039: checking if the menu$cf_cv_libtype package files work" >&5
-echo $ECHO_N "checking if the menu$cf_cv_libtype package files work... $ECHO_C" >&6
+ echo "$as_me:17202: checking if the $MENU_NAME$cf_cv_libtype package files work" >&5
+echo $ECHO_N "checking if the $MENU_NAME$cf_cv_libtype package files work... $ECHO_C" >&6
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+for cf_add_cflags in `$PKG_CONFIG --cflags "$MENU_NAME$cf_cv_libtype"`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags menu$cf_cv_libtype`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -16080,7 +17270,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -16110,7 +17300,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -16140,10 +17330,12 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs menu$cf_cv_libtype`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in `$PKG_CONFIG --libs "$MENU_NAME$cf_cv_libtype"`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -16156,10 +17348,10 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 16160 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17352 "configure"
#include "confdefs.h"
-#include <menu.h>
+#include <$MENU_NAME.h>
int
main (void)
{
@@ -16168,83 +17360,84 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16172: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17364: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16175: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16178: \"$ac_try\"") >&5
+ echo "$as_me:17367: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17370: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16181: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17373: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_curses_lib=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16187 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17379 "configure"
#include "confdefs.h"
-#include <menu.h>
+#include <$MENU_NAME.h>
int main(void)
{ (void) menu_driver ( 0,0 ); return 0; }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:16194: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:17386: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16197: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:16199: \"$ac_try\"") >&5
+ echo "$as_me:17389: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:17391: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16202: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17394: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_curses_lib=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_curses_lib=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_curses_lib=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:16219: result: $cf_have_curses_lib" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:17411: result: $cf_have_curses_lib" >&5
echo "${ECHO_T}$cf_have_curses_lib" >&6
test "$cf_have_curses_lib" = maybe && cf_have_curses_lib=yes
- if test "$cf_have_curses_lib" != "yes"
+ if test "$cf_have_curses_lib" = "yes"
then
- CPPFLAGS="$cf_save_CPPFLAGS"
- LIBS="$cf_save_LIBS"
- else
-cf_upper=`echo "have_libmenu" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cf_upper=`echo "have_lib$MENU_NAME" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
cat >>confdefs.h <<EOF
#define $cf_upper 1
EOF
+ else
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
fi
fi
fi
if test "$cf_have_curses_lib" = no; then
- as_ac_Lib=`echo "ac_cv_lib_menu$cf_cv_libtype''_menu_driver" | $as_tr_sh`
-echo "$as_me:16239: checking for menu_driver in -lmenu$cf_cv_libtype" >&5
-echo $ECHO_N "checking for menu_driver in -lmenu$cf_cv_libtype... $ECHO_C" >&6
+ as_ac_Lib=`echo "ac_cv_lib_$MENU_NAME$cf_cv_libtype''_menu_driver" | $as_tr_sh`
+echo "$as_me:17432: checking for menu_driver in -l$MENU_NAME$cf_cv_libtype" >&5
+echo $ECHO_N "checking for menu_driver in -l$MENU_NAME$cf_cv_libtype... $ECHO_C" >&6
if eval "test \"\${$as_ac_Lib+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmenu$cf_cv_libtype $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 16247 "configure"
+LIBS="-l$MENU_NAME$cf_cv_libtype $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 17440 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -16262,37 +17455,37 @@ menu_driver ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16266: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17459: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16269: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16272: \"$ac_try\"") >&5
+ echo "$as_me:17462: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17465: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16275: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17468: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Lib=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Lib=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:16286: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+echo "$as_me:17479: result: `eval echo '${'"$as_ac_Lib"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Lib"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Lib"'}'`" = yes; then
-cf_upper=`echo "have_libmenu" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cf_upper=`echo "have_lib$MENU_NAME" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in -lmenu$cf_cv_libtype; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in -l$MENU_NAME$cf_cv_libtype; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -16316,7 +17509,7 @@ fi
cf_curses_headers="$cf_curses_headers menu.h"
fi
-echo "$as_me:16319: checking if you want to check for form functions" >&5
+echo "$as_me:17512: checking if you want to check for form functions" >&5
echo $ECHO_N "checking if you want to check for form functions... $ECHO_C" >&6
# Check whether --enable-form or --disable-form was given.
@@ -16333,7 +17526,7 @@ else
cf_enable_form=$cf_default_form
fi;
-echo "$as_me:16336: result: $cf_enable_form" >&5
+echo "$as_me:17529: result: $cf_enable_form" >&5
echo "${ECHO_T}$cf_enable_form" >&6
if test $cf_enable_form = yes
then
@@ -16342,14 +17535,14 @@ then
;;
(curses*)
-echo "$as_me:16345: checking for NetBSD form.h" >&5
+echo "$as_me:17538: checking for NetBSD form.h" >&5
echo $ECHO_N "checking for NetBSD form.h... $ECHO_C" >&6
if test "${cf_cv_netbsd_form_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 16352 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 17545 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -16367,29 +17560,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:16371: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:17564: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:16374: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:16377: \"$ac_try\"") >&5
+ echo "$as_me:17567: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:17570: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16380: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17573: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_netbsd_form_h=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_netbsd_form_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:16392: result: $cf_cv_netbsd_form_h" >&5
+echo "$as_me:17585: result: $cf_cv_netbsd_form_h" >&5
echo "${ECHO_T}$cf_cv_netbsd_form_h" >&6
test "$cf_cv_netbsd_form_h" = yes &&
@@ -16406,38 +17599,65 @@ cf_have_curses_lib=no
if test "x${NCURSES_CONFIG_PKG}" = xnone; then
:
elif test "x${PKG_CONFIG:=none}" != xnone; then
- echo "$as_me:16409: checking pkg-config for form$cf_cv_libtype" >&5
-echo $ECHO_N "checking pkg-config for form$cf_cv_libtype... $ECHO_C" >&6
- if "$PKG_CONFIG" --exists form$cf_cv_libtype ; then
- echo "$as_me:16412: result: yes" >&5
+ echo "$as_me:17602: checking pkg-config for $FORM_NAME$cf_cv_libtype" >&5
+echo $ECHO_N "checking pkg-config for $FORM_NAME$cf_cv_libtype... $ECHO_C" >&6
+ if "$PKG_CONFIG" --exists "$FORM_NAME$cf_cv_libtype" ; then
+ echo "$as_me:17605: result: yes" >&5
echo "${ECHO_T}yes" >&6
- echo "$as_me:16415: checking if the form$cf_cv_libtype package files work" >&5
-echo $ECHO_N "checking if the form$cf_cv_libtype package files work... $ECHO_C" >&6
+ echo "$as_me:17608: checking if the $FORM_NAME$cf_cv_libtype package files work" >&5
+echo $ECHO_N "checking if the $FORM_NAME$cf_cv_libtype package files work... $ECHO_C" >&6
+ cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
cf_save_LIBS="$LIBS"
+for cf_add_cflags in `$PKG_CONFIG --cflags "$FORM_NAME$cf_cv_libtype"`
+do
+ case "x$cf_add_cflags" in
+ (x-[DU]*)
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CFLAGS" != "$cf_old_cflag" || break
+
+ CFLAGS="$cf_old_cflag"
+done
+
+cf_tmp_cflag=`echo "x$cf_add_cflags" | sed -e 's/^.//' -e 's/=.*//'`
+while true
+do
+ cf_old_cflag=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/[ ][ ]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[^ ][^ ]*\\)\?%%" -e 's/^[ ]*//' -e 's%[ ][ ]*-D% -D%g' -e 's%[ ][ ]*-I% -I%g'`
+ test "$CPPFLAGS" != "$cf_old_cflag" || break
+
+ CPPFLAGS="$cf_old_cflag"
+done
+
+ ;;
+ esac
+
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
-for cf_add_cflags in `$PKG_CONFIG --cflags form$cf_cv_libtype`
+for cf_add_cflags in $cf_add_cflags
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -16456,7 +17676,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -16486,7 +17706,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -16516,10 +17736,12 @@ if test -n "$cf_new_extra_cppflags" ; then
fi
+done
+
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in `$PKG_CONFIG --libs form$cf_cv_libtype`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in `$PKG_CONFIG --libs "$FORM_NAME$cf_cv_libtype"`; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -16532,10 +17754,10 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 16536 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17758 "configure"
#include "confdefs.h"
-#include <form.h>
+#include <$FORM_NAME.h>
int
main (void)
{
@@ -16544,83 +17766,84 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16548: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17770: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16551: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16554: \"$ac_try\"") >&5
+ echo "$as_me:17773: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17776: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16557: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17779: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
if test "$cross_compiling" = yes; then
cf_have_curses_lib=maybe
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16563 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17785 "configure"
#include "confdefs.h"
-#include <form.h>
+#include <$FORM_NAME.h>
int main(void)
{ (void) form_driver ( 0,0 ); return 0; }
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:16570: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:17792: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16573: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:16575: \"$ac_try\"") >&5
+ echo "$as_me:17795: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:17797: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16578: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17800: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_have_curses_lib=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_curses_lib=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_have_curses_lib=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- echo "$as_me:16595: result: $cf_have_curses_lib" >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ echo "$as_me:17817: result: $cf_have_curses_lib" >&5
echo "${ECHO_T}$cf_have_curses_lib" >&6
test "$cf_have_curses_lib" = maybe && cf_have_curses_lib=yes
- if test "$cf_have_curses_lib" != "yes"
+ if test "$cf_have_curses_lib" = "yes"
then
- CPPFLAGS="$cf_save_CPPFLAGS"
- LIBS="$cf_save_LIBS"
- else
-cf_upper=`echo "have_libform" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cf_upper=`echo "have_lib$FORM_NAME" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
cat >>confdefs.h <<EOF
#define $cf_upper 1
EOF
+ else
+ CFLAGS="$cf_save_CFLAGS"
+ CPPFLAGS="$cf_save_CPPFLAGS"
+ LIBS="$cf_save_LIBS"
fi
fi
fi
if test "$cf_have_curses_lib" = no; then
- as_ac_Lib=`echo "ac_cv_lib_form$cf_cv_libtype''_form_driver" | $as_tr_sh`
-echo "$as_me:16615: checking for form_driver in -lform$cf_cv_libtype" >&5
-echo $ECHO_N "checking for form_driver in -lform$cf_cv_libtype... $ECHO_C" >&6
+ as_ac_Lib=`echo "ac_cv_lib_$FORM_NAME$cf_cv_libtype''_form_driver" | $as_tr_sh`
+echo "$as_me:17838: checking for form_driver in -l$FORM_NAME$cf_cv_libtype" >&5
+echo $ECHO_N "checking for form_driver in -l$FORM_NAME$cf_cv_libtype... $ECHO_C" >&6
if eval "test \"\${$as_ac_Lib+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lform$cf_cv_libtype $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 16623 "configure"
+LIBS="-l$FORM_NAME$cf_cv_libtype $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 17846 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -16638,37 +17861,37 @@ form_driver ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:16642: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:17865: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16645: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:16648: \"$ac_try\"") >&5
+ echo "$as_me:17868: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:17871: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16651: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:17874: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_Lib=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_Lib=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:16662: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+echo "$as_me:17885: result: `eval echo '${'"$as_ac_Lib"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Lib"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Lib"'}'`" = yes; then
-cf_upper=`echo "have_libform" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cf_upper=`echo "have_lib$FORM_NAME" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
-for cf_add_1lib in -lform$cf_cv_libtype; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
+for cf_add_1lib in -l$FORM_NAME$cf_cv_libtype; do cf_add_0lib="$cf_add_1lib $cf_add_0lib"; done
# filter duplicates
for cf_add_1lib in $cf_add_0lib; do
for cf_add_2lib in $cf_add_libs; do
@@ -16697,24 +17920,24 @@ fi
for ac_header in $cf_curses_headers
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:16700: checking for $ac_header" >&5
+echo "$as_me:17923: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16706 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17929 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:16710: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:17933: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:16716: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:17939: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -16727,14 +17950,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:16735: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:17958: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -16742,13 +17965,13 @@ EOF
fi
done
-echo "$as_me:16745: checking for ANSI C header files" >&5
+echo "$as_me:17968: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
if test "${ac_cv_header_stdc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16751 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 17974 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@@ -16756,14 +17979,14 @@ else
#include <float.h>
_ACEOF
-if { (eval echo "$as_me:16759: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:17982: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:16765: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:17988: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -16776,21 +17999,21 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_stdc=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 16787 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18010 "configure"
#include "confdefs.h"
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "memchr" >/dev/null 2>&1; then
+ $EGREP "memchr" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -16801,14 +18024,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-#line 16805 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18028 "configure"
#include "confdefs.h"
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "free" >/dev/null 2>&1; then
+ $EGREP "free" >/dev/null 2>&1; then
:
else
ac_cv_header_stdc=no
@@ -16822,8 +18045,8 @@ if test $ac_cv_header_stdc = yes; then
if test "$cross_compiling" = yes; then
:
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16826 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18049 "configure"
#include "confdefs.h"
#include <ctype.h>
#if ((' ' & 0x0FF) == 0x020)
@@ -16848,29 +18071,29 @@ main (void)
$ac_main_return (0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:16852: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:18075: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:16855: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:16857: \"$ac_try\"") >&5
+ echo "$as_me:18078: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:18080: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16860: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18083: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_stdc=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
fi
fi
-echo "$as_me:16873: result: $ac_cv_header_stdc" >&5
+echo "$as_me:18096: result: $ac_cv_header_stdc" >&5
echo "${ECHO_T}$ac_cv_header_stdc" >&6
if test $ac_cv_header_stdc = yes; then
@@ -16880,13 +18103,13 @@ EOF
fi
-echo "$as_me:16883: checking whether time.h and sys/time.h may both be included" >&5
+echo "$as_me:18106: checking whether time.h and sys/time.h may both be included" >&5
echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6
if test "${ac_cv_header_time+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16889 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18112 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/time.h>
@@ -16901,27 +18124,27 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:16905: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18128: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:16908: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:16911: \"$ac_try\"") >&5
+ echo "$as_me:18131: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18134: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:16914: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18137: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_header_time=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_header_time=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:16924: result: $ac_cv_header_time" >&5
+echo "$as_me:18147: result: $ac_cv_header_time" >&5
echo "${ECHO_T}$ac_cv_header_time" >&6
if test $ac_cv_header_time = yes; then
@@ -16945,24 +18168,24 @@ unistd.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:16948: checking for $ac_header" >&5
+echo "$as_me:18171: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 16954 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18177 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:16958: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:18181: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:16964: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:18187: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -16975,14 +18198,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:16983: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:18206: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -16993,24 +18216,24 @@ done
for ac_header in unistd.h getopt.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:16996: checking for $ac_header" >&5
+echo "$as_me:18219: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17002 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18225 "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
-if { (eval echo "$as_me:17006: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:18229: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:17012: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:18235: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -17023,14 +18246,14 @@ if test -z "$ac_cpp_err"; then
eval "$as_ac_Header=yes"
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
eval "$as_ac_Header=no"
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:17031: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+echo "$as_me:18254: result: `eval echo '${'"$as_ac_Header"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_Header"'}'`" >&6
+if test "`eval echo '${'"$as_ac_Header"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
EOF
@@ -17038,7 +18261,7 @@ EOF
fi
done
-echo "$as_me:17041: checking for header declaring getopt variables" >&5
+echo "$as_me:18264: checking for header declaring getopt variables" >&5
echo $ECHO_N "checking for header declaring getopt variables... $ECHO_C" >&6
if test "${cf_cv_getopt_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -17047,51 +18270,51 @@ else
cf_cv_getopt_header=none
for cf_header in stdio.h stdlib.h unistd.h getopt.h
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 17051 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 18274 "configure"
#include "confdefs.h"
#include <$cf_header>
int
main (void)
{
-int x = optind; char *y = optarg
+int x = optind; char *y = optarg; (void)x; (void)y
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17064: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18287: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17067: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17070: \"$ac_try\"") >&5
+ echo "$as_me:18290: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18293: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17073: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18296: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_getopt_header=$cf_header
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:17085: result: $cf_cv_getopt_header" >&5
+echo "$as_me:18308: result: $cf_cv_getopt_header" >&5
echo "${ECHO_T}$cf_cv_getopt_header" >&6
-if test $cf_cv_getopt_header != none ; then
+if test "$cf_cv_getopt_header" != none ; then
cat >>confdefs.h <<\EOF
#define HAVE_GETOPT_HEADER 1
EOF
fi
-if test $cf_cv_getopt_header = getopt.h ; then
+if test "$cf_cv_getopt_header" = getopt.h ; then
cat >>confdefs.h <<\EOF
#define NEED_GETOPT_H 1
@@ -17102,18 +18325,20 @@ fi
for ac_func in \
getopt \
gettimeofday \
+snprintf \
+strdup \
strstr \
tsearch \
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:17110: checking for $ac_func" >&5
+echo "$as_me:18335: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17116 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18341 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -17143,29 +18368,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17147: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18372: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17150: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17153: \"$ac_try\"") >&5
+ echo "$as_me:18375: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18378: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17156: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18381: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:17166: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:18391: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -17174,14 +18399,14 @@ fi
done
# use a compile-check to work with ncurses*-config and subdirectory includes
-echo "$as_me:17177: checking if we can use termcap.h" >&5
+echo "$as_me:18402: checking if we can use termcap.h" >&5
echo $ECHO_N "checking if we can use termcap.h... $ECHO_C" >&6
if test "${cf_cv_have_termcap_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17184 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18409 "configure"
#include "confdefs.h"
#include <curses.h>
@@ -17201,27 +18426,27 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17205: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18430: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17208: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17211: \"$ac_try\"") >&5
+ echo "$as_me:18433: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18436: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17214: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18439: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have_termcap_h=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have_termcap_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:17224: result: $cf_cv_have_termcap_h" >&5
+echo "$as_me:18449: result: $cf_cv_have_termcap_h" >&5
echo "${ECHO_T}$cf_cv_have_termcap_h" >&6
if test "x$cf_cv_have_termcap_h" = xyes
then
@@ -17231,14 +18456,14 @@ cat >>confdefs.h <<\EOF
EOF
else
-echo "$as_me:17234: checking if we can use ncurses/termcap.h" >&5
+echo "$as_me:18459: checking if we can use ncurses/termcap.h" >&5
echo $ECHO_N "checking if we can use ncurses/termcap.h... $ECHO_C" >&6
if test "${cf_cv_have_ncurses_termcap_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17241 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18466 "configure"
#include "confdefs.h"
#include <ncurses/curses.h>
@@ -17258,27 +18483,27 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17262: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18487: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17265: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17268: \"$ac_try\"") >&5
+ echo "$as_me:18490: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18493: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17271: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18496: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_have_ncurses_termcap_h=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_have_ncurses_termcap_h=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:17281: result: $cf_cv_have_ncurses_termcap_h" >&5
+echo "$as_me:18506: result: $cf_cv_have_ncurses_termcap_h" >&5
echo "${ECHO_T}$cf_cv_have_ncurses_termcap_h" >&6
test "x$cf_cv_have_ncurses_termcap_h" = xyes &&
cat >>confdefs.h <<\EOF
@@ -17288,7 +18513,7 @@ EOF
fi
if test "x$ac_cv_func_getopt" = xno; then
- { { echo "$as_me:17291: error: getopt is required for building programs" >&5
+ { { echo "$as_me:18516: error: getopt is required for building programs" >&5
echo "$as_me: error: getopt is required for building programs" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -17307,13 +18532,13 @@ wcstombs \
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:17310: checking for $ac_func" >&5
+echo "$as_me:18535: checking for $ac_func" >&5
echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
if eval "test \"\${$as_ac_var+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 17316 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18541 "configure"
#include "confdefs.h"
#define $ac_func autoconf_temporary
#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
@@ -17343,29 +18568,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17347: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18572: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17350: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17353: \"$ac_try\"") >&5
+ echo "$as_me:18575: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18578: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17356: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18581: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
eval "$as_ac_var=yes"
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
eval "$as_ac_var=no"
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:17366: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+echo "$as_me:18591: result: `eval echo '${'"$as_ac_var"'}'`" >&5
+echo "${ECHO_T}`eval echo '${'"$as_ac_var"'}'`" >&6
+if test "`eval echo '${'"$as_ac_var"'}'`" = yes; then
cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
EOF
@@ -17375,15 +18600,15 @@ done
fi
-echo "$as_me:17378: checking definition to turn on extended curses functions" >&5
+echo "$as_me:18603: checking definition to turn on extended curses functions" >&5
echo $ECHO_N "checking definition to turn on extended curses functions... $ECHO_C" >&6
if test "${cf_cv_need_xopen_extension+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_cv_need_xopen_extension=unknown
-cat >conftest.$ac_ext <<_ACEOF
-#line 17386 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 18611 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -17397,38 +18622,44 @@ main (void)
make an error
#endif
#endif
-#ifdef NCURSES_VERSION
+#ifdef NCURSES_WIDECHAR
+make an error /* prefer to fall-through on the second checks */
+#endif
cchar_t check;
int check2 = curs_set((int)sizeof(check));
-#endif
long x = winnstr(stdscr, "", 0);
int x1, y1;
- getbegyx(stdscr, y1, x1)
+ (void)check2;
+ getbegyx(stdscr, y1, x1);
+ (void)x;
+ (void)y1;
+ (void)x1;
+
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17412: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18643: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17415: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17418: \"$ac_try\"") >&5
+ echo "$as_me:18646: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18649: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17421: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18652: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_need_xopen_extension=none
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
for cf_try_xopen_extension in _XOPEN_SOURCE_EXTENDED NCURSES_WIDECHAR
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 17431 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18662 "configure"
#include "confdefs.h"
#define $cf_try_xopen_extension 1
@@ -17438,45 +18669,48 @@ int
main (void)
{
-#ifdef NCURSES_VERSION
cchar_t check;
int check2 = curs_set((int)sizeof(check));
-#endif
long x = winnstr(stdscr, "", 0);
int x1, y1;
- getbegyx(stdscr, y1, x1)
+ getbegyx(stdscr, y1, x1);
+ (void)check2;
+ (void)x;
+ (void)y1;
+ (void)x1;
+
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17453: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:18687: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17456: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17459: \"$ac_try\"") >&5
+ echo "$as_me:18690: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:18693: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17462: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18696: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_need_xopen_extension=$cf_try_xopen_extension; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:17476: result: $cf_cv_need_xopen_extension" >&5
+echo "$as_me:18710: result: $cf_cv_need_xopen_extension" >&5
echo "${ECHO_T}$cf_cv_need_xopen_extension" >&6
-case $cf_cv_need_xopen_extension in
+case "$cf_cv_need_xopen_extension" in
(*_*)
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
@@ -17485,7 +18719,7 @@ case $cf_cv_need_xopen_extension in
;;
esac
-echo "$as_me:17488: checking for term.h" >&5
+echo "$as_me:18722: checking for term.h" >&5
echo $ECHO_N "checking for term.h... $ECHO_C" >&6
if test "${cf_cv_term_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -17496,17 +18730,17 @@ else
cf_header_list="term.h ncurses/term.h ncursesw/term.h"
-case ${cf_cv_ncurses_header:-curses.h} in
+case "${cf_cv_ncurses_header:-curses.h}" in
(*/*)
- cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h
+ cf_header_item=`echo "${cf_cv_ncurses_header:-curses.h}" | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h
cf_header_list="$cf_header_item $cf_header_list"
;;
esac
for cf_header in $cf_header_list
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 17509 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18743 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -17514,41 +18748,41 @@ do
int
main (void)
{
-WINDOW *x
+WINDOW *x; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17523: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18757: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17526: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17529: \"$ac_try\"") >&5
+ echo "$as_me:18760: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18763: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17532: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18766: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header=$cf_header
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(no)
# If curses is ncurses, some packagers still mess it up by trying to make
# us use GNU termcap. This handles the most common case.
for cf_header in ncurses/term.h ncursesw/term.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 17551 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18785 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -17560,40 +18794,40 @@ make an error
int
main (void)
{
-WINDOW *x
+WINDOW *x; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17569: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18803: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17572: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17575: \"$ac_try\"") >&5
+ echo "$as_me:18806: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18809: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17578: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18812: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_term_header=$cf_header
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_term_header=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
;;
esac
fi
-echo "$as_me:17593: result: $cf_cv_term_header" >&5
+echo "$as_me:18827: result: $cf_cv_term_header" >&5
echo "${ECHO_T}$cf_cv_term_header" >&6
-case $cf_cv_term_header in
+case "$cf_cv_term_header" in
(term.h)
cat >>confdefs.h <<\EOF
@@ -17617,7 +18851,7 @@ EOF
;;
esac
-echo "$as_me:17620: checking for unctrl.h" >&5
+echo "$as_me:18854: checking for unctrl.h" >&5
echo $ECHO_N "checking for unctrl.h... $ECHO_C" >&6
if test "${cf_cv_unctrl_header+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -17628,17 +18862,17 @@ else
cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h"
-case ${cf_cv_ncurses_header:-curses.h} in
+case "${cf_cv_ncurses_header:-curses.h}" in
(*/*)
- cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h
+ cf_header_item=`echo "${cf_cv_ncurses_header:-curses.h}" | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h
cf_header_list="$cf_header_item $cf_header_list"
;;
esac
for cf_header in $cf_header_list
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 17641 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 18875 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -17646,45 +18880,45 @@ do
int
main (void)
{
-WINDOW *x
+WINDOW *x; (void)x
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17655: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:18889: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17658: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17661: \"$ac_try\"") >&5
+ echo "$as_me:18892: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:18895: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17664: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:18898: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_unctrl_header=$cf_header
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_unctrl_header=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
fi
-echo "$as_me:17677: result: $cf_cv_unctrl_header" >&5
+echo "$as_me:18911: result: $cf_cv_unctrl_header" >&5
echo "${ECHO_T}$cf_cv_unctrl_header" >&6
-case $cf_cv_unctrl_header in
+case "$cf_cv_unctrl_header" in
(no)
- { echo "$as_me:17682: WARNING: unctrl.h header not found" >&5
+ { echo "$as_me:18916: WARNING: unctrl.h header not found" >&5
echo "$as_me: WARNING: unctrl.h header not found" >&2;}
;;
esac
-case $cf_cv_unctrl_header in
+case "$cf_cv_unctrl_header" in
(unctrl.h)
cat >>confdefs.h <<\EOF
@@ -17717,6 +18951,8 @@ color_set \
copywin \
delscreen \
dupwin \
+exit_curses \
+exit_terminfo \
filter \
getbegx \
getcurx \
@@ -17743,6 +18979,7 @@ setupterm \
slk_color \
slk_init \
termattrs \
+termname \
tgetent \
tigetnum \
tigetstr \
@@ -17768,10 +19005,10 @@ do
cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
- echo "$as_me:17771: checking for ${cf_func}" >&5
+ echo "$as_me:19008: checking for ${cf_func}" >&5
echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6
-echo "${as_me:-configure}:17774: testing ${cf_func} ..." 1>&5
+echo "${as_me:-configure}:19011: testing ${cf_func} ..." 1>&5
if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -17779,8 +19016,8 @@ else
eval cf_result='$ac_cv_func_'$cf_func
if test ".$cf_result" != ".no"; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 17783 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19020 "configure"
#include "confdefs.h"
#ifdef HAVE_XCURSES
@@ -17803,7 +19040,7 @@ main (void)
#ifndef ${cf_func}
long foo = (long)(&${cf_func});
-fprintf(stderr, "testing linkage of $cf_func:%p\n", (void *)foo);
+fprintf(stderr, "testing linkage of $cf_func:%p\\n", (void *)foo);
if (foo + 1234L > 5678L)
${cf_cv_main_return:-return}(foo != 0);
#endif
@@ -17812,35 +19049,35 @@ if (foo + 1234L > 5678L)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17816: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19053: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17819: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17822: \"$ac_try\"") >&5
+ echo "$as_me:19056: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19059: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17825: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19062: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
- eval 'cf_cv_func_'$cf_func'=$cf_result'
+ eval 'cf_cv_func_'$cf_func'="$cf_result"'
fi
# use the computed/retrieved cache-value:
eval 'cf_result=$cf_cv_func_'$cf_func
- echo "$as_me:17841: result: $cf_result" >&5
+ echo "$as_me:19078: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
- if test $cf_result != no; then
+ if test "$cf_result" != no; then
cat >>confdefs.h <<EOF
#define HAVE_${cf_tr_func} 1
EOF
@@ -17853,10 +19090,10 @@ do
cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
- echo "$as_me:17856: checking for ${cf_func}" >&5
+ echo "$as_me:19093: checking for ${cf_func}" >&5
echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6
-echo "${as_me:-configure}:17859: testing ${cf_func} ..." 1>&5
+echo "${as_me:-configure}:19096: testing ${cf_func} ..." 1>&5
if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -17864,8 +19101,8 @@ else
eval cf_result='$ac_cv_func_'$cf_func
if test ".$cf_result" != ".no"; then
- cat >conftest.$ac_ext <<_ACEOF
-#line 17868 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19105 "configure"
#include "confdefs.h"
#ifdef HAVE_XCURSES
@@ -17888,7 +19125,7 @@ main (void)
#ifndef ${cf_func}
long foo = (long)(&${cf_func});
-fprintf(stderr, "testing linkage of $cf_func:%p\n", (void *)foo);
+fprintf(stderr, "testing linkage of $cf_func:%p\\n", (void *)foo);
if (foo + 1234L > 5678L)
${cf_cv_main_return:-return}(foo != 0);
#endif
@@ -17897,35 +19134,35 @@ if (foo + 1234L > 5678L)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:17901: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19138: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:17904: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:17907: \"$ac_try\"") >&5
+ echo "$as_me:19141: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19144: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17910: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19147: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
- eval 'cf_cv_func_'$cf_func'=$cf_result'
+ eval 'cf_cv_func_'$cf_func'="$cf_result"'
fi
# use the computed/retrieved cache-value:
eval 'cf_result=$cf_cv_func_'$cf_func
- echo "$as_me:17926: result: $cf_result" >&5
+ echo "$as_me:19163: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
- if test $cf_result != no; then
+ if test "$cf_result" != no; then
cat >>confdefs.h <<EOF
#define HAVE_${cf_tr_func} 1
EOF
@@ -17933,21 +19170,21 @@ EOF
fi
done
-if test x$cf_cv_func_tputs = xyes
+if test "x$cf_cv_func_tputs" = xyes
then
cf_done=no
for cf_arg in int char
do
for cf_ret in int void
do
- if test $cf_ret = void
+ if test "$cf_ret" = void
then
cf_return="/* nothing */"
else
cf_return="return value"
fi
- cat >conftest.$ac_ext <<_ACEOF
-#line 17950 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19187 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -17966,22 +19203,22 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:17970: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:19207: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:17973: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:17976: \"$ac_try\"") >&5
+ echo "$as_me:19210: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:19213: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:17979: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19216: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
test -n "$verbose" && echo " prototype $cf_ret func($cf_arg value)" 1>&6
-echo "${as_me:-configure}:17984: testing prototype $cf_ret func($cf_arg value) ..." 1>&5
+echo "${as_me:-configure}:19221: testing prototype $cf_ret func($cf_arg value) ..." 1>&5
cat >>confdefs.h <<EOF
#define TPUTS_ARG $cf_arg
@@ -17993,22 +19230,22 @@ EOF
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
done
- test $cf_done = yes && break
+ test "$cf_done" = yes && break
done
fi
-echo "$as_me:18004: checking for ncurses extended functions" >&5
+echo "$as_me:19241: checking for ncurses extended functions" >&5
echo $ECHO_N "checking for ncurses extended functions... $ECHO_C" >&6
if test "${cf_cv_ncurses_ext_funcs+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 18011 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19248 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -18022,25 +19259,25 @@ int x = NCURSES_EXT_FUNCS
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18026: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:19263: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18029: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18032: \"$ac_try\"") >&5
+ echo "$as_me:19266: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:19269: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18035: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19272: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_ext_funcs=defined
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 18043 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19280 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -18064,31 +19301,31 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18068: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19305: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18071: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18074: \"$ac_try\"") >&5
+ echo "$as_me:19308: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19311: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18077: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19314: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_ncurses_ext_funcs=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_ncurses_ext_funcs=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:18091: result: $cf_cv_ncurses_ext_funcs" >&5
+echo "$as_me:19328: result: $cf_cv_ncurses_ext_funcs" >&5
echo "${ECHO_T}$cf_cv_ncurses_ext_funcs" >&6
test "$cf_cv_ncurses_ext_funcs" = yes &&
cat >>confdefs.h <<\EOF
@@ -18102,11 +19339,11 @@ then
if test -n "$cf_cv_ncurses_version" && test "x$cf_cv_ncurses_version" != xno
then
cf_define_xpg5=no
- echo "$as_me:18105: checking if _XPG5 should be defined to enable wide-characters" >&5
+ echo "$as_me:19342: checking if _XPG5 should be defined to enable wide-characters" >&5
echo $ECHO_N "checking if _XPG5 should be defined to enable wide-characters... $ECHO_C" >&6
- cat >conftest.$ac_ext <<_ACEOF
-#line 18109 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19346 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -18118,26 +19355,26 @@ int x = _XPG5
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18122: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:19359: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18125: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18128: \"$ac_try\"") >&5
+ echo "$as_me:19362: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:19365: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18131: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19368: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
:
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_save_cppflags="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS -D_XPG5"
- cat >conftest.$ac_ext <<_ACEOF
-#line 18140 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19377 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -18149,28 +19386,28 @@ int x = _XPG5
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18153: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:19390: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18156: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18159: \"$ac_try\"") >&5
+ echo "$as_me:19393: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:19396: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18162: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19399: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_define_xpg5=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
CPPFLAGS="$cf_save_cppflags"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:18173: result: $cf_define_xpg5" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+ echo "$as_me:19410: result: $cf_define_xpg5" >&5
echo "${ECHO_T}$cf_define_xpg5" >&6
if test "$cf_define_xpg5" = yes
@@ -18179,14 +19416,14 @@ echo "${ECHO_T}$cf_define_xpg5" >&6
fi
fi
- echo "$as_me:18182: checking for wide-character functions" >&5
+ echo "$as_me:19419: checking for wide-character functions" >&5
echo $ECHO_N "checking for wide-character functions... $ECHO_C" >&6
if test "${cf_cv_widechar_funcs+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18189 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19426 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -18202,28 +19439,28 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18206: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19443: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18209: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18212: \"$ac_try\"") >&5
+ echo "$as_me:19446: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19449: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18215: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19452: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_widechar_funcs=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_widechar_funcs=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:18226: result: $cf_cv_widechar_funcs" >&5
+echo "$as_me:19463: result: $cf_cv_widechar_funcs" >&5
echo "${ECHO_T}$cf_cv_widechar_funcs" >&6
if test "$cf_cv_widechar_funcs" != no ; then
@@ -18244,14 +19481,14 @@ EOF
fi
-echo "$as_me:18247: checking if $cf_cv_screen library uses pthreads" >&5
+echo "$as_me:19484: checking if $cf_cv_screen library uses pthreads" >&5
echo $ECHO_N "checking if $cf_cv_screen library uses pthreads... $ECHO_C" >&6
if test "${cf_cv_use_pthreads+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 18254 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19491 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -18268,42 +19505,42 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18272: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19509: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18275: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18278: \"$ac_try\"") >&5
+ echo "$as_me:19512: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19515: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18281: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19518: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_use_pthreads=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_use_pthreads=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
-echo "$as_me:18292: result: $cf_cv_use_pthreads" >&5
+echo "$as_me:19529: result: $cf_cv_use_pthreads" >&5
echo "${ECHO_T}$cf_cv_use_pthreads" >&6
test $cf_cv_use_pthreads = yes &&
cat >>confdefs.h <<\EOF
#define USE_PTHREADS 1
EOF
-echo "$as_me:18299: checking if sys/time.h works with sys/select.h" >&5
+echo "$as_me:19536: checking if sys/time.h works with sys/select.h" >&5
echo $ECHO_N "checking if sys/time.h works with sys/select.h... $ECHO_C" >&6
if test "${cf_cv_sys_time_select+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 18306 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19543 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -18322,29 +19559,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18326: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:19563: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18329: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18332: \"$ac_try\"") >&5
+ echo "$as_me:19566: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:19569: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18335: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19572: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_sys_time_select=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_sys_time_select=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:18347: result: $cf_cv_sys_time_select" >&5
+echo "$as_me:19584: result: $cf_cv_sys_time_select" >&5
echo "${ECHO_T}$cf_cv_sys_time_select" >&6
test "$cf_cv_sys_time_select" = yes &&
cat >>confdefs.h <<\EOF
@@ -18353,15 +19590,15 @@ EOF
# special check for test/ditto.c
-echo "$as_me:18356: checking for openpty in -lutil" >&5
+echo "$as_me:19593: checking for openpty in -lutil" >&5
echo $ECHO_N "checking for openpty in -lutil... $ECHO_C" >&6
if test "${ac_cv_lib_util_openpty+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lutil $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 18364 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19601 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -18379,43 +19616,43 @@ openpty ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18383: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19620: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18386: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18389: \"$ac_try\"") >&5
+ echo "$as_me:19623: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19626: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18392: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19629: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_util_openpty=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_util_openpty=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:18403: result: $ac_cv_lib_util_openpty" >&5
+echo "$as_me:19640: result: $ac_cv_lib_util_openpty" >&5
echo "${ECHO_T}$ac_cv_lib_util_openpty" >&6
-if test $ac_cv_lib_util_openpty = yes; then
+if test "$ac_cv_lib_util_openpty" = yes; then
cf_cv_lib_util=yes
else
cf_cv_lib_util=no
fi
-echo "$as_me:18411: checking for openpty header" >&5
+echo "$as_me:19648: checking for openpty header" >&5
echo $ECHO_N "checking for openpty header... $ECHO_C" >&6
if test "${cf_cv_func_openpty+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cf_save_LIBS="$LIBS"
- test $cf_cv_lib_util = yes && {
+ test "$cf_cv_lib_util" = yes && {
cf_add_libs="$LIBS"
# reverse order
cf_add_0lib=
@@ -18434,8 +19671,8 @@ LIBS="$cf_add_libs"
}
for cf_header in pty.h libutil.h util.h
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 18438 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19675 "configure"
#include "confdefs.h"
#include <$cf_header>
@@ -18451,35 +19688,35 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18455: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19692: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18458: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18461: \"$ac_try\"") >&5
+ echo "$as_me:19695: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19698: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18464: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19701: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_openpty=$cf_header
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_func_openpty=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
LIBS="$cf_save_LIBS"
fi
-echo "$as_me:18482: result: $cf_cv_func_openpty" >&5
+echo "$as_me:19719: result: $cf_cv_func_openpty" >&5
echo "${ECHO_T}$cf_cv_func_openpty" >&6
if test "$cf_cv_func_openpty" != no ; then
@@ -18513,7 +19750,7 @@ TEST_LIBS="$cf_add_libs"
fi
fi
-echo "$as_me:18516: checking for function curses_version" >&5
+echo "$as_me:19753: checking for function curses_version" >&5
echo $ECHO_N "checking for function curses_version... $ECHO_C" >&6
if test "${cf_cv_func_curses_version+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -18522,51 +19759,51 @@ else
if test "$cross_compiling" = yes; then
cf_cv_func_curses_version=unknown
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18526 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19763 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
int main(void)
{
char temp[1024];
- sprintf(temp, "%s\n", curses_version());
+ sprintf(temp, "%s\\n", curses_version());
${cf_cv_main_return:-return}(0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:18539: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:19776: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18542: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:18544: \"$ac_try\"") >&5
+ echo "$as_me:19779: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:19781: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18547: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19784: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_func_curses_version=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_func_curses_version=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
rm -f core
fi
-echo "$as_me:18562: result: $cf_cv_func_curses_version" >&5
+echo "$as_me:19799: result: $cf_cv_func_curses_version" >&5
echo "${ECHO_T}$cf_cv_func_curses_version" >&6
test "$cf_cv_func_curses_version" = yes &&
cat >>confdefs.h <<\EOF
#define HAVE_CURSES_VERSION 1
EOF
-echo "$as_me:18569: checking for alternate character set array" >&5
+echo "$as_me:19806: checking for alternate character set array" >&5
echo $ECHO_N "checking for alternate character set array... $ECHO_C" >&6
if test "${cf_cv_curses_acs_map+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -18575,8 +19812,8 @@ else
cf_cv_curses_acs_map=unknown
for name in acs_map _acs_map __acs_map ${NCURSES_WRAP_PREFIX}acs_map
do
-cat >conftest.$ac_ext <<_ACEOF
-#line 18579 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 19816 "configure"
#include "confdefs.h"
#include <${cf_cv_ncurses_header:-curses.h}>
@@ -18585,34 +19822,34 @@ int
main (void)
{
-$name['k'] = ACS_PLUS
+${name}['k'] = ACS_PLUS
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18595: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19832: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18598: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18601: \"$ac_try\"") >&5
+ echo "$as_me:19835: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19838: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18604: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19841: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_curses_acs_map=$name; break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-echo "$as_me:18615: result: $cf_cv_curses_acs_map" >&5
+echo "$as_me:19852: result: $cf_cv_curses_acs_map" >&5
echo "${ECHO_T}$cf_cv_curses_acs_map" >&6
test "$cf_cv_curses_acs_map" != unknown &&
@@ -18622,7 +19859,7 @@ EOF
if test "$cf_enable_widec" = yes; then
-echo "$as_me:18625: checking for wide alternate character set array" >&5
+echo "$as_me:19862: checking for wide alternate character set array" >&5
echo $ECHO_N "checking for wide alternate character set array... $ECHO_C" >&6
if test "${cf_cv_curses_wacs_map+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -18631,8 +19868,8 @@ else
cf_cv_curses_wacs_map=unknown
for name in wacs_map _wacs_map __wacs_map _nc_wacs _wacs_char
do
- cat >conftest.$ac_ext <<_ACEOF
-#line 18635 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19872 "configure"
#include "confdefs.h"
#ifndef _XOPEN_SOURCE_EXTENDED
@@ -18642,33 +19879,33 @@ else
int
main (void)
{
-void *foo = &($name['k'])
+void *foo = &(${name}['k']); (void)foo
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18651: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19888: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18654: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18657: \"$ac_try\"") >&5
+ echo "$as_me:19891: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19894: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18660: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19897: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_curses_wacs_map=$name
break
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
done
fi
-echo "$as_me:18671: result: $cf_cv_curses_wacs_map" >&5
+echo "$as_me:19908: result: $cf_cv_curses_wacs_map" >&5
echo "${ECHO_T}$cf_cv_curses_wacs_map" >&6
test "$cf_cv_curses_wacs_map" != unknown &&
@@ -18676,7 +19913,7 @@ cat >>confdefs.h <<EOF
#define CURSES_WACS_ARRAY $cf_cv_curses_wacs_map
EOF
-echo "$as_me:18679: checking for wide alternate character constants" >&5
+echo "$as_me:19916: checking for wide alternate character constants" >&5
echo $ECHO_N "checking for wide alternate character constants... $ECHO_C" >&6
if test "${cf_cv_curses_wacs_symbols+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -18685,8 +19922,8 @@ else
cf_cv_curses_wacs_symbols=no
if test "$cf_cv_curses_wacs_map" != unknown
then
- cat >conftest.$ac_ext <<_ACEOF
-#line 18689 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19926 "configure"
#include "confdefs.h"
#ifndef _XOPEN_SOURCE_EXTENDED
@@ -18697,32 +19934,32 @@ int
main (void)
{
cchar_t *foo = WACS_PLUS;
- $cf_cv_curses_wacs_map['k'] = *WACS_PLUS
+ ${cf_cv_curses_wacs_map}['k'] = *WACS_PLUS; (void)foo
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18706: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19943: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18709: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18712: \"$ac_try\"") >&5
+ echo "$as_me:19946: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19949: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18715: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19952: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_curses_wacs_symbols=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 18725 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 19962 "configure"
#include "confdefs.h"
#ifndef _XOPEN_SOURCE_EXTENDED
@@ -18732,33 +19969,33 @@ else
int
main (void)
{
-cchar_t *foo = WACS_PLUS
+cchar_t *foo = WACS_PLUS; (void)foo
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:18741: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:19978: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:18744: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:18747: \"$ac_try\"") >&5
+ echo "$as_me:19981: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:19984: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18750: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:19987: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_curses_wacs_symbols=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
fi
fi
-echo "$as_me:18761: result: $cf_cv_curses_wacs_symbols" >&5
+echo "$as_me:19998: result: $cf_cv_curses_wacs_symbols" >&5
echo "${ECHO_T}$cf_cv_curses_wacs_symbols" >&6
test "$cf_cv_curses_wacs_symbols" != no &&
@@ -18768,10 +20005,10 @@ EOF
fi
-echo "$as_me:18771: checking for type attr_t in ${cf_cv_ncurses_header:-curses.h}" >&5
+echo "$as_me:20008: checking for type attr_t in ${cf_cv_ncurses_header:-curses.h}" >&5
echo $ECHO_N "checking for type attr_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 18774 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20011 "configure"
#include "confdefs.h"
#ifndef _XOPEN_SOURCE_EXTENDED
@@ -18788,28 +20025,28 @@ attr_t foo
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18792: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20029: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18795: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18798: \"$ac_try\"") >&5
+ echo "$as_me:20032: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20035: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18801: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20038: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:18810: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+echo "$as_me:20047: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
-if test $cf_result = yes ; then
+if test "$cf_result" = yes ; then
cf_result=`echo "have_type_attr_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -18828,14 +20065,14 @@ fi
if test "$cf_enable_widec" = yes; then
# This is needed on Tru64 5.0 to declare mbstate_t
-echo "$as_me:18831: checking if we must include wchar.h to declare mbstate_t" >&5
+echo "$as_me:20068: checking if we must include wchar.h to declare mbstate_t" >&5
echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6
if test "${cf_cv_mbstate_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 18838 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20075 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -18852,24 +20089,24 @@ mbstate_t state
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18856: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20093: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18859: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18862: \"$ac_try\"") >&5
+ echo "$as_me:20096: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20099: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18865: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20102: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_mbstate_t=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 18872 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20109 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -18887,29 +20124,29 @@ mbstate_t value
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18891: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20128: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18894: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18897: \"$ac_try\"") >&5
+ echo "$as_me:20131: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20134: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18900: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20137: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_mbstate_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_mbstate_t=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:18912: result: $cf_cv_mbstate_t" >&5
+echo "$as_me:20149: result: $cf_cv_mbstate_t" >&5
echo "${ECHO_T}$cf_cv_mbstate_t" >&6
if test "$cf_cv_mbstate_t" = yes ; then
@@ -18932,14 +20169,14 @@ if test "$cf_cv_mbstate_t" != unknown ; then
fi
# This is needed on Tru64 5.0 to declare wchar_t
-echo "$as_me:18935: checking if we must include wchar.h to declare wchar_t" >&5
+echo "$as_me:20172: checking if we must include wchar.h to declare wchar_t" >&5
echo $ECHO_N "checking if we must include wchar.h to declare wchar_t... $ECHO_C" >&6
if test "${cf_cv_wchar_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 18942 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20179 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -18956,24 +20193,24 @@ wchar_t state
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18960: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20197: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18963: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:18966: \"$ac_try\"") >&5
+ echo "$as_me:20200: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20203: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:18969: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20206: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wchar_t=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 18976 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20213 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -18991,29 +20228,29 @@ wchar_t value
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:18995: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20232: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:18998: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19001: \"$ac_try\"") >&5
+ echo "$as_me:20235: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20238: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19004: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20241: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wchar_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_wchar_t=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:19016: result: $cf_cv_wchar_t" >&5
+echo "$as_me:20253: result: $cf_cv_wchar_t" >&5
echo "${ECHO_T}$cf_cv_wchar_t" >&6
if test "$cf_cv_wchar_t" = yes ; then
@@ -19036,14 +20273,14 @@ if test "$cf_cv_wchar_t" != unknown ; then
fi
# This is needed on Tru64 5.0 to declare wint_t
-echo "$as_me:19039: checking if we must include wchar.h to declare wint_t" >&5
+echo "$as_me:20276: checking if we must include wchar.h to declare wint_t" >&5
echo $ECHO_N "checking if we must include wchar.h to declare wint_t... $ECHO_C" >&6
if test "${cf_cv_wint_t+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
-cat >conftest.$ac_ext <<_ACEOF
-#line 19046 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20283 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -19060,24 +20297,24 @@ wint_t state
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19064: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20301: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19067: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19070: \"$ac_try\"") >&5
+ echo "$as_me:20304: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20307: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19073: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20310: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wint_t=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cat >conftest.$ac_ext <<_ACEOF
-#line 19080 "configure"
+cat "conftest.$ac_ext" >&5
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20317 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -19095,29 +20332,29 @@ wint_t value
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19099: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20336: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19102: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19105: \"$ac_try\"") >&5
+ echo "$as_me:20339: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20342: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19108: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20345: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_wint_t=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_wint_t=unknown
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:19120: result: $cf_cv_wint_t" >&5
+echo "$as_me:20357: result: $cf_cv_wint_t" >&5
echo "${ECHO_T}$cf_cv_wint_t" >&6
if test "$cf_cv_wint_t" = yes ; then
@@ -19141,10 +20378,10 @@ fi
if test "$NCURSES_OK_MBSTATE_T" = 0 ; then
-echo "$as_me:19144: checking for type mbstate_t in ${cf_cv_ncurses_header:-curses.h}" >&5
+echo "$as_me:20381: checking for type mbstate_t in ${cf_cv_ncurses_header:-curses.h}" >&5
echo $ECHO_N "checking for type mbstate_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 19147 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20384 "configure"
#include "confdefs.h"
#ifndef _XOPEN_SOURCE_EXTENDED
@@ -19161,28 +20398,28 @@ mbstate_t foo
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19165: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20402: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19168: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19171: \"$ac_try\"") >&5
+ echo "$as_me:20405: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20408: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19174: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20411: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:19183: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+echo "$as_me:20420: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
-if test $cf_result = yes ; then
+if test "$cf_result" = yes ; then
cf_result=`echo "have_type_mbstate_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -19202,10 +20439,10 @@ fi
if test "$NCURSES_OK_WCHAR_T" = 0 ; then
-echo "$as_me:19205: checking for type wchar_t in ${cf_cv_ncurses_header:-curses.h}" >&5
+echo "$as_me:20442: checking for type wchar_t in ${cf_cv_ncurses_header:-curses.h}" >&5
echo $ECHO_N "checking for type wchar_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 19208 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20445 "configure"
#include "confdefs.h"
#ifndef _XOPEN_SOURCE_EXTENDED
@@ -19222,28 +20459,28 @@ wchar_t foo
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19226: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20463: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19229: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19232: \"$ac_try\"") >&5
+ echo "$as_me:20466: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20469: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19235: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20472: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:19244: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+echo "$as_me:20481: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
-if test $cf_result = yes ; then
+if test "$cf_result" = yes ; then
cf_result=`echo "have_type_wchar_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -19263,10 +20500,10 @@ fi
if test "$NCURSES_OK_WINT_T" = 0 ; then
-echo "$as_me:19266: checking for type wint_t in ${cf_cv_ncurses_header:-curses.h}" >&5
+echo "$as_me:20503: checking for type wint_t in ${cf_cv_ncurses_header:-curses.h}" >&5
echo $ECHO_N "checking for type wint_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 19269 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20506 "configure"
#include "confdefs.h"
#ifndef _XOPEN_SOURCE_EXTENDED
@@ -19283,28 +20520,28 @@ wint_t foo
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19287: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20524: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19290: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19293: \"$ac_try\"") >&5
+ echo "$as_me:20527: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20530: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19296: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20533: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:19305: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+echo "$as_me:20542: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
-if test $cf_result = yes ; then
+if test "$cf_result" = yes ; then
cf_result=`echo "have_type_wint_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -19331,11 +20568,11 @@ boolnames \
boolfnames \
ttytype
do
-echo "$as_me:19334: checking for data $cf_data declaration in ${cf_cv_ncurses_header:-curses.h}" >&5
+echo "$as_me:20571: checking for data $cf_data declaration in ${cf_cv_ncurses_header:-curses.h}" >&5
echo $ECHO_N "checking for data $cf_data declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-#line 19338 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 20575 "configure"
#include "confdefs.h"
#ifdef HAVE_XCURSES
@@ -19361,36 +20598,36 @@ main (void)
#else
const void *foo = &($cf_data);
#endif
- fprintf(stderr, "testing linkage of $cf_data:%p\n", (const void *)foo);
+ fprintf(stderr, "testing linkage of $cf_data:%p\\n", (const void *)foo);
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19371: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:20608: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19374: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19377: \"$ac_try\"") >&5
+ echo "$as_me:20611: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:20614: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19380: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20617: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:19390: result: $cf_result" >&5
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+echo "$as_me:20627: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
-if test $cf_result = yes ; then
+if test "$cf_result" = yes ; then
cf_result=`echo "have_curses_data_$cf_data" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -19399,14 +20636,14 @@ cf_result=`echo "have_curses_data_$cf_data" | sed y%abcdefghijklmnopqrstuvwxyz./
EOF
else
- echo "$as_me:19402: checking for data $cf_data in library" >&5
+ echo "$as_me:20639: checking for data $cf_data in library" >&5
echo $ECHO_N "checking for data $cf_data in library... $ECHO_C" >&6
# BSD linkers insist on making weak linkage, but resolve at runtime.
if test "$cross_compiling" = yes; then
# cross-compiling
- cat >conftest.$ac_ext <<_ACEOF
-#line 19409 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20646 "configure"
#include "confdefs.h"
#ifdef HAVE_XCURSES
@@ -19435,7 +20672,7 @@ main (void)
#else
const void *foo = &($cf_data);
#endif
- fprintf(stderr, "testing linkage of $cf_data:%p\n", (const void *)foo);
+ fprintf(stderr, "testing linkage of $cf_data:%p\\n", (const void *)foo);
${cf_cv_main_return:-return}(foo == 0);
} while (0)
@@ -19444,29 +20681,29 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:19448: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:20685: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19451: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:19454: \"$ac_try\"") >&5
+ echo "$as_me:20688: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:20691: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19457: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20694: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19469 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20706 "configure"
#include "confdefs.h"
#ifdef HAVE_XCURSES
@@ -19492,35 +20729,35 @@ int main(void)
#else
const void *foo = &($cf_data);
#endif
- fprintf(stderr, "testing linkage of $cf_data:%p\n", (const void *)foo);
+ fprintf(stderr, "testing linkage of $cf_data:%p\\n", (const void *)foo);
${cf_cv_main_return:-return}(foo == 0);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:19501: \"$ac_link\"") >&5
+rm -f "conftest$ac_exeext"
+if { (eval echo "$as_me:20738: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:19504: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:19506: \"$ac_try\"") >&5
+ echo "$as_me:20741: \$? = $ac_status" >&5
+ (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"'
+ { (eval echo "$as_me:20743: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19509: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:20746: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_result=yes
else
echo "$as_me: program exited with status $ac_status" >&5
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_result=no
fi
-rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core ./core.* ./*.core "conftest$ac_exeext" "conftest.$ac_objext" "conftest.$ac_ext"
fi
- echo "$as_me:19521: result: $cf_result" >&5
+ echo "$as_me:20758: result: $cf_result" >&5
echo "${ECHO_T}$cf_result" >&6
- if test $cf_result = yes ; then
+ if test "$cf_result" = yes ; then
cf_result=`echo "decl_curses_data_$cf_data" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -19533,9 +20770,1215 @@ EOF
fi
done
-if ( test "$GCC" = yes || test "$GXX" = yes )
+if test -n "$with_screen" && test "x$with_screen" = "xpdcurses"
then
-echo "$as_me:19538: checking if you want to turn on gcc warnings" >&5
+ echo "$as_me:20775: checking for X" >&5
+echo $ECHO_N "checking for X... $ECHO_C" >&6
+
+# Check whether --with-x or --without-x was given.
+if test "${with_x+set}" = set; then
+ withval="$with_x"
+
+fi;
+# $have_x is `yes', `no', `disabled', or empty when we do not yet know.
+if test "x$with_x" = xno; then
+ # The user explicitly disabled X.
+ have_x=disabled
+else
+ if test "x$x_includes" != xNONE && test "x$x_libraries" != xNONE; then
+ # Both variables are already set.
+ have_x=yes
+ else
+ if test "${ac_cv_have_x+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ # One or both of the vars are not set, and there is no cached value.
+ac_x_includes=no ac_x_libraries=no
+rm -fr conftest.dir
+if mkdir conftest.dir; then
+ cd conftest.dir
+ # Make sure to not put "make" in the Imakefile rules, since we grep it out.
+ cat >Imakefile <<'EOF'
+acfindx:
+ @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"'
+EOF
+ if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then
+ # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+ eval "`${MAKE-make} acfindx 2>/dev/null | grep -v make`"
+ # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
+ for ac_extension in a so sl dylib dll; do
+ if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" &&
+ test -f "$ac_im_libdir/libX11.$ac_extension"; then
+ ac_im_usrlibdir=$ac_im_libdir; break
+ fi
+ done
+ # Screen out bogus values from the imake configuration. They are
+ # bogus both because they are the default anyway, and because
+ # using them would break gcc on systems where it needs fixed includes.
+ case $ac_im_incroot in
+ /usr/include) ;;
+ *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;;
+ esac
+ case $ac_im_usrlibdir in
+ /usr/lib | /lib) ;;
+ *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;;
+ esac
+ fi
+ cd ..
+ rm -fr conftest.dir
+fi
+
+# Standard set of common directories for X headers.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+ac_x_header_dirs='
+/usr/X11/include
+/usr/X11R7/include
+/usr/X11R6/include
+/usr/X11R5/include
+/usr/X11R4/include
+
+/opt/local/include
+/opt/X11/include
+
+/usr/include/X11
+/usr/include/X11R7
+/usr/include/X11R6
+/usr/include/X11R5
+/usr/include/X11R4
+
+/usr/local/X11/include
+/usr/local/X11R7/include
+/usr/local/X11R6/include
+/usr/local/X11R5/include
+/usr/local/X11R4/include
+
+/usr/local/include/X11
+/usr/local/include/X11R7
+/usr/local/include/X11R6
+/usr/local/include/X11R5
+/usr/local/include/X11R4
+
+/usr/X386/include
+/usr/x386/include
+/usr/XFree86/include/X11
+
+/usr/include
+/usr/local/include
+/usr/unsupported/include
+/usr/athena/include
+/usr/local/x11r5/include
+/usr/lpp/Xamples/include
+
+/usr/openwin/include
+/usr/openwin/share/include'
+
+if test "$ac_x_includes" = no; then
+ # Guess where to find include files, by looking for Intrinsic.h.
+ # First, try using that file with no special directory specified.
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20879 "configure"
+#include "confdefs.h"
+#include <X11/Intrinsic.h>
+_ACEOF
+if { (eval echo "$as_me:20883: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:20889: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ # We can compile using X headers with no special include directory.
+ac_x_includes=
+else
+ echo "$as_me: failed program was:" >&5
+ cat "conftest.$ac_ext" >&5
+ for ac_dir in $ac_x_header_dirs; do
+ if test -r "$ac_dir/X11/Intrinsic.h"; then
+ ac_x_includes=$ac_dir
+ break
+ fi
+done
+fi
+rm -f conftest.err "conftest.$ac_ext"
+fi # $ac_x_includes = no
+
+if test "$ac_x_libraries" = no; then
+ # Check for the libraries.
+ # See if we find them without any special options.
+ # Don't add to $LIBS permanently.
+ ac_save_LIBS=$LIBS
+ LIBS="-lXt $LIBS"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 20922 "configure"
+#include "confdefs.h"
+#include <X11/Intrinsic.h>
+int
+main (void)
+{
+XtMalloc (0)
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:20934: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:20937: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:20940: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:20943: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ LIBS=$ac_save_LIBS
+# We can link X programs with no special library path.
+ac_x_libraries=
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+LIBS=$ac_save_LIBS
+for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
+do
+ # Don't even attempt the hair of trying to link an X program!
+ for ac_extension in a so sl dylib dll; do
+ if test -r "$ac_dir/libXt.$ac_extension"; then
+ ac_x_libraries=$ac_dir
+ break 2
+ fi
+ done
+done
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+fi # $ac_x_libraries = no
+
+if test "$ac_x_includes" = no || test "$ac_x_libraries" = no; then
+ # Didn't find X anywhere. Cache the known absence of X.
+ ac_cv_have_x="have_x=no"
+else
+ # Record where we found X for the cache.
+ ac_cv_have_x="have_x=yes \
+ ac_x_includes=$ac_x_includes ac_x_libraries=$ac_x_libraries"
+fi
+fi
+
+ fi
+ eval "$ac_cv_have_x"
+fi # $with_x != no
+
+if test "$have_x" != yes; then
+ echo "$as_me:20981: result: $have_x" >&5
+echo "${ECHO_T}$have_x" >&6
+ no_x=yes
+else
+ # If each of the values was on the command line, it overrides each guess.
+ test "x$x_includes" = xNONE && x_includes=$ac_x_includes
+ test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries
+ # Update the cache value to reflect the command line values.
+ ac_cv_have_x="have_x=yes \
+ ac_x_includes=$x_includes ac_x_libraries=$x_libraries"
+ echo "$as_me:20991: result: libraries $x_libraries, headers $x_includes" >&5
+echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6
+fi
+
+ if test "$no_x" = yes; then
+ # Not all programs may use this symbol, but it does not hurt to define it.
+
+cat >>confdefs.h <<\EOF
+#define X_DISPLAY_MISSING 1
+EOF
+
+ X_CFLAGS=
+ X_PRE_LIBS=
+ X_LIBS=
+ X_EXTRA_LIBS=
+else
+ if test -n "$x_includes"; then
+ X_CFLAGS="$X_CFLAGS -I$x_includes"
+ fi
+
+ # It would also be nice to do this for all -L options, not just this one.
+ if test -n "$x_libraries"; then
+ X_LIBS="$X_LIBS -L$x_libraries"
+ # For Solaris; some versions of Sun CC require a space after -R and
+ # others require no space. Words are not sufficient . . . .
+ case `(uname -sr) 2>/dev/null` in
+ "SunOS 5"*)
+ echo "$as_me:21018: checking whether -R must be followed by a space" >&5
+echo $ECHO_N "checking whether -R must be followed by a space... $ECHO_C" >&6
+ ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21022 "configure"
+#include "confdefs.h"
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21034: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21037: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21040: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21043: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_R_nospace=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_R_nospace=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ if test $ac_R_nospace = yes; then
+ echo "$as_me:21053: result: no" >&5
+echo "${ECHO_T}no" >&6
+ X_LIBS="$X_LIBS -R$x_libraries"
+ else
+ LIBS="$ac_xsave_LIBS -R $x_libraries"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21059 "configure"
+#include "confdefs.h"
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21071: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21074: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21077: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21080: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_R_space=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_R_space=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ if test $ac_R_space = yes; then
+ echo "$as_me:21090: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+ X_LIBS="$X_LIBS -R $x_libraries"
+ else
+ echo "$as_me:21094: result: neither works" >&5
+echo "${ECHO_T}neither works" >&6
+ fi
+ fi
+ LIBS=$ac_xsave_LIBS
+ esac
+ fi
+
+ # Check for system-dependent libraries X programs must link with.
+ # Do this before checking for the system-independent R6 libraries
+ # (-lICE), since we may need -lsocket or whatever for X linking.
+
+ if test "$ISC" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet"
+ else
+ # Martyn Johnson says this is needed for Ultrix, if the X
+ # libraries were built with DECnet support. And Karl Berry says
+ # the Alpha needs dnet_stub (dnet does not exist).
+ ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21114 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char XOpenDisplay ();
+int
+main (void)
+{
+XOpenDisplay ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21133: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21136: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21139: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21142: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+echo "$as_me:21148: checking for dnet_ntoa in -ldnet" >&5
+echo $ECHO_N "checking for dnet_ntoa in -ldnet... $ECHO_C" >&6
+if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldnet $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21156 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char dnet_ntoa ();
+int
+main (void)
+{
+dnet_ntoa ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21175: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21178: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21181: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21184: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_dnet_dnet_ntoa=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_dnet_dnet_ntoa=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21195: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_dnet_dnet_ntoa" >&6
+if test "$ac_cv_lib_dnet_dnet_ntoa" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"
+fi
+
+ if test $ac_cv_lib_dnet_dnet_ntoa = no; then
+ echo "$as_me:21202: checking for dnet_ntoa in -ldnet_stub" >&5
+echo $ECHO_N "checking for dnet_ntoa in -ldnet_stub... $ECHO_C" >&6
+if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldnet_stub $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21210 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char dnet_ntoa ();
+int
+main (void)
+{
+dnet_ntoa ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21229: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21232: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21235: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21238: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_dnet_stub_dnet_ntoa=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_dnet_stub_dnet_ntoa=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21249: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_dnet_stub_dnet_ntoa" >&6
+if test "$ac_cv_lib_dnet_stub_dnet_ntoa" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"
+fi
+
+ fi
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+ LIBS="$ac_xsave_LIBS"
+
+ # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT,
+ # to get the SysV transport functions.
+ # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4)
+ # needs -lnsl.
+ # The nsl library prevents programs from opening the X display
+ # on Irix 5.2, according to T.E. Dickey.
+ # The functions gethostbyname, getservbyname, and inet_addr are
+ # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking.
+ echo "$as_me:21268: checking for gethostbyname" >&5
+echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6
+if test "${ac_cv_func_gethostbyname+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21274 "configure"
+#include "confdefs.h"
+#define gethostbyname autoconf_temporary
+#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
+#undef gethostbyname
+
+#ifdef __cplusplus
+extern "C"
+#endif
+
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char gethostbyname (void);
+
+int
+main (void)
+{
+
+/* The GNU C library defines stubs for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_gethostbyname) || defined (__stub___gethostbyname)
+#error found stub for gethostbyname
+#endif
+
+ return gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21305: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21308: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21311: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21314: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_func_gethostbyname=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_func_gethostbyname=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+fi
+echo "$as_me:21324: result: $ac_cv_func_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
+
+ if test $ac_cv_func_gethostbyname = no; then
+ echo "$as_me:21328: checking for gethostbyname in -lnsl" >&5
+echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6
+if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnsl $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21336 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char gethostbyname ();
+int
+main (void)
+{
+gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21355: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21358: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21361: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21364: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_nsl_gethostbyname=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_nsl_gethostbyname=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21375: result: $ac_cv_lib_nsl_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6
+if test "$ac_cv_lib_nsl_gethostbyname" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl"
+fi
+
+ if test $ac_cv_lib_nsl_gethostbyname = no; then
+ echo "$as_me:21382: checking for gethostbyname in -lbsd" >&5
+echo $ECHO_N "checking for gethostbyname in -lbsd... $ECHO_C" >&6
+if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lbsd $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21390 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char gethostbyname ();
+int
+main (void)
+{
+gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21409: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21412: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21415: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21418: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_bsd_gethostbyname=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_bsd_gethostbyname=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21429: result: $ac_cv_lib_bsd_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_bsd_gethostbyname" >&6
+if test "$ac_cv_lib_bsd_gethostbyname" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd"
+fi
+
+ fi
+ fi
+
+ # lieder@skyler.mavd.honeywell.com says without -lsocket,
+ # socket/setsockopt and other routines are undefined under SCO ODT
+ # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary
+ # on later versions), says Simon Leinen: it contains gethostby*
+ # variants that don't use the nameserver (or something). -lsocket
+ # must be given before -lnsl if both are needed. We assume that
+ # if connect needs -lnsl, so does gethostbyname.
+ echo "$as_me:21445: checking for connect" >&5
+echo $ECHO_N "checking for connect... $ECHO_C" >&6
+if test "${ac_cv_func_connect+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21451 "configure"
+#include "confdefs.h"
+#define connect autoconf_temporary
+#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
+#undef connect
+
+#ifdef __cplusplus
+extern "C"
+#endif
+
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char connect (void);
+
+int
+main (void)
+{
+
+/* The GNU C library defines stubs for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_connect) || defined (__stub___connect)
+#error found stub for connect
+#endif
+
+ return connect ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21482: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21485: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21488: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21491: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_func_connect=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_func_connect=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+fi
+echo "$as_me:21501: result: $ac_cv_func_connect" >&5
+echo "${ECHO_T}$ac_cv_func_connect" >&6
+
+ if test $ac_cv_func_connect = no; then
+ echo "$as_me:21505: checking for connect in -lsocket" >&5
+echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6
+if test "${ac_cv_lib_socket_connect+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21513 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char connect ();
+int
+main (void)
+{
+connect ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21532: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21535: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21538: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21541: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_socket_connect=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_socket_connect=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21552: result: $ac_cv_lib_socket_connect" >&5
+echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6
+if test "$ac_cv_lib_socket_connect" = yes; then
+ X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS"
+fi
+
+ fi
+
+ # Guillermo Gomez says -lposix is necessary on A/UX.
+ echo "$as_me:21561: checking for remove" >&5
+echo $ECHO_N "checking for remove... $ECHO_C" >&6
+if test "${ac_cv_func_remove+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21567 "configure"
+#include "confdefs.h"
+#define remove autoconf_temporary
+#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
+#undef remove
+
+#ifdef __cplusplus
+extern "C"
+#endif
+
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char remove (void);
+
+int
+main (void)
+{
+
+/* The GNU C library defines stubs for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_remove) || defined (__stub___remove)
+#error found stub for remove
+#endif
+
+ return remove ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21598: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21601: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21604: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21607: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_func_remove=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_func_remove=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+fi
+echo "$as_me:21617: result: $ac_cv_func_remove" >&5
+echo "${ECHO_T}$ac_cv_func_remove" >&6
+
+ if test $ac_cv_func_remove = no; then
+ echo "$as_me:21621: checking for remove in -lposix" >&5
+echo $ECHO_N "checking for remove in -lposix... $ECHO_C" >&6
+if test "${ac_cv_lib_posix_remove+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lposix $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21629 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char remove ();
+int
+main (void)
+{
+remove ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21648: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21651: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21654: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21657: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_posix_remove=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_posix_remove=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21668: result: $ac_cv_lib_posix_remove" >&5
+echo "${ECHO_T}$ac_cv_lib_posix_remove" >&6
+if test "$ac_cv_lib_posix_remove" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix"
+fi
+
+ fi
+
+ # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
+ echo "$as_me:21677: checking for shmat" >&5
+echo $ECHO_N "checking for shmat... $ECHO_C" >&6
+if test "${ac_cv_func_shmat+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 21683 "configure"
+#include "confdefs.h"
+#define shmat autoconf_temporary
+#include <limits.h> /* least-intrusive standard header which defines gcc2 __stub macros */
+#undef shmat
+
+#ifdef __cplusplus
+extern "C"
+#endif
+
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char shmat (void);
+
+int
+main (void)
+{
+
+/* The GNU C library defines stubs for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_shmat) || defined (__stub___shmat)
+#error found stub for shmat
+#endif
+
+ return shmat ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21714: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21717: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21720: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21723: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_func_shmat=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_func_shmat=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+fi
+echo "$as_me:21733: result: $ac_cv_func_shmat" >&5
+echo "${ECHO_T}$ac_cv_func_shmat" >&6
+
+ if test $ac_cv_func_shmat = no; then
+ echo "$as_me:21737: checking for shmat in -lipc" >&5
+echo $ECHO_N "checking for shmat in -lipc... $ECHO_C" >&6
+if test "${ac_cv_lib_ipc_shmat+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lipc $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21745 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char shmat ();
+int
+main (void)
+{
+shmat ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21764: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21767: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21770: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21773: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_ipc_shmat=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_ipc_shmat=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21784: result: $ac_cv_lib_ipc_shmat" >&5
+echo "${ECHO_T}$ac_cv_lib_ipc_shmat" >&6
+if test "$ac_cv_lib_ipc_shmat" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"
+fi
+
+ fi
+ fi
+
+ # Check for libraries that X11R6 Xt/Xaw programs need.
+ ac_save_LDFLAGS=$LDFLAGS
+ test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries"
+ # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
+ # check for ICE first), but we must link in the order -lSM -lICE or
+ # we get undefined symbols. So assume we have SM if we have ICE.
+ # These have to be linked with before -lX11, unlike the other
+ # libraries we check for below, so use a different variable.
+ # John Interrante, Karl Berry
+ echo "$as_me:21802: checking for IceConnectionNumber in -lICE" >&5
+echo $ECHO_N "checking for IceConnectionNumber in -lICE... $ECHO_C" >&6
+if test "${ac_cv_lib_ICE_IceConnectionNumber+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lICE $X_EXTRA_LIBS $LIBS"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 21810 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char IceConnectionNumber ();
+int
+main (void)
+{
+IceConnectionNumber ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:21829: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:21832: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:21835: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:21838: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ ac_cv_lib_ICE_IceConnectionNumber=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat "conftest.$ac_ext" >&5
+ac_cv_lib_ICE_IceConnectionNumber=no
+fi
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:21849: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5
+echo "${ECHO_T}$ac_cv_lib_ICE_IceConnectionNumber" >&6
+if test "$ac_cv_lib_ICE_IceConnectionNumber" = yes; then
+ X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE"
+fi
+
+ LDFLAGS=$ac_save_LDFLAGS
+
+fi
+
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $CFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing CFLAGS: $CFLAGS" 1>&6
+
+echo "${as_me:-configure}:21870: testing repairing CFLAGS: $CFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $CFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ CFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $CFLAGS" 1>&6
+
+echo "${as_me:-configure}:21893: testing ... fixed $CFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:21897: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $CPPFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing CPPFLAGS: $CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:21909: testing repairing CPPFLAGS: $CPPFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $CPPFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ CPPFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:21932: testing ... fixed $CPPFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:21936: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+if test "$GCC" = yes || test "$GXX" = yes
+then
+ case $LDFLAGS in
+ (*-Werror=*)
+ test -n "$verbose" && echo " repairing LDFLAGS: $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:21948: testing repairing LDFLAGS: $LDFLAGS ..." 1>&5
+
+ cf_temp_flags=
+ for cf_temp_scan in $LDFLAGS
+ do
+ case "x$cf_temp_scan" in
+ (x-Werror=*)
+
+ test -n "$EXTRA_CFLAGS" && EXTRA_CFLAGS="$EXTRA_CFLAGS "
+ EXTRA_CFLAGS="${EXTRA_CFLAGS}$cf_temp_scan"
+
+ ;;
+ (*)
+
+ test -n "$cf_temp_flags" && cf_temp_flags="$cf_temp_flags "
+ cf_temp_flags="${cf_temp_flags}$cf_temp_scan"
+
+ ;;
+ esac
+ done
+ LDFLAGS="$cf_temp_flags"
+ test -n "$verbose" && echo " ... fixed $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:21971: testing ... fixed $LDFLAGS ..." 1>&5
+
+ test -n "$verbose" && echo " ... extra $EXTRA_CFLAGS" 1>&6
+
+echo "${as_me:-configure}:21975: testing ... extra $EXTRA_CFLAGS ..." 1>&5
+
+ ;;
+ esac
+fi
+
+echo "$as_me:21981: checking if you want to turn on gcc warnings" >&5
echo $ECHO_N "checking if you want to turn on gcc warnings... $ECHO_C" >&6
# Check whether --enable-warnings or --disable-warnings was given.
@@ -19543,21 +21986,21 @@ if test "${enable_warnings+set}" = set; then
enableval="$enable_warnings"
test "$enableval" != yes && enableval=no
if test "$enableval" != "no" ; then
- with_warnings=yes
+ enable_warnings=yes
else
- with_warnings=no
+ enable_warnings=no
fi
else
enableval=no
- with_warnings=no
+ enable_warnings=no
fi;
-echo "$as_me:19555: result: $with_warnings" >&5
-echo "${ECHO_T}$with_warnings" >&6
-if test "$with_warnings" = "yes"
+echo "$as_me:21998: result: $enable_warnings" >&5
+echo "${ECHO_T}$enable_warnings" >&6
+if test "$enable_warnings" = "yes"
then
-if test "$GCC" = yes
+if test "$GCC" = yes || test "$GXX" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -19575,10 +22018,10 @@ cat > conftest.i <<EOF
EOF
if test "$GCC" = yes
then
- { echo "$as_me:19578: checking for $CC __attribute__ directives..." >&5
+ { echo "$as_me:22021: checking for $CC __attribute__ directives..." >&5
echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
-cat > conftest.$ac_ext <<EOF
-#line 19581 "${as_me:-configure}"
+cat > "conftest.$ac_ext" <<EOF
+#line 22024 "${as_me:-configure}"
#include "confdefs.h"
#include "conftest.h"
#include "conftest.i"
@@ -19593,9 +22036,9 @@ cat > conftest.$ac_ext <<EOF
#define GCC_SCANFLIKE(fmt,var) /*nothing*/
#endif
extern void wow(char *,...) GCC_SCANFLIKE(1,2);
-extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
-extern void foo(void) GCC_NORETURN;
-int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; }
+extern GCC_NORETURN void oops(char *,...) GCC_PRINTFLIKE(1,2);
+extern GCC_NORETURN void foo(void);
+int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { (void)argc; (void)argv; return 0; }
EOF
cf_printf_attribute=no
cf_scanf_attribute=no
@@ -19607,7 +22050,7 @@ cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFG
cf_directive="__attribute__(($cf_attribute))"
echo "checking for $CC $cf_directive" 1>&5
- case $cf_attribute in
+ case "$cf_attribute" in
(printf)
cf_printf_attribute=yes
cat >conftest.h <<EOF
@@ -19627,15 +22070,15 @@ EOF
;;
esac
- if { (eval echo "$as_me:19630: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:22073: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19633: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:19635: result: ... $cf_attribute" >&5
+ echo "$as_me:22076: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:22078: result: ... $cf_attribute" >&5
echo "${ECHO_T}... $cf_attribute" >&6
cat conftest.h >>confdefs.h
- case $cf_attribute in
+ case "$cf_attribute" in
(noreturn)
cat >>confdefs.h <<EOF
@@ -19686,9 +22129,9 @@ EOF
fi
done
else
- fgrep define conftest.i >>confdefs.h
+ ${FGREP-fgrep} define conftest.i >>confdefs.h
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
if test "x$have_x" = xyes; then
@@ -19709,8 +22152,8 @@ do
esac
done
-cat >conftest.$ac_ext <<_ACEOF
-#line 19713 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 22156 "configure"
#include "confdefs.h"
#include <stdlib.h>
@@ -19719,32 +22162,32 @@ cat >conftest.$ac_ext <<_ACEOF
int
main (void)
{
-String foo = malloc(1)
+String foo = malloc(1); free((void*)foo)
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19728: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:22171: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19731: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19734: \"$ac_try\"") >&5
+ echo "$as_me:22174: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:22177: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19737: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22180: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
-echo "$as_me:19740: checking for X11/Xt const-feature" >&5
+echo "$as_me:22183: checking for X11/Xt const-feature" >&5
echo $ECHO_N "checking for X11/Xt const-feature... $ECHO_C" >&6
if test "${cf_cv_const_x_string+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 19747 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22190 "configure"
#include "confdefs.h"
#define _CONST_X_STRING /* X11R7.8 (perhaps) */
@@ -19760,39 +22203,39 @@ String foo = malloc(1); *foo = 0
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:19764: \"$ac_compile\"") >&5
+rm -f "conftest.$ac_objext"
+if { (eval echo "$as_me:22207: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19767: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:19770: \"$ac_try\"") >&5
+ echo "$as_me:22210: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest.$ac_objext"'
+ { (eval echo "$as_me:22213: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:19773: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22216: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_cv_const_x_string=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_cv_const_x_string=yes
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-echo "$as_me:19788: result: $cf_cv_const_x_string" >&5
+echo "$as_me:22231: result: $cf_cv_const_x_string" >&5
echo "${ECHO_T}$cf_cv_const_x_string" >&6
LIBS="$cf_save_LIBS_CF_CONST_X_STRING"
CFLAGS="$cf_save_CFLAGS_CF_CONST_X_STRING"
CPPFLAGS="$cf_save_CPPFLAGS_CF_CONST_X_STRING"
-case $cf_cv_const_x_string in
+case "$cf_cv_const_x_string" in
(no)
test -n "$CPPFLAGS" && CPPFLAGS="$CPPFLAGS "
@@ -19809,12 +22252,12 @@ esac
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest.$ac_ext"
fi
-cat > conftest.$ac_ext <<EOF
-#line 19817 "${as_me:-configure}"
+cat > "conftest.$ac_ext" <<EOF
+#line 22260 "${as_me:-configure}"
int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
EOF
if test "$INTEL_COMPILER" = yes
@@ -19830,10 +22273,10 @@ then
# remark #981: operands are evaluated in unspecified order
# warning #279: controlling expression is constant
- { echo "$as_me:19833: checking for $CC warning options..." >&5
+ { echo "$as_me:22276: checking for $CC warning options..." >&5
echo "$as_me: checking for $CC warning options..." >&6;}
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wall"
for cf_opt in \
wd1419 \
wd1683 \
@@ -19846,12 +22289,12 @@ echo "$as_me: checking for $CC warning options..." >&6;}
wd981
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if { (eval echo "$as_me:19849: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:22292: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19852: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:19854: result: ... -$cf_opt" >&5
+ echo "$as_me:22295: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:22297: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
fi
@@ -19859,10 +22302,9 @@ echo "${ECHO_T}... -$cf_opt" >&6
CFLAGS="$cf_save_CFLAGS"
elif test "$GCC" = yes && test "$GCC_VERSION" != "unknown"
then
- { echo "$as_me:19862: checking for $CC warning options..." >&5
+ { echo "$as_me:22305: checking for $CC warning options..." >&5
echo "$as_me: checking for $CC warning options..." >&6;}
cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS=
cf_warn_CONST=""
test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
@@ -19883,30 +22325,30 @@ echo "$as_me: checking for $CC warning options..." >&6;}
Wundef Wno-inline $cf_gcc_warnings $cf_warn_CONST Wno-unknown-pragmas
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if { (eval echo "$as_me:19886: \"$ac_compile\"") >&5
+ if { (eval echo "$as_me:22328: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
- echo "$as_me:19889: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- test -n "$verbose" && echo "$as_me:19891: result: ... -$cf_opt" >&5
+ echo "$as_me:22331: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; then
+ test -n "$verbose" && echo "$as_me:22333: result: ... -$cf_opt" >&5
echo "${ECHO_T}... -$cf_opt" >&6
- case $cf_opt in
+ case "$cf_opt" in
(Winline)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([34].*)
test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-echo "${as_me:-configure}:19899: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
+echo "${as_me:-configure}:22341: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
continue;;
esac
;;
(Wpointer-arith)
- case $GCC_VERSION in
+ case "$GCC_VERSION" in
([12].*)
test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-echo "${as_me:-configure}:19909: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
+echo "${as_me:-configure}:22351: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
continue;;
esac
@@ -19917,32 +22359,38 @@ echo "${as_me:-configure}:19909: testing feature is broken in gcc $GCC_VERSION .
done
CFLAGS="$cf_save_CFLAGS"
fi
-rm -rf conftest*
+rm -rf ./conftest*
fi
+
fi
-echo "$as_me:19925: checking if you want to use dmalloc for testing" >&5
+echo "$as_me:22368: checking if you want to use dmalloc for testing" >&5
echo $ECHO_N "checking if you want to use dmalloc for testing... $ECHO_C" >&6
# Check whether --with-dmalloc or --without-dmalloc was given.
if test "${with_dmalloc+set}" = set; then
withval="$with_dmalloc"
+ case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_dmalloc=yes
cat >>confdefs.h <<EOF
#define USE_DMALLOC 1
EOF
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_dmalloc=yes
+ ;;
+ esac
else
with_dmalloc=
fi;
-echo "$as_me:19942: result: ${with_dmalloc:-no}" >&5
+echo "$as_me:22390: result: ${with_dmalloc:-no}" >&5
echo "${ECHO_T}${with_dmalloc:-no}" >&6
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -19956,19 +22404,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -g
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -19987,7 +22435,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -20017,7 +22465,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -20053,24 +22501,24 @@ fi
esac
if test "$with_dmalloc" = yes ; then
- echo "$as_me:20056: checking for dmalloc.h" >&5
+ echo "$as_me:22504: checking for dmalloc.h" >&5
echo $ECHO_N "checking for dmalloc.h... $ECHO_C" >&6
if test "${ac_cv_header_dmalloc_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20062 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22510 "configure"
#include "confdefs.h"
#include <dmalloc.h>
_ACEOF
-if { (eval echo "$as_me:20066: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:22514: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:20072: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:22520: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -20083,24 +22531,24 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_dmalloc_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_dmalloc_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:20091: result: $ac_cv_header_dmalloc_h" >&5
+echo "$as_me:22539: result: $ac_cv_header_dmalloc_h" >&5
echo "${ECHO_T}$ac_cv_header_dmalloc_h" >&6
-if test $ac_cv_header_dmalloc_h = yes; then
+if test "$ac_cv_header_dmalloc_h" = yes; then
-echo "$as_me:20095: checking for dmalloc_debug in -ldmalloc" >&5
+echo "$as_me:22543: checking for dmalloc_debug in -ldmalloc" >&5
echo $ECHO_N "checking for dmalloc_debug in -ldmalloc... $ECHO_C" >&6
if test "${ac_cv_lib_dmalloc_dmalloc_debug+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldmalloc $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 20103 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 22551 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -20118,30 +22566,30 @@ dmalloc_debug ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20122: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22570: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20125: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20128: \"$ac_try\"") >&5
+ echo "$as_me:22573: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22576: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20131: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22579: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dmalloc_dmalloc_debug=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dmalloc_dmalloc_debug=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:20142: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
+echo "$as_me:22590: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
echo "${ECHO_T}$ac_cv_lib_dmalloc_dmalloc_debug" >&6
-if test $ac_cv_lib_dmalloc_dmalloc_debug = yes; then
+if test "$ac_cv_lib_dmalloc_dmalloc_debug" = yes; then
cat >>confdefs.h <<EOF
#define HAVE_LIBDMALLOC 1
EOF
@@ -20154,27 +22602,32 @@ fi
fi
-echo "$as_me:20157: checking if you want to use dbmalloc for testing" >&5
+echo "$as_me:22605: checking if you want to use dbmalloc for testing" >&5
echo $ECHO_N "checking if you want to use dbmalloc for testing... $ECHO_C" >&6
# Check whether --with-dbmalloc or --without-dbmalloc was given.
if test "${with_dbmalloc+set}" = set; then
withval="$with_dbmalloc"
+ case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_dbmalloc=yes
cat >>confdefs.h <<EOF
#define USE_DBMALLOC 1
EOF
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_dbmalloc=yes
+ ;;
+ esac
else
with_dbmalloc=
fi;
-echo "$as_me:20174: result: ${with_dbmalloc:-no}" >&5
+echo "$as_me:22627: result: ${with_dbmalloc:-no}" >&5
echo "${ECHO_T}${with_dbmalloc:-no}" >&6
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -20188,19 +22641,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -g
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -20219,7 +22672,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -20249,7 +22702,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -20285,24 +22738,24 @@ fi
esac
if test "$with_dbmalloc" = yes ; then
- echo "$as_me:20288: checking for dbmalloc.h" >&5
+ echo "$as_me:22741: checking for dbmalloc.h" >&5
echo $ECHO_N "checking for dbmalloc.h... $ECHO_C" >&6
if test "${ac_cv_header_dbmalloc_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-#line 20294 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 22747 "configure"
#include "confdefs.h"
#include <dbmalloc.h>
_ACEOF
-if { (eval echo "$as_me:20298: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+if { (eval echo "$as_me:22751: \"$ac_cpp "conftest.$ac_ext"\"") >&5
+ (eval $ac_cpp "conftest.$ac_ext") 2>conftest.er1
ac_status=$?
- egrep -v '^ *\+' conftest.er1 >conftest.err
+ $EGREP -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:20304: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
+ echo "$as_me:22757: \$? = $ac_status" >&5
+ (exit "$ac_status"); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
@@ -20315,24 +22768,24 @@ if test -z "$ac_cpp_err"; then
ac_cv_header_dbmalloc_h=yes
else
echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ cat "conftest.$ac_ext" >&5
ac_cv_header_dbmalloc_h=no
fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err "conftest.$ac_ext"
fi
-echo "$as_me:20323: result: $ac_cv_header_dbmalloc_h" >&5
+echo "$as_me:22776: result: $ac_cv_header_dbmalloc_h" >&5
echo "${ECHO_T}$ac_cv_header_dbmalloc_h" >&6
-if test $ac_cv_header_dbmalloc_h = yes; then
+if test "$ac_cv_header_dbmalloc_h" = yes; then
-echo "$as_me:20327: checking for debug_malloc in -ldbmalloc" >&5
+echo "$as_me:22780: checking for debug_malloc in -ldbmalloc" >&5
echo $ECHO_N "checking for debug_malloc in -ldbmalloc... $ECHO_C" >&6
if test "${ac_cv_lib_dbmalloc_debug_malloc+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ldbmalloc $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line 20335 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 22788 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
@@ -20350,30 +22803,30 @@ debug_malloc ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20354: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:22807: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20357: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20360: \"$ac_try\"") >&5
+ echo "$as_me:22810: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:22813: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20363: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:22816: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
ac_cv_lib_dbmalloc_debug_malloc=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
ac_cv_lib_dbmalloc_debug_malloc=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:20374: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
+echo "$as_me:22827: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
echo "${ECHO_T}$ac_cv_lib_dbmalloc_debug_malloc" >&6
-if test $ac_cv_lib_dbmalloc_debug_malloc = yes; then
+if test "$ac_cv_lib_dbmalloc_debug_malloc" = yes; then
cat >>confdefs.h <<EOF
#define HAVE_LIBDBMALLOC 1
EOF
@@ -20386,27 +22839,32 @@ fi
fi
-echo "$as_me:20389: checking if you want to use valgrind for testing" >&5
+echo "$as_me:22842: checking if you want to use valgrind for testing" >&5
echo $ECHO_N "checking if you want to use valgrind for testing... $ECHO_C" >&6
# Check whether --with-valgrind or --without-valgrind was given.
if test "${with_valgrind+set}" = set; then
withval="$with_valgrind"
+ case "x$withval" in
+ (x|xno) ;;
+ (*)
+ : "${with_cflags:=-g}"
+ : "${enable_leaks:=no}"
+ with_valgrind=yes
cat >>confdefs.h <<EOF
#define USE_VALGRIND 1
EOF
- : ${with_cflags:=-g}
- : ${with_no_leaks:=yes}
- with_valgrind=yes
+ ;;
+ esac
else
with_valgrind=
fi;
-echo "$as_me:20406: result: ${with_valgrind:-no}" >&5
+echo "$as_me:22864: result: ${with_valgrind:-no}" >&5
echo "${ECHO_T}${with_valgrind:-no}" >&6
-case .$with_cflags in
+case ".$with_cflags" in
(.*-g*)
case .$CFLAGS in
(.*-g*)
@@ -20420,19 +22878,19 @@ cf_new_extra_cppflags=
for cf_add_cflags in -g
do
-case $cf_fix_cppflags in
+case "$cf_fix_cppflags" in
(no)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
- if test $cf_fix_cppflags = yes ; then
+ if test "$cf_fix_cppflags" = yes ; then
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
@@ -20451,7 +22909,7 @@ case $cf_fix_cppflags in
(*$cf_add_cflags)
;;
(*)
- case $cf_add_cflags in
+ case "$cf_add_cflags" in
(-D*)
cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
@@ -20481,7 +22939,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | \
test -n "$cf_new_extra_cppflags" && cf_new_extra_cppflags="$cf_new_extra_cppflags "
cf_new_extra_cppflags="${cf_new_extra_cppflags}$cf_add_cflags"
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+ cf_tst_cflags=`echo "${cf_add_cflags}" |sed -e 's/^[^"]*"'\''//'`
test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
@@ -20516,20 +22974,21 @@ fi
;;
esac
-echo "$as_me:20519: checking if you want to perform memory-leak testing" >&5
+echo "$as_me:22977: checking if you want to perform memory-leak testing" >&5
echo $ECHO_N "checking if you want to perform memory-leak testing... $ECHO_C" >&6
# Check whether --enable-leaks or --disable-leaks was given.
if test "${enable_leaks+set}" = set; then
enableval="$enable_leaks"
- if test "x$enableval" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi
+ enable_leaks=$enableval
else
- : ${with_no_leaks:=no}
+ enable_leaks=yes
fi;
-echo "$as_me:20529: result: $with_no_leaks" >&5
+if test "x$enable_leaks" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi
+echo "$as_me:22988: result: $with_no_leaks" >&5
echo "${ECHO_T}$with_no_leaks" >&6
-if test "$with_no_leaks" = yes ; then
+if test "$enable_leaks" = no ; then
cat >>confdefs.h <<\EOF
#define NO_LEAKS 1
@@ -20544,9 +23003,9 @@ fi
LD_RPATH_OPT=
if test "x$cf_cv_enable_rpath" != xno
then
- echo "$as_me:20547: checking for an rpath option" >&5
+ echo "$as_me:23006: checking for an rpath option" >&5
echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
- case $cf_cv_system_name in
+ case "$cf_cv_system_name" in
(irix*)
if test "$GCC" = yes; then
LD_RPATH_OPT="-Wl,-rpath,"
@@ -20575,12 +23034,12 @@ echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
(*)
;;
esac
- echo "$as_me:20578: result: $LD_RPATH_OPT" >&5
+ echo "$as_me:23037: result: $LD_RPATH_OPT" >&5
echo "${ECHO_T}$LD_RPATH_OPT" >&6
case "x$LD_RPATH_OPT" in
(x-R*)
- echo "$as_me:20583: checking if we need a space after rpath option" >&5
+ echo "$as_me:23042: checking if we need a space after rpath option" >&5
echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6
cf_save_LIBS="$LIBS"
@@ -20600,8 +23059,8 @@ for cf_add_1lib in $cf_add_0lib; do
done
LIBS="$cf_add_libs"
- cat >conftest.$ac_ext <<_ACEOF
-#line 20604 "configure"
+ cat >"conftest.$ac_ext" <<_ACEOF
+#line 23063 "configure"
#include "confdefs.h"
int
@@ -20612,34 +23071,34 @@ main (void)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20616: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23075: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20619: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20622: \"$ac_try\"") >&5
+ echo "$as_me:23078: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23081: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20625: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+ echo "$as_me:23084: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
cf_rpath_space=no
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
cf_rpath_space=yes
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
LIBS="$cf_save_LIBS"
- echo "$as_me:20635: result: $cf_rpath_space" >&5
+ echo "$as_me:23094: result: $cf_rpath_space" >&5
echo "${ECHO_T}$cf_rpath_space" >&6
test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
;;
esac
fi
-echo "$as_me:20642: checking if rpath-hack should be disabled" >&5
+echo "$as_me:23101: checking if rpath-hack should be disabled" >&5
echo $ECHO_N "checking if rpath-hack should be disabled... $ECHO_C" >&6
# Check whether --enable-rpath-hack or --disable-rpath-hack was given.
@@ -20647,30 +23106,32 @@ if test "${enable_rpath_hack+set}" = set; then
enableval="$enable_rpath_hack"
test "$enableval" != no && enableval=yes
if test "$enableval" != "yes" ; then
- cf_disable_rpath_hack=yes
+ enable_rpath_hack=no
else
- cf_disable_rpath_hack=no
+ enable_rpath_hack=yes
fi
else
enableval=yes
- cf_disable_rpath_hack=no
+ enable_rpath_hack=yes
fi;
-echo "$as_me:20659: result: $cf_disable_rpath_hack" >&5
+if test "x$enable_rpath_hack" = xno; then cf_disable_rpath_hack=yes; else cf_disable_rpath_hack=no; fi
+echo "$as_me:23119: result: $cf_disable_rpath_hack" >&5
echo "${ECHO_T}$cf_disable_rpath_hack" >&6
-if test "$cf_disable_rpath_hack" = no ; then
-echo "$as_me:20663: checking for updated LDFLAGS" >&5
+if test "$enable_rpath_hack" = yes ; then
+
+echo "$as_me:23124: checking for updated LDFLAGS" >&5
echo $ECHO_N "checking for updated LDFLAGS... $ECHO_C" >&6
if test -n "$LD_RPATH_OPT" ; then
- echo "$as_me:20666: result: maybe" >&5
+ echo "$as_me:23127: result: maybe" >&5
echo "${ECHO_T}maybe" >&6
for ac_prog in ldd
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:20673: checking for $ac_word" >&5
+echo "$as_me:23134: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_cf_ldd_prog+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -20685,7 +23146,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_cf_ldd_prog="$ac_prog"
-echo "$as_me:20688: found $ac_dir/$ac_word" >&5
+echo "$as_me:23149: found $ac_dir/$ac_word" >&5
break
done
@@ -20693,10 +23154,10 @@ fi
fi
cf_ldd_prog=$ac_cv_prog_cf_ldd_prog
if test -n "$cf_ldd_prog"; then
- echo "$as_me:20696: result: $cf_ldd_prog" >&5
+ echo "$as_me:23157: result: $cf_ldd_prog" >&5
echo "${ECHO_T}$cf_ldd_prog" >&6
else
- echo "$as_me:20699: result: no" >&5
+ echo "$as_me:23160: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -20709,8 +23170,8 @@ test -n "$cf_ldd_prog" || cf_ldd_prog="no"
then
cf_rpath_oops=
-cat >conftest.$ac_ext <<_ACEOF
-#line 20713 "configure"
+cat >"conftest.$ac_ext" <<_ACEOF
+#line 23174 "configure"
#include "confdefs.h"
#include <stdio.h>
int
@@ -20721,25 +23182,25 @@ printf("Hello");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:20725: \"$ac_link\"") >&5
+rm -f "conftest.$ac_objext" "conftest$ac_exeext"
+if { (eval echo "$as_me:23186: \"$ac_link\"") >&5
(eval $ac_link) 2>&5
ac_status=$?
- echo "$as_me:20728: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:20731: \"$ac_try\"") >&5
+ echo "$as_me:23189: \$? = $ac_status" >&5
+ (exit "$ac_status"); } &&
+ { ac_try='test -s "conftest$ac_exeext"'
+ { (eval echo "$as_me:23192: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
- echo "$as_me:20734: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort | uniq`
+ echo "$as_me:23195: \$? = $ac_status" >&5
+ (exit "$ac_status"); }; }; then
+ cf_rpath_oops=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} ' not found' | sed -e 's% =>.*$%%' |sort | uniq`
+ cf_rpath_list=`"$cf_ldd_prog" "conftest$ac_exeext" | ${FGREP-fgrep} / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort | uniq`
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+cat "conftest.$ac_ext" >&5
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext"
# If we passed the link-test, but get a "not found" on a given library,
# this could be due to inept reconfiguration of gcc to make it only
@@ -20755,11 +23216,11 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
/usr/pkg \
/opt/sfw
do
- if test -f $cf_rpath_dir/lib/$cf_rpath_src
+ if test -f "$cf_rpath_dir/lib/$cf_rpath_src"
then
test -n "$verbose" && echo " ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src" 1>&6
-echo "${as_me:-configure}:20762: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
+echo "${as_me:-configure}:23223: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
break
@@ -20771,16 +23232,16 @@ echo "${as_me:-configure}:20762: testing ...adding -L$cf_rpath_dir/lib to LDFLAG
test -n "$verbose" && echo " ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-echo "${as_me:-configure}:20774: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:23235: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
test -n "$verbose" && echo " ...checking LDFLAGS $LDFLAGS" 1>&6
-echo "${as_me:-configure}:20778: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:23239: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
cf_rpath_dst=
for cf_rpath_src in $LDFLAGS
do
- case $cf_rpath_src in
+ case "$cf_rpath_src" in
(-L*)
# check if this refers to a directory which we will ignore
@@ -20812,7 +23273,7 @@ do
then
test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-echo "${as_me:-configure}:20815: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
+echo "${as_me:-configure}:23276: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
fi
@@ -20825,16 +23286,16 @@ LDFLAGS=$cf_rpath_dst
test -n "$verbose" && echo " ...checked LDFLAGS $LDFLAGS" 1>&6
-echo "${as_me:-configure}:20828: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:23289: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
test -n "$verbose" && echo " ...checking LIBS $LIBS" 1>&6
-echo "${as_me:-configure}:20832: testing ...checking LIBS $LIBS ..." 1>&5
+echo "${as_me:-configure}:23293: testing ...checking LIBS $LIBS ..." 1>&5
cf_rpath_dst=
for cf_rpath_src in $LIBS
do
- case $cf_rpath_src in
+ case "$cf_rpath_src" in
(-L*)
# check if this refers to a directory which we will ignore
@@ -20866,7 +23327,7 @@ do
then
test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-echo "${as_me:-configure}:20869: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
+echo "${as_me:-configure}:23330: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
fi
@@ -20879,14 +23340,14 @@ LIBS=$cf_rpath_dst
test -n "$verbose" && echo " ...checked LIBS $LIBS" 1>&6
-echo "${as_me:-configure}:20882: testing ...checked LIBS $LIBS ..." 1>&5
+echo "${as_me:-configure}:23343: testing ...checked LIBS $LIBS ..." 1>&5
test -n "$verbose" && echo " ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-echo "${as_me:-configure}:20886: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
+echo "${as_me:-configure}:23347: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
else
- echo "$as_me:20889: result: no" >&5
+ echo "$as_me:23350: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -20973,12 +23434,12 @@ fi
DEFS=-DHAVE_CONFIG_H
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:20979: creating $CONFIG_STATUS" >&5
+{ echo "$as_me:23440: creating $CONFIG_STATUS" >&5
echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
+cat >"$CONFIG_STATUS" <<_ACEOF
#! $SHELL
# Generated automatically by configure.
# Run this file to recreate the current configuration.
@@ -20989,9 +23450,11 @@ debug=false
SHELL=\${CONFIG_SHELL-$SHELL}
ac_cs_invocation="\$0 \$@"
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>"$CONFIG_STATUS" <<\_ACEOF
# Be Bourne compatible
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
@@ -21031,9 +23494,9 @@ as_executable_p="test -f"
# Support unset when possible.
if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
+ as_unset="unset"
else
- as_unset=false
+ as_unset="false"
fi
# NLS nuisances.
@@ -21061,22 +23524,22 @@ _ACEOF
# Files that config.status was made for.
if test -n "$ac_config_files"; then
- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+ echo "config_files=\"$ac_config_files\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_headers"; then
- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+ echo "config_headers=\"$ac_config_headers\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_links"; then
- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+ echo "config_links=\"$ac_config_links\"" >>"$CONFIG_STATUS"
fi
if test -n "$ac_config_commands"; then
- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+ echo "config_commands=\"$ac_config_commands\"" >>"$CONFIG_STATUS"
fi
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
ac_cs_usage="\
\`$as_me' instantiates files from templates according to the
@@ -21105,21 +23568,22 @@ $config_commands
Report bugs to <dickey@invisible-island.net>."
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
ac_cs_version="\\
config.status
-configured by $0, generated by GNU Autoconf 2.52.20200111,
+configured by $0, generated by GNU Autoconf 2.52.20210509,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+Copyright 2003-2020,2021 Thomas E. Dickey
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
+srcdir="$srcdir"
INSTALL="$INSTALL"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
# If no file are specified by the user, then we need to provide default
# value. By we need to know if files were specified by the user.
ac_need_defaults=:
@@ -21142,17 +23606,17 @@ do
case $1 in
# Handling of the options.
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion"
exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;;
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
--version | --vers* | -V )
echo "$ac_cs_version"; exit 0 ;;
--he | --h)
# Conflict between --help and --header
- { { echo "$as_me:21155: error: ambiguous option: $1
+ { { echo "$as_me:23619: error: ambiguous option: $1
Try \`$0 --help' for more information." >&5
echo "$as_me: error: ambiguous option: $1
Try \`$0 --help' for more information." >&2;}
@@ -21171,7 +23635,7 @@ Try \`$0 --help' for more information." >&2;}
ac_need_defaults=false;;
# This is an error.
- -*) { { echo "$as_me:21174: error: unrecognized option: $1
+ -*) { { echo "$as_me:23638: error: unrecognized option: $1
Try \`$0 --help' for more information." >&5
echo "$as_me: error: unrecognized option: $1
Try \`$0 --help' for more information." >&2;}
@@ -21190,18 +23654,18 @@ cat >&5 << _ACEOF
## Running config.status. ##
## ----------------------- ##
-This file was extended by $as_me 2.52.20200111, executed with
+This file was extended by $as_me 2.52.20210509, executed with
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
CONFIG_LINKS = $CONFIG_LINKS
CONFIG_COMMANDS = $CONFIG_COMMANDS
- > $ac_cs_invocation
+ > "$ac_cs_invocation"
on `(hostname || uname -n) 2>/dev/null | sed 1q`
_ACEOF
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
#
# INIT-COMMANDS section.
#
@@ -21213,7 +23677,7 @@ SHOW_CC="$SHOW_LD"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
for ac_config_target in $ac_config_targets
do
case "$ac_config_target" in
@@ -21221,7 +23685,7 @@ do
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
"ncurses_cfg.h" ) CONFIG_HEADERS="$CONFIG_HEADERS ncurses_cfg.h:ncurses_tst.hin" ;;
- *) { { echo "$as_me:21224: error: invalid argument: $ac_config_target" >&5
+ *) { { echo "$as_me:23688: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
@@ -21231,7 +23695,7 @@ done
# then the envvar interface is used. Set only those that are not.
# We use the long form for the default assignment because of an extremely
# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
+if "$ac_need_defaults"; then
test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
@@ -21261,7 +23725,7 @@ $debug ||
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
#
# CONFIG_FILES section.
@@ -21323,6 +23787,8 @@ s,@EXEEXT@,$EXEEXT,;t t
s,@OBJEXT@,$OBJEXT,;t t
s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t
s,@CPP@,$CPP,;t t
+s,@GREP@,$GREP,;t t
+s,@EGREP@,$EGREP,;t t
s,@AWK@,$AWK,;t t
s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
@@ -21331,6 +23797,8 @@ s,@INSTALL_OPT_S@,$INSTALL_OPT_S,;t t
s,@INSTALL_OPT_O@,$INSTALL_OPT_O,;t t
s,@LINT@,$LINT,;t t
s,@LINT_OPTS@,$LINT_OPTS,;t t
+s,@MAKE_NO_PHONY@,$MAKE_NO_PHONY,;t t
+s,@MAKE_PHONY@,$MAKE_PHONY,;t t
s,@CTAGS@,$CTAGS,;t t
s,@ETAGS@,$ETAGS,;t t
s,@MAKE_LOWER_TAGS@,$MAKE_LOWER_TAGS,;t t
@@ -21364,6 +23832,9 @@ s,@TINFO_LIBS@,$TINFO_LIBS,;t t
s,@cf_cv_abi_version@,$cf_cv_abi_version,;t t
s,@cf_cv_rel_version@,$cf_cv_rel_version,;t t
s,@includesubdir@,$includesubdir,;t t
+s,@FGREP@,$FGREP,;t t
+s,@HAVE_STDNORETURN_H@,$HAVE_STDNORETURN_H,;t t
+s,@STDC_NORETURN@,$STDC_NORETURN,;t t
s,@PKG_CONFIG@,$PKG_CONFIG,;t t
s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t
s,@ECHO_LT@,$ECHO_LT,;t t
@@ -21382,6 +23853,9 @@ s,@XCURSES_CONFIG@,$XCURSES_CONFIG,;t t
s,@ac_ct_XCURSES_CONFIG@,$ac_ct_XCURSES_CONFIG,;t t
s,@RGB_PATH@,$RGB_PATH,;t t
s,@no_x11_rgb@,$no_x11_rgb,;t t
+s,@FORM_NAME@,$FORM_NAME,;t t
+s,@MENU_NAME@,$MENU_NAME,;t t
+s,@PANEL_NAME@,$PANEL_NAME,;t t
s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t
s,@cf_ldd_prog@,$cf_ldd_prog,;t t
s,@EXTRA_LDFLAGS@,$EXTRA_LDFLAGS,;t t
@@ -21389,7 +23863,7 @@ CEOF
EOF
- cat >>$CONFIG_STATUS <<\EOF
+ cat >>"$CONFIG_STATUS" <<\EOF
# Split the substitutions into bite-sized pieces for seds with
# small command number limits, like on Digital OSF/1 and HP-UX.
ac_max_sed_lines=48
@@ -21398,8 +23872,8 @@ EOF
ac_end=$ac_max_sed_lines # Line after last line for current file.
ac_more_lines=:
ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
+ while "$ac_more_lines"; do
+ if test "$ac_beg" -gt 1; then
sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
else
sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
@@ -21416,15 +23890,15 @@ EOF
# It is possible to make a multiline substitution using escaped newlines.
# Ensure that we do not split the substitution between script fragments.
ac_BEG=$ac_end
- ac_END=`expr $ac_end + $ac_max_sed_lines`
+ ac_END=`expr "$ac_end" + "$ac_max_sed_lines"`
sed "1,${ac_BEG}d; ${ac_END}p; q" $tmp/subs.sed >$tmp/subs.next
if test -s $tmp/subs.next; then
grep '^s,@[^@,][^@,]*@,.*\\$' $tmp/subs.next >$tmp/subs.edit
if test ! -s $tmp/subs.edit; then
grep "^s,@[^@,][^@,]*@,.*,;t t$" $tmp/subs.next >$tmp/subs.edit
if test ! -s $tmp/subs.edit; then
- if test $ac_beg -gt 1; then
- ac_end=`expr $ac_end - 1`
+ if test "$ac_beg" -gt 1; then
+ ac_end=`expr "$ac_end" - 1`
continue
fi
fi
@@ -21436,9 +23910,9 @@ EOF
else
ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
+ ac_sed_frag=`expr "$ac_sed_frag" + 1`
ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
+ ac_end=`expr "$ac_end" + "$ac_max_sed_lines"`
fi
done
if test -z "$ac_sed_cmds"; then
@@ -21447,10 +23921,10 @@ EOF
fi # test -n "$CONFIG_FILES"
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
+ case "$ac_file" in
- | *:- | *:-:* ) # input from stdin
cat >$tmp/stdin
ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
@@ -21496,19 +23970,19 @@ done; }
ac_dir_suffix= ac_dots=
fi
- case $srcdir in
+ case "$srcdir" in
.) ac_srcdir=.
if test -z "$ac_dots"; then
ac_top_srcdir=.
else
- ac_top_srcdir=`echo $ac_dots | sed 's,/$,,'`
+ ac_top_srcdir=`echo "$ac_dots" | sed 's,/$,,'`
fi ;;
[\\/]* | ?:[\\/]* )
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
+ ac_srcdir="$srcdir$ac_dir_suffix";
+ ac_top_srcdir="$srcdir" ;;
*) # Relative path.
- ac_srcdir=$ac_dots$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_dots$srcdir ;;
+ ac_srcdir="$ac_dots$srcdir$ac_dir_suffix"
+ ac_top_srcdir="$ac_dots$srcdir" ;;
esac
case $INSTALL in
@@ -21517,7 +23991,7 @@ done; }
esac
if test x"$ac_file" != x-; then
- { echo "$as_me:21520: creating $ac_file" >&5
+ { echo "$as_me:23994: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
rm -f "$ac_file"
fi
@@ -21535,7 +24009,7 @@ echo "$as_me: creating $ac_file" >&6;}
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:21538: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:24012: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
@@ -21545,35 +24019,35 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
echo $f
elif test -f "$srcdir/$f"; then
# Source tree
- echo $srcdir/$f
+ echo "$srcdir/$f"
else
# /dev/null tree
- { { echo "$as_me:21551: error: cannot find input file: $f" >&5
+ { { echo "$as_me:24025: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
esac
done` || { (exit 1); exit 1; }
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
ac_warn_datarootdir=no
if test x"$ac_file" != x-; then
for ac_item in $ac_file_inputs
do
- ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' $ac_item`
+ ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' "$ac_item"`
if test -n "$ac_seen"; then
- ac_used=`grep '@datarootdir@' $ac_item`
+ ac_used=`grep '@datarootdir@' "$ac_item"`
if test -z "$ac_used"; then
- { echo "$as_me:21567: WARNING: datarootdir was used implicitly but not set:
+ { echo "$as_me:24041: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&5
echo "$as_me: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&2;}
ac_warn_datarootdir=yes
fi
fi
- ac_seen=`grep '${datarootdir}' $ac_item`
+ ac_seen=`grep '${datarootdir}' "$ac_item"`
if test -n "$ac_seen"; then
- { echo "$as_me:21576: WARNING: datarootdir was used explicitly but not set:
+ { echo "$as_me:24050: WARNING: datarootdir was used explicitly but not set:
$ac_seen" >&5
echo "$as_me: WARNING: datarootdir was used explicitly but not set:
$ac_seen" >&2;}
@@ -21587,11 +24061,11 @@ if test "x$ac_warn_datarootdir" = xyes; then
fi
EOF
-cat >>$CONFIG_STATUS <<EOF
+cat >>"$CONFIG_STATUS" <<EOF
sed "$ac_vpsub
$extrasub
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
:t
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
s,@configure_input@,$configure_input,;t t
@@ -21601,27 +24075,27 @@ s,@INSTALL@,$ac_INSTALL,;t t
" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
rm -f $tmp/stdin
if test x"$ac_file" != x-; then
- cp $tmp/out $ac_file
+ cp "$tmp/out" "$ac_file"
for ac_name in prefix exec_prefix datarootdir
do
- ac_seen=`fgrep -n '${'$ac_name'[:=].*}' $ac_file`
+ ac_seen=`${FGREP-fgrep} -n '${'$ac_name'[:=].*}' "$ac_file"`
if test -n "$ac_seen"; then
- ac_init=`egrep '[ ]*'$ac_name'[ ]*=' $ac_file`
+ ac_init=`${EGREP-egrep} '[ ]*'$ac_name'[ ]*=' "$ac_file"`
if test -z "$ac_init"; then
ac_seen=`echo "$ac_seen" |sed -e 's,^,'$ac_file':,'`
- { echo "$as_me:21613: WARNING: Variable $ac_name is used but was not set:
+ { echo "$as_me:24087: WARNING: Variable $ac_name is used but was not set:
$ac_seen" >&5
echo "$as_me: WARNING: Variable $ac_name is used but was not set:
$ac_seen" >&2;}
fi
fi
done
- egrep -n '@[a-z_][a-z_0-9]+@' $ac_file >$tmp/out
- egrep -n '@[A-Z_][A-Z_0-9]+@' $ac_file >>$tmp/out
+ ${EGREP-egrep} -n '@[a-z_][a-z_0-9]+@' "$ac_file" >$tmp/out
+ ${EGREP-egrep} -n '@[A-Z_][A-Z_0-9]+@' "$ac_file" >>$tmp/out
if test -s $tmp/out; then
ac_seen=`sed -e 's,^,'$ac_file':,' < $tmp/out`
- { echo "$as_me:21624: WARNING: Some variables may not be substituted:
+ { echo "$as_me:24098: WARNING: Some variables may not be substituted:
$ac_seen" >&5
echo "$as_me: WARNING: Some variables may not be substituted:
$ac_seen" >&2;}
@@ -21633,7 +24107,7 @@ $ac_seen" >&2;}
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
#
# CONFIG_HEADER section.
@@ -21660,7 +24134,7 @@ ac_uD=',;t'
for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
+ case "$ac_file" in
- | *:- | *:-:* ) # input from stdin
cat >$tmp/stdin
ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
@@ -21670,7 +24144,7 @@ for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
* ) ac_file_in=$ac_file.in ;;
esac
- test x"$ac_file" != x- && { echo "$as_me:21673: creating $ac_file" >&5
+ test x"$ac_file" != x- && { echo "$as_me:24147: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
# First look for the input files in the build tree, otherwise in the
@@ -21681,7 +24155,7 @@ echo "$as_me: creating $ac_file" >&6;}
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:21684: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:24158: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
@@ -21691,10 +24165,10 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
echo $f
elif test -f "$srcdir/$f"; then
# Source tree
- echo $srcdir/$f
+ echo "$srcdir/$f"
else
# /dev/null tree
- { { echo "$as_me:21697: error: cannot find input file: $f" >&5
+ { { echo "$as_me:24171: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
@@ -21714,14 +24188,14 @@ cat confdefs.h | uniq >conftest.vals
# the size of here documents, and old seds have small limits too.
rm -f conftest.tail
-echo ' rm -f conftest.frag' >> $CONFIG_STATUS
+echo ' rm -f conftest.frag' >> "$CONFIG_STATUS"
while grep . conftest.vals >/dev/null
do
# Write chunks of a limited-size here document to conftest.frag.
- echo ' cat >> conftest.frag <<CEOF' >> $CONFIG_STATUS
- sed ${ac_max_here_lines}q conftest.vals | sed -e 's/#ifdef.*/#if 0/' >> $CONFIG_STATUS
- echo 'CEOF' >> $CONFIG_STATUS
- sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
+ echo ' cat >> conftest.frag <<CEOF' >> "$CONFIG_STATUS"
+ sed "${ac_max_here_lines}q" conftest.vals | sed -e 's/#ifdef.*/#if 0/' >> "$CONFIG_STATUS"
+ echo 'CEOF' >> "$CONFIG_STATUS"
+ sed "1,${ac_max_here_lines}d" conftest.vals > conftest.tail
rm -f conftest.vals
mv conftest.tail conftest.vals
done
@@ -21737,9 +24211,9 @@ sed -f conftest.edit $tmp/in > $tmp/out
rm -f $tmp/in
mv $tmp/out $tmp/in
rm -f conftest.edit conftest.frag
-' >> $CONFIG_STATUS
+' >> "$CONFIG_STATUS"
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
# Let's still pretend it is `configure' which instantiates (i.e., don't
# use $as_me), people would be surprised to read:
# /* config.h. Generated automatically by config.status. */
@@ -21751,8 +24225,8 @@ cat >>$CONFIG_STATUS <<\EOF
cat $tmp/in >>$tmp/config.h
rm -f $tmp/in
if test x"$ac_file" != x-; then
- if cmp -s $ac_file $tmp/config.h 2>/dev/null; then
- { echo "$as_me:21755: $ac_file is unchanged" >&5
+ if cmp -s "$ac_file" "$tmp/config.h" 2>/dev/null; then
+ { echo "$as_me:24229: $ac_file is unchanged" >&5
echo "$as_me: $ac_file is unchanged" >&6;}
else
ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
@@ -21784,8 +24258,8 @@ for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
done; }
fi
- rm -f $ac_file
- mv $tmp/config.h $ac_file
+ rm -f "$ac_file"
+ mv "$tmp/config.h" "$ac_file"
fi
else
cat $tmp/config.h
@@ -21793,7 +24267,7 @@ done; }
fi
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
#
# CONFIG_COMMANDS section.
#
@@ -21801,15 +24275,15 @@ for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
- case $ac_dest in
+ case "$ac_dest" in
default )
for cf_dir in .
do
- if test ! -d $srcdir/$cf_dir; then
+ if test ! -d "$srcdir/$cf_dir" ; then
continue
- elif test -f $srcdir/$cf_dir/programs; then
- $AWK -f $srcdir/mk-test.awk INSTALL=yes ECHO_LINK="$ECHO_LD" $srcdir/$cf_dir/programs >>$cf_dir/Makefile
+ elif test -f "$srcdir/$cf_dir/programs" ; then
+ $AWK -f $srcdir/mk-test.awk INSTALL=yes ECHO_LINK="$ECHO_LD" "$srcdir/$cf_dir/programs" >>$cf_dir/Makefile
fi
done
@@ -21847,11 +24321,11 @@ fi
done
EOF
-cat >>$CONFIG_STATUS <<\EOF
+cat >>"$CONFIG_STATUS" <<\EOF
{ (exit 0); exit 0; }
EOF
-chmod +x $CONFIG_STATUS
+chmod +x "$CONFIG_STATUS"
ac_clean_files=$ac_clean_files_save
# configure is writing to config.log, and then calls config.status.
@@ -21865,10 +24339,10 @@ ac_clean_files=$ac_clean_files_save
if test "$no_create" != yes; then
ac_cs_success=:
exec 5>/dev/null
- $SHELL $CONFIG_STATUS || ac_cs_success=false
+ $SHELL "$CONFIG_STATUS" || ac_cs_success=false
exec 5>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
+ "$ac_cs_success" || { (exit 1); exit 1; }
fi
diff --git a/test/configure.in b/test/configure.in
index 08350e7..faa674d 100644
--- a/test/configure.in
+++ b/test/configure.in
@@ -1,5 +1,5 @@
dnl***************************************************************************
-dnl Copyright 2018-2019,2020 Thomas E. Dickey *
+dnl Copyright 2018-2020,2021 Thomas E. Dickey *
dnl Copyright 1998-2017,2018 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1996-on
dnl
-dnl $Id: configure.in,v 1.157 2020/02/02 23:34:34 tom Exp $
+dnl $Id: configure.in,v 1.163 2021/07/03 20:21:07 tom Exp $
dnl This is a simple configuration-script for the ncurses test programs that
dnl allows the test-directory to be separately configured against a reference
dnl system (i.e., sysvr4 curses)
@@ -42,7 +42,7 @@ dnl https://invisible-island.net/autoconf/
dnl https://invisible-island.net/autoconf/my-autoconf.html
dnl https://invisible-island.net/ncurses/ncurses-examples.html
dnl ---------------------------------------------------------------------------
-AC_PREREQ(2.52.20200111)
+AC_PREREQ(2.52.20210509)
AC_INIT(ncurses.c)
AC_CONFIG_HEADER(ncurses_cfg.h:ncurses_tst.hin)
@@ -62,6 +62,7 @@ AC_PROG_AWK
CF_PROG_INSTALL
CF_INSTALL_OPTS
CF_PROG_LINT
+CF_MAKE_PHONY
CF_MAKE_TAGS
CF_MATH_LIB(MATH_LIB,pow(sin(x),x))
@@ -176,6 +177,10 @@ case $cf_cv_screen in
;;
esac
+CF_WITH_LIB_BASENAME(FORM_NAME,form)
+CF_WITH_LIB_BASENAME(MENU_NAME,menu)
+CF_WITH_LIB_BASENAME(PANEL_NAME,panel)
+
AC_MSG_CHECKING(if you want to check for panel functions)
CF_ARG_DISABLE(panel,
[ --disable-panel disable checks for panel functions],
@@ -185,7 +190,7 @@ CF_ARG_DISABLE(panel,
AC_MSG_RESULT($cf_enable_panel)
if test $cf_enable_panel = yes
then
- CF_CHECK_CURSES_LIB(panel,$cf_cv_libtype,new_panel,0)
+ CF_CHECK_CURSES_LIB($PANEL_NAME,$cf_cv_libtype,new_panel,0)
cf_curses_headers="$cf_curses_headers panel.h"
fi
@@ -205,7 +210,7 @@ then
CF_NETBSD_MENU_H
;;
esac
- CF_CHECK_CURSES_LIB(menu,$cf_cv_libtype,menu_driver,[0,0])
+ CF_CHECK_CURSES_LIB($MENU_NAME,$cf_cv_libtype,menu_driver,[0,0])
cf_curses_headers="$cf_curses_headers menu.h"
fi
@@ -225,7 +230,7 @@ then
CF_NETBSD_FORM_H
;;
esac
- CF_CHECK_CURSES_LIB(form,$cf_cv_libtype,form_driver,[0,0])
+ CF_CHECK_CURSES_LIB($FORM_NAME,$cf_cv_libtype,form_driver,[0,0])
cf_curses_headers="$cf_curses_headers form.h"
fi
@@ -252,6 +257,8 @@ CF_GETOPT_HEADER
AC_CHECK_FUNCS( \
getopt \
gettimeofday \
+snprintf \
+strdup \
strstr \
tsearch \
)
@@ -318,6 +325,8 @@ color_set \
copywin \
delscreen \
dupwin \
+exit_curses \
+exit_terminfo \
filter \
getbegx \
getcurx \
@@ -344,6 +353,7 @@ setupterm \
slk_color \
slk_init \
termattrs \
+termname \
tgetent \
tigetnum \
tigetstr \
@@ -480,6 +490,7 @@ ttytype)
dnl ---------------------------------------------------------------------------
CF_HELP_MESSAGE(Testing/development Options:)
+CF_WITH_SCREEN_PDCURSES
CF_ENABLE_WARNINGS(Wno-unknown-pragmas)
CF_DISABLE_LEAKS
CF_DISABLE_RPATH_HACK
diff --git a/test/demo_defkey.c b/test/demo_defkey.c
index ea6c522..afe1029 100644
--- a/test/demo_defkey.c
+++ b/test/demo_defkey.c
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: demo_defkey.c,v 1.30 2020/02/02 23:34:34 tom Exp $
+ * $Id: demo_defkey.c,v 1.31 2020/12/26 17:55:13 tom Exp $
*
* Demonstrate the define_key() function.
* Thomas Dickey - 2002/11/23
@@ -74,7 +74,7 @@ log_last_line(WINDOW *win)
static char *
visichar(int ch)
{
- static char temp[10];
+ static char temp[20];
ch = UChar(ch);
assert(ch >= 0 && ch < 256);
@@ -242,7 +242,7 @@ main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
* keypad() initializes the corresponding data.
*/
for (n = 0; n < 12; ++n) {
- char name[10];
+ char name[20];
_nc_SPRINTF(name, _nc_SLIMIT(sizeof(name)) "kf%d", n + 1);
fkeys[n] = tigetstr(name);
}
diff --git a/test/demo_forms.c b/test/demo_forms.c
index 4e01ed5..ea0426d 100644
--- a/test/demo_forms.c
+++ b/test/demo_forms.c
@@ -27,41 +27,11 @@
* authorization. *
****************************************************************************/
/*
- * $Id: demo_forms.c,v 1.57 2020/02/02 23:34:34 tom Exp $
+ * $Id: demo_forms.c,v 1.58 2020/03/21 15:57:59 tom Exp $
*
* Demonstrate a variety of functions from the form library.
* Thomas Dickey - 2003/4/26
*/
-/*
-dup_field -
-field_init -
-field_just -
-field_term -
-form_init -
-form_opts -
-form_opts_off -
-form_opts_on -
-form_request_by_name -
-form_term -
-form_userptr -
-free_fieldtype -
-link_field -
-link_fieldtype -
-move_field -
-new_page -
-pos_form_cursor -
-set_field_init -
-set_field_term -
-set_fieldtype_arg -
-set_fieldtype_choice -
-set_form_fields -
-set_form_init -
-set_form_opts -
-set_form_page -
-set_form_term -
-set_form_userptr -
-set_max_field -
-*/
#include <test.priv.h>
diff --git a/test/demo_menus.c b/test/demo_menus.c
index 02f7ca3..9f3b4d2 100644
--- a/test/demo_menus.c
+++ b/test/demo_menus.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2003-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: demo_menus.c,v 1.71 2020/02/02 23:34:34 tom Exp $
+ * $Id: demo_menus.c,v 1.73 2021/05/08 19:41:08 tom Exp $
*
* Demonstrate a variety of functions from the menu library.
* Thomas Dickey - 2005/4/9
@@ -113,7 +113,7 @@ static bool loaded_file = FALSE;
static char empty[1];
#ifdef TRACE
-static void failed(const char *s) GCC_NORETURN;
+static GCC_NORETURN void failed(const char *s);
static void
failed(const char *s)
@@ -565,7 +565,7 @@ tracetrace(unsigned tlevel)
}
_nc_SPRINTF(buf, _nc_SLIMIT(need) "0x%02x = {", tlevel);
if (tlevel == 0) {
- _nc_STRCAT(buf, t_tbl[0].name, need);
+ _nc_STRCAT(buf, t_tbl[0].name ? t_tbl[0].name : "", need);
_nc_STRCAT(buf, ", ", need);
} else {
for (n = 1; t_tbl[n].name != 0; n++)
diff --git a/test/demo_new_pair.c b/test/demo_new_pair.c
index bd62a08..ac0d9bf 100644
--- a/test/demo_new_pair.c
+++ b/test/demo_new_pair.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: demo_new_pair.c,v 1.21 2020/02/02 23:34:34 tom Exp $
+ * $Id: demo_new_pair.c,v 1.24 2021/02/21 01:24:06 tom Exp $
*
* Demonstrate the alloc_pair() function.
*/
@@ -136,6 +136,7 @@ usage(void)
"Repeatedly print using all possible color combinations.",
"",
"Options:",
+ " -g use getcchar to check setcchar",
" -i use init_pair rather than alloc_pair",
" -p start in paged-mode",
" -s start in single-step mode",
@@ -186,6 +187,7 @@ main(int argc, char *argv[])
};
bool done = FALSE;
+ bool check_set = FALSE;
bool clobber = FALSE;
bool hascolor = FALSE;
bool use_init = FALSE;
@@ -202,8 +204,11 @@ main(int argc, char *argv[])
setlocale(LC_ALL, "");
- while ((ch = getopt(argc, argv, "ipsw")) != -1) {
+ while ((ch = getopt(argc, argv, "gipsw")) != -1) {
switch (ch) {
+ case 'g':
+ check_set = TRUE;
+ break;
case 'i':
use_init = TRUE;
break;
@@ -327,6 +332,39 @@ main(int argc, char *argv[])
setcchar(&temp, wch, my_attrs,
(short) my_pair,
(use_init ? NULL : (void *) &my_pair));
+
+ if (check_set) {
+ int problem = 0;
+ wchar_t chk_wch[2];
+ attr_t chk_attrs = 0;
+ short chk_pair = 0;
+ int chk_pair2 = 0;
+
+#define AllButColor(a) ((a) & (A_ATTRIBUTES & ~A_COLOR))
+
+ if (getcchar(&temp, NULL, &chk_attrs, &chk_pair,
+ (use_init ? NULL : (void *) &chk_pair2)) != 2) {
+ problem = 1;
+ } else if (getcchar(&temp, chk_wch, &chk_attrs, &chk_pair,
+ (use_init ? NULL : (void *) &chk_pair2)) != OK) {
+ problem = 2;
+ } else if (chk_wch[0] != wch[0]) {
+ problem = 3;
+ } else if (AllButColor(my_attrs) != AllButColor(chk_attrs)) {
+ problem = 4;
+ } else if (my_pair != chk_pair) {
+ problem = 4;
+ } else if (!use_init && (my_pair != chk_pair2)) {
+ problem = 5;
+ }
+ if (problem) {
+ wch[0] = (wchar_t) (problem + '0');
+ setcchar(&temp, wch, my_attrs,
+ (short) my_pair,
+ (use_init ? NULL : (void *) &my_pair));
+ }
+ }
+
/*
* At the end of a page, move the cursor to the home position.
*/
diff --git a/test/demo_termcap.c b/test/demo_termcap.c
index adc9eee..347fc5b 100644
--- a/test/demo_termcap.c
+++ b/test/demo_termcap.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2005-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey
*
- * $Id: demo_termcap.c,v 1.59 2020/02/02 23:34:34 tom Exp $
+ * $Id: demo_termcap.c,v 1.60 2021/03/20 16:05:49 tom Exp $
*
* A simple demo of the termcap interface.
*/
@@ -55,7 +55,7 @@
#endif
#endif
-static void failed(const char *) GCC_NORETURN;
+static GCC_NORETURN void failed(const char *);
static void
failed(const char *msg)
diff --git a/test/demo_terminfo.c b/test/demo_terminfo.c
index 8ea0edf..45cee39 100644
--- a/test/demo_terminfo.c
+++ b/test/demo_terminfo.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2009-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey
*
- * $Id: demo_terminfo.c,v 1.50 2020/02/02 23:34:34 tom Exp $
+ * $Id: demo_terminfo.c,v 1.52 2021/03/20 16:07:29 tom Exp $
*
* A simple demo of the terminfo interface.
*/
@@ -47,7 +47,7 @@
#endif
#endif
-static void failed(const char *) GCC_NORETURN;
+static GCC_NORETURN void failed(const char *);
static void
failed(const char *msg)
@@ -842,10 +842,12 @@ main(int argc, char *argv[])
case 's':
s_opt = TRUE;
break;
-#ifdef NCURSES_VERSION
case 'x':
+#ifdef NCURSES_VERSION
x_opt = TRUE;
+#endif
break;
+#ifdef NCURSES_VERSION
case 'y':
y_opt = TRUE;
x_opt = TRUE;
diff --git a/test/ditto.c b/test/ditto.c
index a5cec33..fdc8611 100644
--- a/test/ditto.c
+++ b/test/ditto.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey (1998-on)
*
- * $Id: ditto.c,v 1.49 2020/02/02 23:34:34 tom Exp $
+ * $Id: ditto.c,v 1.52 2021/08/15 20:07:11 tom Exp $
*
* The program illustrates how to set up multiple screens from a single
* program.
@@ -102,8 +102,8 @@ typedef struct {
DITTO *ditto; /* data for all screens */
} DDATA;
-static void failed(const char *) GCC_NORETURN;
-static void usage(void) GCC_NORETURN;
+static GCC_NORETURN void failed(const char *);
+static GCC_NORETURN void usage(void);
static void
failed(const char *s)
@@ -182,7 +182,7 @@ open_tty(char *path)
#else
struct stat sb;
- if (stat(path, &sb) < 0)
+ if (stat(path, &sb) == -1)
failed(path);
if ((sb.st_mode & S_IFMT) != S_IFCHR) {
errno = ENOTTY;
@@ -353,7 +353,6 @@ static void *
handle_screen(void *arg)
{
DDATA ddata;
- int ch;
memset(&ddata, 0, sizeof(ddata));
ddata.ditto = (DITTO *) arg;
@@ -361,7 +360,7 @@ handle_screen(void *arg)
ddata.ditto -= ddata.source; /* -> base of array */
for (;;) {
- ch = read_screen(ddata.ditto->screen, &ddata);
+ int ch = read_screen(ddata.ditto->screen, &ddata);
if (ch == CTRL('D')) {
int later = (ddata.source ? ddata.source : -1);
int j;
diff --git a/test/dots.c b/test/dots.c
index d34473c..94d90a1 100644
--- a/test/dots.c
+++ b/test/dots.c
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey <dickey@clark.net> 1999
*
- * $Id: dots.c,v 1.36 2020/02/02 23:34:34 tom Exp $
+ * $Id: dots.c,v 1.40 2020/05/29 23:04:02 tom Exp $
*
* A simple demo of the terminfo interface.
*/
@@ -79,9 +79,10 @@ cleanup(void)
outs(clear_screen);
outs(cursor_normal);
- printf("\n\n%ld total cells, rate %.2f/sec\n",
- total_chars,
- ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
+ fflush(stdout);
+ fprintf(stderr, "\n\n%ld total cells, rate %.2f/sec\n",
+ total_chars,
+ ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
}
static void
@@ -123,6 +124,7 @@ usage(void)
#endif
," -f use tigetnum rather than <term.h> mapping"
," -m SIZE set margin (default: 2)"
+ ," -r SECS self-interrupt/exit after specified number of seconds"
," -s MSECS delay 1% of the time (default: 1 msecs)"
};
size_t n;
@@ -143,11 +145,12 @@ main(int argc,
int my_colors;
int f_option = 0;
int m_option = 2;
+ int r_option = 0;
int s_option = 1;
size_t need;
char *my_env;
- while ((ch = getopt(argc, argv, "T:efm:s:")) != -1) {
+ while ((ch = getopt(argc, argv, "T:efm:r:s:")) != -1) {
switch (ch) {
case 'T':
need = 6 + strlen(optarg);
@@ -166,6 +169,9 @@ main(int argc,
case 'm':
m_option = atoi(optarg);
break;
+ case 'r':
+ r_option = atoi(optarg);
+ break;
case 's':
s_option = atoi(optarg);
break;
@@ -175,6 +181,7 @@ main(int argc,
}
}
+ SetupAlarm(r_option);
InitAndCatch(setupterm((char *) 0, 1, (int *) 0), onsig);
srand((unsigned) time(0));
@@ -207,7 +214,8 @@ main(int argc,
tputs(tparm2(set_a_foreground, z), 1, outc);
} else {
tputs(tparm2(set_a_background, z), 1, outc);
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
} else if (VALID_STRING(exit_attribute_mode)
&& VALID_STRING(enter_reverse_mode)) {
@@ -215,7 +223,8 @@ main(int argc,
outs((ranf() > 0.6)
? enter_reverse_mode
: exit_attribute_mode);
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
}
outc(p);
diff --git a/test/dots_curses.c b/test/dots_curses.c
index 930f522..95ddb93 100644
--- a/test/dots_curses.c
+++ b/test/dots_curses.c
@@ -30,13 +30,13 @@
/*
* Author: Thomas E. Dickey
*
- * $Id: dots_curses.c,v 1.16 2020/02/02 23:34:34 tom Exp $
+ * $Id: dots_curses.c,v 1.21 2020/08/29 16:22:03 juergen Exp $
*
* A simple demo of the curses interface used for comparison with termcap.
*/
#include <test.priv.h>
-#if !defined(_WIN32)
+#if !defined(_NC_WINDOWS)
#include <sys/time.h>
#endif
@@ -51,9 +51,10 @@ cleanup(void)
{
endwin();
- printf("\n\n%ld total cells, rate %.2f/sec\n",
- total_chars,
- ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
+ fflush(stdout);
+ fprintf(stderr, "\n\n%ld total cells, rate %.2f/sec\n",
+ total_chars,
+ ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
}
static void
@@ -101,6 +102,7 @@ usage(void)
," -e allow environment $LINES / $COLUMNS"
#endif
," -m SIZE set margin (default: 2)"
+ ," -r SECS self-interrupt/exit after specified number of seconds"
," -s MSECS delay 1% of the time (default: 1 msecs)"
};
size_t n;
@@ -122,11 +124,12 @@ main(int argc, char *argv[])
bool d_option = FALSE;
#endif
int m_option = 2;
+ int r_option = 0;
int s_option = 1;
size_t need;
char *my_env;
- while ((ch = getopt(argc, argv, "T:dem:s:")) != -1) {
+ while ((ch = getopt(argc, argv, "T:dem:r:s:")) != -1) {
switch (ch) {
case 'T':
need = 6 + strlen(optarg);
@@ -147,6 +150,9 @@ main(int argc, char *argv[])
case 'm':
m_option = atoi(optarg);
break;
+ case 'r':
+ r_option = atoi(optarg);
+ break;
case 's':
s_option = atoi(optarg);
break;
@@ -158,7 +164,9 @@ main(int argc, char *argv[])
srand((unsigned) time(0));
+ SetupAlarm(r_option);
InitAndCatch(initscr(), onsig);
+
if (has_colors()) {
start_color();
#if HAVE_USE_DEFAULT_COLORS
@@ -198,7 +206,8 @@ main(int argc, char *argv[])
attron(COLOR_PAIR(mypair(fg, bg)));
} else {
set_colors(fg, bg = z);
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
} else {
if (ranf() <= 0.01) {
@@ -207,7 +216,8 @@ main(int argc, char *argv[])
} else {
attroff(A_REVERSE);
}
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
}
AddCh(p);
diff --git a/test/dots_mvcur.c b/test/dots_mvcur.c
index d214ffc..a032124 100644
--- a/test/dots_mvcur.c
+++ b/test/dots_mvcur.c
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey - 2007
*
- * $Id: dots_mvcur.c,v 1.22 2020/02/02 23:34:34 tom Exp $
+ * $Id: dots_mvcur.c,v 1.26 2020/05/29 23:04:02 tom Exp $
*
* A simple demo of the terminfo interface, and mvcur.
*/
@@ -80,9 +80,10 @@ cleanup(void)
outs(clear_screen);
outs(cursor_normal);
- printf("\n\n%ld total cells, rate %.2f/sec\n",
- total_chars,
- ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
+ fflush(stdout);
+ fprintf(stderr, "\n\n%ld total cells, rate %.2f/sec\n",
+ total_chars,
+ ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
}
static void
@@ -124,6 +125,7 @@ usage(void)
#endif
," -f use tigetnum rather than <term.h> mapping"
," -m SIZE set margin (default: 2)"
+ ," -r SECS self-interrupt/exit after specified number of seconds"
," -s MSECS delay 1% of the time (default: 1 msecs)"
};
size_t n;
@@ -146,11 +148,12 @@ main(int argc GCC_UNUSED,
int my_colors;
int f_option = 0;
int m_option = 2;
+ int r_option = 0;
int s_option = 1;
size_t need;
char *my_env;
- while ((ch = getopt(argc, argv, "T:efm:s:")) != -1) {
+ while ((ch = getopt(argc, argv, "T:efm:r:s:")) != -1) {
switch (ch) {
case 'T':
need = 6 + strlen(optarg);
@@ -169,6 +172,9 @@ main(int argc GCC_UNUSED,
case 'm':
m_option = atoi(optarg);
break;
+ case 'r':
+ r_option = atoi(optarg);
+ break;
case 's':
s_option = atoi(optarg);
break;
@@ -178,6 +184,7 @@ main(int argc GCC_UNUSED,
}
}
+ SetupAlarm(r_option);
InitAndCatch((sp = newterm((char *) 0, stdout, stdin)), onsig);
refresh(); /* needed with Solaris curses to cancel endwin */
@@ -221,7 +228,8 @@ main(int argc GCC_UNUSED,
tputs(tparm2(set_a_foreground, z), 1, outc);
} else {
tputs(tparm2(set_a_background, z), 1, outc);
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
} else if (VALID_STRING(exit_attribute_mode)
&& VALID_STRING(enter_reverse_mode)) {
@@ -229,7 +237,8 @@ main(int argc GCC_UNUSED,
outs((ranf() > 0.6)
? enter_reverse_mode
: exit_attribute_mode);
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
}
outc(p);
diff --git a/test/dots_termcap.c b/test/dots_termcap.c
index 0e442b1..5e4c17d 100644
--- a/test/dots_termcap.c
+++ b/test/dots_termcap.c
@@ -30,14 +30,14 @@
/*
* Author: Thomas E. Dickey
*
- * $Id: dots_termcap.c,v 1.20 2020/02/02 23:34:34 tom Exp $
+ * $Id: dots_termcap.c,v 1.26 2020/09/05 17:58:47 juergen Exp $
*
* A simple demo of the termcap interface.
*/
#define USE_TINFO
#include <test.priv.h>
-#if !defined(_WIN32)
+#if !defined(_NC_WINDOWS)
#include <sys/time.h>
#endif
@@ -131,9 +131,10 @@ cleanup(void)
outs(t_cl);
outs(t_ve);
- printf("\n\n%ld total cells, rate %.2f/sec\n",
- total_chars,
- ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
+ fflush(stdout);
+ fprintf(stderr, "\n\n%ld total cells, rate %.2f/sec\n",
+ total_chars,
+ ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
}
static void
@@ -153,8 +154,8 @@ static void
my_napms(int ms)
{
if (ms > 0) {
-#if defined(_WIN32) || !HAVE_GETTIMEOFDAY
- Sleep((DWORD) ms);
+#if defined(_NC_WINDOWS) || !HAVE_GETTIMEOFDAY
+ Sleep((unsigned int) ms);
#else
struct timeval data;
data.tv_sec = 0;
@@ -189,6 +190,7 @@ usage(void)
," -T TERM override $TERM"
," -e allow environment $LINES / $COLUMNS"
," -m SIZE set margin (default: 2)"
+ ," -r SECS self-interrupt/exit after specified number of seconds"
," -s MSECS delay 1% of the time (default: 1 msecs)"
};
size_t n;
@@ -208,6 +210,7 @@ main(int argc, char *argv[])
int num_columns;
int e_option = 0;
int m_option = 2;
+ int r_option = 0;
int s_option = 1;
double r;
double c;
@@ -217,7 +220,7 @@ main(int argc, char *argv[])
size_t need;
char *my_env;
- while ((ch = getopt(argc, argv, "T:em:s:")) != -1) {
+ while ((ch = getopt(argc, argv, "T:em:r:s:")) != -1) {
switch (ch) {
case 'T':
need = 6 + strlen(optarg);
@@ -231,6 +234,9 @@ main(int argc, char *argv[])
case 'm':
m_option = atoi(optarg);
break;
+ case 'r':
+ r_option = atoi(optarg);
+ break;
case 's':
s_option = atoi(optarg);
break;
@@ -247,6 +253,7 @@ main(int argc, char *argv[])
srand((unsigned) time(0));
+ SetupAlarm((unsigned) r_option);
InitAndCatch(ch = tgetent(buffer, name), onsig);
if (ch < 0) {
fprintf(stderr, "terminal description not found\n");
@@ -290,7 +297,8 @@ main(int argc, char *argv[])
tputs(tgoto(t_AF, 0, z), 1, outc);
} else {
tputs(tgoto(t_AB, 0, z), 1, outc);
- my_napms(s_option);
+ if (s_option)
+ my_napms(s_option);
}
} else if (VALID_STRING(t_me)
&& VALID_STRING(t_mr)) {
@@ -298,7 +306,8 @@ main(int argc, char *argv[])
outs((ranf() > 0.6)
? t_mr
: t_me);
- my_napms(s_option);
+ if (s_option)
+ my_napms(s_option);
}
}
outc(p);
diff --git a/test/dots_xcurses.c b/test/dots_xcurses.c
index ba65dab..b640c2b 100644
--- a/test/dots_xcurses.c
+++ b/test/dots_xcurses.c
@@ -30,13 +30,13 @@
/*
* Author: Thomas E. Dickey
*
- * $Id: dots_xcurses.c,v 1.19 2020/02/02 23:34:34 tom Exp $
+ * $Id: dots_xcurses.c,v 1.24 2020/08/29 16:22:03 juergen Exp $
*
* A simple demo of the wide-curses interface used for comparison with termcap.
*/
#include <test.priv.h>
-#if !defined(_WIN32)
+#if !defined(_NC_WINDOWS)
#include <sys/time.h>
#endif
@@ -65,9 +65,10 @@ cleanup(void)
{
endwin();
- printf("\n\n%ld total cells, rate %.2f/sec\n",
- total_chars,
- ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
+ fflush(stdout);
+ fprintf(stderr, "\n\n%ld total cells, rate %.2f/sec\n",
+ total_chars,
+ ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
}
static void
@@ -124,6 +125,7 @@ usage(void)
," -e allow environment $LINES / $COLUMNS"
#endif
," -m SIZE set margin (default: 2)"
+ ," -r SECS self-interrupt/exit after specified number of seconds"
," -s MSECS delay 1% of the time (default: 1 msecs)"
#if HAVE_ALLOC_PAIR
," -x use alloc_pair() rather than init_pair()"
@@ -148,11 +150,12 @@ main(int argc, char *argv[])
bool d_option = FALSE;
#endif
int m_option = 2;
+ int r_option = 0;
int s_option = 1;
size_t need;
char *my_env;
- while ((ch = getopt(argc, argv, "T:dem:s:x")) != -1) {
+ while ((ch = getopt(argc, argv, "T:dem:r:s:x")) != -1) {
switch (ch) {
case 'T':
need = 6 + strlen(optarg);
@@ -173,6 +176,9 @@ main(int argc, char *argv[])
case 'm':
m_option = atoi(optarg);
break;
+ case 'r':
+ r_option = atoi(optarg);
+ break;
case 's':
s_option = atoi(optarg);
break;
@@ -189,6 +195,7 @@ main(int argc, char *argv[])
srand((unsigned) time(0));
+ SetupAlarm(r_option);
InitAndCatch(initscr(), onsig);
if (has_colors()) {
start_color();
@@ -237,7 +244,8 @@ main(int argc, char *argv[])
set_colors(fg = z, bg);
} else {
set_colors(fg, bg = z);
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
} else {
if (ranf() <= 0.01) {
@@ -246,7 +254,8 @@ main(int argc, char *argv[])
} else {
attr_off(WA_REVERSE, NULL);
}
- napms(s_option);
+ if (s_option)
+ napms(s_option);
}
}
wch[0] = (wchar_t) p;
diff --git a/test/dup_field.c b/test/dup_field.c
new file mode 100644
index 0000000..eb87c90
--- /dev/null
+++ b/test/dup_field.c
@@ -0,0 +1,392 @@
+/****************************************************************************
+ * Copyright 2020,2021 Thomas E. Dickey *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+/*
+ * $Id: dup_field.c,v 1.2 2021/03/27 23:41:57 tom Exp $
+ *
+ * Demonstrate move_field().
+ */
+
+#include <test.priv.h>
+
+#if USE_LIBFORM
+
+#include <edit_field.h>
+#include <popup_msg.h>
+
+#define MY_DEMO EDIT_FIELD('f')
+
+static char empty[] = "";
+static FIELD *all_fields[100];
+/* *INDENT-OFF* */
+static struct {
+ int code;
+ int result;
+ const char *help;
+} commands[] = {
+ { CTRL('A'), REQ_BEG_FIELD, "go to beginning of field" },
+ { CTRL('D'), REQ_DOWN_FIELD, "move downward to field" },
+ { CTRL('E'), REQ_END_FIELD, "go to end of field" },
+ { CTRL('G'), MY_DEMO, "move current field with cursor keys" },
+ { CTRL('H'), REQ_DEL_PREV, "delete previous character" },
+ { CTRL('I'), REQ_NEXT_FIELD, "go to next field" },
+ { CTRL('K'), REQ_CLR_EOF, "clear to end of field" },
+ { CTRL('N'), REQ_NEXT_FIELD, "go to next field" },
+ { CTRL('P'), REQ_PREV_FIELD, "go to previous field" },
+ { CTRL('Q'), MY_QUIT, "exit form" },
+ { CTRL('U'), REQ_UP_FIELD, "move upward to field" },
+ { CTRL('W'), REQ_NEXT_WORD, "go to next word" },
+ { CTRL('X'), REQ_CLR_FIELD, "clear field" },
+ { CTRL('['), MY_QUIT, "exit form" },
+ { KEY_F(1), MY_HELP, "show this screen", },
+ { KEY_BACKSPACE, REQ_DEL_PREV, "delete previous character" },
+ { KEY_BTAB, REQ_PREV_FIELD, "go to previous field" },
+ { KEY_DOWN, REQ_DOWN_CHAR, "move down 1 character" },
+ { KEY_END, REQ_LAST_FIELD, "go to last field" },
+ { KEY_HOME, REQ_FIRST_FIELD, "go to first field" },
+ { KEY_LEFT, REQ_LEFT_CHAR, "move left 1 character" },
+ { KEY_NEXT, REQ_NEXT_FIELD, "go to next field" },
+ { KEY_PREVIOUS, REQ_PREV_FIELD, "go to previous field" },
+ { KEY_RIGHT, REQ_RIGHT_CHAR, "move right 1 character" },
+ { KEY_UP, REQ_UP_CHAR, "move up 1 character" }
+};
+/* *INDENT-ON* */
+
+static void
+my_help_edit_field(void)
+{
+ int used = 0;
+ unsigned n;
+ char **msgs = typeCalloc(char *, 3 + SIZEOF(commands));
+
+ msgs[used++] = strdup("Defined form edit/traversal keys:");
+ for (n = 0; n < SIZEOF(commands); ++n) {
+ char *msg;
+ const char *name;
+ const char *code = keyname(commands[n].code);
+ size_t need = 5;
+#ifdef NCURSES_VERSION
+ if ((name = form_request_name(commands[n].result)) == 0)
+#endif
+ name = commands[n].help;
+ need = 5 + strlen(code) + strlen(name);
+ msg = typeMalloc(char, need);
+ _nc_SPRINTF(msg, _nc_SLIMIT(need) "%s -- %s", code, name);
+ msgs[used++] = msg;
+ }
+ msgs[used++] =
+ strdup("Arrow keys move within a field as you would expect.");
+ msgs[used] = 0;
+ popup_msg2(stdscr, msgs);
+ for (n = 0; msgs[n] != 0; ++n) {
+ free(msgs[n]);
+ }
+ free(msgs);
+}
+
+static void
+do_demo(FORM *form)
+{
+}
+
+static FIELD *
+make_label(const char *label, int frow, int fcol)
+{
+ FIELD *f = new_field(1, (int) strlen(label), frow, fcol, 0, 0);
+
+ if (f) {
+ set_field_buffer(f, 0, label);
+ set_field_opts(f, (int) ((unsigned) field_opts(f) & ~O_ACTIVE));
+ }
+ return (f);
+}
+
+static FIELD *
+make_field(int frow, int fcol, int rows, int cols)
+{
+ FIELD *f = new_field(rows, cols, frow, fcol, 0, 1);
+
+ if (f) {
+ set_field_back(f, A_UNDERLINE);
+ init_edit_field(f, empty);
+ }
+ return (f);
+}
+
+static void
+erase_form(FORM *f)
+{
+ WINDOW *w = form_win(f);
+ WINDOW *s = form_sub(f);
+
+ unpost_form(f);
+ werase(w);
+ wrefresh(w);
+ delwin(s);
+ delwin(w);
+}
+
+static int
+my_form_driver(FORM *form, int c)
+{
+ switch (c) {
+ case MY_QUIT:
+ if (form_driver(form, REQ_VALIDATION) == E_OK)
+ return (TRUE);
+ break;
+ case MY_HELP:
+ my_help_edit_field();
+ break;
+ case MY_DEMO:
+ do_demo(form);
+ break;
+ default:
+ beep();
+ break;
+ }
+ return (FALSE);
+}
+
+static FieldAttrs *
+my_field_attrs(FIELD *f)
+{
+ return (FieldAttrs *) field_userptr(f);
+}
+
+static int
+buffer_length(FIELD *f)
+{
+ return my_field_attrs(f)->row_lengths[0];
+}
+
+static void
+set_buffer_length(FIELD *f, int length)
+{
+ my_field_attrs(f)->row_lengths[0] = length;
+}
+
+static int
+offset_in_field(FORM *form)
+{
+ FIELD *field = current_field(form);
+ int currow, curcol;
+
+ form_getyx(form, currow, curcol);
+ return curcol + currow * (int) field->dcols;
+}
+
+static void
+inactive_field(FIELD *f)
+{
+ set_field_back(f, my_field_attrs(f)->background);
+}
+
+static int
+my_edit_field(FORM *form, int *result)
+{
+ int ch = wgetch(form_win(form));
+ int status;
+ FIELD *before;
+ unsigned n;
+ int before_row;
+ int before_col;
+ int before_off = offset_in_field(form);
+
+ form_getyx(form, before_row, before_col);
+ before = current_field(form);
+ set_field_back(before, A_NORMAL);
+ if (ch <= KEY_MAX) {
+ set_field_back(before, A_REVERSE);
+ } else if (ch <= MAX_FORM_COMMAND) {
+ inactive_field(before);
+ }
+
+ *result = ch;
+ for (n = 0; n < SIZEOF(commands); ++n) {
+ if (commands[n].code == ch) {
+ *result = commands[n].result;
+ break;
+ }
+ }
+
+ status = form_driver(form, *result);
+
+ if (status == E_OK) {
+ bool modified = TRUE;
+ int length = buffer_length(before);
+
+ if (length < before_off)
+ length = before_off;
+ switch (*result) {
+ case REQ_CLR_EOF:
+ length = before_off;
+ break;
+ case REQ_CLR_EOL:
+ if ((int) (before_row + 1) == (int) (before->rows))
+ length = before_off;
+ break;
+ case REQ_CLR_FIELD:
+ length = 0;
+ break;
+ case REQ_DEL_CHAR:
+ if (length > before_off)
+ --length;
+ break;
+ case REQ_DEL_PREV:
+ if (length > 0) {
+ if (before_col > 0) {
+ --length;
+ } else if (before_row > 0) {
+ length -= (int) before->cols + before_col;
+ }
+ }
+ break;
+ case REQ_NEW_LINE:
+ length += (int) before->cols;
+ break;
+
+ default:
+ modified = (ch < MIN_FORM_COMMAND
+ && isprint(ch));
+ break;
+ }
+
+ /*
+ * If we do not force a re-validation, then field_buffer 0 will
+ * be lagging by one character.
+ */
+ if (modified && form_driver(form, REQ_VALIDATION) == E_OK && *result
+ < MIN_FORM_COMMAND)
+ ++length;
+
+ set_buffer_length(before, length);
+ }
+
+ if (current_field(form) != before)
+ inactive_field(before);
+ return status;
+}
+
+static void
+demo_forms(void)
+{
+ FORM *form;
+ int c;
+ unsigned n = 0;
+ const char *fname;
+
+ /* describe the form */
+ all_fields[n++] = make_label("Sample Form", 0, 15);
+
+ fname = "Last Name";
+ all_fields[n++] = make_label(fname, 2, 0);
+ all_fields[n++] = make_field(3, 0, 1, 18);
+ set_field_type(all_fields[n - 1], TYPE_ALPHA, 1);
+
+ fname = "First Name";
+ all_fields[n++] = make_label(fname, 2, 20);
+ all_fields[n++] = make_field(3, 20, 1, 12);
+ set_field_type(all_fields[n - 1], TYPE_ALPHA, 1);
+
+ fname = "Middle Name";
+ all_fields[n++] = make_label(fname, 2, 34);
+ all_fields[n++] = make_field(3, 34, 1, 12);
+ set_field_type(all_fields[n - 1], TYPE_ALPHA, 1);
+
+ fname = "Comments";
+ all_fields[n++] = make_label(fname, 5, 0);
+ all_fields[n++] = make_field(6, 0, 4, 46);
+ init_edit_field(all_fields[n - 1], empty);
+
+ all_fields[n] = (FIELD *) 0;
+
+ if ((form = new_form(all_fields)) != 0) {
+ int finished = 0;
+
+ post_form(form);
+
+ while (!finished) {
+ switch (my_edit_field(form, &c)) {
+ case E_OK:
+ break;
+ case E_UNKNOWN_COMMAND:
+ finished = my_form_driver(form, c);
+ break;
+ default:
+ beep();
+ break;
+ }
+ }
+
+ erase_form(form);
+
+ free_form(form);
+ }
+ for (c = 0; all_fields[c] != 0; c++) {
+ free_edit_field(all_fields[c]);
+ free_field(all_fields[c]);
+ }
+ noraw();
+ nl();
+}
+
+int
+main(void)
+{
+ setlocale(LC_ALL, "");
+
+ initscr();
+ cbreak();
+ noecho();
+ raw();
+ nonl(); /* lets us read ^M's */
+ intrflush(stdscr, FALSE);
+ keypad(stdscr, TRUE);
+
+ if (has_colors()) {
+ start_color();
+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
+ init_pair(2, COLOR_GREEN, COLOR_BLACK);
+ init_pair(3, COLOR_CYAN, COLOR_BLACK);
+ bkgd((chtype) COLOR_PAIR(1));
+ refresh();
+ }
+
+ demo_forms();
+
+ endwin();
+ ExitProgram(EXIT_SUCCESS);
+}
+
+#else
+int
+main(void)
+{
+ printf("This program requires the curses form library\n");
+ ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/filter.c b/test/filter.c
index 1ecf281..6cd9206 100644
--- a/test/filter.c
+++ b/test/filter.c
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey 1998
*
- * $Id: filter.c,v 1.34 2020/02/02 23:34:34 tom Exp $
+ * $Id: filter.c,v 1.35 2020/07/25 22:40:57 tom Exp $
*
* An example of the 'filter()' function in ncurses, this program prompts
* for commands and executes them (like a command shell). It illustrates
@@ -42,6 +42,7 @@
* reset_shell_mode() and reset_prog_mode() functions, we could invoke endwin()
* and refresh(), but that does not work any better.
*/
+#define NEED_KEY_EVENT
#include <test.priv.h>
#if HAVE_FILTER
diff --git a/test/foldkeys.c b/test/foldkeys.c
index 1a5aac0..ba4d18c 100644
--- a/test/foldkeys.c
+++ b/test/foldkeys.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2006-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey, 2006
*
- * $Id: foldkeys.c,v 1.9 2020/02/02 23:34:34 tom Exp $
+ * $Id: foldkeys.c,v 1.10 2021/08/08 00:41:57 tom Exp $
*
* Demonstrate a method for altering key definitions at runtime.
*
@@ -146,7 +146,8 @@ demo_foldkeys(void)
int first, second;
char final[2];
char *value;
- size_t need = 0;
+ size_t need;
+
if (info[j].state == 0
&& sscanf(info[j].value,
"\033[%d;%d%c",
@@ -156,6 +157,7 @@ demo_foldkeys(void)
&& *final != ';'
&& (need = strlen(info[j].value)) != 0
&& (value = strdup(info[j].value)) != 0) {
+ (void) need; /* _nc_SLIMIT is normally nothing */
_nc_SPRINTF(value, _nc_SLIMIT(need) "\033[%d%c", first, *final);
for (k = 0; k < info_len; ++k) {
if (info[k].state == 0
diff --git a/test/hanoi.c b/test/hanoi.c
index 8f1792d..610b2d8 100644
--- a/test/hanoi.c
+++ b/test/hanoi.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -42,7 +42,7 @@
*
* Date: 05.Nov.90
*
- * $Id: hanoi.c,v 1.41 2020/02/02 23:34:34 tom Exp $
+ * $Id: hanoi.c,v 1.42 2021/05/08 20:44:44 tom Exp $
*/
#include <test.priv.h>
@@ -283,7 +283,7 @@ main(int argc, char **argv)
}
setlocale(LC_ALL, "");
- switch (ch = (argc - optind)) {
+ switch (argc - optind) {
case 2:
if (strcmp(argv[optind + 1], "a")) {
usage();
diff --git a/test/knight.c b/test/knight.c
index bda7da3..08ccf22 100644
--- a/test/knight.c
+++ b/test/knight.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2013,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -34,7 +34,7 @@
* Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995. Mouse support
* added September 20th 1995.
*
- * $Id: knight.c,v 1.47 2020/02/02 23:34:34 tom Exp $
+ * $Id: knight.c,v 1.49 2021/05/08 19:32:15 tom Exp $
*/
#include <test.priv.h>
@@ -595,8 +595,8 @@ play(void)
{
bool keyhelp; /* TRUE if keystroke help is up */
int i, j, count;
- int lastcol = 0; /* last location visited */
- int lastrow = 0;
+ int lastcol; /* last location visited */
+ int lastrow;
int ny = 0, nx = 0;
int review = 0; /* review history */
int test_size;
@@ -621,10 +621,10 @@ play(void)
for (i = 0; i < ylimit; i++) {
for (j = 0; j < xlimit; j++) {
- squares[i][j] = FALSE;
unmarkcell(i, j);
}
}
+ memset(squares, 0, sizeof(squares));
memset(history, 0, sizeof(history));
history[0].y = history[0].x = -1;
history[1].y = history[1].x = -1;
diff --git a/test/list_keys.c b/test/list_keys.c
index cdad60e..e3077de 100644
--- a/test/list_keys.c
+++ b/test/list_keys.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: list_keys.c,v 1.26 2020/02/02 23:34:34 tom Exp $
+ * $Id: list_keys.c,v 1.27 2021/03/27 23:41:21 tom Exp $
*
* Author: Thomas E Dickey
*
@@ -240,7 +240,7 @@ modified_key(const char *name)
map |= (bit1 << 1) | (bit2 >> 1);
_nc_SPRINTF(result, _nc_SLIMIT(sizeof(result))
"%sF%d", modifiers[map][(unsigned) f_opt], 1 + key);
- } else if (sscanf(name, "k%[A-Z]%d%c", buffer, &value, &chr) == 2 &&
+ } else if (sscanf(name, "k%80[A-Z]%d%c", buffer, &value, &chr) == 2 &&
(value > 1 &&
value <= 8) &&
(!strcmp(buffer, "UP") ||
@@ -255,7 +255,7 @@ modified_key(const char *name)
!strcmp(buffer, "PRV"))) {
_nc_SPRINTF(result, _nc_SLIMIT(sizeof(result))
"%sk%s", modifiers[value - 1][(unsigned) f_opt], buffer);
- } else if (sscanf(name, "k%[A-Z]%c", buffer, &chr) == 1 &&
+ } else if (sscanf(name, "k%80[A-Z]%c", buffer, &chr) == 1 &&
(!strcmp(buffer, "UP") ||
!strcmp(buffer, "DN"))) {
_nc_SPRINTF(result, _nc_SLIMIT(sizeof(result))
diff --git a/test/listused.sh b/test/listused.sh
index d3e2629..2151653 100755
--- a/test/listused.sh
+++ b/test/listused.sh
@@ -1,6 +1,6 @@
#!/bin/sh
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2003-2006,2010 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -27,7 +27,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: listused.sh,v 1.9 2020/02/02 23:34:34 tom Exp $
+# $Id: listused.sh,v 1.10 2021/06/17 21:20:30 tom Exp $
# A very simple script to list all entrypoints that are used by either a test
# program, or within the libraries. This relies on the output format of 'nm',
# and assumes that the libraries are configured with TRACE defined, and using
@@ -145,7 +145,7 @@ do
if test -z "$HAVE"
then
for tmp in ../lib/*.a
- do
+ do
case $tmp in
*_*|*+*)
continue
diff --git a/test/make-tar.sh b/test/make-tar.sh
index c088d07..9eaf40b 100755
--- a/test/make-tar.sh
+++ b/test/make-tar.sh
@@ -1,7 +1,7 @@
#!/bin/sh
-# $Id: make-tar.sh,v 1.16 2020/02/02 23:34:34 tom Exp $
+# $Id: make-tar.sh,v 1.18 2021/10/12 21:12:16 tom Exp $
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2010-2015,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -37,14 +37,14 @@ export CDPATH
TARGET=`pwd`
-: ${PKG_NAME:=ncurses-examples}
-: ${ROOTNAME:=ncurses-test}
-: ${DESTDIR:=$TARGET}
-: ${TMPDIR:=/tmp}
+: "${PKG_NAME:=ncurses-examples}"
+: "${ROOTNAME:=ncurses-test}"
+: "${DESTDIR:=$TARGET}"
+: "${TMPDIR:=/tmp}"
grep_assign() {
- grep_assign=`egrep "^$2\>" "$1" | sed -e "s/^$2[ ]*=[ ]*//" -e 's/"//g'`
- eval $2=\"$grep_assign\"
+ grep_assign=`grep -E "^$2\>" "$1" | sed -e "s/^$2[ ]*=[ ]*//" -e 's/"//g'`
+ eval "$2"=\""$grep_assign"\"
}
grep_patchdate() {
@@ -59,25 +59,28 @@ edit_specfile() {
sed \
-e "s/\\<MAJOR\\>/$NCURSES_MAJOR/g" \
-e "s/\\<MINOR\\>/$NCURSES_MINOR/g" \
- -e "s/\\<YYYYMMDD\\>/$NCURSES_PATCH/g" $1 >$1.new
- chmod u+w $1
- mv $1.new $1
+ -e "s/\\<YYYYMMDD\\>/$NCURSES_PATCH/g" "$1" >"$1.new"
+ chmod u+w "$1"
+ mv "$1.new" "$1"
}
make_changelog() {
- test -f $1 && chmod u+w $1
- cat >$1 <<EOF
-`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_MAJOR.$NCURSES_MINOR+$NCURSES_PATCH) unstable; urgency=low
+ [ -f "$1" ] && chmod u+w "$1"
+ cat >"$1" <<EOF
+`echo $PKG_NAME|tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` ($NCURSES_MAJOR.$NCURSES_MINOR+$NCURSES_PATCH) unstable; urgency=low
* snapshot of ncurses subpackage for $PKG_NAME.
- -- `head -n 1 $HOME/.signature` `date -R`
+ -- `head -n 1 "$HOME"/.signature` `date -R`
EOF
}
# This can be run from either the subdirectory, or from the top-level
# source directory. We will put the tar file in the original directory.
-test -d ./test && cd ./test
+if [ -d ./test ]
+then
+ cd ./test || exit
+fi
SOURCE=`cd ..;pwd`
BUILD=$TMPDIR/make-tar$$
@@ -92,36 +95,36 @@ fi
umask 022
mkdir $BUILD/$ROOTNAME
-cp -p -r * $BUILD/$ROOTNAME/ || exit
+cp -p -r ./* $BUILD/$ROOTNAME/ || exit
# Add the config.* utility scripts from the top-level directory.
for i in . ..
do
- for j in config.guess config.sub install-sh tar-copy.sh
+ for j in COPYING config.guess config.sub install-sh tar-copy.sh
do
- test -f $i/$j && cp -p $i/$j $BUILD/$ROOTNAME/
+ [ -f $i/$j ] && cp -p $i/$j $BUILD/$ROOTNAME/
done
done
# Make rpm and dpkg scripts for test-builds
grep_patchdate
-for spec in $BUILD/$ROOTNAME/package/*.spec
+for spec in "$BUILD/$ROOTNAME"/package/*.spec
do
- edit_specfile $spec
+ edit_specfile "$spec"
done
-for spec in $BUILD/$ROOTNAME/package/debian*
+for spec in "$BUILD/$ROOTNAME"/package/debian*
do
- make_changelog $spec/changelog
+ make_changelog "$spec"/changelog
done
-cp -p $SOURCE/NEWS $BUILD/$ROOTNAME
+cp -p "$SOURCE/NEWS" "$BUILD/$ROOTNAME"
# cleanup empty directories (an artifact of ncurses source archives)
-touch $BUILD/$ROOTNAME/MANIFEST
-( cd $BUILD/$ROOTNAME && find . -type f -print |$SOURCE/misc/csort >MANIFEST )
+touch $BUILD/$ROOTNAME/MANIFEST
+( cd $BUILD/$ROOTNAME && find . -type f -print | "$SOURCE/misc/csort" >MANIFEST )
-cd $BUILD || exit
+cd $BUILD || exit
# Remove build-artifacts.
find . -name RCS -exec rm -rf {} \;
@@ -138,8 +141,8 @@ find . -name "*.gz" -exec rm -rf {} \;
# Make the files writable...
chmod -R u+w .
-tar cf - $ROOTNAME | gzip >$DESTDIR/$ROOTNAME.tar.gz
-cd $DESTDIR
+tar cf - $ROOTNAME | gzip >"$DESTDIR/$ROOTNAME.tar.gz"
+cd "$DESTDIR" || exit
pwd
ls -l $ROOTNAME.tar.gz
diff --git a/test/mk-test.awk b/test/mk-test.awk
index ac4203a..cf3066f 100644
--- a/test/mk-test.awk
+++ b/test/mk-test.awk
@@ -1,6 +1,6 @@
-# $Id: mk-test.awk,v 1.23 2020/02/02 23:34:34 tom Exp $
+# $Id: mk-test.awk,v 1.25 2021/04/24 23:10:40 tom Exp $
##############################################################################
-# Copyright 2019,2020 Thomas E. Dickey #
+# Copyright 2019-2020,2021 Thomas E. Dickey #
# Copyright 2006-2017,2018 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -77,11 +77,11 @@ END {
print " $(srcdir)/*.x* \\"
print " $(srcdir)/*.dat"
print ""
- print "all: $(TESTS)"
+ print "all:: $(TESTS)"
print ""
print "sources:"
print ""
- print "check:"
+ print "check::"
print " @ echo The test-programs are interactive"
print "tags:"
print " $(CTAGS) *.[ch]"
diff --git a/test/modules b/test/modules
index 4d60337..de3d140 100644
--- a/test/modules
+++ b/test/modules
@@ -1,6 +1,6 @@
-# $Id: modules,v 1.71 2020/02/02 23:34:34 tom Exp $
+# $Id: modules,v 1.74 2021/02/13 16:33:43 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2016,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -33,10 +33,11 @@
# Test-Program modules
@ base
+back_ground progs $(srcdir) $(HEADER_DEPS)
background progs $(srcdir) $(HEADER_DEPS)
blue progs $(srcdir) $(HEADER_DEPS)
bs progs $(srcdir) $(HEADER_DEPS)
-cardfile progs $(srcdir) $(HEADER_DEPS) ../include/panel.h ../include/form.h
+cardfile progs $(srcdir) $(HEADER_DEPS) $(incdir)/panel.h $(incdir)/form.h
chgat progs $(srcdir) $(HEADER_DEPS) $(srcdir)/popup_msg.h
clip_printw progs $(srcdir) $(HEADER_DEPS) $(srcdir)/popup_msg.h
color_content progs $(srcdir) $(HEADER_DEPS)
@@ -45,9 +46,9 @@ demo_altkeys progs $(srcdir) $(HEADER_DEPS)
demo_defkey progs $(srcdir) $(HEADER_DEPS)
demo_forms progs $(srcdir) $(HEADER_DEPS) $(srcdir)/edit_field.h
demo_keyok progs $(srcdir) $(HEADER_DEPS)
-demo_menus progs $(srcdir) $(HEADER_DEPS) ../include/menu.h
+demo_menus progs $(srcdir) $(HEADER_DEPS) $(incdir)/menu.h
demo_new_pair progs $(srcdir) $(HEADER_DEPS) $(srcdir)/popup_msg.h
-demo_panels progs $(srcdir) $(HEADER_DEPS) ../include/panel.h
+demo_panels progs $(srcdir) $(HEADER_DEPS) $(incdir)/panel.h
demo_tabs progs $(srcdir) $(HEADER_DEPS)
demo_termcap progs $(srcdir) $(HEADER_DEPS)
demo_terminfo progs $(srcdir) $(HEADER_DEPS)
@@ -58,6 +59,7 @@ dots_mvcur progs $(srcdir) $(HEADER_DEPS)
dots_termcap progs $(srcdir) $(HEADER_DEPS)
dots_xcurses progs $(srcdir) $(HEADER_DEPS)
dump_window progs $(srcdir) $(HEADER_DEPS) $(srcdir)/dump_window.h
+dup_field progs $(srcdir) $(HEADER_DEPS) $(srcdir)/edit_field.h
echochar progs $(srcdir) $(HEADER_DEPS)
edit_field progs $(srcdir) $(HEADER_DEPS) $(srcdir)/edit_field.h $(srcdir)/popup_msg.h
extended_color progs $(srcdir) $(HEADER_DEPS)
@@ -79,8 +81,9 @@ keynames progs $(srcdir) $(HEADER_DEPS)
knight progs $(srcdir) $(HEADER_DEPS)
list_keys progs $(srcdir) $(HEADER_DEPS)
lrtest progs $(srcdir) $(HEADER_DEPS)
+move_field progs $(srcdir) $(HEADER_DEPS) $(srcdir)/edit_field.h
movewindow progs $(srcdir) $(HEADER_DEPS) $(srcdir)/popup_msg.h
-ncurses progs $(srcdir) $(HEADER_DEPS) ../include/panel.h ../include/menu.h ../include/form.h
+ncurses progs $(srcdir) $(HEADER_DEPS) $(incdir)/panel.h $(incdir)/menu.h $(incdir)/form.h
newdemo progs $(srcdir) $(HEADER_DEPS)
padview progs $(srcdir) $(HEADER_DEPS) $(srcdir)/widechars.h $(srcdir)/popup_msg.h
pair_content progs $(srcdir) $(HEADER_DEPS)
@@ -105,6 +108,7 @@ test_opaque progs $(srcdir) $(HEADER_DEPS)
test_setupterm progs $(srcdir) $(HEADER_DEPS)
test_sgr progs $(srcdir) $(HEADER_DEPS)
test_termattrs progs $(srcdir) $(HEADER_DEPS)
+test_tparm progs $(srcdir) $(HEADER_DEPS)
test_vid_puts progs $(srcdir) $(HEADER_DEPS)
test_vidputs progs $(srcdir) $(HEADER_DEPS)
testaddch progs $(srcdir) $(HEADER_DEPS)
diff --git a/test/move_field.c b/test/move_field.c
new file mode 100644
index 0000000..b5ec943
--- /dev/null
+++ b/test/move_field.c
@@ -0,0 +1,522 @@
+/****************************************************************************
+ * Copyright 2020,2021 Thomas E. Dickey *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+/*
+ * $Id: move_field.c,v 1.9 2021/06/12 21:30:34 tom Exp $
+ *
+ * Demonstrate move_field().
+ */
+
+#include <test.priv.h>
+
+#if USE_LIBFORM
+
+#include <edit_field.h>
+#include <popup_msg.h>
+
+#ifdef HAVE_NETBSD_FORM_H
+#define form_field_row(field) (field)->form_row
+#define form_field_col(field) (field)->form_col
+#else /* e.g., SVr4, ncurses */
+#define form_field_row(field) (field)->frow
+#define form_field_col(field) (field)->fcol
+#endif
+
+#define DO_DEMO CTRL('F') /* actual key for toggling demo-mode */
+#define MY_DEMO EDIT_FIELD('f') /* internal request-code */
+
+static char empty[] = "";
+static FIELD *all_fields[100];
+/* *INDENT-OFF* */
+static struct {
+ int code;
+ int result;
+ const char *help;
+} commands[] = {
+ { CTRL('A'), REQ_BEG_FIELD, "go to beginning of field" },
+ { CTRL('D'), REQ_DOWN_FIELD, "move downward to field" },
+ { CTRL('E'), REQ_END_FIELD, "go to end of field" },
+ { CTRL('H'), REQ_DEL_PREV, "delete previous character" },
+ { CTRL('I'), REQ_NEXT_FIELD, "go to next field" },
+ { CTRL('K'), REQ_CLR_EOF, "clear to end of field" },
+ { CTRL('N'), REQ_NEXT_FIELD, "go to next field" },
+ { CTRL('P'), REQ_PREV_FIELD, "go to previous field" },
+ { CTRL('Q'), MY_QUIT, "exit form" },
+ { CTRL('U'), REQ_UP_FIELD, "move upward to field" },
+ { CTRL('W'), REQ_NEXT_WORD, "go to next word" },
+ { CTRL('X'), REQ_CLR_FIELD, "clear field" },
+ { CTRL('['), MY_QUIT, "exit form" },
+ { KEY_F(1), MY_HELP, "show this screen", },
+ { KEY_BACKSPACE, REQ_DEL_PREV, "delete previous character" },
+ { KEY_BTAB, REQ_PREV_FIELD, "go to previous field" },
+ { KEY_DOWN, REQ_DOWN_CHAR, "move down 1 character" },
+ { KEY_END, REQ_LAST_FIELD, "go to last field" },
+ { KEY_HOME, REQ_FIRST_FIELD, "go to first field" },
+ { KEY_LEFT, REQ_LEFT_CHAR, "move left 1 character" },
+ { KEY_NEXT, REQ_NEXT_FIELD, "go to next field" },
+ { KEY_PREVIOUS, REQ_PREV_FIELD, "go to previous field" },
+ { KEY_RIGHT, REQ_RIGHT_CHAR, "move right 1 character" },
+ { KEY_UP, REQ_UP_CHAR, "move up 1 character" },
+ { DO_DEMO, MY_DEMO, "move current field with cursor keys" }
+};
+/* *INDENT-ON* */
+
+static void
+my_help_edit_field(void)
+{
+ int used = 0;
+ unsigned n;
+ char **msgs = typeCalloc(char *, 3 + SIZEOF(commands));
+
+ msgs[used++] = strdup("Defined form edit/traversal keys:");
+ for (n = 0; n < SIZEOF(commands); ++n) {
+ char *msg;
+ const char *name;
+ const char *code = keyname(commands[n].code);
+ size_t need = 5;
+#ifdef NCURSES_VERSION
+ if ((name = form_request_name(commands[n].result)) == 0)
+#endif
+ name = commands[n].help;
+ need = 5 + strlen(code) + strlen(name);
+ msg = typeMalloc(char, need);
+ _nc_SPRINTF(msg, _nc_SLIMIT(need) "%s -- %s", code, name);
+ msgs[used++] = msg;
+ }
+ msgs[used++] =
+ strdup("Arrow keys move within a field as you would expect.");
+ msgs[used] = 0;
+ popup_msg2(stdscr, msgs);
+ for (n = 0; msgs[n] != 0; ++n) {
+ free(msgs[n]);
+ }
+ free(msgs);
+}
+
+static FIELD *
+make_label(const char *label, int frow, int fcol)
+{
+ FIELD *f = new_field(1, (int) strlen(label), frow, fcol, 0, 0);
+
+ if (f) {
+ set_field_buffer(f, 0, label);
+ set_field_opts(f, (int) ((unsigned) field_opts(f) & ~O_ACTIVE));
+ }
+ return (f);
+}
+
+static FIELD *
+make_field(int frow, int fcol, int rows, int cols)
+{
+ FIELD *f = new_field(rows, cols, frow, fcol, 0, 1);
+
+ if (f) {
+ set_field_back(f, A_UNDERLINE);
+ init_edit_field(f, empty);
+ }
+ return (f);
+}
+
+static void
+erase_form(FORM *f)
+{
+ WINDOW *w = form_win(f);
+ WINDOW *s = form_sub(f);
+
+ unpost_form(f);
+ werase(w);
+ wrefresh(w);
+ delwin(s);
+ delwin(w);
+}
+
+static FieldAttrs *
+my_field_attrs(FIELD *f)
+{
+ return (FieldAttrs *) field_userptr(f);
+}
+
+static int
+buffer_length(FIELD *f)
+{
+ return my_field_attrs(f)->row_lengths[0];
+}
+
+static void
+set_buffer_length(FIELD *f, int length)
+{
+ my_field_attrs(f)->row_lengths[0] = length;
+}
+
+static int
+offset_in_field(FORM *form)
+{
+ FIELD *field = current_field(form);
+ int currow, curcol;
+
+ form_getyx(form, currow, curcol);
+ return curcol + currow * (int) field->dcols;
+}
+
+static void
+inactive_field(FIELD *f)
+{
+ set_field_back(f, my_field_attrs(f)->background);
+}
+
+static int
+my_edit_field(FORM *form, int *result)
+{
+ int ch = wgetch(form_win(form));
+ int status;
+ FIELD *before;
+ unsigned n;
+ int before_row;
+ int before_col;
+ int before_off = offset_in_field(form);
+
+ form_getyx(form, before_row, before_col);
+ before = current_field(form);
+ set_field_back(before, A_NORMAL);
+ if (ch <= KEY_MAX) {
+ set_field_back(before, A_REVERSE);
+ } else if (ch <= MAX_FORM_COMMAND) {
+ inactive_field(before);
+ }
+
+ *result = ch;
+ for (n = 0; n < SIZEOF(commands); ++n) {
+ if (commands[n].code == ch) {
+ *result = commands[n].result;
+ break;
+ }
+ }
+
+ status = form_driver(form, *result);
+
+ if (status == E_OK) {
+ bool modified = TRUE;
+ int length = buffer_length(before);
+
+ if (length < before_off)
+ length = before_off;
+ switch (*result) {
+ case REQ_CLR_EOF:
+ length = before_off;
+ break;
+ case REQ_CLR_EOL:
+ if ((int) (before_row + 1) == (int) (before->rows))
+ length = before_off;
+ break;
+ case REQ_CLR_FIELD:
+ length = 0;
+ break;
+ case REQ_DEL_CHAR:
+ if (length > before_off)
+ --length;
+ break;
+ case REQ_DEL_PREV:
+ if (length > 0) {
+ if (before_col > 0) {
+ --length;
+ } else if (before_row > 0) {
+ length -= (int) before->cols + before_col;
+ }
+ }
+ break;
+ case REQ_NEW_LINE:
+ length += (int) before->cols;
+ break;
+
+ default:
+ modified = (ch < MIN_FORM_COMMAND
+ && isprint(ch));
+ break;
+ }
+
+ /*
+ * If we do not force a re-validation, then field_buffer 0 will
+ * be lagging by one character.
+ */
+ if (modified && form_driver(form, REQ_VALIDATION) == E_OK && *result
+ < MIN_FORM_COMMAND)
+ ++length;
+
+ set_buffer_length(before, length);
+ }
+
+ if (current_field(form) != before)
+ inactive_field(before);
+ return status;
+}
+
+static FIELD **
+copy_fields(FIELD **source, size_t length)
+{
+ FIELD **target = calloc(length + 1, sizeof(FIELD *));
+ memcpy(target, source, length * sizeof(FIELD *));
+ return target;
+}
+
+/* display a status message to show what's happening */
+static void
+show_status(FORM *form, FIELD *field)
+{
+ WINDOW *sub = form_sub(form);
+ int currow, curcol;
+
+ getyx(stdscr, currow, curcol);
+ mvprintw(LINES - 1, 0,
+ "Field at [%d,%d]. Press %s to quit moving.",
+ getbegy(sub) + form_field_row(field),
+ getbegx(sub) + form_field_col(field),
+ keyname(DO_DEMO));
+ clrtobot();
+ move(currow, curcol);
+ refresh();
+}
+
+/*
+ * Move the current label+field in response to cursor-keys (or h,j,k,l) until
+ * a control/F is read.
+ */
+static void
+do_demo(FORM *form)
+{
+ int count = field_count(form);
+ FIELD *my_field = current_field(form);
+
+ if (count > 0 && my_field != NULL) {
+ size_t needed = (size_t) count;
+ FIELD **old_fields = copy_fields(form_fields(form), needed);
+ FIELD **new_fields = copy_fields(form_fields(form), needed);
+
+ if (old_fields != NULL && new_fields != NULL) {
+ bool found = FALSE;
+ int ch;
+
+ /* TODO: move the label too, in parallel with the editing field */
+
+ /* remove the current field from the newer list */
+ for (ch = 0; ch <= count; ++ch) {
+ if (found) {
+ new_fields[ch - 1] = new_fields[ch];
+ } else if (new_fields[ch] == my_field) {
+ found = TRUE;
+ }
+ }
+
+ if (found) {
+ int currow, curcol;
+
+ getyx(stdscr, currow, curcol);
+
+ show_status(form, my_field);
+ while ((ch = wgetch(form_win(form))) != DO_DEMO) {
+ int field_y = form_field_row(my_field);
+ int field_x = form_field_col(my_field);
+
+ switch (ch) {
+ case 'h':
+ case KEY_LEFT:
+ if (field_x > 0)
+ field_x--;
+ break;
+ case 'j':
+ case KEY_DOWN:
+ field_y++;
+ break;
+ case 'k':
+ case KEY_UP:
+ if (field_y > 0)
+ field_y--;
+ break;
+ case 'l':
+ case KEY_RIGHT:
+ field_x++;
+ break;
+ case CTRL('Q'):
+ case CTRL('['):
+ ch = DO_DEMO;
+ /* FALLTHRU */
+ case DO_DEMO:
+ break;
+ default:
+ continue;
+ }
+
+ if (ch == DO_DEMO)
+ break;
+
+ /* alter connected fields temporarily to move the field */
+ unpost_form(form);
+ set_form_fields(form, new_fields);
+ post_form(form);
+
+ /* TODO: update screen position on success */
+ move_field(my_field, field_y, field_x);
+
+ /* restore the form's list of fields */
+ unpost_form(form);
+ set_form_fields(form, old_fields);
+ post_form(form);
+
+ show_status(form, my_field);
+ }
+
+ /* cleanup */
+ move(LINES - 1, 0);
+ clrtobot();
+ move(currow, curcol);
+ refresh();
+ }
+ }
+ free(old_fields);
+ free(new_fields);
+ }
+}
+
+static int
+my_form_driver(FORM *form, int c)
+{
+ switch (c) {
+ case MY_QUIT:
+ if (form_driver(form, REQ_VALIDATION) == E_OK)
+ return (TRUE);
+ break;
+ case MY_HELP:
+ my_help_edit_field();
+ break;
+ case MY_DEMO:
+ do_demo(form);
+ break;
+ default:
+ beep();
+ break;
+ }
+ return (FALSE);
+}
+
+static void
+demo_forms(void)
+{
+ FORM *form;
+ int c;
+ unsigned n = 0;
+ const char *fname;
+
+ /* describe the form */
+ all_fields[n++] = make_label("Sample Form", 0, 15);
+
+ fname = "Last Name";
+ all_fields[n++] = make_label(fname, 2, 0);
+ all_fields[n++] = make_field(3, 0, 1, 18);
+ set_field_type(all_fields[n - 1], TYPE_ALPHA, 1);
+
+ fname = "First Name";
+ all_fields[n++] = make_label(fname, 2, 20);
+ all_fields[n++] = make_field(3, 20, 1, 12);
+ set_field_type(all_fields[n - 1], TYPE_ALPHA, 1);
+
+ fname = "Middle Name";
+ all_fields[n++] = make_label(fname, 2, 34);
+ all_fields[n++] = make_field(3, 34, 1, 12);
+ set_field_type(all_fields[n - 1], TYPE_ALPHA, 1);
+
+ fname = "Comments";
+ all_fields[n++] = make_label(fname, 5, 0);
+ all_fields[n++] = make_field(6, 0, 4, 46);
+ init_edit_field(all_fields[n - 1], empty);
+
+ all_fields[n] = (FIELD *) 0;
+
+ if ((form = new_form(all_fields)) != 0) {
+ int finished = 0;
+
+ post_form(form);
+
+ while (!finished) {
+ switch (my_edit_field(form, &c)) {
+ case E_OK:
+ break;
+ case E_UNKNOWN_COMMAND:
+ finished = my_form_driver(form, c);
+ break;
+ default:
+ beep();
+ break;
+ }
+ }
+
+ erase_form(form);
+
+ free_form(form);
+ }
+ for (c = 0; all_fields[c] != 0; c++) {
+ free_edit_field(all_fields[c]);
+ free_field(all_fields[c]);
+ }
+ noraw();
+ nl();
+}
+
+int
+main(void)
+{
+ setlocale(LC_ALL, "");
+
+ initscr();
+ cbreak();
+ noecho();
+ raw();
+ nonl(); /* lets us read ^M's */
+ intrflush(stdscr, FALSE);
+ keypad(stdscr, TRUE);
+
+ if (has_colors()) {
+ start_color();
+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
+ init_pair(2, COLOR_GREEN, COLOR_BLACK);
+ init_pair(3, COLOR_CYAN, COLOR_BLACK);
+ bkgd((chtype) COLOR_PAIR(1));
+ refresh();
+ }
+
+ demo_forms();
+
+ endwin();
+ ExitProgram(EXIT_SUCCESS);
+}
+
+#else
+int
+main(void)
+{
+ printf("This program requires the curses form library\n");
+ ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/ncurses.c b/test/ncurses.c
index e3ba7b5..c387b0a 100644
--- a/test/ncurses.c
+++ b/test/ncurses.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -41,7 +41,7 @@ AUTHOR
Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993
Thomas E. Dickey (beginning revision 1.27 in 1996).
-$Id: ncurses.c,v 1.522 2020/02/02 23:34:34 tom Exp $
+$Id: ncurses.c,v 1.527 2021/09/04 10:31:03 tom Exp $
***************************************************************************/
@@ -166,7 +166,7 @@ static RGB_DATA *all_colors;
#endif
static void main_menu(bool);
-static void failed(const char *s) GCC_NORETURN;
+static GCC_NORETURN void failed(const char *s);
static void
failed(const char *s)
@@ -490,7 +490,7 @@ ShellOut(bool message)
addstr("Shelling out...");
def_prog_mode();
endwin();
-#ifdef _WIN32
+#ifdef _NC_WINDOWS
system("cmd.exe");
#else
IGNORE_RC(system("sh"));
@@ -855,7 +855,7 @@ wgetch_test(unsigned level, WINDOW *win, int delay)
setup_getch(win, flags);
wgetch_help(win, flags);
} else if (c == 'g') {
- waddstr(win, "getstr test: ");
+ waddstr(win, "wgetnstr test: ");
echo();
c = wgetnstr(win, buf, sizeof(buf) - 1);
noecho();
@@ -1113,7 +1113,7 @@ wget_wch_test(unsigned level, WINDOW *win, int delay)
setup_getch(win, flags);
wgetch_help(win, flags);
} else if (c == 'g') {
- waddstr(win, "getstr test: ");
+ waddstr(win, "wgetn_str test: ");
echo();
code = wgetn_wstr(win, wint_buf, BUFSIZ - 1);
noecho();
@@ -5531,7 +5531,7 @@ panner_legend(int line)
"Number repeats. Toggle legend:? filler:a timer:t scrollmark:s."
};
int n = ((int) SIZEOF(legend) - (LINES - line));
- if (n >= 0) {
+ if (n >= 0 && n < (int) SIZEOF(legend)) {
if (move(line, 0) != ERR) {
if (show_panner_legend)
printw("%s", legend[n]);
@@ -6232,7 +6232,7 @@ tracetrace(unsigned tlevel)
}
_nc_SPRINTF(buf, _nc_SLIMIT(need) "0x%02x = {", tlevel);
if (tlevel == 0) {
- _nc_STRCAT(buf, t_tbl[0].name, need);
+ _nc_STRCAT(buf, t_tbl[0].name ? t_tbl[0].name : "", need);
_nc_STRCAT(buf, ", ", need);
} else {
for (n = 1; t_tbl[n].name != 0; n++)
@@ -7236,11 +7236,11 @@ overlap_test(bool recur GCC_UNUSED)
overlap_test_0(win2, win1);
break;
- case 'c': /* fill window A so it's visible */
+ case 'c': /* fill window A so it is visible */
overlap_test_1(flavor[otBASE_fill], 0, win1, 'A');
break;
- case 'd': /* fill window B so it's visible */
+ case 'd': /* fill window B so it is visible */
overlap_test_1(flavor[otBASE_fill], 1, win2, 'B');
break;
@@ -7436,11 +7436,11 @@ x_overlap_test(bool recur GCC_UNUSED)
overlap_test_0(win2, win1);
break;
- case 'c': /* fill window A so it's visible */
+ case 'c': /* fill window A so it is visible */
x_overlap_test_1(flavor[otBASE_fill], 0, win1, WIDE_A);
break;
- case 'd': /* fill window B so it's visible */
+ case 'd': /* fill window B so it is visible */
x_overlap_test_1(flavor[otBASE_fill], 1, win2, WIDE_B);
break;
@@ -7618,6 +7618,10 @@ settings_test(bool recur GCC_UNUSED)
#if HAVE_COLOR_CONTENT
show_boolean_setting("can_change_color", can_change_color());
#endif
+ show_setting_name("LINES");
+ printw("%d\n", LINES);
+ show_setting_name("COLS");
+ printw("%d\n", COLS);
Pause();
erase();
stop_curses();
@@ -7659,7 +7663,7 @@ usage(void)
#if USE_LIBPANEL
," -s msec specify nominal time for panel-demo (default: 1, to hold)"
#endif
-#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714) && !defined(_WIN32)
+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714) && !defined(_NC_WINDOWS)
," -T call use_tioctl(TRUE) to allow SIGWINCH to override environment"
#endif
#ifdef TRACE
@@ -7786,7 +7790,6 @@ main_menu(bool top)
int (*doit) (bool);
char command;
unsigned n;
-
do {
printf("This is the ncurses main menu (uppercase for wide-characters)\n");
for (n = 0; n < SIZEOF(cmds); ++n) {
@@ -7852,7 +7855,7 @@ main_menu(bool top)
if (doit != NULL && doit(FALSE) == OK) {
/*
- * This may be overkill; it's intended to reset everything back
+ * This may be overkill; it is intended to reset everything back
* to the initial terminal modes so that tests don't get in
* each other's way.
*/
@@ -7962,7 +7965,7 @@ main(int argc, char *argv[])
nap_msec = (int) atol(optarg);
break;
#endif
-#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714) && !defined(_WIN32)
+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714) && !defined(_NC_WINDOWS)
case 'T':
use_tioctl(TRUE);
break;
diff --git a/test/package/debian-mingw/compat b/test/package/debian-mingw/compat
index ec63514..f599e28 100644
--- a/test/package/debian-mingw/compat
+++ b/test/package/debian-mingw/compat
@@ -1 +1 @@
-9
+10
diff --git a/test/package/debian-mingw/copyright b/test/package/debian-mingw/copyright
index 9b2b7aa..a805a1f 100644
--- a/test/package/debian-mingw/copyright
+++ b/test/package/debian-mingw/copyright
@@ -4,11 +4,12 @@ Current ncurses maintainer: Thomas Dickey <dickey@invisible-island.net>
-------------------------------------------------------------------------------
Files: *
-Copyright: 1998-2019,2020 Free Software Foundation, Inc.
+Copyright: 2017-2020,2021 Thomas E. Dickey
+Copyright: 1998-2016,2017 Free Software Foundation, Inc.
Licence: X11
Files: aclocal.m4 package
-Copyright: 2003-2019,2020 by Thomas E. Dickey
+Copyright: 2003-2020,2021 by Thomas E. Dickey
Licence: X11
Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/test/package/debian-mingw64/compat b/test/package/debian-mingw64/compat
index ec63514..f599e28 100644
--- a/test/package/debian-mingw64/compat
+++ b/test/package/debian-mingw64/compat
@@ -1 +1 @@
-9
+10
diff --git a/test/package/debian-mingw64/copyright b/test/package/debian-mingw64/copyright
index 9b2b7aa..a805a1f 100644
--- a/test/package/debian-mingw64/copyright
+++ b/test/package/debian-mingw64/copyright
@@ -4,11 +4,12 @@ Current ncurses maintainer: Thomas Dickey <dickey@invisible-island.net>
-------------------------------------------------------------------------------
Files: *
-Copyright: 1998-2019,2020 Free Software Foundation, Inc.
+Copyright: 2017-2020,2021 Thomas E. Dickey
+Copyright: 1998-2016,2017 Free Software Foundation, Inc.
Licence: X11
Files: aclocal.m4 package
-Copyright: 2003-2019,2020 by Thomas E. Dickey
+Copyright: 2003-2020,2021 by Thomas E. Dickey
Licence: X11
Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/test/package/debian/compat b/test/package/debian/compat
index ec63514..f599e28 100644
--- a/test/package/debian/compat
+++ b/test/package/debian/compat
@@ -1 +1 @@
-9
+10
diff --git a/test/package/debian/copyright b/test/package/debian/copyright
index 9b2b7aa..c6873e2 100644
--- a/test/package/debian/copyright
+++ b/test/package/debian/copyright
@@ -4,7 +4,8 @@ Current ncurses maintainer: Thomas Dickey <dickey@invisible-island.net>
-------------------------------------------------------------------------------
Files: *
-Copyright: 1998-2019,2020 Free Software Foundation, Inc.
+Copyright: 2017-2020,2021 Thomas E. Dickey
+Copyright: 1998-2016,2017 Free Software Foundation, Inc.
Licence: X11
Files: aclocal.m4 package
diff --git a/test/package/mingw-ncurses-examples.spec b/test/package/mingw-ncurses-examples.spec
index 5758c29..cad43d1 100644
--- a/test/package/mingw-ncurses-examples.spec
+++ b/test/package/mingw-ncurses-examples.spec
@@ -4,7 +4,7 @@ Summary: ncurses-examples - example/test programs from ncurses
%global AppProgram ncurses-examples
%global AppVersion MAJOR.MINOR
%global AppRelease YYYYMMDD
-# $Id: mingw-ncurses-examples.spec,v 1.9 2019/11/23 21:13:52 tom Exp $
+# $Id: mingw-ncurses-examples.spec,v 1.10 2021/06/17 21:11:12 tom Exp $
Name: mingw32-ncurses6-examples
Version: %{AppVersion}
Release: %{AppRelease}
@@ -50,11 +50,11 @@ This package is used for testing ABI 6 with cross-compiles to MinGW.
%prep
# override location of bindir, e.g., to avoid conflict with pdcurses
-%global mingw32_bindir %{mingw32_exec_prefix}/bin/%{AppProgram}
-%global mingw64_bindir %{mingw64_exec_prefix}/bin/%{AppProgram}
+%global mingw32_bindir %{mingw32_exec_prefix}/bin/%{AppProgram}
+%global mingw64_bindir %{mingw64_exec_prefix}/bin/%{AppProgram}
-%global mingw32_datadir %{mingw32_datadir}/%{AppProgram}
-%global mingw64_datadir %{mingw64_datadir}/%{AppProgram}
+%global mingw32_datadir %{mingw32_datadir}/%{AppProgram}
+%global mingw64_datadir %{mingw64_datadir}/%{AppProgram}
%define CFG_OPTS \\\
--enable-echo \\\
diff --git a/test/padview.c b/test/padview.c
index 6917e0e..fb1d9fc 100644
--- a/test/padview.c
+++ b/test/padview.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -29,7 +29,7 @@
/*
* clone of view.c, using pads
*
- * $Id: padview.c,v 1.16 2020/02/02 23:34:34 tom Exp $
+ * $Id: padview.c,v 1.18 2021/06/12 23:16:31 tom Exp $
*/
#include <test.priv.h>
@@ -41,7 +41,7 @@
#if HAVE_NEWPAD
-static void finish(int sig) GCC_NORETURN;
+static GCC_NORETURN void finish(int sig);
#define my_pair 1
@@ -55,7 +55,7 @@ static int num_lines;
static bool n_option = FALSE;
#endif
-static void usage(void) GCC_NORETURN;
+static GCC_NORETURN void usage(void);
static void
failed(const char *msg)
@@ -144,9 +144,12 @@ read_file(const char *filename)
}
len = fread(my_blob, sizeof(char), (size_t) sb.st_size, fp);
- my_blob[sb.st_size] = '\0';
fclose(fp);
+ if (len > (size_t) sb.st_size)
+ len = (size_t) sb.st_size;
+ my_blob[len] = '\0';
+
for (pass = 0; pass < 2; ++pass) {
char *base = my_blob;
k = 0;
@@ -160,12 +163,19 @@ read_file(const char *filename)
++k;
}
}
+ if (base != (my_blob + j)) {
+ if (pass)
+ my_vec[k] = base;
+ ++k;
+ }
num_lines = k;
- if (base != (my_blob + j))
- ++num_lines;
- if (!pass &&
- ((my_vec = typeCalloc(char *, (size_t) k + 2)) == 0)) {
- failed("cannot allocate line-vector #1");
+ if (pass == 0) {
+ if (((my_vec = typeCalloc(char *, (size_t) k + 2)) == 0)) {
+ failed("cannot allocate line-vector #1");
+ }
+ } else {
+ if (my_vec[0] == NULL)
+ my_vec[0] = my_blob;
}
}
diff --git a/test/picsmap.c b/test/picsmap.c
index 432fbf7..f95747f 100644
--- a/test/picsmap.c
+++ b/test/picsmap.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: picsmap.c,v 1.132 2020/02/02 23:34:34 tom Exp $
+ * $Id: picsmap.c,v 1.139 2021/05/08 15:56:05 tom Exp $
*
* Author: Thomas E. Dickey
*
@@ -109,7 +109,7 @@ typedef struct {
#define debugmsg if (debugging) logmsg
#define debugmsg2 if (debugging) logmsg2
-static void cleanup(int) GCC_NORETURN;
+static GCC_NORETURN void cleanup(int);
static void giveup(const char *fmt, ...) GCC_PRINTFLIKE(1, 2);
static void logmsg(const char *fmt, ...) GCC_PRINTFLIKE(1, 2);
static void logmsg2(const char *fmt, ...) GCC_PRINTFLIKE(1, 2);
@@ -604,7 +604,6 @@ read_palette(const char *filename)
continue;
}
}
- s += strlen(s);
if (tries & 2) {
int len = (int) strlen(filename);
@@ -955,6 +954,20 @@ parse_rgb(char **data)
return result;
}
+#define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
+
+static int
+CaselessCmp(const char *a, const char *b)
+{ /* strcasecmp isn't portable */
+ while (*a && *b) {
+ int cmp = LOWERCASE(*a) - LOWERCASE(*b);
+ if (cmp != 0)
+ break;
+ a++, b++;
+ }
+ return LOWERCASE(*a) - LOWERCASE(*b);
+}
+
static RGB_NAME *
lookup_rgb(const char *name)
{
@@ -962,7 +975,7 @@ lookup_rgb(const char *name)
if (rgb_table != 0) {
int n;
for (n = 0; rgb_table[n].name != 0; ++n) {
- if (!strcasecmp(name, rgb_table[n].name)) {
+ if (!CaselessCmp(name, rgb_table[n].name)) {
result = &rgb_table[n];
break;
}
@@ -976,7 +989,7 @@ parse_xbm(char **data)
{
int n;
int state = 0;
- char buf[BUFSIZ];
+ char buf[2048];
int num;
char ch;
char *s;
@@ -1001,7 +1014,7 @@ parse_xbm(char **data)
case 0:
case 1:
case 2:
- if (sscanf(s, "#define %s %d%c", buf, &num, &ch) >= 2) {
+ if (sscanf(s, "#define %1024s %d%c", buf, &num, &ch) >= 2) {
if ((t = strstr(buf, "_width")) != 0) {
state |= 1;
result->wide = (short) bytes_of(num);
@@ -1022,7 +1035,7 @@ parse_xbm(char **data)
}
break;
case 3:
- if (sscanf(s, "static char %[^_ ]_bits[]%c", buf, &ch) >= 1) {
+ if (sscanf(s, "static char %1024[^_ ]_bits[]%c", buf, &ch) >= 1) {
if (strcmp(result->name, buf)) {
goto finish;
}
@@ -1598,7 +1611,7 @@ report_colors(PICS_HEAD * pics)
for (k = 0; k < wide; ++k) {
int n = j + (k * high);
size_t want = (sizeof(buffer) - (size_t) (s - buffer));
- if (want < 100)
+ if (want < 100 || want >= sizeof(buffer))
break;
if (n >= pics->colors)
break;
diff --git a/test/picsmap.h b/test/picsmap.h
index bdeb3c3..fc790a9 100644
--- a/test/picsmap.h
+++ b/test/picsmap.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/****************************************************************************
* Author: Thomas E. Dickey *
****************************************************************************/
-/* $Id: picsmap.h,v 1.4 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: picsmap.h,v 1.5 2021/04/24 23:25:17 tom Exp $ */
#ifndef PICSMAP_H_INCL
#define PICSMAP_H_INCL 1
@@ -68,8 +68,4 @@ typedef struct {
short blue;
} RGB_DATA;
-static void init_display(const char *, int);
-
-static void show_picture(PICS_HEAD * pics);
-
#endif /* PICSMAP_H_INCL */
diff --git a/test/programs b/test/programs
index beb0dfa..6946faa 100644
--- a/test/programs
+++ b/test/programs
@@ -1,6 +1,6 @@
-# $Id: programs,v 1.45 2020/02/02 23:34:34 tom Exp $
+# $Id: programs,v 1.49 2021/03/13 20:37:44 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 2006-2016,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -31,6 +31,7 @@
# Author: Thomas E. Dickey
#
# programs used for ncurses tests
+back_ground $(LDFLAGS_CURSES) $(LOCAL_LIBS) back_ground dump_window
background $(LDFLAGS_CURSES) $(LOCAL_LIBS) background dump_window
blue $(LDFLAGS_CURSES) $(LOCAL_LIBS) blue
bs $(LDFLAGS_CURSES) $(LOCAL_LIBS) bs
@@ -55,6 +56,7 @@ dots_curses $(LDFLAGS_CURSES) $(LOCAL_LIBS) dots_curses
dots_mvcur $(LDFLAGS_CURSES) $(LOCAL_LIBS) dots_mvcur
dots_termcap $(LDFLAGS_TINFO) $(LOCAL_LIBS) dots_termcap
dots_xcurses $(LDFLAGS_CURSES) $(LOCAL_LIBS) dots_xcurses
+dup_field $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) dup_field edit_field popup_msg
echochar $(LDFLAGS_CURSES) $(LOCAL_LIBS) echochar
extended_color $(LDFLAGS_CURSES) $(LOCAL_LIBS) extended_color
filter $(LDFLAGS_CURSES) $(LOCAL_LIBS) filter
@@ -63,7 +65,7 @@ firstlast $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) firstlast
foldkeys $(LDFLAGS_CURSES) $(LOCAL_LIBS) foldkeys
form_driver_w $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) form_driver_w popup_msg
gdc $(LDFLAGS_CURSES) $(LOCAL_LIBS) gdc
-hanoi $(LDFLAGS_CURSES) $(LOCAL_LIBS) hanoi
+hanoi $(LDFLAGS_CURSES_M) $(LOCAL_LIBS) hanoi
hashtest $(LDFLAGS_CURSES) $(LOCAL_LIBS) hashtest
inch_wide $(LDFLAGS_CURSES) $(LOCAL_LIBS) inch_wide popup_msg
inchs $(LDFLAGS_CURSES) $(LOCAL_LIBS) inchs popup_msg
@@ -75,6 +77,7 @@ keynames $(LDFLAGS_CURSES) $(LOCAL_LIBS) keynames
knight $(LDFLAGS_CURSES) $(LOCAL_LIBS) knight
list_keys $(LDFLAGS_TINFO) $(LOCAL_LIBS) list_keys
lrtest $(LDFLAGS_CURSES) $(LOCAL_LIBS) lrtest
+move_field $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) move_field edit_field popup_msg
movewindow $(LDFLAGS_CURSES) $(LOCAL_LIBS) movewindow popup_msg
ncurses $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) ncurses
newdemo $(LDFLAGS_CURSES) $(LOCAL_LIBS) newdemo
@@ -86,7 +89,7 @@ rain $(LDFLAGS_THREADS) $(LOCAL_LIBS) rain popup_msg
redraw $(LDFLAGS_CURSES) $(LOCAL_LIBS) redraw popup_msg
savescreen $(LDFLAGS_CURSES) $(LOCAL_LIBS) savescreen popup_msg
sp_tinfo $(LDFLAGS_TINFO) $(LOCAL_LIBS) sp_tinfo
-tclock $(LDFLAGS_CURSES) $(LOCAL_LIBS) tclock
+tclock $(LDFLAGS_CURSES_M) $(LOCAL_LIBS) tclock
test_add_wchstr $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_add_wchstr
test_addchstr $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_addchstr
test_addstr $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_addstr
@@ -100,6 +103,7 @@ test_opaque $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_opaque
test_setupterm $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_setupterm
test_sgr $(LDFLAGS_TINFO) $(LOCAL_LIBS) test_sgr
test_termattrs $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_termattrs
+test_tparm $(LDFLAGS_TINFO) $(LOCAL_LIBS) test_tparm
test_vid_puts $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vid_puts
test_vidputs $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vidputs
testaddch $(LDFLAGS_CURSES) $(LOCAL_LIBS) testaddch
diff --git a/test/railroad.c b/test/railroad.c
index e3558b0..3336f56 100644
--- a/test/railroad.c
+++ b/test/railroad.c
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey - 2000
*
- * $Id: railroad.c,v 1.24 2020/02/02 23:34:34 tom Exp $
+ * $Id: railroad.c,v 1.25 2020/09/05 21:43:37 tom Exp $
*
* A simple demo of the termcap interface.
*/
@@ -191,7 +191,11 @@ railroad(char **args)
int z;
if (name == 0)
+#ifdef EXP_WIN32_DRIVER
+ name = "ms-terminal";
+#else
name = "dumb";
+#endif
InitAndCatch(z = tgetent(buffer, name), onsig);
if (z >= 0) {
diff --git a/test/rain.c b/test/rain.c
index 14a536b..4c3568c 100644
--- a/test/rain.c
+++ b/test/rain.c
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: rain.c,v 1.51 2020/02/02 23:34:34 tom Exp $
+ * $Id: rain.c,v 1.52 2020/08/29 16:22:03 juergen Exp $
*/
#include <test.priv.h>
#include <popup_msg.h>
@@ -228,7 +228,7 @@ draw_drop(void *arg)
* Find myself in the list of threads so we can count the number of loops.
*/
for (mystats = 0; mystats < MAX_THREADS; ++mystats) {
-#if defined(_WIN32) && !defined(__WINPTHREADS_VERSION)
+#if defined(_NC_WINDOWS) && !defined(__WINPTHREADS_VERSION)
if (drop_threads[mystats].myself.p == pthread_self().p)
#else
if (drop_threads[mystats].myself == pthread_self())
diff --git a/test/redraw.c b/test/redraw.c
index 569c276..b0840fb 100644
--- a/test/redraw.c
+++ b/test/redraw.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2006-2012,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: redraw.c,v 1.11 2020/02/02 23:34:34 tom Exp $
+ * $Id: redraw.c,v 1.13 2021/06/17 21:26:02 tom Exp $
*
* Demonstrate the redrawwin() and wredrawln() functions.
* Thomas Dickey - 2006/11/4
@@ -82,7 +82,6 @@ test_redraw(WINDOW *win)
WINDOW *win1;
WINDOW *win2;
bool done = FALSE;
- int ch, y, x;
int max_y, max_x;
int beg_y, beg_x;
@@ -92,8 +91,11 @@ test_redraw(WINDOW *win)
keypad(win, TRUE);
getmaxyx(win, max_y, max_x);
getbegyx(win, beg_y, beg_x);
+
while (!done) {
- ch = wgetch(win);
+ int ch = wgetch(win);
+ int y, x;
+
getyx(win, y, x);
switch (ch) {
case 'q':
@@ -133,7 +135,7 @@ test_redraw(WINDOW *win)
/*
* For a shell command, we can work around the problem noted above
* using mvcur(). It is ifdef'd for NCURSES, since X/Open does
- * not define the case where the old location is unknown.
+ * not define the case where the old location is unknown.
*/
IGNORE_RC(system("date"));
mvcur(-1, -1, y, x);
diff --git a/test/savescreen.c b/test/savescreen.c
index da00d75..4c767a5 100644
--- a/test/savescreen.c
+++ b/test/savescreen.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 2006-2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: savescreen.c,v 1.57 2020/02/02 23:34:34 tom Exp $
+ * $Id: savescreen.c,v 1.58 2021/03/27 23:41:21 tom Exp $
*
* Demonstrate save/restore functions from the curses library.
* Thomas Dickey - 2007/7/14
@@ -86,9 +86,9 @@ setup_next(void)
static void
cleanup(char *files[])
{
- int n;
-
if (!keep_dumps) {
+ int n;
+
for (n = 0; files[n] != 0; ++n) {
unlink(files[n]);
}
@@ -169,7 +169,6 @@ dump_screen(char **files, int color, int which, int last, bool use_colors)
{
#if USE_WIDEC_SUPPORT
cchar_t mycc;
- int myxx;
#endif
char *filename = files[which];
bool dumped = FALSE;
@@ -198,7 +197,7 @@ dump_screen(char **files, int color, int which, int last, bool use_colors)
wmove(stdscr, cy, cx);
#if USE_WIDEC_SUPPORT
if (win_wch(curscr, &mycc) != ERR) {
- myxx = wcwidth(BaseChar(mycc));
+ int myxx = wcwidth(BaseChar(mycc));
if (myxx > 0) {
wadd_wchnstr(stdscr, &mycc, 1);
cx += (myxx - 1);
@@ -285,14 +284,9 @@ main(int argc, char *argv[])
char **files;
char *fill_by = 0;
#if USE_WIDEC_SUPPORT
- int r, g, b;
- int cube = 0;
- int cube0 = 16;
- int cube1;
cchar_t mycc;
static const wchar_t mywc[2] =
{L'#', 0};
- bool using_rgb = FALSE;
#endif
setlocale(LC_ALL, "");
@@ -332,6 +326,9 @@ main(int argc, char *argv[])
curs_set(0);
if (has_colors() && (start_color() == OK) && COLORS >= MAX_ANSI) {
+#if USE_WIDEC_SUPPORT
+ bool using_rgb = FALSE;
+#endif
static const struct {
int fg, bg;
} table[MAX_ANSI] = {
@@ -378,13 +375,13 @@ main(int argc, char *argv[])
int r_delta = (r_max / cols);
int g_delta = (g_max / cols);
int row = 0;
+ int b = 0;
- b = 0;
using_rgb = TRUE;
while (row++ < rows) {
int col = 0;
- r = 0;
- g = g_max;
+ int r = 0;
+ int g = g_max;
while (col++ < cols) {
int color = (((r * (g_max + 1)) + g) * (b_max + 1)
+ b + MAX_ANSI);
@@ -404,6 +401,9 @@ main(int argc, char *argv[])
#endif
}
if ((fill_by == 0) && !replaying) {
+#if USE_WIDEC_SUPPORT
+ int cube = 0;
+#endif
/*
* Originally (before wide-characters) ncurses supported 16 colors.
*/
@@ -428,8 +428,9 @@ main(int argc, char *argv[])
cube = 6;
}
if (cube != 0) {
- cube0 = 16;
- cube1 = cube0 + (cube * cube * cube);
+ int r, g, b;
+ int cube0 = 16;
+ int cube1 = cube0 + (cube * cube * cube);
addch('\n');
printw("Color cube, %dx%dx%d:\n", cube, cube, cube);
@@ -460,7 +461,6 @@ main(int argc, char *argv[])
int cols = COLS - 1;
int row = 0;
- b = 0;
pair = MAX_ANSI;
while (row++ < rows) {
int col = 0;
diff --git a/test/savescreen.sh b/test/savescreen.sh
index 4a15ce4..4a15ce4 100755..100644
--- a/test/savescreen.sh
+++ b/test/savescreen.sh
diff --git a/test/tclock.c b/test/tclock.c
index 6460c31..71da53a 100644
--- a/test/tclock.c
+++ b/test/tclock.c
@@ -1,4 +1,4 @@
-/* $Id: tclock.c,v 1.41 2020/01/18 16:46:35 tom Exp $ */
+/* $Id: tclock.c,v 1.42 2020/12/26 17:56:36 tom Exp $ */
#define NEED_TIME_H
#include <test.priv.h>
@@ -140,7 +140,7 @@ main(int argc, char *argv[])
bool odd = FALSE;
time_t tim;
struct tm *t;
- char szChar[10];
+ char szChar[20];
char *text;
short my_bg = COLOR_BLACK;
#if HAVE_GETTIMEOFDAY
diff --git a/test/test.priv.h b/test/test.priv.h
index f0b660f..58f79e0 100644
--- a/test/test.priv.h
+++ b/test/test.priv.h
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey *
+ * Copyright 2018-2020,2021 Thomas E. Dickey *
* Copyright 1998-2017,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/****************************************************************************
* Author: Thomas E. Dickey 1996-on *
****************************************************************************/
-/* $Id: test.priv.h,v 1.185 2020/02/02 23:34:34 tom Exp $ */
+/* $Id: test.priv.h,v 1.197 2021/04/25 00:00:24 tom Exp $ */
#ifndef __TEST_PRIV_H
#define __TEST_PRIV_H 1
@@ -243,6 +243,10 @@
#define HAVE_STDINT_H 0
#endif
+#ifndef HAVE_STDNORETURN_H
+#define HAVE_STDNORETURN_H 0
+#endif
+
#ifndef HAVE_STRSTR
#define HAVE_STRSTR 0
#endif
@@ -391,6 +395,16 @@
#include <curses.h>
#endif
+#if HAVE_STDNORETURN_H && !defined(NCURSES_VERSION)
+#include <stdnoreturn.h>
+#undef GCC_NORETURN
+#define GCC_NORETURN _Noreturn
+#endif
+
+#if !(defined(NCURSES_WGETCH_EVENTS) && defined(NEED_KEY_EVENT))
+#undef KEY_EVENT /* reduce compiler-warnings with Visual C++ */
+#endif
+
#if defined(HAVE_XCURSES) || defined(PDCURSES)
/* no other headers */
#undef HAVE_SETUPTERM /* nonfunctional */
@@ -437,6 +451,13 @@ extern int optind;
#include <assert.h>
#include <ctype.h>
+#if defined(_MSC_VER)
+#undef popen
+#define popen(s,n) _popen(s,n)
+#undef pclose
+#define pclose(s) _pclose(s)
+#endif
+
#ifndef GCC_NORETURN
#define GCC_NORETURN /* nothing */
#endif
@@ -727,10 +748,10 @@ extern "C" {
#endif
#if USE_STRING_HACKS && HAVE_SNPRINTF
-#define _nc_SPRINTF NCURSES_VOID snprintf
+#define _nc_SPRINTF NCURSES_VOID (snprintf)
#define _nc_SLIMIT(n) NCURSES_CAST(size_t,n),
#else
-#define _nc_SPRINTF NCURSES_VOID sprintf
+#define _nc_SPRINTF NCURSES_VOID (sprintf)
#define _nc_SLIMIT(n) /* nothing */
#endif
@@ -903,11 +924,14 @@ extern int TABSIZE;
#if defined(NCURSES_VERSION) && HAVE_NC_ALLOC_H
#include <nc_alloc.h>
-#if HAVE_NC_FREEALL && defined(USE_TINFO)
+#if HAVE_EXIT_TERMINFO && (defined(USE_TERMINFO) || defined(USE_TINFO))
#undef ExitProgram
#define ExitProgram(code) exit_terminfo(code)
+#elif HAVE_EXIT_CURSES
+#undef ExitProgram
+#define ExitProgram(code) exit_curses(code)
#endif
-#else
+#else /* not ncurses-tree */
#define typeMalloc(type,n) (type *) malloc((size_t)(n) * sizeof(type))
#define typeCalloc(type,elts) (type *) calloc((size_t)(elts), sizeof(type))
#define typeRealloc(type,n,p) (type *) realloc(p, (size_t)(n) * sizeof(type))
@@ -924,7 +948,12 @@ extern int TABSIZE;
#define EXIT_FAILURE 1
#endif
-#if defined(_WIN32) || defined(USE_WIN32CON_DRIVER)
+#undef _NC_WINDOWS
+#if (defined(_WIN32) || defined(_WIN64))
+#define _NC_WINDOWS 1
+#endif
+
+#if defined(_NC_WINDOWS) || defined(USE_WIN32CON_DRIVER)
#if defined(PDCURSES)
#ifdef WINVER
@@ -942,7 +971,19 @@ extern int TABSIZE;
#define SIGKILL 9
#define getlogin() "username"
-#elif defined(HAVE_NCURSESW_NCURSES_H)
+#elif defined(EXP_WIN32_DRIVER)
+
+#if defined(HAVE_NCURSESW_NCURSES_H)
+#include <ncursesw/nc_win32.h>
+#elif defined(HAVE_NCURSES_NCURSES_H)
+#include <ncurses/nc_win32.h>
+#else
+#include <nc_win32.h>
+#endif
+
+#else
+
+#if defined(HAVE_NCURSESW_NCURSES_H)
#include <ncursesw/nc_mingw.h>
#elif defined(HAVE_NCURSES_NCURSES_H)
#include <ncurses/nc_mingw.h>
@@ -950,6 +991,8 @@ extern int TABSIZE;
#include <nc_mingw.h>
#endif
+#endif
+
/* conflicts in test/firstlast.c */
#undef large
#undef small
@@ -1022,6 +1065,12 @@ extern char *_nc_strstr(const char *, const char *);
#define InitAndCatch(init,handler) do { init; CATCHALL(handler); } while (0)
#endif
+#if defined(_NC_WINDOWS) || defined(USE_WIN32CON_DRIVER)
+#define SetupAlarm(opt) (void)opt
+#else
+#define SetupAlarm(opt) if (opt) alarm((unsigned)opt)
+#endif
+
/*
* Workaround for clean(er) compile with Solaris's legacy curses.
* The same would be needed for HPUX 10.20
diff --git a/test/test_add_wchstr.c b/test/test_add_wchstr.c
index e2c8b66..b1d320b 100644
--- a/test/test_add_wchstr.c
+++ b/test/test_add_wchstr.c
@@ -1,6 +1,6 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
- * Copyright 2009-2016,2017 Free Software Foundation, Inc. *
+ * Copyright 2020,2021 Thomas E. Dickey *
+ * Copyright 2009-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: test_add_wchstr.c,v 1.27 2020/02/02 23:34:34 tom Exp $
+ * $Id: test_add_wchstr.c,v 1.29 2021/05/08 20:04:10 tom Exp $
*
* Demonstrate the waddwchstr() and wadd_wch functions.
* Thomas Dickey - 2009/9/12
@@ -132,10 +132,11 @@ ChWLen(const wchar_t *source)
if (!pass_ctls) {
size_t adjust = 0;
size_t n;
- const char *s;
- for (n = 0; n < result; ++n) {
- if (source[n] < 256 && (s = unctrl((chtype) source[n])) != 0) {
+ for (n = 0; source[n] != 0; ++n) {
+ const char *s;
+
+ if ((source[n] < 256) && (s = unctrl((chtype) source[n])) != 0) {
adjust += (strlen(s) - 1);
}
}
diff --git a/test/test_opaque.c b/test/test_opaque.c
index 8e19a8c..c365ba5 100644
--- a/test/test_opaque.c
+++ b/test/test_opaque.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2007-2008,2009 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: test_opaque.c,v 1.10 2020/02/02 23:34:34 tom Exp $
+ * $Id: test_opaque.c,v 1.14 2021/09/11 23:44:07 tom Exp $
*
* Author: Thomas E Dickey
*
@@ -45,6 +45,9 @@
bool is_scrollok(const WINDOW *win);
bool is_syncok(const WINDOW *win);
int wgetscrreg (const WINDOW *, int *, int *);
+ bool is_pad(const WINDOW *win);
+ bool is_subwin(const WINDOW *win);
+ int wgetdelay(const WINDOW *win);
*/
#include <test.priv.h>
@@ -52,7 +55,7 @@
#define BASE_Y 6
#define MAX_COLS 1024
-#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20080119) && NCURSES_EXT_FUNCS
+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20090906) && NCURSES_EXT_FUNCS && NCURSES_OPAQUE
static bool
Quit(int ch)
@@ -209,6 +212,8 @@ static struct {
};
/* *INDENT-ON* */
+#define bool2c(c) ((c) ? 'T' : 'F')
+
/*
* Display and/or allow update for the properties accessed in the opaque
* window. Some may change state after refreshing the window, so we
@@ -227,18 +232,35 @@ show_opaque(WINDOW *stswin, WINDOW *txtwin, bool before, int active)
show_keyword(stswin, n, active, bool_funcs[n].name);
to_result(stswin, n, before);
- wprintw(stswin, "%c", bool_funcs[n].func(txtwin, -1) ? 'T' : 'F');
+ wprintw(stswin, "%c", bool2c(bool_funcs[n].func(txtwin, -1)));
}
+ show_keyword(stswin, n, active, "is_pad");
+ to_result(stswin, n, TRUE);
+ wprintw(stswin, "%c", bool2c(is_pad(txtwin)));
+
+ ++n;
+ show_keyword(stswin, n, active, "is_subwin");
+ to_result(stswin, n, TRUE);
+ wprintw(stswin, "%c", bool2c(is_subwin(txtwin)));
+
+ ++n;
show_keyword(stswin, n, active, "wgetparent");
to_result(stswin, n, TRUE);
wprintw(stswin, "%p", (void *) wgetparent(txtwin));
++n;
+ show_keyword(stswin, n, active, "wgetdelay");
+ to_result(stswin, n, TRUE);
+ wprintw(stswin, "%d", wgetdelay(txtwin));
+
+ ++n;
show_keyword(stswin, n, active, "wgetscrreg");
to_result(stswin, n, TRUE);
if (wgetscrreg(txtwin, &top, &bottom) == OK)
wprintw(stswin, "%d,%d", top, bottom);
+ else
+ wprintw(stswin, "none");
wnoutrefresh(stswin);
return active;
diff --git a/test/test_sgr.c b/test/test_sgr.c
index aeb833c..33564ad 100644
--- a/test/test_sgr.c
+++ b/test/test_sgr.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 2015-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -30,7 +30,7 @@
/*
* Author: Thomas E. Dickey
*
- * $Id: test_sgr.c,v 1.15 2020/02/02 23:34:34 tom Exp $
+ * $Id: test_sgr.c,v 1.17 2021/03/27 22:43:36 tom Exp $
*
* A simple demo of the sgr/sgr0 terminal capabilities.
*/
@@ -38,7 +38,7 @@
#include <test.priv.h>
#if !HAVE_TIGETSTR
-static void failed(const char *) GCC_NORETURN;
+static GCC_NORETURN void failed(const char *);
static void
failed(const char *msg)
@@ -116,7 +116,7 @@ next_dbitem(void)
db_item++;
}
}
- printf("** %s\n", result);
+ printf("** %s\n", result ? result : "<null>");
return result;
}
diff --git a/test/test_tparm.c b/test/test_tparm.c
new file mode 100644
index 0000000..1c976af
--- /dev/null
+++ b/test/test_tparm.c
@@ -0,0 +1,489 @@
+/****************************************************************************
+ * Copyright 2020,2021 Thomas E. Dickey *
+ * *
+ * Permission is hereby granted, free of charge, to any person obtaining a *
+ * copy of this software and associated documentation files (the *
+ * "Software"), to deal in the Software without restriction, including *
+ * without limitation the rights to use, copy, modify, merge, publish, *
+ * distribute, distribute with modifications, sublicense, and/or sell *
+ * copies of the Software, and to permit persons to whom the Software is *
+ * furnished to do so, subject to the following conditions: *
+ * *
+ * The above copyright notice and this permission notice shall be included *
+ * in all copies or substantial portions of the Software. *
+ * *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+ * *
+ * Except as contained in this notice, the name(s) of the above copyright *
+ * holders shall not be used in advertising or otherwise to promote the *
+ * sale, use or other dealings in this Software without prior written *
+ * authorization. *
+ ****************************************************************************/
+
+/*
+ * Author: Thomas E. Dickey
+ *
+ * $Id: test_tparm.c,v 1.20 2021/03/20 15:58:32 tom Exp $
+ *
+ * Exercise tparm, either for all possible capabilities with fixed parameters,
+ * or one capability with all possible parameters.
+ *
+ * TODO: incorporate tic.h and _nc_tparm_analyze
+ * TODO: optionally test tiparm
+ * TODO: add checks/logic to handle "%s" in tparm
+ */
+#define USE_TINFO
+#include <test.priv.h>
+
+static GCC_NORETURN void failed(const char *);
+
+static void
+failed(const char *msg)
+{
+ fprintf(stderr, "%s\n", msg);
+ ExitProgram(EXIT_FAILURE);
+}
+
+#if HAVE_TIGETSTR
+
+static int a_opt;
+static int p_opt;
+static int v_opt;
+
+/*
+ * Total tests (and failures):
+ */
+static long total_tests;
+static long total_fails;
+
+/*
+ * Total characters formatted for tputs:
+ */
+static long total_nulls;
+static long total_ctrls;
+static long total_print;
+
+static int
+output_func(int ch)
+{
+ if (ch == 0) {
+ total_nulls++;
+ } else if (ch < 32 || (ch >= 127 && ch < 160)) {
+ total_ctrls++;
+ } else {
+ total_print++;
+ }
+ return ch;
+}
+
+static int
+isNumeric(char *source)
+{
+ char *next = 0;
+ long value = strtol(source, &next, 0);
+ int result = (next == 0 || next == source || *next != '\0') ? 0 : 1;
+ (void) value;
+ return result;
+}
+
+static int
+relevant(const char *name, const char *value)
+{
+ int code = 1;
+ if (VALID_STRING(value)) {
+ if (strstr(value, "%p") == 0
+ && strstr(value, "%d") == 0
+ && strstr(value, "%s") == 0
+ && (!p_opt || strstr(value, "$<") == 0)) {
+ if (v_opt > 2)
+ printf("? %s noparams\n", name);
+ code = 0;
+ }
+ } else {
+ if (v_opt > 2) {
+ printf("? %s %s\n",
+ (value == ABSENT_STRING)
+ ? "absent"
+ : "cancel",
+ name);
+ }
+ code = 0;
+ }
+ return code;
+}
+
+static int
+increment(int *all_parms, int *num_parms, int len_parms, int end_parms)
+{
+ int rc = 0;
+ int n;
+
+ if (len_parms > 9)
+ len_parms = 9;
+
+ if (end_parms < len_parms) {
+ if (all_parms[end_parms]++ >= num_parms[end_parms]) {
+ all_parms[end_parms] = 0;
+ increment(all_parms, num_parms, len_parms, end_parms + 1);
+ }
+ }
+ for (n = 0; n < len_parms; ++n) {
+ if (all_parms[n] != 0) {
+ rc = 1;
+ break;
+ }
+ }
+ /* return 1 until the vector resets to all 0's */
+ return rc;
+}
+
+static void
+test_tparm(const char *name, const char *format, int *number)
+{
+ char *result = tparm(format,
+ number[0],
+ number[1],
+ number[2],
+ number[3],
+ number[4],
+ number[5],
+ number[6],
+ number[7],
+ number[8]);
+ total_tests++;
+ if (result != NULL) {
+ tputs(result, 1, output_func);
+ } else {
+ total_fails++;
+ }
+ if (v_opt > 1)
+ printf(".. %2d = %2d %2d %2d %2d %2d %2d %2d %2d %2d %s\n",
+ result != 0 ? (int) strlen(result) : -1,
+ number[0],
+ number[1],
+ number[2],
+ number[3],
+ number[4],
+ number[5],
+ number[6],
+ number[7],
+ number[8],
+ name);
+}
+
+static void
+usage(void)
+{
+ static const char *msg[] =
+ {
+ "Usage: test_tparm [options] [capability] [value1 [value2 [...]]]",
+ "",
+ "Use tparm/tputs for all distinct combinations of given capability.",
+ "",
+ "Options:",
+ " -T TERM override $TERM; this may be a comma-separated list or \"-\"",
+ " to read a list from standard-input",
+ " -a test all combinations of parameters",
+ " [value1...] forms a vector of maximum parameter-values.",
+ " -p test capabilities with no parameters but having padding",
+ " -r NUM repeat tests NUM times",
+ " -v show values and results",
+ };
+ unsigned n;
+ for (n = 0; n < SIZEOF(msg); ++n) {
+ fprintf(stderr, "%s\n", msg[n]);
+ }
+ ExitProgram(EXIT_FAILURE);
+}
+
+#define PLURAL(n) n, (n != 1) ? "s" : ""
+#define COLONS(n) (n >= 1) ? ":" : ""
+
+#define NUMFORM "%10ld"
+
+int
+main(int argc, char *argv[])
+{
+ int n;
+ int r_run, t_run, n_run;
+ char *old_term = getenv("TERM");
+ int r_opt = 1;
+ char *t_opt = 0;
+
+ int len_caps = 0; /* cur # of items in all_caps[] */
+ int max_caps = 10; /* max # of items in all_caps[] */
+ char **all_caps = typeCalloc(char *, max_caps);
+
+ int all_parms[10]; /* workspace for "-a" option */
+
+ int len_terms = 0; /* cur # of items in all_terms[] */
+ int max_terms = 10; /* max # of items in all_terms[] */
+ char **all_terms = typeCalloc(char *, max_terms);
+
+ int use_caps;
+ char **cap_name;
+ char **cap_data;
+
+ int len_parms = 0; /* cur # of items in num_parms[], str_parms[] */
+ int max_parms = argc + 10; /* max # of items in num_parms[], str_parms[] */
+ int *num_parms = typeCalloc(int, max_parms);
+ char **str_parms = typeCalloc(char *, max_parms);
+ long use_parms = 1;
+
+ if (all_caps == 0 || all_terms == 0 || num_parms == 0 || str_parms == 0)
+ failed("no memory");
+
+ while ((n = getopt(argc, argv, "T:apr:v")) != -1) {
+ switch (n) {
+ case 'T':
+ t_opt = optarg;
+ break;
+ case 'a':
+ ++a_opt;
+ break;
+ case 'p':
+ ++p_opt;
+ break;
+ case 'r':
+ r_opt = atoi(optarg);
+ break;
+ case 'v':
+ ++v_opt;
+ break;
+ default:
+ usage();
+ break;
+ }
+ }
+
+ /*
+ * If there is a nonnumeric parameter after the options, use that as the
+ * capability name.
+ */
+ if (optind < argc) {
+ if (!isNumeric(argv[optind])) {
+ all_caps[len_caps++] = strdup(argv[optind++]);
+ }
+ }
+
+ /*
+ * Any remaining arguments must be possible parameter values. If numeric,
+ * and "-a" is not set, use those as the actual values for which the
+ * capabilities are tested.
+ */
+ while (optind < argc) {
+ if (isNumeric(argv[optind])) {
+ char *dummy = 0;
+ long value = strtol(argv[optind], &dummy, 0);
+ num_parms[len_parms] = (int) value;
+ }
+ str_parms[len_parms] = argv[optind];
+ ++optind;
+ ++len_parms;
+ }
+ for (n = len_parms; n < max_parms; ++n) {
+ static char dummy[1];
+ str_parms[n] = dummy;
+ }
+ if (v_opt) {
+ printf("%d parameter%s%s\n", PLURAL(len_parms), COLONS(len_parms));
+ if (v_opt > 3) {
+ for (n = 0; n < len_parms; ++n) {
+ printf(" %d: %d (%s)\n", n + 1, num_parms[n], str_parms[n]);
+ }
+ }
+ }
+
+ /*
+ * Make a list of values for $TERM. Accept "-" for standard input to
+ * simplify scripting a check of the whole database.
+ */
+ old_term = strdup((old_term == 0) ? "unknown" : old_term);
+ if (t_opt != 0) {
+ if (!strcmp(t_opt, "-")) {
+ char buffer[BUFSIZ];
+ while (fgets(buffer, sizeof(buffer) - 1, stdin) != 0) {
+ char *s = buffer;
+ char *t;
+ while (isspace(UChar(s[0])))
+ ++s;
+ t = s + strlen(s);
+ while (t != s && isspace(UChar(t[-1])))
+ *--t = '\0';
+ s = strdup(s);
+ if (len_terms + 2 >= max_terms) {
+ max_terms *= 2;
+ all_terms = typeRealloc(char *, max_terms, all_terms);
+ if (all_terms == 0)
+ failed("no memory: all_terms");
+ }
+ all_terms[len_terms++] = s;
+ }
+ } else {
+ char *s = t_opt;
+ char *t;
+ while ((t = strtok(s, ",")) != 0) {
+ s = 0;
+ if (len_terms + 2 >= max_terms) {
+ max_terms *= 2;
+ all_terms = typeRealloc(char *, max_terms, all_terms);
+ if (all_terms == 0)
+ failed("no memory: all_terms");
+ }
+ all_terms[len_terms++] = strdup(t);
+ }
+ }
+ } else {
+ all_terms[len_terms++] = strdup(old_term);
+ }
+ all_terms[len_terms] = 0;
+ if (v_opt) {
+ printf("%d term%s:\n", PLURAL(len_terms));
+ if (v_opt > 3) {
+ for (n = 0; n < len_terms; ++n) {
+ printf(" %d: %s\n", n + 1, all_terms[n]);
+ }
+ }
+ }
+
+ /*
+ * If no capability name was selected, use the predefined list of string
+ * capabilities.
+ *
+ * TODO: To address the "other" systems which do not follow SVr4,
+ * just use the output from infocmp on $TERM.
+ */
+ if (len_caps == 0) {
+#if defined(HAVE_CURSES_DATA_BOOLNAMES) || defined(DECL_CURSES_DATA_BOOLNAMES)
+ for (n = 0; strnames[n] != 0; ++n) {
+ if (len_caps + 2 >= max_caps) {
+ max_caps *= 2;
+ all_caps = typeRealloc(char *, max_caps, all_caps);
+ if (all_caps == 0) {
+ failed("no memory: all_caps");
+ }
+ }
+ all_caps[len_caps++] = strdup(strnames[n]);
+ }
+#else
+ all_caps[len_caps++] = strdup("cup");
+ all_caps[len_caps++] = strdup("sgr");
+#endif
+ }
+ all_caps[len_caps] = 0;
+ if (v_opt) {
+ printf("%d name%s%s\n", PLURAL(len_caps), COLONS(len_caps));
+ if (v_opt > 3) {
+ for (n = 0; n < len_caps; ++n) {
+ printf(" %d: %s\n", n + 1, all_caps[n]);
+ }
+ }
+ }
+
+ cap_name = typeMalloc(char *, len_caps);
+ cap_data = typeMalloc(char *, len_caps);
+
+ if (r_opt <= 0)
+ r_opt = 1;
+
+ if (a_opt) {
+ for (n = 0; n < max_parms; ++n)
+ if (num_parms[n])
+ use_parms *= (num_parms[n] + 1);
+ }
+
+ for (r_run = 0; r_run < r_opt; ++r_run) {
+ for (t_run = 0; t_run < len_terms; ++t_run) {
+ int errs;
+
+ if (setupterm(all_terms[t_run], fileno(stdout), &errs) != OK) {
+ printf("** skipping %s (errs:%d)\n", all_terms[t_run], errs);
+ }
+
+ /*
+ * Most of the capabilities have no parameters, e.g., they are
+ * function-keys or simple operations such as clear-display.
+ * Ignore those, since they do not really exercise tparm.
+ */
+ use_caps = 0;
+ for (n = 0; n < len_caps; ++n) {
+ char *value = tigetstr(all_caps[n]);
+ if (relevant(all_caps[n], value)) {
+ cap_name[use_caps] = all_caps[n];
+ cap_data[use_caps] = value;
+ use_caps++;
+ }
+ }
+
+ if (v_opt) {
+ printf("[%d:%d] %d cap%s * %ld param%s \"%s\"\n",
+ r_run + 1, r_opt,
+ PLURAL(use_caps),
+ PLURAL(use_parms),
+ all_terms[t_run]);
+ }
+
+ memset(all_parms, 0, sizeof(all_parms));
+ if (a_opt) {
+ /* for each combination of values */
+ do {
+ for (n_run = 0; n_run < use_caps; ++n_run) {
+ test_tparm(cap_name[n_run], cap_data[n_run], all_parms);
+ }
+ }
+ while (increment(all_parms, num_parms, len_parms, 0));
+ } else {
+ /* for the given values */
+ for (n_run = 0; n_run < use_caps; ++n_run) {
+ test_tparm(cap_name[n_run], cap_data[n_run], all_parms);
+ }
+ }
+ if (cur_term != 0) {
+ del_curterm(cur_term);
+ } else {
+ printf("? no cur_term\n");
+ }
+ }
+ }
+
+ printf("Tests:\n");
+ printf(NUMFORM " total\n", total_tests);
+ if (total_fails)
+ printf(NUMFORM " failed\n", total_fails);
+ printf("Characters:\n");
+ printf(NUMFORM " nulls\n", total_nulls);
+ printf(NUMFORM " controls\n", total_ctrls);
+ printf(NUMFORM " printable\n", total_print);
+ printf(NUMFORM " total\n", total_nulls + total_ctrls + total_print);
+#if NO_LEAKS
+ for (n = 0; n < len_caps; ++n) {
+ free(all_caps[n]);
+ }
+ free(all_caps);
+ free(old_term);
+ for (n = 0; n < len_terms; ++n) {
+ free(all_terms[n]);
+ }
+ free(all_terms);
+ free(num_parms);
+ free(str_parms);
+ free(cap_name);
+ free(cap_data);
+#endif
+
+ ExitProgram(EXIT_SUCCESS);
+}
+
+#else /* !HAVE_TIGETSTR */
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+ failed("This program requires the terminfo functions such as tigetstr");
+}
+#endif /* HAVE_TIGETSTR */
diff --git a/test/test_vid_puts.c b/test/test_vid_puts.c
index 85a7f4e..1259ebf 100644
--- a/test/test_vid_puts.c
+++ b/test/test_vid_puts.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2013-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: test_vid_puts.c,v 1.11 2020/02/02 23:34:34 tom Exp $
+ * $Id: test_vid_puts.c,v 1.12 2021/04/25 00:10:43 tom Exp $
*
* Demonstrate the vid_puts and vid_attr functions.
* Thomas Dickey - 2013/01/12
@@ -44,7 +44,7 @@ static bool p_opt = FALSE;
static
TPUTS_PROTO(outc, c)
{
- int rc = c;
+ int rc;
rc = putc(c, my_fp);
TPUTS_RETURN(rc);
diff --git a/test/test_vidputs.c b/test/test_vidputs.c
index 355f100..25b7714 100644
--- a/test/test_vidputs.c
+++ b/test/test_vidputs.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2020 Thomas E. Dickey *
+ * Copyright 2020,2021 Thomas E. Dickey *
* Copyright 2013-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -27,7 +27,7 @@
* authorization. *
****************************************************************************/
/*
- * $Id: test_vidputs.c,v 1.10 2020/02/02 23:34:34 tom Exp $
+ * $Id: test_vidputs.c,v 1.11 2021/04/25 00:10:43 tom Exp $
*
* Demonstrate the vidputs and vidattr functions.
* Thomas Dickey - 2013/01/12
@@ -44,7 +44,7 @@ static bool p_opt = FALSE;
static
TPUTS_PROTO(outc, c)
{
- int rc = c;
+ int rc;
rc = putc(c, my_fp);
TPUTS_RETURN(rc);
diff --git a/test/testcurs.c b/test/testcurs.c
index f9762b0..2e01415 100644
--- a/test/testcurs.c
+++ b/test/testcurs.c
@@ -6,7 +6,7 @@
* wrs(5/28/93) -- modified to be consistent (perform identically) with either
* PDCurses or under Unix System V, R4
*
- * $Id: testcurs.c,v 1.55 2019/12/14 23:25:29 tom Exp $
+ * $Id: testcurs.c,v 1.56 2021/03/27 22:39:50 tom Exp $
*/
#include <test.priv.h>
@@ -160,7 +160,7 @@ inputTest(WINDOW *win)
{
int answered;
int repeat;
- int w, h, bx, by, sw, sh, i, c, num;
+ int w, h, bx, by, sw, sh, i, num;
char buffer[80];
WINDOW *subWin;
wclear(win);
@@ -238,6 +238,8 @@ inputTest(WINDOW *win)
#endif
for (;;) {
+ int c;
+
wmove(win, 3, 5);
c = wgetch(win);
wclrtobot(win);
@@ -355,7 +357,6 @@ inputTest(WINDOW *win)
static void
outputTest(WINDOW *win)
{
- WINDOW *win1;
char Buffer[80];
chtype ch;
int by, bx;
@@ -395,7 +396,7 @@ outputTest(WINDOW *win)
MvWAddStr(win, 6, 1, "display of at least 24 LINES by 75 COLUMNS");
Continue(win);
} else {
- win1 = newwin(10, 50, 14, 25);
+ WINDOW *win1 = newwin(10, 50, 14, 25);
if (win1 == NULL) {
endwin();
return;
@@ -589,9 +590,11 @@ resizeTest(WINDOW *dummy GCC_UNUSED)
static void
padTest(WINDOW *dummy GCC_UNUSED)
{
- WINDOW *pad, *spad;
+ WINDOW *pad;
if ((pad = newpad(50, 100)) != 0) {
+ WINDOW *spad;
+
wattron(pad, A_REVERSE);
MvWAddStr(pad, 5, 2, "This is a new pad");
(void) wattrset(pad, A_NORMAL);
@@ -679,7 +682,6 @@ main(
char *argv[]GCC_UNUSED)
{
WINDOW *win;
- int key;
int old_option = (-1);
int new_option = 0;
bool quit = FALSE;
@@ -695,7 +697,10 @@ main(
erase();
display_menu(old_option, new_option);
+
for (;;) {
+ int key;
+
#ifdef A_COLOR
if (has_colors()) {
init_pair(1, COLOR_WHITE, COLOR_BLUE);
diff --git a/test/tput-colorcube b/test/tput-colorcube
index 67a4997..67a4997 100755..100644
--- a/test/tput-colorcube
+++ b/test/tput-colorcube
diff --git a/test/tput-initc b/test/tput-initc
index 9d71c4f..9d71c4f 100755..100644
--- a/test/tput-initc
+++ b/test/tput-initc
diff --git a/test/tracemunch b/test/tracemunch
index 22191ee..b2d3b03 100755
--- a/test/tracemunch
+++ b/test/tracemunch
@@ -1,7 +1,7 @@
#!/usr/bin/env perl
-# $Id: tracemunch,v 1.27 2020/02/02 23:34:34 tom Exp $
+# $Id: tracemunch,v 1.41 2021/09/04 10:31:03 tom Exp $
##############################################################################
-# Copyright 2018-2019,2020 Thomas E. Dickey #
+# Copyright 2018-2020,2021 Thomas E. Dickey #
# Copyright 1998-2005,2017 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -37,321 +37,502 @@
use strict;
use warnings;
+$| = 1;
+
our $putattr =
'PutAttrChar\(\{\{ ' . "'(.)'"
. ' = 0[0-7]+ \}\}\) at \(([0-9]+), ([0-9]+)\)';
our $waddnstr =
- 'waddnstr\(0x([[:xdigit:]]+),"([^\"]+)",[0-9]+\) called \{A_NORMAL\}';
+'^called \{waddnstr\((0x[[:xdigit:]]+|window\d+),"((\\.|[^\"]*))",[-]?[0-9]+\)';
+
+our %TR = qw(
+ DISABLE 0x0000
+ TIMES 0x0001
+ TPUTS 0x0002
+ UPDATE 0x0004
+ MOVE 0x0008
+ CHARPUT 0x0010
+ ORDINARY 0x001F
+ CALLS 0x0020
+ VIRTPUT 0x0040
+ IEVENT 0x0080
+ BITS 0x0100
+ ICALLS 0x0200
+ CCALLS 0x0400
+ DATABASE 0x0800
+ ATTRS 0x1000
+);
+
+our $tracelevel = 0;
+
+our $tSCREEN = 1; # SCREEN*
+our $tWINDOW = 2; # WINDOW*
+our $tTERMINAL = 3; # TERMINAL*
+our $tPANEL = 4; # PANEL*
+our $tFIELD = 5; # FIELD*
+our $tFORM = 5; # FORM*
+our $tMENU = 6; # MENU*
+our $tITEM = 7; # ITEM*
+
+our %known_p1_types = (
+ $tSCREEN => "SCREEN*",
+ $tWINDOW => "WINDOW*",
+ $tTERMINAL => "TERMINAL*",
+ $tPANEL => "PANEL*",
+ $tFORM => "FORM*",
+ $tFIELD => "FIELD*",
+ $tMENU => "MENU*",
+ $tITEM => "ITEM*",
+);
# If the trace is complete, we can infer addresses using the return value from
# newwin, etc. But if it is incomplete, we can still check for special cases
# such as SCREEN* and WINDOW* parameters. In this table, the type for the
# first parameter is encoded, relying upon an ncurses programming convention:
-# 1 = SCREEN*
-# 2 = WINDOW*
-# 4 = TERMINAL*
-our %known_p1 = qw(
- TransformLine 1
- _nc_freewin 2
- _nc_initscr 1
- _nc_makenew 1
- _nc_mingw_console_read 1
- _nc_reset_colors 1
- _nc_scroll_optimize 1
- _nc_tinfo 1
- _nc_tinfo_mvcur 1
- _nc_wgetch 2
- adjust_window 2
- assume_default_colors 1
- attr_get 2
- baudrate 1
- beep 1
- border_set 2
- box 2
- box_set 2
- can_change_color 1
- cbreak 1
- clearok 2
- color_content 1
- copywin 2
- curs_set 1
- decrease_size 1
- def_prog_mode 1
- def_shell_mode 1
- define_key 1
- del_curterm 1
- delay_output 1
- delscreen 1
- delwin 2
- derwin 2
- doupdate 1
- dupwin 2
- echo 1
- endwin 1
- erasechar 1
- filter 1
- flash 1
- flushinp 1
- getattrs 2
- getbegx 2
- getbegy 2
- getbkgd 2
- getcurx 2
- getcury 2
- getmaxx 2
- getmaxy 2
- getmouse 1
- getparx 2
- getpary 2
- halfdelay 1
- has_ic 1
- has_il 1
- has_key 1
- idcok 2
- idlok 2
- immedok 2
- increase_size 1
- init_color 1
- init_pair 1
- intrflush 1
- is_cleared 2
- is_idcok 2
- is_idlok 2
- is_immedok 2
- is_keypad 2
- is_leaveok 2
- is_linetouched 2
- is_nodelay 2
- is_notimeout 2
- is_pad 2
- is_scrollok 2
- is_subwin 2
- is_syncok 2
- is_term_resized 1
- is_wintouched 2
- key_defined 1
- keybound 1
- keyok 1
- keypad 2
- killchar 1
- leaveok 2
- longname 1
- meta 2
- mouseinterval 1
- mousemask 1
- mvcur 1
- mvderwin 2
- mvwadd_wch 2
- mvwadd_wchnstr 2
- mvwadd_wchstr 2
- mvwaddch 2
- mvwaddchnstr 2
- mvwaddchstr 2
- mvwaddnstr 2
- mvwaddnwstr 2
- mvwaddstr 2
- mvwaddwstr 2
- mvwchgat 2
- mvwdelch 2
- mvwget_wch 2
- mvwget_wstr 2
- mvwgetch 2
- mvwgetn_wstr 2
- mvwgetnstr 2
- mvwgetstr 2
- mvwhline 2
- mvwhline_set 2
- mvwin 2
- mvwin_wch 2
- mvwin_wchnstr 2
- mvwin_wchstr 2
- mvwinch 2
- mvwinchnstr 2
- mvwinchstr 2
- mvwins_nwstr 2
- mvwins_wch 2
- mvwins_wstr 2
- mvwinsch 2
- mvwinsnstr 2
- mvwinsstr 2
- mvwinstr 2
- mvwinwstr 2
- mvwvline 2
- mvwvline_set 2
- newpad 1
- newterm 1
- newwin 1
- nl 1
- nocbreak 1
- nodelay 2
- noecho 1
- nofilter 1
- nonl 1
- noqiflush 1
- noraw 1
- notimeout 2
- overlap 2
- overlay 2
- overwrite 2
- pair_content 1
- pecho_wchar 2
- pechochar 2
- pnoutrefresh 2
- putwin 2
- qiflush 1
- raw 1
- redrawwin 2
- reset_prog_mode 1
- reset_shell_mode 1
- resetty 1
- resize_term 1
- resizeterm 1
- restartterm 1
- ripoffline 1
- savetty 1
- scr_init 1
- scr_restore 1
- scr_set 1
- scroll 2
- scrollok 2
- set_curterm 4
- set_term 1
- slk_attr 1
- slk_attr_set 1
- slk_attroff 1
- slk_attron 1
- slk_attrset 1
- slk_clear 1
- slk_color 1
- slk_init 1
- slk_label 1
- slk_noutrefresh 1
- slk_refresh 1
- slk_restore 1
- slk_set 1
- slk_touch 1
- start_color 1
- subwin 2
- syncok 2
- termattrs 1
- termname 1
- tgetflag 1
- tgetnum 1
- tigetflag 1
- tigetnum 1
- tigetstr 1
- tinfo 1
- touchline 2
- touchwin 2
- typeahead 1
- unget_wch 1
- ungetch 1
- ungetmouse 1
- untouchwin 2
- use_default_colors 1
- use_env 1
- use_legacy_coding 1
- use_screen 1
- use_tioctl 1
- use_window 2
- vidattr 1
- vidputs 1
- vw_printw 2
- vwprintw 2
- wadd_wch 2
- wadd_wchnstr 2
- wadd_wchstr 2
- waddch 2
- waddchnstr 2
- waddchstr 2
- waddnstr 2
- waddnwstr 2
- waddstr 2
- waddwstr 2
- wattr_get 2
- wattr_off 2
- wattr_on 2
- wattr_set 2
- wattroff 2
- wattron 2
- wattrset 2
- wbkgd 2
- wbkgdset 2
- wborder 2
- wborder_set 2
- wchgat 2
- wclear 2
- wclrtobot 2
- wclrtoeol 2
- wcolor_set 2
- wcursyncup 2
- wdelch 2
- wdeleteln 2
- wechochar 2
- wenclose 2
- werase 2
- wget_wch 2
- wget_wstr 2
- wgetbkgrnd 2
- wgetch 2
- wgetch_events 2
- wgetdelay 2
- wgetn_wstr 2
- wgetnstr 2
- wgetparent 2
- wgetscrreg 2
- wgetstr 2
- whline 2
- whline_set 2
- win_wch 2
- win_wchnstr 2
- win_wchstr 2
- winch 2
- winchnstr 2
- winchstr 2
- winnstr 2
- winnwstr 2
- wins_nwstr 2
- wins_wch 2
- wins_wstr 2
- winsch 2
- winsdelln 2
- winsertln 2
- winsnstr 2
- winsstr 2
- winstr 2
- winwstr 2
- wmouse_trafo 2
- wmove 2
- wnoutrefresh 2
- wprintw 2
- wredrawln 2
- wrefresh 2
- wresize 2
- wscrl 2
- wsetscrreg 2
- wstandend 2
- wstandout 2
- wsyncdown 2
- wsyncup 2
- wtimeout 2
- wtouchln 2
- wvline 2
+our %known_p1 = (
+ TransformLine => $tSCREEN,
+ _nc_console_read => $tSCREEN,
+ _nc_freewin => $tWINDOW,
+ _nc_initscr => $tSCREEN,
+ _nc_makenew => $tSCREEN,
+ _nc_mingw_console_read => $tSCREEN,
+ _nc_reset_colors => $tSCREEN,
+ _nc_scroll_optimize => $tSCREEN,
+ _nc_tinfo => $tSCREEN,
+ _nc_tinfo_mvcur => $tSCREEN,
+ _nc_wgetch => $tWINDOW,
+ adjust_window => $tWINDOW,
+ assume_default_colors => $tSCREEN,
+ attr_get => $tWINDOW,
+ baudrate => $tSCREEN,
+ beep => $tSCREEN,
+ border_set => $tWINDOW,
+ bottom_panel => $tPANEL,
+ bottom_panel => $tPANEL,
+ box => $tWINDOW,
+ box_set => $tWINDOW,
+ can_change_color => $tSCREEN,
+ cbreak => $tSCREEN,
+ ceiling_panel => $tSCREEN,
+ clearok => $tWINDOW,
+ color_content => $tSCREEN,
+ copywin => $tWINDOW,
+ current_item => $tMENU,
+ curs_set => $tSCREEN,
+ decrease_size => $tSCREEN,
+ def_prog_mode => $tSCREEN,
+ def_shell_mode => $tSCREEN,
+ define_key => $tSCREEN,
+ del_curterm => $tSCREEN,
+ del_panel => $tPANEL,
+ del_panel => $tPANEL,
+ delay_output => $tSCREEN,
+ delscreen => $tSCREEN,
+ delwin => $tWINDOW,
+ derwin => $tWINDOW,
+ doupdate => $tSCREEN,
+ dup_field => $tFIELD,
+ dupwin => $tWINDOW,
+ echo => $tSCREEN,
+ endwin => $tSCREEN,
+ erasechar => $tSCREEN,
+ field_opts_off => $tFIELD,
+ field_opts_on => $tFIELD,
+ filter => $tSCREEN,
+ flash => $tSCREEN,
+ flushinp => $tSCREEN,
+ form_driver => $tFORM,
+ form_driver_w => $tFORM,
+ form_opts_off => $tFORM,
+ form_opts_on => $tFORM,
+ free_field => $tFIELD,
+ free_form => $tFORM,
+ free_item => $tITEM,
+ free_menu => $tMENU,
+ getattrs => $tWINDOW,
+ getbegx => $tWINDOW,
+ getbegy => $tWINDOW,
+ getbkgd => $tWINDOW,
+ getcurx => $tWINDOW,
+ getcury => $tWINDOW,
+ getmaxx => $tWINDOW,
+ getmaxy => $tWINDOW,
+ getmouse => $tSCREEN,
+ getparx => $tWINDOW,
+ getpary => $tWINDOW,
+ ground_panel => $tSCREEN,
+ halfdelay => $tSCREEN,
+ has_ic => $tSCREEN,
+ has_il => $tSCREEN,
+ has_key => $tSCREEN,
+ hide_panel => $tPANEL,
+ hide_panel => $tPANEL,
+ idcok => $tWINDOW,
+ idlok => $tWINDOW,
+ immedok => $tWINDOW,
+ increase_size => $tSCREEN,
+ init_color => $tSCREEN,
+ init_pair => $tSCREEN,
+ intrflush => $tSCREEN,
+ is_cleared => $tWINDOW,
+ is_idcok => $tWINDOW,
+ is_idlok => $tWINDOW,
+ is_immedok => $tWINDOW,
+ is_keypad => $tWINDOW,
+ is_leaveok => $tWINDOW,
+ is_linetouched => $tWINDOW,
+ is_nodelay => $tWINDOW,
+ is_notimeout => $tWINDOW,
+ is_pad => $tWINDOW,
+ is_scrollok => $tWINDOW,
+ is_subwin => $tWINDOW,
+ is_syncok => $tWINDOW,
+ is_term_resized => $tSCREEN,
+ is_wintouched => $tWINDOW,
+ item_count => $tMENU,
+ item_description => $tITEM,
+ item_index => $tITEM,
+ item_init => $tMENU,
+ item_name => $tITEM,
+ item_opts => $tITEM,
+ item_opts_off => $tITEM,
+ item_opts_on => $tITEM,
+ item_term => $tMENU,
+ item_userptr => $tITEM,
+ item_value => $tITEM,
+ item_visible => $tITEM,
+ key_defined => $tSCREEN,
+ keybound => $tSCREEN,
+ keyok => $tSCREEN,
+ keypad => $tWINDOW,
+ killchar => $tSCREEN,
+ leaveok => $tWINDOW,
+ link_field => $tFIELD,
+ longname => $tSCREEN,
+ menu_back => $tMENU,
+ menu_driver => $tMENU,
+ menu_fore => $tMENU,
+ menu_format => $tMENU,
+ menu_grey => $tMENU,
+ menu_init => $tMENU,
+ menu_items => $tMENU,
+ menu_mark => $tMENU,
+ menu_opts => $tMENU,
+ menu_opts_off => $tMENU,
+ menu_opts_on => $tMENU,
+ menu_pad => $tMENU,
+ menu_pattern => $tMENU,
+ menu_spacing => $tMENU,
+ menu_sub => $tMENU,
+ menu_term => $tMENU,
+ menu_userptr => $tMENU,
+ menu_win => $tMENU,
+ meta => $tWINDOW,
+ mouseinterval => $tSCREEN,
+ mousemask => $tSCREEN,
+ move_field => $tFIELD,
+ move_panel => $tPANEL,
+ move_panel => $tPANEL,
+ mvcur => $tSCREEN,
+ mvderwin => $tWINDOW,
+ mvwadd_wch => $tWINDOW,
+ mvwadd_wchnstr => $tWINDOW,
+ mvwadd_wchstr => $tWINDOW,
+ mvwaddch => $tWINDOW,
+ mvwaddchnstr => $tWINDOW,
+ mvwaddchstr => $tWINDOW,
+ mvwaddnstr => $tWINDOW,
+ mvwaddnwstr => $tWINDOW,
+ mvwaddstr => $tWINDOW,
+ mvwaddwstr => $tWINDOW,
+ mvwchgat => $tWINDOW,
+ mvwdelch => $tWINDOW,
+ mvwget_wch => $tWINDOW,
+ mvwget_wstr => $tWINDOW,
+ mvwgetch => $tWINDOW,
+ mvwgetn_wstr => $tWINDOW,
+ mvwgetnstr => $tWINDOW,
+ mvwgetstr => $tWINDOW,
+ mvwhline => $tWINDOW,
+ mvwhline_set => $tWINDOW,
+ mvwin => $tWINDOW,
+ mvwin_wch => $tWINDOW,
+ mvwin_wchnstr => $tWINDOW,
+ mvwin_wchstr => $tWINDOW,
+ mvwinch => $tWINDOW,
+ mvwinchnstr => $tWINDOW,
+ mvwinchstr => $tWINDOW,
+ mvwins_nwstr => $tWINDOW,
+ mvwins_wch => $tWINDOW,
+ mvwins_wstr => $tWINDOW,
+ mvwinsch => $tWINDOW,
+ mvwinsnstr => $tWINDOW,
+ mvwinsstr => $tWINDOW,
+ mvwinstr => $tWINDOW,
+ mvwinwstr => $tWINDOW,
+ mvwvline => $tWINDOW,
+ mvwvline_set => $tWINDOW,
+ new_panel => $tWINDOW,
+ new_panel => $tWINDOW,
+ newpad => $tSCREEN,
+ newterm => $tSCREEN,
+ newwin => $tSCREEN,
+ nl => $tSCREEN,
+ nocbreak => $tSCREEN,
+ nodelay => $tWINDOW,
+ noecho => $tSCREEN,
+ nofilter => $tSCREEN,
+ nonl => $tSCREEN,
+ noqiflush => $tSCREEN,
+ noraw => $tSCREEN,
+ notimeout => $tWINDOW,
+ overlap => $tWINDOW,
+ overlay => $tWINDOW,
+ overwrite => $tWINDOW,
+ pair_content => $tSCREEN,
+ panel_above => $tPANEL,
+ panel_above => $tPANEL,
+ panel_below => $tPANEL,
+ panel_below => $tPANEL,
+ panel_hidden => $tPANEL,
+ panel_hidden => $tPANEL,
+ panel_userptr => $tPANEL,
+ panel_userptr => $tPANEL,
+ panel_window => $tPANEL,
+ panel_window => $tPANEL,
+ pecho_wchar => $tWINDOW,
+ pechochar => $tWINDOW,
+ pnoutrefresh => $tWINDOW,
+ pos_form_cursor => $tFORM,
+ pos_menu_cursor => $tMENU,
+ post_form => $tFORM,
+ post_menu => $tMENU,
+ putwin => $tWINDOW,
+ qiflush => $tSCREEN,
+ raw => $tSCREEN,
+ redrawwin => $tWINDOW,
+ replace_panel => $tPANEL,
+ replace_panel => $tPANEL,
+ reset_prog_mode => $tSCREEN,
+ reset_shell_mode => $tSCREEN,
+ resetty => $tSCREEN,
+ resize_term => $tSCREEN,
+ resizeterm => $tSCREEN,
+ restartterm => $tSCREEN,
+ ripoffline => $tSCREEN,
+ savetty => $tSCREEN,
+ scale_menu => $tMENU,
+ scr_init => $tSCREEN,
+ scr_restore => $tSCREEN,
+ scr_set => $tSCREEN,
+ scroll => $tWINDOW,
+ scrollok => $tWINDOW,
+ set_current_field => $tFORM,
+ set_current_item => $tMENU,
+ set_curterm => $tTERMINAL,
+ set_field_back => $tFIELD,
+ set_field_buffer => $tFIELD,
+ set_field_fore => $tFIELD,
+ set_field_init => $tFORM,
+ set_field_just => $tFIELD,
+ set_field_opts => $tFIELD,
+ set_field_pad => $tFIELD,
+ set_field_status => $tFIELD,
+ set_field_term => $tFORM,
+ set_field_type => $tFIELD,
+ set_field_userptr => $tFIELD,
+ set_form_fields => $tFORM,
+ set_form_init => $tFORM,
+ set_form_opts => $tFORM,
+ set_form_page => $tFORM,
+ set_form_sub => $tFORM,
+ set_form_term => $tFORM,
+ set_form_userptr => $tFORM,
+ set_form_win => $tFORM,
+ set_item_init => $tMENU,
+ set_item_opts => $tITEM,
+ set_item_term => $tMENU,
+ set_item_userptr => $tITEM,
+ set_item_value => $tITEM,
+ set_menu_back => $tMENU,
+ set_menu_fore => $tMENU,
+ set_menu_format => $tMENU,
+ set_menu_grey => $tMENU,
+ set_menu_init => $tMENU,
+ set_menu_items => $tMENU,
+ set_menu_mark => $tMENU,
+ set_menu_opts => $tMENU,
+ set_menu_pad => $tMENU,
+ set_menu_pattern => $tMENU,
+ set_menu_spacing => $tMENU,
+ set_menu_sub => $tMENU,
+ set_menu_term => $tMENU,
+ set_menu_userptr => $tMENU,
+ set_menu_win => $tMENU,
+ set_new_page => $tFIELD,
+ set_panel_userptr => $tPANEL,
+ set_panel_userptr => $tPANEL,
+ set_term => $tSCREEN,
+ set_top_row => $tMENU,
+ show_panel => $tPANEL,
+ show_panel => $tPANEL,
+ slk_attr => $tSCREEN,
+ slk_attr_set => $tSCREEN,
+ slk_attroff => $tSCREEN,
+ slk_attron => $tSCREEN,
+ slk_attrset => $tSCREEN,
+ slk_clear => $tSCREEN,
+ slk_color => $tSCREEN,
+ slk_init => $tSCREEN,
+ slk_label => $tSCREEN,
+ slk_noutrefresh => $tSCREEN,
+ slk_refresh => $tSCREEN,
+ slk_restore => $tSCREEN,
+ slk_set => $tSCREEN,
+ slk_touch => $tSCREEN,
+ start_color => $tSCREEN,
+ subwin => $tWINDOW,
+ syncok => $tWINDOW,
+ termattrs => $tSCREEN,
+ termname => $tSCREEN,
+ tgetflag => $tSCREEN,
+ tgetnum => $tSCREEN,
+ tigetflag => $tSCREEN,
+ tigetnum => $tSCREEN,
+ tigetstr => $tSCREEN,
+ tinfo => $tSCREEN,
+ top_panel => $tPANEL,
+ top_panel => $tPANEL,
+ top_row => $tMENU,
+ touchline => $tWINDOW,
+ touchwin => $tWINDOW,
+ typeahead => $tSCREEN,
+ unfocus_current_field => $tFORM,
+ unget_wch => $tSCREEN,
+ ungetch => $tSCREEN,
+ ungetmouse => $tSCREEN,
+ unpost_form => $tFORM,
+ unpost_menu => $tMENU,
+ untouchwin => $tWINDOW,
+ update_panels_sp => $tSCREEN,
+ use_default_colors => $tSCREEN,
+ use_env => $tSCREEN,
+ use_legacy_coding => $tSCREEN,
+ use_screen => $tSCREEN,
+ use_tioctl => $tSCREEN,
+ use_window => $tWINDOW,
+ vidattr => $tSCREEN,
+ vidputs => $tSCREEN,
+ vw_printw => $tWINDOW,
+ vwprintw => $tWINDOW,
+ wadd_wch => $tWINDOW,
+ wadd_wchnstr => $tWINDOW,
+ wadd_wchstr => $tWINDOW,
+ waddch => $tWINDOW,
+ waddchnstr => $tWINDOW,
+ waddchstr => $tWINDOW,
+ waddnstr => $tWINDOW,
+ waddnwstr => $tWINDOW,
+ waddstr => $tWINDOW,
+ waddwstr => $tWINDOW,
+ wattr_get => $tWINDOW,
+ wattr_off => $tWINDOW,
+ wattr_on => $tWINDOW,
+ wattr_set => $tWINDOW,
+ wattroff => $tWINDOW,
+ wattron => $tWINDOW,
+ wattrset => $tWINDOW,
+ wbkgd => $tWINDOW,
+ wbkgdset => $tWINDOW,
+ wborder => $tWINDOW,
+ wborder_set => $tWINDOW,
+ wchgat => $tWINDOW,
+ wclear => $tWINDOW,
+ wclrtobot => $tWINDOW,
+ wclrtoeol => $tWINDOW,
+ wcolor_set => $tWINDOW,
+ wcursyncup => $tWINDOW,
+ wdelch => $tWINDOW,
+ wdeleteln => $tWINDOW,
+ wechochar => $tWINDOW,
+ wenclose => $tWINDOW,
+ werase => $tWINDOW,
+ wget_wch => $tWINDOW,
+ wget_wstr => $tWINDOW,
+ wgetbkgrnd => $tWINDOW,
+ wgetch => $tWINDOW,
+ wgetch_events => $tWINDOW,
+ wgetdelay => $tWINDOW,
+ wgetn_wstr => $tWINDOW,
+ wgetnstr => $tWINDOW,
+ wgetparent => $tWINDOW,
+ wgetscrreg => $tWINDOW,
+ wgetstr => $tWINDOW,
+ whline => $tWINDOW,
+ whline_set => $tWINDOW,
+ win_wch => $tWINDOW,
+ win_wchnstr => $tWINDOW,
+ win_wchstr => $tWINDOW,
+ winch => $tWINDOW,
+ winchnstr => $tWINDOW,
+ winchstr => $tWINDOW,
+ winnstr => $tWINDOW,
+ winnwstr => $tWINDOW,
+ wins_nwstr => $tWINDOW,
+ wins_wch => $tWINDOW,
+ wins_wstr => $tWINDOW,
+ winsch => $tWINDOW,
+ winsdelln => $tWINDOW,
+ winsertln => $tWINDOW,
+ winsnstr => $tWINDOW,
+ winsstr => $tWINDOW,
+ winstr => $tWINDOW,
+ winwstr => $tWINDOW,
+ wmouse_trafo => $tWINDOW,
+ wmove => $tWINDOW,
+ wnoutrefresh => $tWINDOW,
+ wprintw => $tWINDOW,
+ wredrawln => $tWINDOW,
+ wrefresh => $tWINDOW,
+ wresize => $tWINDOW,
+ wscrl => $tWINDOW,
+ wsetscrreg => $tWINDOW,
+ wstandend => $tWINDOW,
+ wstandout => $tWINDOW,
+ wsyncdown => $tWINDOW,
+ wsyncup => $tWINDOW,
+ wtimeout => $tWINDOW,
+ wtouchln => $tWINDOW,
+ wvline => $tWINDOW,
);
+our $fld_nums = 0;
+our $frm_nums = 0;
+our $itm_nums = 0;
+our $mnu_nums = 0;
+our $pan_nums = 0;
our $scr_nums = 0;
our $thr_nums = 0;
our $trm_nums = 0;
our $try_nums = 0;
+our $usr_nums = 0;
our $win_nums = 0;
-our $curscr = "";
-our $newscr = "";
-our $stdscr = "";
-our %scr_addr;
-our %thr_addr;
-our %trm_addr;
-our %try_addr;
-our %win_addr;
+
+our $curscr = "";
+our $newscr = "";
+our $stdscr = "";
+
+our %fld_addr; # FIELD*
+our %frm_addr; # FORM*
+our %itm_addr; # ITEM*
+our %mnu_addr; # MENU*
+our %pan_addr; # PANEL*
+our %scr_addr; # SCREEN*
+our %thr_addr; # thread-id
+our %trm_addr; # TERMINAL*
+our %try_addr; # tries-number
+our %usr_addr; # user-pointer
+our %win_addr; # WINDOW*
sub has_addr($) {
my $value = shift;
@@ -368,6 +549,36 @@ sub transaddr($) {
$arg =~ s/\b$newscr\b/newscr/g if ($newscr);
$arg =~ s/\b$stdscr\b/stdscr/g if ($stdscr);
if ( &has_addr($arg) ) {
+ foreach my $addr ( keys %fld_addr ) {
+ $n = $fld_addr{$addr};
+ $arg =~ s/\b$addr\b/field$n/g if ( defined $n );
+ }
+ }
+ if ( &has_addr($arg) ) {
+ foreach my $addr ( keys %frm_addr ) {
+ $n = $frm_addr{$addr};
+ $arg =~ s/\b$addr\b/form$n/g if ( defined $n );
+ }
+ }
+ if ( &has_addr($arg) ) {
+ foreach my $addr ( keys %itm_addr ) {
+ $n = $itm_addr{$addr};
+ $arg =~ s/\b$addr\b/item$n/g if ( defined $n );
+ }
+ }
+ if ( &has_addr($arg) ) {
+ foreach my $addr ( keys %mnu_addr ) {
+ $n = $mnu_addr{$addr};
+ $arg =~ s/\b$addr\b/menu$n/g if ( defined $n );
+ }
+ }
+ if ( &has_addr($arg) ) {
+ foreach my $addr ( keys %pan_addr ) {
+ $n = $pan_addr{$addr};
+ $arg =~ s/\b$addr\b/panel$n/g if ( defined $n );
+ }
+ }
+ if ( &has_addr($arg) ) {
foreach my $addr ( keys %scr_addr ) {
$n = $scr_addr{$addr};
$arg =~ s/\b$addr\b/screen$n/g if ( defined $n );
@@ -392,6 +603,12 @@ sub transaddr($) {
}
}
if ( &has_addr($arg) ) {
+ foreach my $addr ( keys %usr_addr ) {
+ $n = $usr_addr{$addr};
+ $arg =~ s/\b$addr\b/user_ptr$n/g if ( defined $n );
+ }
+ }
+ if ( &has_addr($arg) ) {
foreach my $addr ( keys %win_addr ) {
$n = $win_addr{$addr};
$arg =~ s/\b$addr\b/window$n/g if ( defined $n );
@@ -419,19 +636,77 @@ sub transaddr($) {
my $addr = $arg;
my $type = $known_p1{$func};
chomp $addr;
- $addr =~ s/^[^(]+\((0x[[:xdigit:]]+).*/$1/i;
- if ( $type == 1 ) {
+ $addr =~ s/^[^(]+\((0x[[:xdigit:]]+).*$/$1/i;
+ if ( $addr !~ /^0x[[:xdigit:]]+$/i ) {
+ if ( $type == $tSCREEN and $addr =~ /^[^(]+\(screen\d+[,)]/ ) {
+
+ # ignore
+ }
+ elsif ( $type == $tWINDOW
+ and $addr =~
+ /^[^(]+\((stdscr|newscr|curscr|window\d+)[,)]/ )
+ {
+
+ # ignore
+ }
+ elsif ( $type == $tTERMINAL
+ and $addr =~ /^[^(]+\(terminal\d+[,)]/ )
+ {
+ # ignore
+ }
+ elsif ( $type == $tPANEL and $addr =~ /^[^(]+\(panel\d+[,)]/ ) {
+
+ # ignore
+ }
+ elsif ( $type == $tFIELD and $addr =~ /^[^(]+\(field\d+[,)]/ ) {
+
+ # ignore
+ }
+ elsif ( $type == $tMENU and $addr =~ /^[^(]+\(menu\d+[,)]/ ) {
+
+ # ignore
+ }
+ elsif ( $type == $tITEM and $addr =~ /^[^(]+\(item\d+[,)]/ ) {
+
+ # ignore
+ }
+ else {
+ printf "OOPS - expected type \"%s\", skipping\n>>$addr\n",
+ $known_p1_types{$type};
+ }
+ }
+ elsif ( $type == $tSCREEN ) {
$scr_addr{$addr} = ++$scr_nums;
$arg = &transaddr($arg);
}
- elsif ( $type == 2 ) {
+ elsif ( $type == $tWINDOW ) {
$win_addr{$addr} = ++$win_nums;
$arg = &transaddr($arg);
}
- elsif ( $type == 4 ) {
+ elsif ( $type == $tTERMINAL ) {
$trm_addr{$addr} = ++$trm_nums;
$arg = &transaddr($arg);
}
+ elsif ( $type == $tPANEL ) {
+ $pan_addr{$addr} = ++$pan_nums;
+ $arg = &transaddr($arg);
+ }
+ elsif ( $type == $tFIELD ) {
+ $fld_addr{$addr} = ++$fld_nums;
+ $arg = &transaddr($arg);
+ }
+ elsif ( $type == $tFORM ) {
+ $frm_addr{$addr} = ++$frm_nums;
+ $arg = &transaddr($arg);
+ }
+ elsif ( $type == $tMENU ) {
+ $mnu_addr{$addr} = ++$mnu_nums;
+ $arg = &transaddr($arg);
+ }
+ elsif ( $type == $tITEM ) {
+ $itm_addr{$addr} = ++$itm_nums;
+ $arg = &transaddr($arg);
+ }
}
}
@@ -448,10 +723,20 @@ sub muncher($) {
CLASSIFY: {
+ next unless $_;
+
# just in case someone tries a file with cr/lf line-endings:
$_ =~ s/\r\n/\n/g;
$_ =~ s/\r/\n/g;
+ if ( $_ =~
+ /^TRACING NCURSES version.*\(tracelevel=(0x[[:xdigit:]]+)\)/ )
+ {
+ $tracelevel = hex $1;
+ print;
+ next;
+ }
+
my $thread = "";
if ( $_ =~ /^(0x[[:xdigit:]]+):/ ) {
$thr_addr{$1} = ++$thr_nums unless defined $thr_addr{$1};
@@ -459,7 +744,7 @@ sub muncher($) {
$_ =~ s/^[^:]*://;
}
- # Transform window pointer addresses so it's easier to compare logs
+ # Transform window pointer addresses to make it easier to compare logs
$awaiting = "curscr" if ( $_ =~ /creating curscr/ );
$awaiting = "newscr" if ( $_ =~ /creating newscr/ );
$awaiting = "stdscr" if ( $_ =~ /creating stdscr/ );
@@ -480,6 +765,36 @@ sub muncher($) {
}
$awaiting = "";
}
+ elsif ( $_ =~ /^create :(root|new)_panel 0x([[:xdigit:]]+)/ ) {
+ $addr = "0x$2";
+ $pan_addr{$addr} = $pan_nums++;
+ $_ = &transaddr($_);
+ }
+ elsif ( $_ =~ /^create :user_ptr 0x([[:xdigit:]]+)/ ) {
+ $addr = "0x$1";
+ $usr_addr{$addr} = $usr_nums++;
+ $_ = &transaddr($_);
+ }
+ elsif ( $_ =~ /^create :field 0x([[:xdigit:]]+)/ ) {
+ $addr = "0x$1";
+ $fld_addr{$addr} = $fld_nums++;
+ $_ = &transaddr($_);
+ }
+ elsif ( $_ =~ /^create :form 0x([[:xdigit:]]+)/ ) {
+ $addr = "0x$1";
+ $frm_addr{$addr} = $frm_nums++;
+ $_ = &transaddr($_);
+ }
+ elsif ( $_ =~ /^create :menu 0x([[:xdigit:]]+)/ ) {
+ $addr = "0x$1";
+ $mnu_addr{$addr} = $mnu_nums++;
+ $_ = &transaddr($_);
+ }
+ elsif ( $_ =~ /^create :item 0x([[:xdigit:]]+)/ ) {
+ $addr = "0x$1";
+ $itm_addr{$addr} = $itm_nums++;
+ $_ = &transaddr($_);
+ }
elsif ( $_ =~ /^(\+ )*called \{set_curterm\((0x[[:xdigit:]]+)\)/ ) {
$trm_addr{$2} = ++$trm_nums unless defined $trm_addr{$2};
}
@@ -514,9 +829,35 @@ sub muncher($) {
undef $win_addr{$addr};
}
}
+ elsif ( $_ =~ /^\.\.\.deleted pan=\"0x([[:xdigit:]]+)\"/ ) {
+ $addr = "0x$1";
+ $_ = &transaddr($_);
+ undef $pan_addr{$addr};
+ }
+ elsif ( $_ =~ /^([+ ])*called \{free_field\(0x([[:xdigit:]]+)\)/ ) {
+ $addr = "0x$2";
+ $_ = &transaddr($_);
+ undef $fld_addr{$addr};
+ }
+ elsif ( $_ =~ /^([+ ])*called \{free_form\(0x([[:xdigit:]]+)\)/ ) {
+ $addr = "0x$2";
+ $_ = &transaddr($_);
+ undef $frm_addr{$addr};
+ }
+ elsif ( $_ =~ /^([+ ])*called \{free_menu\(0x([[:xdigit:]]+)\)/ ) {
+ $addr = "0x$2";
+ $_ = &transaddr($_);
+ undef $mnu_addr{$addr};
+ }
+ elsif ( $_ =~ /^([+ ])*called \{free_item\(0x([[:xdigit:]]+)\)/ ) {
+ $addr = "0x$2";
+ $_ = &transaddr($_);
+ undef $itm_addr{$addr};
+ }
- # Compactify runs of PutAttrChar calls (TR_CHARPUT)
- if ( $_ =~ /$putattr/ ) {
+ # Compactify runs of PutAttrChar
+ if ( ( ( $tracelevel & $TR{CHARPUT} ) != 0 ) and $_ =~ /$putattr/ )
+ {
my $putattr_chars = $1;
my $starty = $2;
my $startx = $3;
@@ -525,19 +866,23 @@ sub muncher($) {
$putattr_chars .= $1;
}
else {
+ next if ( $_ =~ /^PUTC 0x[[:xdigit:]]+.*/ );
+ next if ( $_ =~ /^\.\.\.skip.*/ );
+ next if ( $_ =~ /^forced to blank.*/ );
last;
}
}
- print
-"RUN of PutAttrChar()s: \"$putattr_chars\" from ${starty}, ${startx}\n";
+ print "RUN of PutAttrChar()s:"
+ . " \"$putattr_chars\" from ${starty}, ${startx}\n";
redo CLASSIFY;
}
- # Compactify runs of waddnstr calls (TR_CALLS)
- if ( $_ =~ /$waddnstr/ ) {
+ # Compactify runs of waddnstr calls
+ if ( ( ( $tracelevel & $TR{CALLS} ) != 0 ) and $_ =~ /$waddnstr/ ) {
my $waddnstr_chars = $2;
my $winaddr = $1;
while (<$STDIN>) {
+ next if ( $_ =~ /^return \}0/ );
if ( $_ =~ /$waddnstr/ && $1 eq $winaddr ) {
$waddnstr_chars .= $2;
}
@@ -546,7 +891,8 @@ sub muncher($) {
}
}
my $winaddstr = &transaddr($winaddr);
- print "RUN of waddnstr()s: $winaddr, \"$waddnstr_chars\"\n";
+ print "RUN of waddnstr()s:"
+ . " $winaddstr, \"$waddnstr_chars\"\n";
redo CLASSIFY;
}
@@ -575,6 +921,10 @@ sub muncher($) {
}
}
+for my $tr ( keys %TR ) {
+ $TR{$tr} = hex $TR{$tr};
+}
+
if ( $#ARGV >= 0 ) {
while ( $#ARGV >= 0 ) {
my $file = shift @ARGV;
diff --git a/test/view.c b/test/view.c
index e4d746f..b368f5b 100644
--- a/test/view.c
+++ b/test/view.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 2019-2020,2021 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@@ -52,7 +52,7 @@
* scroll operation worked, and the refresh() code only had to do a
* partial repaint.
*
- * $Id: view.c,v 1.138 2020/02/02 23:34:34 tom Exp $
+ * $Id: view.c,v 1.142 2021/06/12 23:16:31 tom Exp $
*/
#include <test.priv.h>
@@ -62,7 +62,7 @@
#include <sys/stat.h>
#include <time.h>
-static void finish(int sig) GCC_NORETURN;
+static GCC_NORETURN void finish(int sig);
#define my_pair 1
@@ -78,9 +78,7 @@ static int num_lines;
static bool n_option = FALSE;
#endif
-static void usage(void) GCC_NORETURN;
-
-static void
+static GCC_NORETURN void
failed(const char *msg)
{
endwin();
@@ -92,12 +90,10 @@ static int
ch_len(NCURSES_CH_T *src)
{
int result = 0;
-#if USE_WIDEC_SUPPORT
- int count;
-#endif
#if USE_WIDEC_SUPPORT
for (;;) {
+ int count;
TEST_CCHAR(src, count, {
int len = wcwidth(test_wch[0]);
result += (len > 0) ? len : 1;
@@ -136,7 +132,6 @@ show_all(const char *tag)
int i;
int digits;
char temp[BUFSIZ];
- NCURSES_CH_T *s;
time_t this_time;
for (digits = 1, i = num_lines; i > 0; i /= 10) {
@@ -161,8 +156,10 @@ show_all(const char *tag)
scrollok(stdscr, FALSE); /* prevent screen from moving */
for (i = 1; i < LINES; i++) {
+ NCURSES_CH_T *s;
int len;
int actual = (int) (lptr + i - vec_lines);
+
if (actual > num_lines) {
if (i < LINES - 1) {
int y, x;
@@ -189,8 +186,11 @@ show_all(const char *tag)
*/
{
int j;
- int width = 1, count;
+ int width = 1;
+
for (j = actual = 0; j < shift; ++j) {
+ int count;
+
TEST_CCHAR(s + j, count, {
width = wcwidth(test_wch[0]);
}
@@ -257,9 +257,12 @@ read_file(const char *filename)
}
len = fread(my_blob, sizeof(char), (size_t) sb.st_size, fp);
- my_blob[sb.st_size] = '\0';
fclose(fp);
+ if (len > (size_t) sb.st_size)
+ len = (size_t) sb.st_size;
+ my_blob[len] = '\0';
+
for (pass = 0; pass < 2; ++pass) {
char *base = my_blob;
k = 0;
@@ -273,12 +276,19 @@ read_file(const char *filename)
++k;
}
}
+ if (base != (my_blob + j)) {
+ if (pass)
+ my_vec[k] = base;
+ ++k;
+ }
num_lines = k;
- if (base != (my_blob + j))
- ++num_lines;
- if (!pass &&
- ((my_vec = typeCalloc(char *, (size_t) k + 2)) == 0)) {
- failed("cannot allocate line-vector #1");
+ if (pass == 0) {
+ if (((my_vec = typeCalloc(char *, (size_t) k + 2)) == 0)) {
+ failed("cannot allocate line-vector #1");
+ }
+ } else {
+ if (my_vec[0] == NULL)
+ my_vec[0] = my_blob;
}
}
@@ -366,7 +376,7 @@ read_file(const char *filename)
free(my_blob);
}
-static void
+static GCC_NORETURN void
usage(void)
{
static const char *msg[] =
diff --git a/test/widechars.h b/test/widechars.h
index 87c828f..2578a92 100644
--- a/test/widechars.h
+++ b/test/widechars.h
@@ -34,7 +34,7 @@
#if USE_WIDEC_SUPPORT
-#if defined(_WIN32)
+#if defined(_NC_WINDOWS) && !defined(_MSC_VER) && !defined(EXP_WIN32_DRIVER)
/*
* MinGW has wide-character functions, but they do not work correctly.
*/
@@ -46,7 +46,7 @@ extern int __MINGW_NOTHROW _nc_mbtowc(wchar_t *pwc, const char *s, size_t n);
extern int __MINGW_NOTHROW _nc_mblen(const char *, size_t);
#define mblen(s,n) _nc_mblen(s, n)
-#endif /* _WIN32 */
+#endif /* _WIN32||_WIN64 */
#if HAVE_MBTOWC && HAVE_MBLEN
#define reset_mbytes(state) IGNORE_RC(mblen(NULL, 0)), IGNORE_RC(mbtowc(NULL, NULL, 0))
diff --git a/test/xmas.c b/test/xmas.c
index 78b187c..678c9e1 100644
--- a/test/xmas.c
+++ b/test/xmas.c
@@ -92,7 +92,7 @@
/******************************************************************************/
/*
- * $Id: xmas.c,v 1.34 2019/12/14 23:25:29 tom Exp $
+ * $Id: xmas.c,v 1.36 2021/03/27 22:40:53 tom Exp $
*/
#include <test.priv.h>
@@ -133,7 +133,7 @@ static WINDOW *w_holiday;
static WINDOW *w_del_msg;
static bool *my_pairs;
-static void done(int sig) GCC_NORETURN;
+static GCC_NORETURN void done(int sig);
static void
set_color(WINDOW *win, chtype color)
@@ -500,9 +500,6 @@ reindeer(void)
y_pos = 0;
for (x_pos = 70; x_pos > 62; x_pos--) {
- if (x_pos < 62) {
- y_pos = 1;
- }
for (looper = 0; looper < 4; looper++) {
MvWAddCh(dotdeer0, y_pos, x_pos, (chtype) '.');
wrefresh(dotdeer0);
diff --git a/test/xterm-16color.dat b/test/xterm-16color.dat
index 35aa099..075c44b 100644
--- a/test/xterm-16color.dat
+++ b/test/xterm-16color.dat
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2020 Thomas E. Dickey #
+# Copyright 2020,2021 Thomas E. Dickey #
# Copyright 2004-2006,2016 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
@@ -26,8 +26,8 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: xterm-16color.dat,v 1.4 2020/02/08 21:38:22 tom Exp $
-# This illustrates the predefined colors for XFree86 xterm's "xterm-16color".
+# $Id: xterm-16color.dat,v 1.5 2021/06/17 21:20:30 tom Exp $
+# This illustrates the predefined colors for XFree86 xterm's "xterm-16color".
# If you set $TERM to "xterm-88color" (and have xterm compiled to support the
# 88-color or 256-color feature), you can use the ncurses 'd' screen to
# manipulate the colors shown in the screen. The 'd' screen is limited to